From 80928e64946c40bca757cce135e8ff5b1ad702c7 Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Wed, 10 Jun 2020 14:40:23 -0700 Subject: [PATCH] chore: update stage0 --- stage0/src/Lean/Parser/Parser.lean | 14 +- stage0/src/Lean/Parser/Term.lean | 2 +- stage0/src/frontends/lean/builtin_exprs.cpp | 15 +- stage0/stdlib/Lean/Parser/Command.c | 36812 ++++++++------- stage0/stdlib/Lean/Parser/Level.c | 2186 +- stage0/stdlib/Lean/Parser/Module.c | 1727 +- stage0/stdlib/Lean/Parser/Parser.c | 828 +- stage0/stdlib/Lean/Parser/Syntax.c | 11211 +++-- stage0/stdlib/Lean/Parser/Tactic.c | 8801 ++-- stage0/stdlib/Lean/Parser/Term.c | 43169 +++++++++--------- 10 files changed, 55375 insertions(+), 49390 deletions(-) diff --git a/stage0/src/Lean/Parser/Parser.lean b/stage0/src/Lean/Parser/Parser.lean index 132d62dc36..47ae7a64de 100644 --- a/stage0/src/Lean/Parser/Parser.lean +++ b/stage0/src/Lean/Parser/Parser.lean @@ -1082,17 +1082,15 @@ let asciiSym := asciiSym.trim; { info := unicodeSymbolInfo sym asciiSym, fn := unicodeSymbolFn sym asciiSym } -/- Succeeds if prec <= upper -/ -def checkPrecFn (upper : Nat) (errorMsg : String) : ParserFn := +/- Succeeds if `c.prec <= prec` -/ +def checkPrecFn (prec : Nat) : ParserFn := fun c s => - if c.prec <= upper then s - else s.mkUnexpectedError errorMsg + if c.prec <= prec then s + else s.mkUnexpectedError "unexpected token at this precedence level; consider parenthesizing the term" -private def precErrorMsg := "unexpected token at this precedence level; consider parenthesizing the term" - -@[inline] def checkPrec (upper : Nat) (errorMsg : String := precErrorMsg) : Parser := +@[inline] def checkPrec (prec : Nat) : Parser := { info := epsilonInfo, - fn := checkPrecFn upper errorMsg } + fn := checkPrecFn prec } /- Version of `leadingNode` which uses `checkPrec` -/ @[inline] def leadingNodePrec (n : SyntaxNodeKind) (prec : Nat) (p : Parser) : Parser := diff --git a/stage0/src/Lean/Parser/Term.lean b/stage0/src/Lean/Parser/Term.lean index cff7263762..124a6624cf 100644 --- a/stage0/src/Lean/Parser/Term.lean +++ b/stage0/src/Lean/Parser/Term.lean @@ -91,7 +91,7 @@ def explicitBinder (requireType := false) := parser! "(" >> many1 binderIdent >> def implicitBinder (requireType := false) := parser! "{" >> many1 binderIdent >> binderType requireType >> "}" def instBinder := parser! "[" >> optIdent >> termParser >> "]" def bracketedBinder (requireType := false) := explicitBinder requireType <|> implicitBinder requireType <|> instBinder -@[builtinTermParser] def depArrow := parser! [appPrec] bracketedBinder true >> checkPrec 25 "expected parentheses around dependent arrow" >> unicodeSymbol " → " " -> " >> termParser +@[builtinTermParser] def depArrow := parser! [appPrec] bracketedBinder true >> checkPrec 25 >> unicodeSymbol " → " " -> " >> termParser def simpleBinder := parser! many1 binderIdent @[builtinTermParser] def «forall» := parser! [leadPrec] unicodeSymbol "∀" "forall" >> many1 (simpleBinder <|> bracketedBinder) >> ", " >> termParser diff --git a/stage0/src/frontends/lean/builtin_exprs.cpp b/stage0/src/frontends/lean/builtin_exprs.cpp index e0d57593fb..a6532326ad 100644 --- a/stage0/src/frontends/lean/builtin_exprs.cpp +++ b/stage0/src/frontends/lean/builtin_exprs.cpp @@ -26,6 +26,7 @@ Author: Leonardo de Moura #include "frontends/lean/token_table.h" #include "frontends/lean/parser.h" #include "frontends/lean/util.h" +#include "frontends/lean/prenum.h" #include "frontends/lean/tokens.h" #include "frontends/lean/match_expr.h" #include "frontends/lean/brackets.h" @@ -784,22 +785,16 @@ expr mk_annotation_with_pos(parser &, name const & a, expr const & e, pos_info c } static expr parse_parser(parser & p, bool leading, pos_info const & pos) { - name kind = get_curr_declaration_name(); - optional prec; + name kind = get_curr_declaration_name(); + expr prec = save_pos(mk_prenum(mpz(get_max_prec())), pos); if (p.curr_is_token(get_lbracket_tk())) { p.next(); prec = p.parse_expr(); p.check_token_next(get_rbracket_tk(), "`]` expected"); } expr e = p.parse_expr(); - expr r; - if (prec) { - name n = leading ? get_lean_parser_leading_node_prec_name() : get_lean_parser_trailing_node_prec_name(); - r = mk_app(mk_constant(n), quote(kind), *prec, e); - } else { - name n = leading ? get_lean_parser_leading_node_name() : get_lean_parser_trailing_node_name(); - r = mk_app(mk_constant(n), quote(kind), e); - } + name n = leading ? get_lean_parser_leading_node_prec_name() : get_lean_parser_trailing_node_prec_name(); + expr r = mk_app(mk_constant(n), quote(kind), prec, e); if (leading && kind.is_string()) { r = mk_app(mk_constant({"Lean", "Parser", "withAntiquot"}), mk_app(mk_constant({"Lean", "Parser", "mkAntiquot"}), diff --git a/stage0/stdlib/Lean/Parser/Command.c b/stage0/stdlib/Lean/Parser/Command.c index 0f677fcab6..a38110e83e 100644 --- a/stage0/stdlib/Lean/Parser/Command.c +++ b/stage0/stdlib/Lean/Parser/Command.c @@ -16,20 +16,25 @@ extern "C" { lean_object* l_Lean_Parser_Command_attrInstance___closed__6; lean_object* l_Lean_Parser_Command_check__failure___closed__5; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__3; +lean_object* l_Lean_Parser_Command_section___closed__8; lean_object* l_Lean_Parser_Command_example___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_init__quot___closed__3; +lean_object* l_Lean_Parser_Command_universes___closed__7; lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Command_resolve__name(lean_object*); lean_object* l_Lean_Parser_Command_def___closed__5; lean_object* l_Lean_Parser_Command_structure___closed__7; lean_object* l_Lean_Parser_Command_section___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_open___closed__3; +lean_object* l_Lean_Parser_Command_structCtor___closed__8; +lean_object* l_Lean_Parser_Command_theorem___closed__9; lean_object* l_Lean_Parser_Command_check___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_structImplicitBinder___closed__8; lean_object* l_Lean_Parser_Command_structureTk___closed__2; lean_object* l_Lean_Parser_Command_instance___closed__2; extern lean_object* l_Lean_Parser_manyAux___main___closed__1; +lean_object* l_Lean_Parser_Command_structImplicitBinder___closed__9; lean_object* l_Lean_Parser_Command_declModifiers___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__3; @@ -87,10 +92,12 @@ lean_object* l_Lean_Parser_Command_noncomputable; lean_object* l_Lean_Parser_Command_section___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_docComment___closed__5; lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__8; +lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__12; lean_object* l_Lean_Parser_Command_private___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_declModifiers___closed__1; lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_structCtor___closed__4; +lean_object* l_Lean_Parser_Command_inferMod___closed__6; lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_protected___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__6; @@ -115,6 +122,7 @@ lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_structInstBinder___closed__5; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_universe___closed__7; lean_object* l_Lean_Parser_Command_example___closed__5; lean_object* l_Lean_Parser_Command_openOnly; lean_object* l_Lean_Parser_Command_attributes___elambda__1___closed__7; @@ -130,6 +138,7 @@ lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_check__failure___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_synth___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +lean_object* l_Lean_Parser_Command_structure___closed__15; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_declaration___closed__7; lean_object* l___regBuiltinParser_Lean_Parser_Command_attribute(lean_object*); @@ -175,6 +184,7 @@ lean_object* l_Lean_Parser_Command_inferMod___closed__2; lean_object* l_Lean_Parser_Command_abbrev___closed__5; lean_object* l_Lean_Parser_Command_section___closed__1; lean_object* l_Lean_Parser_Command_example___closed__6; +lean_object* l_Lean_Parser_Command_extends___closed__7; lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_variables___closed__2; lean_object* l_Lean_Parser_Command_private___elambda__1___closed__3; @@ -207,6 +217,7 @@ lean_object* l_Lean_Parser_Command_attrArg___elambda__1(lean_object*, lean_objec lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__3; +lean_object* l_Lean_Parser_Command_structFields___closed__8; lean_object* l_Lean_Parser_Command_example; lean_object* l_Lean_Parser_Command_classTk___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_theorem___closed__3; @@ -222,7 +233,9 @@ lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_abbrev___elambda__1___closed__4; +lean_object* l_Lean_Parser_Command_docComment___closed__7; lean_object* l_Lean_Parser_Command_openRenaming___closed__4; +lean_object* l_Lean_Parser_Command_openRenaming___closed__9; lean_object* l_Lean_Parser_Command_example___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_attribute___closed__10; lean_object* l_Lean_Parser_addBuiltinParser(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); @@ -240,6 +253,7 @@ lean_object* l_Lean_Parser_tokenFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(uint8_t, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_init__quot___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_exit___closed__6; lean_object* l_Lean_Parser_Command_section___elambda__1___closed__8; lean_object* l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(lean_object*); lean_object* l_Lean_Parser_Command_declModifiers___closed__13; @@ -248,6 +262,7 @@ lean_object* l_Lean_Parser_Command_declaration___closed__10; lean_object* l_Lean_Parser_Command_commentBody___closed__1; lean_object* l_Lean_Parser_Command_attribute___closed__12; lean_object* l_Lean_Parser_Command_export___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_synth___closed__7; lean_object* l_Lean_Parser_Command_extends; lean_object* l_Lean_Parser_Command_init__quot___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_abbrev___elambda__1___closed__6; @@ -287,6 +302,7 @@ lean_object* l_Lean_Parser_Command_introRule; lean_object* l_Lean_Parser_Command_universe___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_commentBody___closed__2; lean_object* l_Lean_Parser_Command_example___elambda__1___closed__8; +lean_object* l_Lean_Parser_Command_classTk___closed__5; lean_object* l_Lean_Parser_Command_section___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_extends___closed__3; @@ -300,6 +316,7 @@ extern lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_declId___closed__3; lean_object* l_Lean_Parser_Command_namespace___closed__3; +lean_object* l_Lean_Parser_Command_instance___closed__9; lean_object* l_Lean_Parser_Command_openHiding___closed__3; lean_object* l_Lean_Parser_Command_init__quot___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__1; @@ -313,7 +330,8 @@ lean_object* l_Lean_Parser_Command_openRenamingItem___closed__4; lean_object* l_Lean_Parser_Command_open___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_extends___closed__5; lean_object* l_Lean_Parser_Command_private___closed__5; -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_attrInstance___closed__7; +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_variables___closed__6; lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__7; @@ -374,6 +392,7 @@ lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__9; lean_object* l_Lean_Parser_Command_attribute___closed__6; lean_object* l_Lean_Parser_Command_variables___elambda__1___closed__9; extern lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__5; +lean_object* l_Lean_Parser_Command_openHiding___closed__8; lean_object* l_Lean_Parser_Command_attrArg___closed__4; lean_object* l_Lean_Parser_Command_declaration___elambda__1(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1___closed__1; @@ -409,6 +428,7 @@ lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_attribute___closed__3; lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_abbrev___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_protected___closed__6; lean_object* l_Lean_Parser_Command_declModifiers___closed__5; lean_object* l_Lean_Parser_Command_structureTk___closed__1; lean_object* l_Lean_Parser_Command_init__quot___closed__1; @@ -436,6 +456,7 @@ extern lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_export___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_commandParser(lean_object*); lean_object* l_Lean_Parser_Command_classTk___closed__1; +lean_object* l_Lean_Parser_Command_set__option___closed__12; lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__3; lean_object* l_Array_shrink___main___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_export___closed__4; @@ -446,6 +467,7 @@ lean_object* l_Lean_Parser_Command_docComment___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_universe___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_def___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_example___closed__7; extern lean_object* l_Lean_Parser_Term_typeSpec; lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__11; lean_object* l_Lean_Parser_Command_protected___closed__4; @@ -486,6 +508,7 @@ lean_object* l_Lean_Parser_Command_openRenamingItem___closed__2; lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_unsafe___closed__5; lean_object* l_Lean_Parser_Command_classInductive___closed__3; +lean_object* l_Lean_Parser_Command_resolve__name___closed__7; lean_object* l_Lean_Parser_Command_optDeclSig; lean_object* l_Lean_Parser_Command_def___closed__3; lean_object* l_Lean_Parser_Command_extends___elambda__1(lean_object*, lean_object*); @@ -505,12 +528,14 @@ lean_object* l_Lean_Parser_Command_declValEqns___closed__2; lean_object* l_Lean_Parser_Command_abbrev___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_declModifiers___closed__3; +lean_object* l_Lean_Parser_Command_end___closed__7; lean_object* l_Lean_Parser_Command_classInductive___closed__1; extern lean_object* l_Char_HasRepr___closed__1; lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_export___closed__1; lean_object* l_Lean_Parser_Command_set__option___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_section___closed__2; +lean_object* l_Lean_Parser_Command_introRule___closed__9; lean_object* l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_structInstBinder___closed__8; lean_object* l_Lean_Parser_Command_theorem; @@ -558,6 +583,7 @@ extern lean_object* l_Lean_Parser_rawIdent; lean_object* l_Lean_Parser_Command_set__option___closed__5; lean_object* l_Lean_Parser_Command_open___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_universe___elambda__1___closed__6; +lean_object* l_Lean_Parser_Command_noncomputable___closed__6; lean_object* l_Lean_Parser_Command_namespace___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_declaration___closed__11; extern lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; @@ -578,6 +604,7 @@ lean_object* l_Lean_Parser_Command_declVal; lean_object* l___regBuiltinParser_Lean_Parser_Command_variables(lean_object*); lean_object* l_Lean_Parser_Command_optDeclSig___closed__4; lean_object* l_Lean_Parser_Command_classInductive___closed__2; +lean_object* l_Lean_Parser_Command_def___closed__7; lean_object* l_Lean_Parser_Command_docComment___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_optDeclSig___closed__1; lean_object* l_Lean_Parser_Command_unsafe___closed__4; @@ -588,6 +615,7 @@ lean_object* l_Lean_Parser_Command_declaration___closed__4; lean_object* l_Lean_Parser_Command_theorem___closed__7; lean_object* l_Lean_Parser_Command_structInstBinder___closed__2; lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_variables___closed__7; lean_object* l_Lean_Parser_Command_inferMod; lean_object* l_Lean_Parser_Command_declValEqns___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__4; @@ -616,6 +644,7 @@ lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_structFields___closed__3; lean_object* l_Lean_Parser_Command_commentBody___elambda__1___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_explicitUniv___closed__4; +lean_object* l_Lean_Parser_Command_private___closed__6; lean_object* l_Lean_Parser_Command_declModifiers___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__4; @@ -640,18 +669,22 @@ lean_object* l_Lean_Parser_Command_private___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_inferMod___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_end___closed__4; lean_object* l_Lean_Parser_Command_variable; +lean_object* l_Lean_Parser_Command_structInstBinder___closed__9; lean_object* l_Lean_Parser_Command_universes___closed__4; lean_object* l_Lean_Parser_Command_classTk___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__6; extern lean_object* l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_abbrev___closed__9; lean_object* l_Lean_Parser_Command_declSig___elambda__1(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_object* l_Lean_Parser_Command_openSimple___closed__5; lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_abbrev___closed__8; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_open___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_classTk___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_restore(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_attributes___closed__9; lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_optDeclSig___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_variable___closed__6; @@ -660,6 +693,7 @@ lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_protected___closed__3; lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_structCtor; +lean_object* l_Lean_Parser_Command_declModifiers___closed__16; lean_object* l_Lean_Parser_Command_structFields___closed__1; lean_object* l_Lean_Parser_Command_inductive___closed__8; lean_object* l_Lean_Parser_ParserState_popSyntax(lean_object*); @@ -696,6 +730,7 @@ lean_object* l_Lean_Parser_Command_synth___elambda__1___closed__9; extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_declValEqns___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_noncomputable___closed__3; +lean_object* l_Lean_Parser_Command_unsafe___closed__6; lean_object* l_Lean_Parser_Command_private___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_resolve__name___closed__3; lean_object* l_Lean_Parser_Command_structImplicitBinder___closed__6; @@ -705,6 +740,7 @@ lean_object* l_Lean_Parser_Command_check___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_structInstBinder___closed__1; extern lean_object* l_Lean_Parser_Term_letIdLhs___closed__2; lean_object* l_Lean_Parser_Command_noncomputable___closed__5; +lean_object* l_Lean_Parser_Command_classInductive___closed__8; lean_object* l_Lean_Parser_Command_structCtor___closed__7; lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__2; @@ -713,6 +749,7 @@ lean_object* l_Lean_Parser_sepBy1Info(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_resolve__name___closed__1; lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_inductive___closed__4; +lean_object* l_Lean_Parser_Command_attribute___closed__13; lean_object* l_Lean_Parser_Command_private; lean_object* l_Lean_Parser_Command_check___closed__6; lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__7; @@ -781,7 +818,6 @@ lean_object* l_Lean_Parser_Command_structFields___closed__2; lean_object* l_Lean_Parser_Command_attribute___closed__2; lean_object* l_Lean_Parser_Command_synth___closed__4; lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__7; -extern lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; lean_object* l_Lean_Parser_Command_resolve__name___closed__6; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_attributes___elambda__1___closed__9; @@ -803,6 +839,7 @@ lean_object* l_Lean_Parser_Command_check__failure___closed__6; lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__9; lean_object* l_Lean_Parser_Command_attrInstance___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_namespace___closed__7; lean_object* l_Lean_Parser_categoryParser(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_check__failure___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_structImplicitBinder___elambda__1(lean_object*, lean_object*); @@ -821,6 +858,7 @@ lean_object* l_Lean_Parser_Command_declSig___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_universe___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_check__failure___closed__2; lean_object* l_Lean_Parser_Command_declaration; +lean_object* l_Lean_Parser_Command_optDeclSig___closed__5; lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__6; lean_object* l_Lean_Parser_Command_declId___closed__7; lean_object* l_Lean_Parser_Command_openOnly___elambda__1___closed__3; @@ -839,6 +877,7 @@ lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_theorem___closed__4; lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__10; +lean_object* l_Lean_Parser_Command_init__quot___closed__6; lean_object* l_Lean_Parser_Command_openSimple___closed__2; lean_object* l_Lean_Parser_symbolInfo(lean_object*); lean_object* l_Lean_Parser_Command_classTk; @@ -888,6 +927,7 @@ lean_object* l_Lean_Parser_Command_variable___closed__3; lean_object* l_Lean_Parser_Command_check___closed__3; lean_object* l_Lean_Parser_Command_universes___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_synth___closed__5; +lean_object* l_Lean_Parser_Command_axiom___closed__8; lean_object* l_Lean_Parser_Command_openOnly___closed__2; extern lean_object* l_Lean_Parser_unicodeSymbolFn___closed__1; extern lean_object* l_Lean_Parser_Term_cons___elambda__1___closed__2; @@ -935,6 +975,7 @@ lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_axiom___closed__1; lean_object* l_Lean_Parser_Command_exit___closed__3; lean_object* l_Lean_Parser_Command_unsafe___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_variable___closed__7; lean_object* l_Lean_Parser_Command_private___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_noncomputable___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_structure___closed__13; @@ -994,8 +1035,11 @@ lean_object* l_Lean_Parser_Command_attributes___closed__6; lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_init__quot___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__6; +lean_object* l_Lean_Parser_Command_openRenamingItem___closed__8; lean_object* l___regBuiltinParser_Lean_Parser_Command_end(lean_object*); lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Command_attributes___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_declValSimple___closed__5; +lean_object* l_Lean_Parser_Command_open___closed__10; lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_structCtor___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_partial; @@ -1005,6 +1049,7 @@ lean_object* l_Lean_Parser_Command_end___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_declaration___closed__6; lean_object* l_Lean_Parser_Command_private___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_check___closed__7; lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_optDeclSig___closed__3; lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1(lean_object*, lean_object*); @@ -1016,17 +1061,21 @@ lean_object* l_Lean_Parser_Command_universe___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_exit; lean_object* l_Lean_Parser_Command_namespace___closed__1; +lean_object* l_Lean_Parser_Command_partial___closed__6; lean_object* l_Lean_Parser_Command_partial___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_namespace; lean_object* l_Lean_Parser_Command_axiom___closed__2; lean_object* l_Lean_Parser_Command_constant___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_check___elambda__1___closed__7; +lean_object* l_Lean_Parser_Command_declaration___closed__15; lean_object* l_Lean_Parser_Command_declValSimple___closed__3; lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_openHiding___closed__6; +lean_object* l_Lean_Parser_Command_structureTk___closed__6; lean_object* l_Lean_Parser_Term_stxQuot___closed__1; lean_object* l_Lean_Parser_Command_partial___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_openOnly___closed__7; lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__14; lean_object* l_Lean_Parser_Command_attrArg___closed__3; extern lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; @@ -1040,6 +1089,7 @@ lean_object* l_Lean_Parser_Command_init__quot; lean_object* l_Lean_Parser_Command_openRenaming___closed__6; lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__4; +lean_object* l_Lean_Parser_Command_constant___closed__10; lean_object* l_Lean_Parser_Command_axiom; lean_object* l_Lean_Parser_Command_exit___closed__2; lean_object* l_Lean_Parser_Command_openOnly___closed__4; @@ -1072,10 +1122,12 @@ lean_object* l_Lean_Parser_Command_partial___elambda__1___closed__4; lean_object* l_Lean_Parser_Command_universes___closed__5; lean_object* l_Lean_Parser_Command_attrInstance___closed__1; lean_object* l_Lean_Parser_Command_openOnly___closed__3; +lean_object* l_Lean_Parser_Command_inductive___closed__10; lean_object* l_Lean_Parser_Command_example___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_synth___elambda__1___closed__2; lean_object* l_Lean_Parser_regCommandParserAttribute(lean_object*); +lean_object* l_Lean_Parser_Command_check__failure___closed__7; lean_object* l_Lean_Parser_Command_variables___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_declaration___closed__13; lean_object* l_Lean_Parser_Command_namespace___closed__6; @@ -1094,12 +1146,14 @@ extern lean_object* l_Lean_Parser_Parser_inhabited___closed__1; lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__11; lean_object* l_Lean_Parser_Command_declId___closed__6; lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__7; +lean_object* l_Lean_Parser_Command_declSig___closed__6; lean_object* l_Lean_Parser_Command_universe; lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__9; extern lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; lean_object* l_Lean_Parser_Command_resolve__name___closed__4; lean_object* l_Lean_Parser_Command_structInstBinder___closed__7; lean_object* l_Lean_Parser_Term_stxQuot___closed__4; +lean_object* l_Lean_Parser_Command_declId___closed__10; lean_object* l_Lean_Parser_Command_universe___closed__5; lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_check___closed__4; @@ -1107,6 +1161,7 @@ lean_object* l_Lean_Parser_Command_classTk___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_open___closed__4; lean_object* l_Lean_Parser_Command_attribute___closed__9; lean_object* l_Lean_Parser_Command_introRule___closed__7; +lean_object* l_Lean_Parser_Command_export___closed__10; lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__2; lean_object* l_Lean_Parser_regBuiltinCommandParserAttr___closed__3; lean_object* l_Lean_Parser_unicodeSymbolFnAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1131,6 +1186,7 @@ lean_object* l_Lean_Parser_Command_universe___closed__3; lean_object* l_Lean_Parser_Command_structure___closed__12; lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__10; +lean_object* l_Lean_Parser_Command_declValEqns___closed__5; lean_object* l_Lean_Parser_Command_universes___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_declValEqns; lean_object* l_Lean_Parser_Command_declModifiers___closed__9; @@ -1388,655 +1444,653 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_39; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_79 = lean_ctor_get(x_8, 1); -lean_inc(x_79); -lean_inc(x_1); -x_80 = l_Lean_Parser_tokenFn(x_1, x_8); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_80, 0); -lean_inc(x_82); -x_83 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_82); -lean_dec(x_82); -if (lean_obj_tag(x_83) == 2) -{ -lean_object* x_84; lean_object* x_85; uint8_t x_86; -x_84 = lean_ctor_get(x_83, 1); -lean_inc(x_84); -lean_dec(x_83); -x_85 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__4; -x_86 = lean_string_dec_eq(x_84, x_85); -lean_dec(x_84); -if (x_86 == 0) -{ -lean_object* x_87; lean_object* x_88; -x_87 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_87, x_79); -x_39 = x_88; -goto block_78; -} -else -{ -lean_dec(x_79); -x_39 = x_80; -goto block_78; -} -} -else -{ -lean_object* x_89; lean_object* x_90; -lean_dec(x_83); -x_89 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_90 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_89, x_79); -x_39 = x_90; -goto block_78; -} -} -else -{ -lean_object* x_91; lean_object* x_92; -lean_dec(x_81); -x_91 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_92 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_91, x_79); -x_39 = x_92; -goto block_78; -} -block_38: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_11); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_16); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_13); -lean_dec(x_1); -x_36 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_11); -return x_37; -} -} -block_78: -{ -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); -x_43 = lean_ctor_get(x_39, 1); -lean_inc(x_43); -x_44 = l_Lean_Parser_termParser___closed__2; -x_45 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_39); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_dec(x_43); -lean_dec(x_42); -x_12 = x_46; -goto block_38; -} -else -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -lean_dec(x_47); -x_49 = lean_ctor_get(x_46, 1); -lean_inc(x_49); -x_50 = lean_nat_dec_eq(x_49, x_43); -lean_dec(x_49); -if (x_50 == 0) -{ -lean_dec(x_48); -lean_dec(x_43); -lean_dec(x_42); -x_12 = x_46; -goto block_38; -} -else -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_inc(x_43); -x_51 = l_Lean_Parser_ParserState_restore(x_46, x_42, x_43); -lean_dec(x_42); -x_52 = lean_ctor_get(x_51, 0); -lean_inc(x_52); -x_53 = lean_array_get_size(x_52); -lean_dec(x_52); -x_54 = l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; -lean_inc(x_1); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_54, x_45, x_1, x_51); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; -lean_inc(x_1); -x_57 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_stxQuot___elambda__1___spec__1(x_1, x_55); -x_58 = lean_ctor_get(x_57, 0); -lean_inc(x_58); -x_59 = lean_array_get_size(x_58); -lean_dec(x_58); -x_60 = lean_nat_sub(x_59, x_53); -lean_dec(x_59); -x_61 = lean_unsigned_to_nat(1u); -x_62 = lean_nat_dec_eq(x_60, x_61); -lean_dec(x_60); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = l_Lean_nullKind; -x_64 = l_Lean_Parser_ParserState_mkNode(x_57, x_63, x_53); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_48, x_43); -lean_dec(x_43); -x_12 = x_65; -goto block_38; -} -else -{ -lean_object* x_66; -lean_dec(x_53); -x_66 = l_Lean_Parser_mergeOrElseErrors(x_57, x_48, x_43); -lean_dec(x_43); -x_12 = x_66; -goto block_38; -} -} -else -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; uint8_t x_71; -lean_dec(x_56); -x_67 = lean_ctor_get(x_55, 0); -lean_inc(x_67); -x_68 = lean_array_get_size(x_67); -lean_dec(x_67); -x_69 = lean_nat_sub(x_68, x_53); -lean_dec(x_68); -x_70 = lean_unsigned_to_nat(1u); -x_71 = lean_nat_dec_eq(x_69, x_70); -lean_dec(x_69); -if (x_71 == 0) -{ -lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_72 = l_Lean_nullKind; -x_73 = l_Lean_Parser_ParserState_mkNode(x_55, x_72, x_53); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_48, x_43); -lean_dec(x_43); -x_12 = x_74; -goto block_38; -} -else -{ -lean_object* x_75; -lean_dec(x_53); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_55, x_48, x_43); -lean_dec(x_43); -x_12 = x_75; -goto block_38; -} -} -} -} -} -else -{ -lean_object* x_76; lean_object* x_77; -lean_dec(x_40); -lean_dec(x_1); -x_76 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_77 = l_Lean_Parser_ParserState_mkNode(x_39, x_76, x_11); -return x_77; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_78 = lean_ctor_get(x_7, 1); +lean_inc(x_78); +lean_inc(x_1); +x_79 = l_Lean_Parser_tokenFn(x_1, x_7); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) +{ +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); +lean_dec(x_81); +if (lean_obj_tag(x_82) == 2) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_83 = lean_ctor_get(x_82, 1); +lean_inc(x_83); +lean_dec(x_82); +x_84 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__4; +x_85 = lean_string_dec_eq(x_83, x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; +x_86 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); +x_38 = x_87; +goto block_77; +} +else +{ +lean_dec(x_78); +x_38 = x_79; +goto block_77; } } else { -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_93 = lean_ctor_get(x_2, 0); -lean_inc(x_93); -x_94 = lean_array_get_size(x_93); +lean_object* x_88; lean_object* x_89; +lean_dec(x_82); +x_88 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; +x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_88, x_78); +x_38 = x_89; +goto block_77; +} +} +else +{ +lean_object* x_90; lean_object* x_91; +lean_dec(x_80); +x_90 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_90, x_78); +x_38 = x_91; +goto block_77; +} +block_37: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_12); +lean_dec(x_1); +x_35 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; +} +} +block_77: +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +x_42 = lean_ctor_get(x_38, 1); +lean_inc(x_42); +x_43 = l_Lean_Parser_termParser___closed__2; +x_44 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_45 = l_Lean_Parser_categoryParser___elambda__1(x_43, x_44, x_1, x_38); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_dec(x_42); +lean_dec(x_41); +x_11 = x_45; +goto block_37; +} +else +{ +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +lean_dec(x_46); +x_48 = lean_ctor_get(x_45, 1); +lean_inc(x_48); +x_49 = lean_nat_dec_eq(x_48, x_42); +lean_dec(x_48); +if (x_49 == 0) +{ +lean_dec(x_47); +lean_dec(x_42); +lean_dec(x_41); +x_11 = x_45; +goto block_37; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_inc(x_42); +x_50 = l_Lean_Parser_ParserState_restore(x_45, x_41, x_42); +lean_dec(x_41); +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_array_get_size(x_51); +lean_dec(x_51); +x_53 = l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; +lean_inc(x_1); +x_54 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_44, x_1, x_50); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; +lean_inc(x_1); +x_56 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_stxQuot___elambda__1___spec__1(x_1, x_54); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_nat_sub(x_58, x_52); +lean_dec(x_58); +x_60 = lean_unsigned_to_nat(1u); +x_61 = lean_nat_dec_eq(x_59, x_60); +lean_dec(x_59); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = l_Lean_nullKind; +x_63 = l_Lean_Parser_ParserState_mkNode(x_56, x_62, x_52); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_47, x_42); +lean_dec(x_42); +x_11 = x_64; +goto block_37; +} +else +{ +lean_object* x_65; +lean_dec(x_52); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_56, x_47, x_42); +lean_dec(x_42); +x_11 = x_65; +goto block_37; +} +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; +lean_dec(x_55); +x_66 = lean_ctor_get(x_54, 0); +lean_inc(x_66); +x_67 = lean_array_get_size(x_66); +lean_dec(x_66); +x_68 = lean_nat_sub(x_67, x_52); +lean_dec(x_67); +x_69 = lean_unsigned_to_nat(1u); +x_70 = lean_nat_dec_eq(x_68, x_69); +lean_dec(x_68); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = l_Lean_nullKind; +x_72 = l_Lean_Parser_ParserState_mkNode(x_54, x_71, x_52); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_47, x_42); +lean_dec(x_42); +x_11 = x_73; +goto block_37; +} +else +{ +lean_object* x_74; +lean_dec(x_52); +x_74 = l_Lean_Parser_mergeOrElseErrors(x_54, x_47, x_42); +lean_dec(x_42); +x_11 = x_74; +goto block_37; +} +} +} +} +} +else +{ +lean_object* x_75; lean_object* x_76; +lean_dec(x_39); +lean_dec(x_1); +x_75 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_76 = l_Lean_Parser_ParserState_mkNode(x_38, x_75, x_10); +return x_76; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_92 = lean_ctor_get(x_2, 0); +lean_inc(x_92); +x_93 = lean_array_get_size(x_92); +lean_dec(x_92); +x_94 = lean_ctor_get(x_2, 1); +lean_inc(x_94); +lean_inc(x_1); +x_95 = lean_apply_2(x_4, x_1, x_2); +x_96 = lean_ctor_get(x_95, 3); +lean_inc(x_96); +if (lean_obj_tag(x_96) == 0) +{ +lean_dec(x_94); lean_dec(x_93); -x_95 = lean_ctor_get(x_2, 1); -lean_inc(x_95); -lean_inc(x_1); -x_96 = lean_apply_2(x_4, x_1, x_2); -x_97 = lean_ctor_get(x_96, 3); +lean_dec(x_1); +return x_95; +} +else +{ +lean_object* x_97; lean_object* x_98; uint8_t x_99; +x_97 = lean_ctor_get(x_96, 0); lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) -{ -lean_dec(x_95); -lean_dec(x_94); -lean_dec(x_1); -return x_96; -} -else -{ -lean_object* x_98; lean_object* x_99; uint8_t x_100; -x_98 = lean_ctor_get(x_97, 0); +lean_dec(x_96); +x_98 = lean_ctor_get(x_95, 1); lean_inc(x_98); -lean_dec(x_97); -x_99 = lean_ctor_get(x_96, 1); -lean_inc(x_99); -x_100 = lean_nat_dec_eq(x_99, x_95); -lean_dec(x_99); -if (x_100 == 0) -{ +x_99 = lean_nat_dec_eq(x_98, x_94); lean_dec(x_98); -lean_dec(x_95); +if (x_99 == 0) +{ +lean_dec(x_97); lean_dec(x_94); +lean_dec(x_93); lean_dec(x_1); -return x_96; +return x_95; } else { -lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; -lean_inc(x_95); -x_101 = l_Lean_Parser_ParserState_restore(x_96, x_94, x_95); -lean_dec(x_94); -x_102 = l_Lean_Parser_appPrec; -x_103 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_104 = l_Lean_Parser_checkPrecFn(x_102, x_103, x_1, x_101); -x_105 = lean_ctor_get(x_104, 3); -lean_inc(x_105); -if (lean_obj_tag(x_105) == 0) +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_inc(x_94); +x_100 = l_Lean_Parser_ParserState_restore(x_95, x_93, x_94); +lean_dec(x_93); +x_101 = l_Lean_Parser_appPrec; +x_102 = l_Lean_Parser_checkPrecFn(x_101, x_1, x_100); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_140; lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_106 = lean_ctor_get(x_104, 0); -lean_inc(x_106); -x_107 = lean_array_get_size(x_106); -lean_dec(x_106); -x_181 = lean_ctor_get(x_104, 1); -lean_inc(x_181); +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_138; lean_object* x_179; lean_object* x_180; lean_object* x_181; +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_array_get_size(x_104); +lean_dec(x_104); +x_179 = lean_ctor_get(x_102, 1); +lean_inc(x_179); lean_inc(x_1); -x_182 = l_Lean_Parser_tokenFn(x_1, x_104); -x_183 = lean_ctor_get(x_182, 3); -lean_inc(x_183); -if (lean_obj_tag(x_183) == 0) +x_180 = l_Lean_Parser_tokenFn(x_1, x_102); +x_181 = lean_ctor_get(x_180, 3); +lean_inc(x_181); +if (lean_obj_tag(x_181) == 0) { -lean_object* x_184; lean_object* x_185; -x_184 = lean_ctor_get(x_182, 0); +lean_object* x_182; lean_object* x_183; +x_182 = lean_ctor_get(x_180, 0); +lean_inc(x_182); +x_183 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_182); +lean_dec(x_182); +if (lean_obj_tag(x_183) == 2) +{ +lean_object* x_184; lean_object* x_185; uint8_t x_186; +x_184 = lean_ctor_get(x_183, 1); lean_inc(x_184); -x_185 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_184); +lean_dec(x_183); +x_185 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__4; +x_186 = lean_string_dec_eq(x_184, x_185); lean_dec(x_184); -if (lean_obj_tag(x_185) == 2) +if (x_186 == 0) { -lean_object* x_186; lean_object* x_187; uint8_t x_188; -x_186 = lean_ctor_get(x_185, 1); -lean_inc(x_186); -lean_dec(x_185); -x_187 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__4; -x_188 = lean_string_dec_eq(x_186, x_187); -lean_dec(x_186); -if (x_188 == 0) +lean_object* x_187; lean_object* x_188; +x_187 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; +x_188 = l_Lean_Parser_ParserState_mkErrorsAt(x_180, x_187, x_179); +x_138 = x_188; +goto block_178; +} +else +{ +lean_dec(x_179); +x_138 = x_180; +goto block_178; +} +} +else { lean_object* x_189; lean_object* x_190; +lean_dec(x_183); x_189 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_190 = l_Lean_Parser_ParserState_mkErrorsAt(x_182, x_189, x_181); -x_140 = x_190; -goto block_180; -} -else -{ -lean_dec(x_181); -x_140 = x_182; -goto block_180; +x_190 = l_Lean_Parser_ParserState_mkErrorsAt(x_180, x_189, x_179); +x_138 = x_190; +goto block_178; } } else { lean_object* x_191; lean_object* x_192; -lean_dec(x_185); +lean_dec(x_181); x_191 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_192 = l_Lean_Parser_ParserState_mkErrorsAt(x_182, x_191, x_181); -x_140 = x_192; -goto block_180; +x_192 = l_Lean_Parser_ParserState_mkErrorsAt(x_180, x_191, x_179); +x_138 = x_192; +goto block_178; } -} -else +block_137: { -lean_object* x_193; lean_object* x_194; -lean_dec(x_183); -x_193 = l_Lean_Parser_Term_stxQuot___elambda__1___closed__7; -x_194 = l_Lean_Parser_ParserState_mkErrorsAt(x_182, x_193, x_181); -x_140 = x_194; -goto block_180; -} -block_139: +lean_object* x_107; +x_107 = lean_ctor_get(x_106, 3); +lean_inc(x_107); +if (lean_obj_tag(x_107) == 0) { -lean_object* x_109; -x_109 = lean_ctor_get(x_108, 3); -lean_inc(x_109); -if (lean_obj_tag(x_109) == 0) -{ -lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_110 = lean_ctor_get(x_108, 1); +lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +x_109 = l_Lean_Parser_tokenFn(x_1, x_106); +x_110 = lean_ctor_get(x_109, 3); lean_inc(x_110); -x_111 = l_Lean_Parser_tokenFn(x_1, x_108); -x_112 = lean_ctor_get(x_111, 3); -lean_inc(x_112); -if (lean_obj_tag(x_112) == 0) +if (lean_obj_tag(x_110) == 0) { -lean_object* x_113; lean_object* x_114; -x_113 = lean_ctor_get(x_111, 0); +lean_object* x_111; lean_object* x_112; +x_111 = lean_ctor_get(x_109, 0); +lean_inc(x_111); +x_112 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_111); +lean_dec(x_111); +if (lean_obj_tag(x_112) == 2) +{ +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = lean_ctor_get(x_112, 1); lean_inc(x_113); -x_114 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_113); -lean_dec(x_113); -if (lean_obj_tag(x_114) == 2) -{ -lean_object* x_115; lean_object* x_116; uint8_t x_117; -x_115 = lean_ctor_get(x_114, 1); -lean_inc(x_115); -lean_dec(x_114); -x_116 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_117 = lean_string_dec_eq(x_115, x_116); -lean_dec(x_115); -if (x_117 == 0) -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_118 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_119 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_118, x_110); -x_120 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_107); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_98, x_95); -lean_dec(x_95); -return x_122; -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_dec(x_110); -x_123 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_111, x_123, x_107); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_98, x_95); -lean_dec(x_95); -return x_125; -} -} -else -{ -lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -lean_dec(x_114); -x_126 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_127 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_126, x_110); -x_128 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_129 = l_Lean_Parser_ParserState_mkNode(x_127, x_128, x_107); -x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_98, x_95); -lean_dec(x_95); -return x_130; -} -} -else -{ -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_dec(x_112); -x_131 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_132 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_131, x_110); -x_133 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_134 = l_Lean_Parser_ParserState_mkNode(x_132, x_133, x_107); -x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_98, x_95); -lean_dec(x_95); -return x_135; +x_114 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_115 = lean_string_dec_eq(x_113, x_114); +lean_dec(x_113); +if (x_115 == 0) +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_116 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_116, x_108); +x_118 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_105); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_97, x_94); +lean_dec(x_94); +return x_120; +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_108); +x_121 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_109, x_121, x_105); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_97, x_94); +lean_dec(x_94); +return x_123; } } else { -lean_object* x_136; lean_object* x_137; lean_object* x_138; -lean_dec(x_109); +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_112); +x_124 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_125 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_124, x_108); +x_126 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_127 = l_Lean_Parser_ParserState_mkNode(x_125, x_126, x_105); +x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_97, x_94); +lean_dec(x_94); +return x_128; +} +} +else +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; +lean_dec(x_110); +x_129 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_130 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_129, x_108); +x_131 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_132 = l_Lean_Parser_ParserState_mkNode(x_130, x_131, x_105); +x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_97, x_94); +lean_dec(x_94); +return x_133; +} +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_107); lean_dec(x_1); -x_136 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_137 = l_Lean_Parser_ParserState_mkNode(x_108, x_136, x_107); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_98, x_95); -lean_dec(x_95); -return x_138; +x_134 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_135 = l_Lean_Parser_ParserState_mkNode(x_106, x_134, x_105); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_97, x_94); +lean_dec(x_94); +return x_136; } } -block_180: +block_178: { -lean_object* x_141; -x_141 = lean_ctor_get(x_140, 3); -lean_inc(x_141); -if (lean_obj_tag(x_141) == 0) +lean_object* x_139; +x_139 = lean_ctor_get(x_138, 3); +lean_inc(x_139); +if (lean_obj_tag(x_139) == 0) { -lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; -x_142 = lean_ctor_get(x_140, 0); +lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; +x_140 = lean_ctor_get(x_138, 0); +lean_inc(x_140); +x_141 = lean_array_get_size(x_140); +lean_dec(x_140); +x_142 = lean_ctor_get(x_138, 1); lean_inc(x_142); -x_143 = lean_array_get_size(x_142); +x_143 = l_Lean_Parser_termParser___closed__2; +x_144 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_145 = l_Lean_Parser_categoryParser___elambda__1(x_143, x_144, x_1, x_138); +x_146 = lean_ctor_get(x_145, 3); +lean_inc(x_146); +if (lean_obj_tag(x_146) == 0) +{ lean_dec(x_142); -x_144 = lean_ctor_get(x_140, 1); -lean_inc(x_144); -x_145 = l_Lean_Parser_termParser___closed__2; -x_146 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_147 = l_Lean_Parser_categoryParser___elambda__1(x_145, x_146, x_1, x_140); -x_148 = lean_ctor_get(x_147, 3); -lean_inc(x_148); -if (lean_obj_tag(x_148) == 0) -{ -lean_dec(x_144); -lean_dec(x_143); -x_108 = x_147; -goto block_139; -} -else -{ -lean_object* x_149; lean_object* x_150; uint8_t x_151; -x_149 = lean_ctor_get(x_148, 0); -lean_inc(x_149); -lean_dec(x_148); -x_150 = lean_ctor_get(x_147, 1); -lean_inc(x_150); -x_151 = lean_nat_dec_eq(x_150, x_144); -lean_dec(x_150); -if (x_151 == 0) -{ -lean_dec(x_149); -lean_dec(x_144); -lean_dec(x_143); -x_108 = x_147; -goto block_139; -} -else -{ -lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; -lean_inc(x_144); -x_152 = l_Lean_Parser_ParserState_restore(x_147, x_143, x_144); -lean_dec(x_143); -x_153 = lean_ctor_get(x_152, 0); -lean_inc(x_153); -x_154 = lean_array_get_size(x_153); -lean_dec(x_153); -x_155 = l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; -lean_inc(x_1); -x_156 = l_Lean_Parser_categoryParser___elambda__1(x_155, x_146, x_1, x_152); -x_157 = lean_ctor_get(x_156, 3); -lean_inc(x_157); -if (lean_obj_tag(x_157) == 0) -{ -lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; uint8_t x_163; -lean_inc(x_1); -x_158 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_stxQuot___elambda__1___spec__1(x_1, x_156); -x_159 = lean_ctor_get(x_158, 0); -lean_inc(x_159); -x_160 = lean_array_get_size(x_159); -lean_dec(x_159); -x_161 = lean_nat_sub(x_160, x_154); -lean_dec(x_160); -x_162 = lean_unsigned_to_nat(1u); -x_163 = lean_nat_dec_eq(x_161, x_162); -lean_dec(x_161); -if (x_163 == 0) -{ -lean_object* x_164; lean_object* x_165; lean_object* x_166; -x_164 = l_Lean_nullKind; -x_165 = l_Lean_Parser_ParserState_mkNode(x_158, x_164, x_154); -x_166 = l_Lean_Parser_mergeOrElseErrors(x_165, x_149, x_144); -lean_dec(x_144); -x_108 = x_166; -goto block_139; -} -else -{ -lean_object* x_167; -lean_dec(x_154); -x_167 = l_Lean_Parser_mergeOrElseErrors(x_158, x_149, x_144); -lean_dec(x_144); -x_108 = x_167; -goto block_139; -} -} -else -{ -lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; uint8_t x_172; -lean_dec(x_157); -x_168 = lean_ctor_get(x_156, 0); -lean_inc(x_168); -x_169 = lean_array_get_size(x_168); -lean_dec(x_168); -x_170 = lean_nat_sub(x_169, x_154); -lean_dec(x_169); -x_171 = lean_unsigned_to_nat(1u); -x_172 = lean_nat_dec_eq(x_170, x_171); -lean_dec(x_170); -if (x_172 == 0) -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; -x_173 = l_Lean_nullKind; -x_174 = l_Lean_Parser_ParserState_mkNode(x_156, x_173, x_154); -x_175 = l_Lean_Parser_mergeOrElseErrors(x_174, x_149, x_144); -lean_dec(x_144); -x_108 = x_175; -goto block_139; -} -else -{ -lean_object* x_176; -lean_dec(x_154); -x_176 = l_Lean_Parser_mergeOrElseErrors(x_156, x_149, x_144); -lean_dec(x_144); -x_108 = x_176; -goto block_139; -} -} -} -} -} -else -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_dec(x_141); -lean_dec(x_1); -x_177 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_178 = l_Lean_Parser_ParserState_mkNode(x_140, x_177, x_107); -x_179 = l_Lean_Parser_mergeOrElseErrors(x_178, x_98, x_95); -lean_dec(x_95); -return x_179; +x_106 = x_145; +goto block_137; +} +else +{ +lean_object* x_147; lean_object* x_148; uint8_t x_149; +x_147 = lean_ctor_get(x_146, 0); +lean_inc(x_147); +lean_dec(x_146); +x_148 = lean_ctor_get(x_145, 1); +lean_inc(x_148); +x_149 = lean_nat_dec_eq(x_148, x_142); +lean_dec(x_148); +if (x_149 == 0) +{ +lean_dec(x_147); +lean_dec(x_142); +lean_dec(x_141); +x_106 = x_145; +goto block_137; +} +else +{ +lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +lean_inc(x_142); +x_150 = l_Lean_Parser_ParserState_restore(x_145, x_141, x_142); +lean_dec(x_141); +x_151 = lean_ctor_get(x_150, 0); +lean_inc(x_151); +x_152 = lean_array_get_size(x_151); +lean_dec(x_151); +x_153 = l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; +lean_inc(x_1); +x_154 = l_Lean_Parser_categoryParser___elambda__1(x_153, x_144, x_1, x_150); +x_155 = lean_ctor_get(x_154, 3); +lean_inc(x_155); +if (lean_obj_tag(x_155) == 0) +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; +lean_inc(x_1); +x_156 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_stxQuot___elambda__1___spec__1(x_1, x_154); +x_157 = lean_ctor_get(x_156, 0); +lean_inc(x_157); +x_158 = lean_array_get_size(x_157); +lean_dec(x_157); +x_159 = lean_nat_sub(x_158, x_152); +lean_dec(x_158); +x_160 = lean_unsigned_to_nat(1u); +x_161 = lean_nat_dec_eq(x_159, x_160); +lean_dec(x_159); +if (x_161 == 0) +{ +lean_object* x_162; lean_object* x_163; lean_object* x_164; +x_162 = l_Lean_nullKind; +x_163 = l_Lean_Parser_ParserState_mkNode(x_156, x_162, x_152); +x_164 = l_Lean_Parser_mergeOrElseErrors(x_163, x_147, x_142); +lean_dec(x_142); +x_106 = x_164; +goto block_137; +} +else +{ +lean_object* x_165; +lean_dec(x_152); +x_165 = l_Lean_Parser_mergeOrElseErrors(x_156, x_147, x_142); +lean_dec(x_142); +x_106 = x_165; +goto block_137; +} +} +else +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; uint8_t x_170; +lean_dec(x_155); +x_166 = lean_ctor_get(x_154, 0); +lean_inc(x_166); +x_167 = lean_array_get_size(x_166); +lean_dec(x_166); +x_168 = lean_nat_sub(x_167, x_152); +lean_dec(x_167); +x_169 = lean_unsigned_to_nat(1u); +x_170 = lean_nat_dec_eq(x_168, x_169); +lean_dec(x_168); +if (x_170 == 0) +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; +x_171 = l_Lean_nullKind; +x_172 = l_Lean_Parser_ParserState_mkNode(x_154, x_171, x_152); +x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_147, x_142); +lean_dec(x_142); +x_106 = x_173; +goto block_137; +} +else +{ +lean_object* x_174; +lean_dec(x_152); +x_174 = l_Lean_Parser_mergeOrElseErrors(x_154, x_147, x_142); +lean_dec(x_142); +x_106 = x_174; +goto block_137; +} +} } } } else { -lean_object* x_195; -lean_dec(x_105); +lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_139); lean_dec(x_1); -x_195 = l_Lean_Parser_mergeOrElseErrors(x_104, x_98, x_95); -lean_dec(x_95); -return x_195; +x_175 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_176 = l_Lean_Parser_ParserState_mkNode(x_138, x_175, x_105); +x_177 = l_Lean_Parser_mergeOrElseErrors(x_176, x_97, x_94); +lean_dec(x_94); +return x_177; +} +} +} +else +{ +lean_object* x_193; +lean_dec(x_103); +lean_dec(x_1); +x_193 = l_Lean_Parser_mergeOrElseErrors(x_102, x_97, x_94); +lean_dec(x_94); +return x_193; } } } @@ -2348,224 +2402,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Command_docComment___elambda__1___closed__8; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_Command_commentBody___elambda__1(x_1, x_8); -lean_dec(x_1); -x_11 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Command_docComment___elambda__1___closed__8; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_Command_commentBody___elambda__1(x_1, x_11); +lean_dec(x_1); +x_14 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Command_docComment___elambda__1___closed__8; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Command_docComment___elambda__1___closed__8; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_Command_commentBody___elambda__1(x_1, x_41); -lean_dec(x_1); -x_44 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); -lean_dec(x_1); -x_47 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Command_docComment___elambda__1___closed__11; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; } +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_Command_commentBody___elambda__1(x_1, x_47); +lean_dec(x_1); +x_50 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +lean_dec(x_1); +x_53 = l_Lean_Parser_Command_docComment___elambda__1___closed__4; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; +} +} +} +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; } } } @@ -2606,16 +2691,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_docComment___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_docComment___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_docComment___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_docComment___elambda__1___closed__6; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_docComment___closed__3; +x_3 = l_Lean_Parser_Command_docComment___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_docComment___closed__5() { +lean_object* _init_l_Lean_Parser_Command_docComment___closed__6() { _start: { lean_object* x_1; @@ -2623,12 +2718,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_docComment___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_docComment___closed__6() { +lean_object* _init_l_Lean_Parser_Command_docComment___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_docComment___closed__4; -x_2 = l_Lean_Parser_Command_docComment___closed__5; +x_1 = l_Lean_Parser_Command_docComment___closed__5; +x_2 = l_Lean_Parser_Command_docComment___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -2639,7 +2734,7 @@ lean_object* _init_l_Lean_Parser_Command_docComment() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_docComment___closed__6; +x_1 = l_Lean_Parser_Command_docComment___closed__7; return x_1; } } @@ -2909,118 +3004,149 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_rawIdent___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_attrInstance___elambda__1___spec__1(x_1, x_8); -x_13 = l_Lean_nullKind; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -x_15 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_8, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) +x_11 = l_Lean_Parser_rawIdent___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_1); -return x_22; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_attrInstance___elambda__1___spec__1(x_1, x_11); +x_16 = l_Lean_nullKind; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_14); +x_18 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_11, x_20, x_10); +return x_21; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -lean_inc(x_1); -x_30 = l_Lean_Parser_rawIdent___elambda__1(x_1, x_27); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +if (x_29 == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_32 = lean_ctor_get(x_30, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_attrInstance___elambda__1___spec__1(x_1, x_30); -x_35 = l_Lean_nullKind; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_33); -x_37 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_31); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +lean_inc(x_1); +x_36 = l_Lean_Parser_rawIdent___elambda__1(x_1, x_32); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_attrInstance___elambda__1___spec__1(x_1, x_36); +x_41 = l_Lean_nullKind; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_39); +x_43 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_37); lean_dec(x_1); -x_40 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_30, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_46 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_36, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; +lean_dec(x_33); +lean_dec(x_1); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -3063,16 +3189,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_attrInstance___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_attrInstance___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_attrInstance___closed__3; +x_3 = l_Lean_Parser_Command_attrInstance___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__5() { +lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__6() { _start: { lean_object* x_1; @@ -3080,12 +3216,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_attrInstance___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__6() { +lean_object* _init_l_Lean_Parser_Command_attrInstance___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_attrInstance___closed__4; -x_2 = l_Lean_Parser_Command_attrInstance___closed__5; +x_1 = l_Lean_Parser_Command_attrInstance___closed__5; +x_2 = l_Lean_Parser_Command_attrInstance___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3096,7 +3232,7 @@ lean_object* _init_l_Lean_Parser_Command_attrInstance() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_attrInstance___closed__6; +x_1 = l_Lean_Parser_Command_attrInstance___closed__7; return x_1; } } @@ -3424,379 +3560,410 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_40 = lean_ctor_get(x_2, 1); -lean_inc(x_40); -lean_inc(x_1); -x_41 = l_Lean_Parser_tokenFn(x_1, x_2); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); -lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_attributes___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); -lean_dec(x_45); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_40); -x_8 = x_49; -goto block_39; -} -else -{ -lean_dec(x_40); -x_8 = x_41; -goto block_39; -} -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_44); -x_50 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_50, x_40); -x_8 = x_51; -goto block_39; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_42); -x_52 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_52, x_40); -x_8 = x_53; -goto block_39; -} -block_39: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -uint8_t x_10; lean_object* x_11; lean_object* x_12; -x_10 = 0; +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_43 = lean_ctor_get(x_7, 1); +lean_inc(x_43); lean_inc(x_1); -x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_10, x_10, x_1, x_8); +x_44 = l_Lean_Parser_tokenFn(x_1, x_7); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Command_attributes___elambda__1___closed__6; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); +x_11 = x_52; +goto block_42; +} +else +{ +lean_dec(x_43); +x_11 = x_44; +goto block_42; +} +} +else +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); +x_11 = x_54; +goto block_42; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); +x_11 = x_56; +goto block_42; +} +block_42: +{ +lean_object* x_12; x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 0; +lean_inc(x_1); +x_14 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_13, x_13, x_1, x_11); x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_14, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); -x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); -lean_dec(x_16); -if (lean_obj_tag(x_17) == 2) -{ -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 1); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); lean_inc(x_18); -lean_dec(x_17); -x_19 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_20 = lean_string_dec_eq(x_18, x_19); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_28 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_20); +x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); +x_32 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_dec(x_18); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_21 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_13); -x_25 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_7); -return x_26; +x_34 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); +x_36 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; } } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_27 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); -x_29 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_7); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_object* x_38; lean_object* x_39; lean_dec(x_15); -x_31 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); -x_33 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_7); -return x_34; +lean_dec(x_1); +x_38 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); +return x_39; } } else { -lean_object* x_35; lean_object* x_36; +lean_object* x_40; lean_object* x_41; lean_dec(x_12); lean_dec(x_1); -x_35 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_7); -return x_36; +x_40 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); +return x_41; +} } } else { -lean_object* x_37; lean_object* x_38; -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -x_37 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_8, x_37, x_7); -return x_38; -} +return x_7; } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_2, 0); -lean_inc(x_54); -x_55 = lean_array_get_size(x_54); -lean_dec(x_54); -x_56 = lean_ctor_get(x_2, 1); -lean_inc(x_56); -lean_inc(x_1); -x_57 = lean_apply_2(x_4, x_1, x_2); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) -{ -lean_dec(x_56); -lean_dec(x_55); -lean_dec(x_1); -return x_57; -} -else -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 0); +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_2, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_2, 1); lean_inc(x_59); -lean_dec(x_58); -x_60 = lean_ctor_get(x_57, 1); -lean_inc(x_60); -x_61 = lean_nat_dec_eq(x_60, x_56); -lean_dec(x_60); -if (x_61 == 0) +lean_inc(x_1); +x_60 = lean_apply_2(x_4, x_1, x_2); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { lean_dec(x_59); -lean_dec(x_56); -lean_dec(x_55); +lean_dec(x_58); lean_dec(x_1); -return x_57; +return x_60; } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_103; lean_object* x_104; -lean_inc(x_56); -x_62 = l_Lean_Parser_ParserState_restore(x_57, x_55, x_56); -lean_dec(x_55); -x_63 = lean_ctor_get(x_62, 0); +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +lean_dec(x_61); +x_63 = lean_ctor_get(x_60, 1); lean_inc(x_63); -x_64 = lean_array_get_size(x_63); +x_64 = lean_nat_dec_eq(x_63, x_59); lean_dec(x_63); +if (x_64 == 0) +{ +lean_dec(x_62); +lean_dec(x_59); +lean_dec(x_58); +lean_dec(x_1); +return x_60; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_inc(x_59); +x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +lean_dec(x_58); +x_66 = lean_unsigned_to_nat(1024u); +x_67 = l_Lean_Parser_checkPrecFn(x_66, x_1, x_65); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_109 = lean_ctor_get(x_67, 1); +lean_inc(x_109); lean_inc(x_1); -x_103 = l_Lean_Parser_tokenFn(x_1, x_62); -x_104 = lean_ctor_get(x_103, 3); -lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) -{ -lean_object* x_105; lean_object* x_106; -x_105 = lean_ctor_get(x_103, 0); -lean_inc(x_105); -x_106 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_105); -lean_dec(x_105); -if (lean_obj_tag(x_106) == 2) -{ -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = lean_ctor_get(x_106, 1); -lean_inc(x_107); -lean_dec(x_106); -x_108 = l_Lean_Parser_Command_attributes___elambda__1___closed__6; -x_109 = lean_string_dec_eq(x_107, x_108); -lean_dec(x_107); -if (x_109 == 0) -{ -lean_object* x_110; lean_object* x_111; -x_110 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -lean_inc(x_56); -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_110, x_56); -x_65 = x_111; -goto block_102; -} -else -{ -x_65 = x_103; -goto block_102; -} -} -else +x_110 = l_Lean_Parser_tokenFn(x_1, x_67); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { lean_object* x_112; lean_object* x_113; -lean_dec(x_106); -x_112 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -lean_inc(x_56); -x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_112, x_56); -x_65 = x_113; -goto block_102; +x_112 = lean_ctor_get(x_110, 0); +lean_inc(x_112); +x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_112); +if (lean_obj_tag(x_113) == 2) +{ +lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_114 = lean_ctor_get(x_113, 1); +lean_inc(x_114); +lean_dec(x_113); +x_115 = l_Lean_Parser_Command_attributes___elambda__1___closed__6; +x_116 = lean_string_dec_eq(x_114, x_115); +lean_dec(x_114); +if (x_116 == 0) +{ +lean_object* x_117; lean_object* x_118; +x_117 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); +x_71 = x_118; +goto block_108; +} +else +{ +lean_dec(x_109); +x_71 = x_110; +goto block_108; } } else { -lean_object* x_114; lean_object* x_115; -lean_dec(x_104); -x_114 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; -lean_inc(x_56); -x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_114, x_56); -x_65 = x_115; -goto block_102; +lean_object* x_119; lean_object* x_120; +lean_dec(x_113); +x_119 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); +x_71 = x_120; +goto block_108; } -block_102: +} +else { -lean_object* x_66; -x_66 = lean_ctor_get(x_65, 3); -lean_inc(x_66); -if (lean_obj_tag(x_66) == 0) +lean_object* x_121; lean_object* x_122; +lean_dec(x_111); +x_121 = l_Lean_Parser_Command_attributes___elambda__1___closed__9; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); +x_71 = x_122; +goto block_108; +} +block_108: { -uint8_t x_67; lean_object* x_68; lean_object* x_69; -x_67 = 0; -lean_inc(x_1); -x_68 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_67, x_67, x_1, x_65); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_70 = lean_ctor_get(x_68, 1); -lean_inc(x_70); -x_71 = l_Lean_Parser_tokenFn(x_1, x_68); +lean_object* x_72; x_72 = lean_ctor_get(x_71, 3); lean_inc(x_72); if (lean_obj_tag(x_72) == 0) { -lean_object* x_73; lean_object* x_74; -x_73 = lean_ctor_get(x_71, 0); -lean_inc(x_73); -x_74 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_73); -lean_dec(x_73); -if (lean_obj_tag(x_74) == 2) -{ -lean_object* x_75; lean_object* x_76; uint8_t x_77; -x_75 = lean_ctor_get(x_74, 1); +uint8_t x_73; lean_object* x_74; lean_object* x_75; +x_73 = 0; +lean_inc(x_1); +x_74 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_73, x_73, x_1, x_71); +x_75 = lean_ctor_get(x_74, 3); lean_inc(x_75); -lean_dec(x_74); -x_76 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_77 = lean_string_dec_eq(x_75, x_76); -lean_dec(x_75); -if (x_77 == 0) +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_78 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_78, x_70); -x_80 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_64); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_59, x_56); -lean_dec(x_56); -return x_82; +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +x_77 = l_Lean_Parser_tokenFn(x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) +{ +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); +lean_dec(x_79); +if (lean_obj_tag(x_80) == 2) +{ +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 1); +lean_inc(x_81); +lean_dec(x_80); +x_82 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_83 = lean_string_dec_eq(x_81, x_82); +lean_dec(x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); +x_86 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_70); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); +lean_dec(x_59); +return x_88; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_70); -x_83 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_71, x_83, x_64); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_59, x_56); -lean_dec(x_56); -return x_85; +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_76); +x_89 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_70); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); +lean_dec(x_59); +return x_91; } } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -lean_dec(x_74); -x_86 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_86, x_70); -x_88 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_64); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_59, x_56); -lean_dec(x_56); -return x_90; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_80); +x_92 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); +x_94 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_70); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); +lean_dec(x_59); +return x_96; } } else { -lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -lean_dec(x_72); -x_91 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_92 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_91, x_70); -x_93 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_64); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_59, x_56); -lean_dec(x_56); -return x_95; -} -} -else -{ -lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_69); -lean_dec(x_1); -x_96 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_68, x_96, x_64); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_59, x_56); -lean_dec(x_56); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_66); -lean_dec(x_1); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_78); +x_97 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); x_99 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_65, x_99, x_64); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_59, x_56); -lean_dec(x_56); +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_70); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); +lean_dec(x_59); return x_101; } } +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_75); +lean_dec(x_1); +x_102 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_70); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); +lean_dec(x_59); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_72); +lean_dec(x_1); +x_105 = l_Lean_Parser_Command_attributes___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_71, x_105, x_70); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); +lean_dec(x_59); +return x_107; +} +} +} +else +{ +lean_object* x_123; +lean_dec(x_68); +lean_dec(x_1); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_67, x_62, x_59); +lean_dec(x_59); +return x_123; +} } } } @@ -3856,16 +4023,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_attributes___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_attributes___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_attributes___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_attributes___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_attributes___closed__5; +x_3 = l_Lean_Parser_Command_attributes___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_attributes___closed__7() { +lean_object* _init_l_Lean_Parser_Command_attributes___closed__8() { _start: { lean_object* x_1; @@ -3873,12 +4050,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_attributes___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_attributes___closed__8() { +lean_object* _init_l_Lean_Parser_Command_attributes___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_attributes___closed__6; -x_2 = l_Lean_Parser_Command_attributes___closed__7; +x_1 = l_Lean_Parser_Command_attributes___closed__7; +x_2 = l_Lean_Parser_Command_attributes___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3889,7 +4066,7 @@ lean_object* _init_l_Lean_Parser_Command_attributes() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_attributes___closed__8; +x_1 = l_Lean_Parser_Command_attributes___closed__9; return x_1; } } @@ -4019,188 +4196,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_private___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_private___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_private___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_private___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_private___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_private___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_private___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_private___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_private___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_private___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_private___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_private___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_private___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -4229,16 +4437,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_private___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_private___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_private___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_private___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_private___closed__2; +x_3 = l_Lean_Parser_Command_private___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_private___closed__4() { +lean_object* _init_l_Lean_Parser_Command_private___closed__5() { _start: { lean_object* x_1; @@ -4246,12 +4464,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_private___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_private___closed__5() { +lean_object* _init_l_Lean_Parser_Command_private___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_private___closed__3; -x_2 = l_Lean_Parser_Command_private___closed__4; +x_1 = l_Lean_Parser_Command_private___closed__4; +x_2 = l_Lean_Parser_Command_private___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4262,7 +4480,7 @@ lean_object* _init_l_Lean_Parser_Command_private() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_private___closed__5; +x_1 = l_Lean_Parser_Command_private___closed__6; return x_1; } } @@ -4366,188 +4584,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_protected___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_protected___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_protected___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_protected___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_protected___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_protected___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_protected___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_protected___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -4576,16 +4825,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_protected___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_protected___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_protected___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_protected___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_protected___closed__2; +x_3 = l_Lean_Parser_Command_protected___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_protected___closed__4() { +lean_object* _init_l_Lean_Parser_Command_protected___closed__5() { _start: { lean_object* x_1; @@ -4593,12 +4852,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_protected___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_protected___closed__5() { +lean_object* _init_l_Lean_Parser_Command_protected___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_protected___closed__3; -x_2 = l_Lean_Parser_Command_protected___closed__4; +x_1 = l_Lean_Parser_Command_protected___closed__4; +x_2 = l_Lean_Parser_Command_protected___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4609,7 +4868,7 @@ lean_object* _init_l_Lean_Parser_Command_protected() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_protected___closed__5; +x_1 = l_Lean_Parser_Command_protected___closed__6; return x_1; } } @@ -4808,188 +5067,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -5018,16 +5308,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_noncomputable___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_noncomputable___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_noncomputable___closed__2; +x_3 = l_Lean_Parser_Command_noncomputable___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__4() { +lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__5() { _start: { lean_object* x_1; @@ -5035,12 +5335,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_noncomputable___elambda__ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__5() { +lean_object* _init_l_Lean_Parser_Command_noncomputable___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_noncomputable___closed__3; -x_2 = l_Lean_Parser_Command_noncomputable___closed__4; +x_1 = l_Lean_Parser_Command_noncomputable___closed__4; +x_2 = l_Lean_Parser_Command_noncomputable___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5051,7 +5351,7 @@ lean_object* _init_l_Lean_Parser_Command_noncomputable() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_noncomputable___closed__5; +x_1 = l_Lean_Parser_Command_noncomputable___closed__6; return x_1; } } @@ -5155,188 +5455,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_unsafe___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_unsafe___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_unsafe___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_unsafe___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_unsafe___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_unsafe___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -5365,16 +5696,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_unsafe___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_unsafe___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_unsafe___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_unsafe___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_unsafe___closed__2; +x_3 = l_Lean_Parser_Command_unsafe___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_unsafe___closed__4() { +lean_object* _init_l_Lean_Parser_Command_unsafe___closed__5() { _start: { lean_object* x_1; @@ -5382,12 +5723,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_unsafe___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_unsafe___closed__5() { +lean_object* _init_l_Lean_Parser_Command_unsafe___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_unsafe___closed__3; -x_2 = l_Lean_Parser_Command_unsafe___closed__4; +x_1 = l_Lean_Parser_Command_unsafe___closed__4; +x_2 = l_Lean_Parser_Command_unsafe___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5398,7 +5739,7 @@ lean_object* _init_l_Lean_Parser_Command_unsafe() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_unsafe___closed__5; +x_1 = l_Lean_Parser_Command_unsafe___closed__6; return x_1; } } @@ -5502,188 +5843,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_partial___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_partial___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_partial___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_partial___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_partial___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_partial___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_partial___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_partial___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -5712,16 +6084,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_partial___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_partial___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_partial___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_partial___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_partial___closed__2; +x_3 = l_Lean_Parser_Command_partial___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_partial___closed__4() { +lean_object* _init_l_Lean_Parser_Command_partial___closed__5() { _start: { lean_object* x_1; @@ -5729,12 +6111,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_partial___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_partial___closed__5() { +lean_object* _init_l_Lean_Parser_Command_partial___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_partial___closed__3; -x_2 = l_Lean_Parser_Command_partial___closed__4; +x_1 = l_Lean_Parser_Command_partial___closed__4; +x_2 = l_Lean_Parser_Command_partial___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5745,7 +6127,7 @@ lean_object* _init_l_Lean_Parser_Command_partial() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_partial___closed__5; +x_1 = l_Lean_Parser_Command_partial___closed__6; return x_1; } } @@ -5800,819 +6182,853 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_33; lean_object* x_52; lean_object* x_71; lean_object* x_90; lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_109 = lean_ctor_get(x_2, 1); -lean_inc(x_109); -lean_inc(x_1); -x_110 = l_Lean_Parser_Command_docComment___elambda__1(x_1, x_2); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_112; lean_object* x_113; -lean_dec(x_109); -x_112 = l_Lean_nullKind; -lean_inc(x_7); -x_113 = l_Lean_Parser_ParserState_mkNode(x_110, x_112, x_7); -x_90 = x_113; -goto block_108; -} -else -{ -lean_object* x_114; uint8_t x_115; -lean_dec(x_111); -x_114 = lean_ctor_get(x_110, 1); -lean_inc(x_114); -x_115 = lean_nat_dec_eq(x_114, x_109); -lean_dec(x_114); -if (x_115 == 0) -{ -lean_object* x_116; lean_object* x_117; -lean_dec(x_109); -x_116 = l_Lean_nullKind; -lean_inc(x_7); -x_117 = l_Lean_Parser_ParserState_mkNode(x_110, x_116, x_7); -x_90 = x_117; -goto block_108; -} -else -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_118 = l_Lean_Parser_ParserState_restore(x_110, x_7, x_109); -x_119 = l_Lean_nullKind; -lean_inc(x_7); -x_120 = l_Lean_Parser_ParserState_mkNode(x_118, x_119, x_7); -x_90 = x_120; -goto block_108; -} -} -block_32: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_36; lean_object* x_55; lean_object* x_74; lean_object* x_93; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_Command_partial___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); -x_17 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; uint8_t x_20; -lean_dec(x_14); -x_19 = lean_ctor_get(x_13, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_12); -lean_dec(x_19); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_12); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_13, x_21, x_11); -x_23 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -x_28 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_112 = lean_ctor_get(x_7, 1); +lean_inc(x_112); +lean_inc(x_1); +x_113 = l_Lean_Parser_Command_docComment___elambda__1(x_1, x_7); +x_114 = lean_ctor_get(x_113, 3); +lean_inc(x_114); +if (lean_obj_tag(x_114) == 0) +{ +lean_object* x_115; lean_object* x_116; +lean_dec(x_112); +x_115 = l_Lean_nullKind; +lean_inc(x_10); +x_116 = l_Lean_Parser_ParserState_mkNode(x_113, x_115, x_10); +x_93 = x_116; +goto block_111; +} +else +{ +lean_object* x_117; uint8_t x_118; +lean_dec(x_114); +x_117 = lean_ctor_get(x_113, 1); +lean_inc(x_117); +x_118 = lean_nat_dec_eq(x_117, x_112); +lean_dec(x_117); +if (x_118 == 0) +{ +lean_object* x_119; lean_object* x_120; +lean_dec(x_112); +x_119 = l_Lean_nullKind; +lean_inc(x_10); +x_120 = l_Lean_Parser_ParserState_mkNode(x_113, x_119, x_10); +x_93 = x_120; +goto block_111; +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_121 = l_Lean_Parser_ParserState_restore(x_113, x_10, x_112); +x_122 = l_Lean_nullKind; +lean_inc(x_10); +x_123 = l_Lean_Parser_ParserState_mkNode(x_121, x_122, x_10); +x_93 = x_123; +goto block_111; +} +} +block_35: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_Command_partial___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; uint8_t x_23; +lean_dec(x_17); +x_22 = lean_ctor_get(x_16, 1); +lean_inc(x_22); +x_23 = lean_nat_dec_eq(x_22, x_15); +lean_dec(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_15); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_16, x_24, x_14); +x_26 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_28 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_14); +x_31 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_12); lean_dec(x_1); -x_30 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_8, x_30, x_7); -return x_31; +x_33 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_11, x_33, x_10); +return x_34; } } -block_51: +block_54: { -lean_object* x_34; -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_33, 0); -lean_inc(x_35); -x_36 = lean_array_get_size(x_35); -lean_dec(x_35); -x_37 = lean_ctor_get(x_33, 1); +lean_object* x_37; +x_37 = lean_ctor_get(x_36, 3); lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = lean_ctor_get(x_36, 1); +lean_inc(x_40); lean_inc(x_1); -x_38 = l_Lean_Parser_Command_unsafe___elambda__1(x_1, x_33); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_37); -x_40 = l_Lean_nullKind; -x_41 = l_Lean_Parser_ParserState_mkNode(x_38, x_40, x_36); -x_8 = x_41; -goto block_32; -} -else -{ -lean_object* x_42; uint8_t x_43; -lean_dec(x_39); -x_42 = lean_ctor_get(x_38, 1); +x_41 = l_Lean_Parser_Command_unsafe___elambda__1(x_1, x_36); +x_42 = lean_ctor_get(x_41, 3); lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_37); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_40); +x_43 = l_Lean_nullKind; +x_44 = l_Lean_Parser_ParserState_mkNode(x_41, x_43, x_39); +x_11 = x_44; +goto block_35; +} +else +{ +lean_object* x_45; uint8_t x_46; lean_dec(x_42); -if (x_43 == 0) +x_45 = lean_ctor_get(x_41, 1); +lean_inc(x_45); +x_46 = lean_nat_dec_eq(x_45, x_40); +lean_dec(x_45); +if (x_46 == 0) { -lean_object* x_44; lean_object* x_45; -lean_dec(x_37); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_38, x_44, x_36); -x_8 = x_45; -goto block_32; -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_object* x_47; lean_object* x_48; +lean_dec(x_40); x_47 = l_Lean_nullKind; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_36); -x_8 = x_48; -goto block_32; +x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_39); +x_11 = x_48; +goto block_35; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); +x_50 = l_Lean_nullKind; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_39); +x_11 = x_51; +goto block_35; } } } else { -lean_object* x_49; lean_object* x_50; -lean_dec(x_34); +lean_object* x_52; lean_object* x_53; +lean_dec(x_37); lean_dec(x_1); -x_49 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_33, x_49, x_7); -return x_50; +x_52 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_36, x_52, x_10); +return x_53; } } -block_70: +block_73: { -lean_object* x_53; -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = lean_array_get_size(x_54); -lean_dec(x_54); -x_56 = lean_ctor_get(x_52, 1); +lean_object* x_56; +x_56 = lean_ctor_get(x_55, 3); lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_55, 1); +lean_inc(x_59); lean_inc(x_1); -x_57 = l_Lean_Parser_Command_noncomputable___elambda__1(x_1, x_52); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) -{ -lean_object* x_59; lean_object* x_60; -lean_dec(x_56); -x_59 = l_Lean_nullKind; -x_60 = l_Lean_Parser_ParserState_mkNode(x_57, x_59, x_55); -x_33 = x_60; -goto block_51; -} -else -{ -lean_object* x_61; uint8_t x_62; -lean_dec(x_58); -x_61 = lean_ctor_get(x_57, 1); +x_60 = l_Lean_Parser_Command_noncomputable___elambda__1(x_1, x_55); +x_61 = lean_ctor_get(x_60, 3); lean_inc(x_61); -x_62 = lean_nat_dec_eq(x_61, x_56); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_59); +x_62 = l_Lean_nullKind; +x_63 = l_Lean_Parser_ParserState_mkNode(x_60, x_62, x_58); +x_36 = x_63; +goto block_54; +} +else +{ +lean_object* x_64; uint8_t x_65; lean_dec(x_61); -if (x_62 == 0) +x_64 = lean_ctor_get(x_60, 1); +lean_inc(x_64); +x_65 = lean_nat_dec_eq(x_64, x_59); +lean_dec(x_64); +if (x_65 == 0) { -lean_object* x_63; lean_object* x_64; -lean_dec(x_56); -x_63 = l_Lean_nullKind; -x_64 = l_Lean_Parser_ParserState_mkNode(x_57, x_63, x_55); -x_33 = x_64; -goto block_51; -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = l_Lean_Parser_ParserState_restore(x_57, x_55, x_56); +lean_object* x_66; lean_object* x_67; +lean_dec(x_59); x_66 = l_Lean_nullKind; -x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_55); -x_33 = x_67; -goto block_51; +x_67 = l_Lean_Parser_ParserState_mkNode(x_60, x_66, x_58); +x_36 = x_67; +goto block_54; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +x_69 = l_Lean_nullKind; +x_70 = l_Lean_Parser_ParserState_mkNode(x_68, x_69, x_58); +x_36 = x_70; +goto block_54; } } } else { -lean_object* x_68; lean_object* x_69; -lean_dec(x_53); +lean_object* x_71; lean_object* x_72; +lean_dec(x_56); lean_dec(x_1); -x_68 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_52, x_68, x_7); -return x_69; +x_71 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_10); +return x_72; } } -block_89: +block_92: { -lean_object* x_72; -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_73 = lean_ctor_get(x_71, 0); -lean_inc(x_73); -x_74 = lean_array_get_size(x_73); -lean_dec(x_73); -x_75 = lean_ctor_get(x_71, 1); +lean_object* x_75; +x_75 = lean_ctor_get(x_74, 3); lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_74, 0); +lean_inc(x_76); +x_77 = lean_array_get_size(x_76); +lean_dec(x_76); +x_78 = lean_ctor_get(x_74, 1); +lean_inc(x_78); lean_inc(x_1); -x_76 = l_Lean_Parser_Command_visibility___elambda__1(x_1, x_71); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_75); -x_78 = l_Lean_nullKind; -x_79 = l_Lean_Parser_ParserState_mkNode(x_76, x_78, x_74); -x_52 = x_79; -goto block_70; -} -else -{ -lean_object* x_80; uint8_t x_81; -lean_dec(x_77); -x_80 = lean_ctor_get(x_76, 1); +x_79 = l_Lean_Parser_Command_visibility___elambda__1(x_1, x_74); +x_80 = lean_ctor_get(x_79, 3); lean_inc(x_80); -x_81 = lean_nat_dec_eq(x_80, x_75); +if (lean_obj_tag(x_80) == 0) +{ +lean_object* x_81; lean_object* x_82; +lean_dec(x_78); +x_81 = l_Lean_nullKind; +x_82 = l_Lean_Parser_ParserState_mkNode(x_79, x_81, x_77); +x_55 = x_82; +goto block_73; +} +else +{ +lean_object* x_83; uint8_t x_84; lean_dec(x_80); -if (x_81 == 0) +x_83 = lean_ctor_get(x_79, 1); +lean_inc(x_83); +x_84 = lean_nat_dec_eq(x_83, x_78); +lean_dec(x_83); +if (x_84 == 0) { -lean_object* x_82; lean_object* x_83; -lean_dec(x_75); -x_82 = l_Lean_nullKind; -x_83 = l_Lean_Parser_ParserState_mkNode(x_76, x_82, x_74); -x_52 = x_83; -goto block_70; -} -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_84 = l_Lean_Parser_ParserState_restore(x_76, x_74, x_75); +lean_object* x_85; lean_object* x_86; +lean_dec(x_78); x_85 = l_Lean_nullKind; -x_86 = l_Lean_Parser_ParserState_mkNode(x_84, x_85, x_74); -x_52 = x_86; -goto block_70; +x_86 = l_Lean_Parser_ParserState_mkNode(x_79, x_85, x_77); +x_55 = x_86; +goto block_73; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_87 = l_Lean_Parser_ParserState_restore(x_79, x_77, x_78); +x_88 = l_Lean_nullKind; +x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_77); +x_55 = x_89; +goto block_73; } } } else { -lean_object* x_87; lean_object* x_88; -lean_dec(x_72); +lean_object* x_90; lean_object* x_91; +lean_dec(x_75); lean_dec(x_1); -x_87 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_88 = l_Lean_Parser_ParserState_mkNode(x_71, x_87, x_7); -return x_88; +x_90 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_91 = l_Lean_Parser_ParserState_mkNode(x_74, x_90, x_10); +return x_91; } } -block_108: +block_111: { -lean_object* x_91; -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_92 = lean_ctor_get(x_90, 0); -lean_inc(x_92); -x_93 = lean_array_get_size(x_92); -lean_dec(x_92); -x_94 = lean_ctor_get(x_90, 1); +lean_object* x_94; +x_94 = lean_ctor_get(x_93, 3); lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_95 = lean_ctor_get(x_93, 0); +lean_inc(x_95); +x_96 = lean_array_get_size(x_95); +lean_dec(x_95); +x_97 = lean_ctor_get(x_93, 1); +lean_inc(x_97); lean_inc(x_1); -x_95 = l_Lean_Parser_Command_attributes___elambda__1(x_1, x_90); -x_96 = lean_ctor_get(x_95, 3); -lean_inc(x_96); -if (lean_obj_tag(x_96) == 0) -{ -lean_object* x_97; lean_object* x_98; -lean_dec(x_94); -x_97 = l_Lean_nullKind; -x_98 = l_Lean_Parser_ParserState_mkNode(x_95, x_97, x_93); -x_71 = x_98; -goto block_89; -} -else -{ -lean_object* x_99; uint8_t x_100; -lean_dec(x_96); -x_99 = lean_ctor_get(x_95, 1); +x_98 = l_Lean_Parser_Command_attributes___elambda__1(x_1, x_93); +x_99 = lean_ctor_get(x_98, 3); lean_inc(x_99); -x_100 = lean_nat_dec_eq(x_99, x_94); +if (lean_obj_tag(x_99) == 0) +{ +lean_object* x_100; lean_object* x_101; +lean_dec(x_97); +x_100 = l_Lean_nullKind; +x_101 = l_Lean_Parser_ParserState_mkNode(x_98, x_100, x_96); +x_74 = x_101; +goto block_92; +} +else +{ +lean_object* x_102; uint8_t x_103; lean_dec(x_99); -if (x_100 == 0) +x_102 = lean_ctor_get(x_98, 1); +lean_inc(x_102); +x_103 = lean_nat_dec_eq(x_102, x_97); +lean_dec(x_102); +if (x_103 == 0) { -lean_object* x_101; lean_object* x_102; -lean_dec(x_94); -x_101 = l_Lean_nullKind; -x_102 = l_Lean_Parser_ParserState_mkNode(x_95, x_101, x_93); -x_71 = x_102; -goto block_89; -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; -x_103 = l_Lean_Parser_ParserState_restore(x_95, x_93, x_94); +lean_object* x_104; lean_object* x_105; +lean_dec(x_97); x_104 = l_Lean_nullKind; -x_105 = l_Lean_Parser_ParserState_mkNode(x_103, x_104, x_93); -x_71 = x_105; -goto block_89; +x_105 = l_Lean_Parser_ParserState_mkNode(x_98, x_104, x_96); +x_74 = x_105; +goto block_92; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = l_Lean_Parser_ParserState_restore(x_98, x_96, x_97); +x_107 = l_Lean_nullKind; +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_96); +x_74 = x_108; +goto block_92; } } } else { -lean_object* x_106; lean_object* x_107; -lean_dec(x_91); +lean_object* x_109; lean_object* x_110; +lean_dec(x_94); lean_dec(x_1); -x_106 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_90, x_106, x_7); -return x_107; +x_109 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_93, x_109, x_10); +return x_110; } } } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; -x_121 = lean_ctor_get(x_2, 0); -lean_inc(x_121); -x_122 = lean_array_get_size(x_121); -lean_dec(x_121); -x_123 = lean_ctor_get(x_2, 1); -lean_inc(x_123); -lean_inc(x_1); -x_124 = lean_apply_2(x_4, x_1, x_2); -x_125 = lean_ctor_get(x_124, 3); -lean_inc(x_125); -if (lean_obj_tag(x_125) == 0) -{ -lean_dec(x_123); -lean_dec(x_122); +lean_dec(x_8); lean_dec(x_1); -return x_124; +return x_7; +} } else { -lean_object* x_126; lean_object* x_127; uint8_t x_128; -x_126 = lean_ctor_get(x_125, 0); +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_124 = lean_ctor_get(x_2, 0); +lean_inc(x_124); +x_125 = lean_array_get_size(x_124); +lean_dec(x_124); +x_126 = lean_ctor_get(x_2, 1); lean_inc(x_126); -lean_dec(x_125); -x_127 = lean_ctor_get(x_124, 1); -lean_inc(x_127); -x_128 = lean_nat_dec_eq(x_127, x_123); -lean_dec(x_127); -if (x_128 == 0) +lean_inc(x_1); +x_127 = lean_apply_2(x_4, x_1, x_2); +x_128 = lean_ctor_get(x_127, 3); +lean_inc(x_128); +if (lean_obj_tag(x_128) == 0) { lean_dec(x_126); -lean_dec(x_123); -lean_dec(x_122); +lean_dec(x_125); lean_dec(x_1); -return x_124; +return x_127; } else { -lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_161; lean_object* x_181; lean_object* x_201; lean_object* x_221; lean_object* x_241; lean_object* x_242; -lean_inc(x_123); -x_129 = l_Lean_Parser_ParserState_restore(x_124, x_122, x_123); -lean_dec(x_122); -x_130 = lean_ctor_get(x_129, 0); +lean_object* x_129; lean_object* x_130; uint8_t x_131; +x_129 = lean_ctor_get(x_128, 0); +lean_inc(x_129); +lean_dec(x_128); +x_130 = lean_ctor_get(x_127, 1); lean_inc(x_130); -x_131 = lean_array_get_size(x_130); +x_131 = lean_nat_dec_eq(x_130, x_126); lean_dec(x_130); -lean_inc(x_1); -x_241 = l_Lean_Parser_Command_docComment___elambda__1(x_1, x_129); -x_242 = lean_ctor_get(x_241, 3); -lean_inc(x_242); -if (lean_obj_tag(x_242) == 0) +if (x_131 == 0) { -lean_object* x_243; lean_object* x_244; -x_243 = l_Lean_nullKind; -lean_inc(x_131); -x_244 = l_Lean_Parser_ParserState_mkNode(x_241, x_243, x_131); -x_221 = x_244; -goto block_240; +lean_dec(x_129); +lean_dec(x_126); +lean_dec(x_125); +lean_dec(x_1); +return x_127; } else { -lean_object* x_245; uint8_t x_246; -lean_dec(x_242); -x_245 = lean_ctor_get(x_241, 1); -lean_inc(x_245); -x_246 = lean_nat_dec_eq(x_245, x_123); -lean_dec(x_245); -if (x_246 == 0) +lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; +lean_inc(x_126); +x_132 = l_Lean_Parser_ParserState_restore(x_127, x_125, x_126); +lean_dec(x_125); +x_133 = lean_unsigned_to_nat(1024u); +x_134 = l_Lean_Parser_checkPrecFn(x_133, x_1, x_132); +x_135 = lean_ctor_get(x_134, 3); +lean_inc(x_135); +if (lean_obj_tag(x_135) == 0) { -lean_object* x_247; lean_object* x_248; -x_247 = l_Lean_nullKind; -lean_inc(x_131); -x_248 = l_Lean_Parser_ParserState_mkNode(x_241, x_247, x_131); -x_221 = x_248; -goto block_240; -} -else -{ -lean_object* x_249; lean_object* x_250; lean_object* x_251; -lean_inc(x_123); -x_249 = l_Lean_Parser_ParserState_restore(x_241, x_131, x_123); -x_250 = l_Lean_nullKind; -lean_inc(x_131); -x_251 = l_Lean_Parser_ParserState_mkNode(x_249, x_250, x_131); -x_221 = x_251; -goto block_240; -} -} -block_160: -{ -lean_object* x_133; -x_133 = lean_ctor_get(x_132, 3); -lean_inc(x_133); -if (lean_obj_tag(x_133) == 0) -{ -lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -x_134 = lean_ctor_get(x_132, 0); -lean_inc(x_134); -x_135 = lean_array_get_size(x_134); -lean_dec(x_134); -x_136 = lean_ctor_get(x_132, 1); +lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_167; lean_object* x_187; lean_object* x_207; lean_object* x_227; lean_object* x_247; lean_object* x_248; lean_object* x_249; +x_136 = lean_ctor_get(x_134, 0); lean_inc(x_136); -x_137 = l_Lean_Parser_Command_partial___elambda__1(x_1, x_132); -x_138 = lean_ctor_get(x_137, 3); -lean_inc(x_138); -if (lean_obj_tag(x_138) == 0) -{ -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_137 = lean_array_get_size(x_136); lean_dec(x_136); -x_139 = l_Lean_nullKind; -x_140 = l_Lean_Parser_ParserState_mkNode(x_137, x_139, x_135); -x_141 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_142 = l_Lean_Parser_ParserState_mkNode(x_140, x_141, x_131); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_126, x_123); -lean_dec(x_123); -return x_143; +x_247 = lean_ctor_get(x_134, 1); +lean_inc(x_247); +lean_inc(x_1); +x_248 = l_Lean_Parser_Command_docComment___elambda__1(x_1, x_134); +x_249 = lean_ctor_get(x_248, 3); +lean_inc(x_249); +if (lean_obj_tag(x_249) == 0) +{ +lean_object* x_250; lean_object* x_251; +lean_dec(x_247); +x_250 = l_Lean_nullKind; +lean_inc(x_137); +x_251 = l_Lean_Parser_ParserState_mkNode(x_248, x_250, x_137); +x_227 = x_251; +goto block_246; } else { -lean_object* x_144; uint8_t x_145; -lean_dec(x_138); -x_144 = lean_ctor_get(x_137, 1); +lean_object* x_252; uint8_t x_253; +lean_dec(x_249); +x_252 = lean_ctor_get(x_248, 1); +lean_inc(x_252); +x_253 = lean_nat_dec_eq(x_252, x_247); +lean_dec(x_252); +if (x_253 == 0) +{ +lean_object* x_254; lean_object* x_255; +lean_dec(x_247); +x_254 = l_Lean_nullKind; +lean_inc(x_137); +x_255 = l_Lean_Parser_ParserState_mkNode(x_248, x_254, x_137); +x_227 = x_255; +goto block_246; +} +else +{ +lean_object* x_256; lean_object* x_257; lean_object* x_258; +x_256 = l_Lean_Parser_ParserState_restore(x_248, x_137, x_247); +x_257 = l_Lean_nullKind; +lean_inc(x_137); +x_258 = l_Lean_Parser_ParserState_mkNode(x_256, x_257, x_137); +x_227 = x_258; +goto block_246; +} +} +block_166: +{ +lean_object* x_139; +x_139 = lean_ctor_get(x_138, 3); +lean_inc(x_139); +if (lean_obj_tag(x_139) == 0) +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +x_140 = lean_ctor_get(x_138, 0); +lean_inc(x_140); +x_141 = lean_array_get_size(x_140); +lean_dec(x_140); +x_142 = lean_ctor_get(x_138, 1); +lean_inc(x_142); +x_143 = l_Lean_Parser_Command_partial___elambda__1(x_1, x_138); +x_144 = lean_ctor_get(x_143, 3); lean_inc(x_144); -x_145 = lean_nat_dec_eq(x_144, x_136); -lean_dec(x_144); -if (x_145 == 0) +if (lean_obj_tag(x_144) == 0) { -lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; -lean_dec(x_136); -x_146 = l_Lean_nullKind; -x_147 = l_Lean_Parser_ParserState_mkNode(x_137, x_146, x_135); -x_148 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_131); -x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_126, x_123); -lean_dec(x_123); -return x_150; +lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_dec(x_142); +x_145 = l_Lean_nullKind; +x_146 = l_Lean_Parser_ParserState_mkNode(x_143, x_145, x_141); +x_147 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_148 = l_Lean_Parser_ParserState_mkNode(x_146, x_147, x_137); +x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_129, x_126); +lean_dec(x_126); +return x_149; } else { -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; -x_151 = l_Lean_Parser_ParserState_restore(x_137, x_135, x_136); +lean_object* x_150; uint8_t x_151; +lean_dec(x_144); +x_150 = lean_ctor_get(x_143, 1); +lean_inc(x_150); +x_151 = lean_nat_dec_eq(x_150, x_142); +lean_dec(x_150); +if (x_151 == 0) +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; +lean_dec(x_142); x_152 = l_Lean_nullKind; -x_153 = l_Lean_Parser_ParserState_mkNode(x_151, x_152, x_135); +x_153 = l_Lean_Parser_ParserState_mkNode(x_143, x_152, x_141); x_154 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_155 = l_Lean_Parser_ParserState_mkNode(x_153, x_154, x_131); -x_156 = l_Lean_Parser_mergeOrElseErrors(x_155, x_126, x_123); -lean_dec(x_123); +x_155 = l_Lean_Parser_ParserState_mkNode(x_153, x_154, x_137); +x_156 = l_Lean_Parser_mergeOrElseErrors(x_155, x_129, x_126); +lean_dec(x_126); return x_156; } +else +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; +x_157 = l_Lean_Parser_ParserState_restore(x_143, x_141, x_142); +x_158 = l_Lean_nullKind; +x_159 = l_Lean_Parser_ParserState_mkNode(x_157, x_158, x_141); +x_160 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_161 = l_Lean_Parser_ParserState_mkNode(x_159, x_160, x_137); +x_162 = l_Lean_Parser_mergeOrElseErrors(x_161, x_129, x_126); +lean_dec(x_126); +return x_162; +} } } else { -lean_object* x_157; lean_object* x_158; lean_object* x_159; -lean_dec(x_133); +lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_139); lean_dec(x_1); -x_157 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_158 = l_Lean_Parser_ParserState_mkNode(x_132, x_157, x_131); -x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_126, x_123); -lean_dec(x_123); -return x_159; +x_163 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_164 = l_Lean_Parser_ParserState_mkNode(x_138, x_163, x_137); +x_165 = l_Lean_Parser_mergeOrElseErrors(x_164, x_129, x_126); +lean_dec(x_126); +return x_165; } } -block_180: +block_186: { -lean_object* x_162; -x_162 = lean_ctor_get(x_161, 3); -lean_inc(x_162); -if (lean_obj_tag(x_162) == 0) +lean_object* x_168; +x_168 = lean_ctor_get(x_167, 3); +lean_inc(x_168); +if (lean_obj_tag(x_168) == 0) { -lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -x_163 = lean_ctor_get(x_161, 0); -lean_inc(x_163); -x_164 = lean_array_get_size(x_163); -lean_dec(x_163); -x_165 = lean_ctor_get(x_161, 1); -lean_inc(x_165); +lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; +x_169 = lean_ctor_get(x_167, 0); +lean_inc(x_169); +x_170 = lean_array_get_size(x_169); +lean_dec(x_169); +x_171 = lean_ctor_get(x_167, 1); +lean_inc(x_171); lean_inc(x_1); -x_166 = l_Lean_Parser_Command_unsafe___elambda__1(x_1, x_161); -x_167 = lean_ctor_get(x_166, 3); -lean_inc(x_167); -if (lean_obj_tag(x_167) == 0) +x_172 = l_Lean_Parser_Command_unsafe___elambda__1(x_1, x_167); +x_173 = lean_ctor_get(x_172, 3); +lean_inc(x_173); +if (lean_obj_tag(x_173) == 0) { -lean_object* x_168; lean_object* x_169; -lean_dec(x_165); -x_168 = l_Lean_nullKind; -x_169 = l_Lean_Parser_ParserState_mkNode(x_166, x_168, x_164); -x_132 = x_169; -goto block_160; +lean_object* x_174; lean_object* x_175; +lean_dec(x_171); +x_174 = l_Lean_nullKind; +x_175 = l_Lean_Parser_ParserState_mkNode(x_172, x_174, x_170); +x_138 = x_175; +goto block_166; } else { -lean_object* x_170; uint8_t x_171; -lean_dec(x_167); -x_170 = lean_ctor_get(x_166, 1); -lean_inc(x_170); -x_171 = lean_nat_dec_eq(x_170, x_165); -lean_dec(x_170); -if (x_171 == 0) +lean_object* x_176; uint8_t x_177; +lean_dec(x_173); +x_176 = lean_ctor_get(x_172, 1); +lean_inc(x_176); +x_177 = lean_nat_dec_eq(x_176, x_171); +lean_dec(x_176); +if (x_177 == 0) { -lean_object* x_172; lean_object* x_173; -lean_dec(x_165); -x_172 = l_Lean_nullKind; -x_173 = l_Lean_Parser_ParserState_mkNode(x_166, x_172, x_164); -x_132 = x_173; -goto block_160; +lean_object* x_178; lean_object* x_179; +lean_dec(x_171); +x_178 = l_Lean_nullKind; +x_179 = l_Lean_Parser_ParserState_mkNode(x_172, x_178, x_170); +x_138 = x_179; +goto block_166; } else { -lean_object* x_174; lean_object* x_175; lean_object* x_176; -x_174 = l_Lean_Parser_ParserState_restore(x_166, x_164, x_165); -x_175 = l_Lean_nullKind; -x_176 = l_Lean_Parser_ParserState_mkNode(x_174, x_175, x_164); -x_132 = x_176; -goto block_160; +lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_180 = l_Lean_Parser_ParserState_restore(x_172, x_170, x_171); +x_181 = l_Lean_nullKind; +x_182 = l_Lean_Parser_ParserState_mkNode(x_180, x_181, x_170); +x_138 = x_182; +goto block_166; } } } else { -lean_object* x_177; lean_object* x_178; lean_object* x_179; -lean_dec(x_162); +lean_object* x_183; lean_object* x_184; lean_object* x_185; +lean_dec(x_168); lean_dec(x_1); -x_177 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_178 = l_Lean_Parser_ParserState_mkNode(x_161, x_177, x_131); -x_179 = l_Lean_Parser_mergeOrElseErrors(x_178, x_126, x_123); -lean_dec(x_123); -return x_179; +x_183 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_184 = l_Lean_Parser_ParserState_mkNode(x_167, x_183, x_137); +x_185 = l_Lean_Parser_mergeOrElseErrors(x_184, x_129, x_126); +lean_dec(x_126); +return x_185; } } -block_200: +block_206: { -lean_object* x_182; -x_182 = lean_ctor_get(x_181, 3); -lean_inc(x_182); -if (lean_obj_tag(x_182) == 0) +lean_object* x_188; +x_188 = lean_ctor_get(x_187, 3); +lean_inc(x_188); +if (lean_obj_tag(x_188) == 0) { -lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; -x_183 = lean_ctor_get(x_181, 0); -lean_inc(x_183); -x_184 = lean_array_get_size(x_183); -lean_dec(x_183); -x_185 = lean_ctor_get(x_181, 1); -lean_inc(x_185); +lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; +x_189 = lean_ctor_get(x_187, 0); +lean_inc(x_189); +x_190 = lean_array_get_size(x_189); +lean_dec(x_189); +x_191 = lean_ctor_get(x_187, 1); +lean_inc(x_191); lean_inc(x_1); -x_186 = l_Lean_Parser_Command_noncomputable___elambda__1(x_1, x_181); -x_187 = lean_ctor_get(x_186, 3); -lean_inc(x_187); -if (lean_obj_tag(x_187) == 0) +x_192 = l_Lean_Parser_Command_noncomputable___elambda__1(x_1, x_187); +x_193 = lean_ctor_get(x_192, 3); +lean_inc(x_193); +if (lean_obj_tag(x_193) == 0) { -lean_object* x_188; lean_object* x_189; -lean_dec(x_185); -x_188 = l_Lean_nullKind; -x_189 = l_Lean_Parser_ParserState_mkNode(x_186, x_188, x_184); -x_161 = x_189; -goto block_180; +lean_object* x_194; lean_object* x_195; +lean_dec(x_191); +x_194 = l_Lean_nullKind; +x_195 = l_Lean_Parser_ParserState_mkNode(x_192, x_194, x_190); +x_167 = x_195; +goto block_186; } else { -lean_object* x_190; uint8_t x_191; -lean_dec(x_187); -x_190 = lean_ctor_get(x_186, 1); -lean_inc(x_190); -x_191 = lean_nat_dec_eq(x_190, x_185); -lean_dec(x_190); -if (x_191 == 0) +lean_object* x_196; uint8_t x_197; +lean_dec(x_193); +x_196 = lean_ctor_get(x_192, 1); +lean_inc(x_196); +x_197 = lean_nat_dec_eq(x_196, x_191); +lean_dec(x_196); +if (x_197 == 0) { -lean_object* x_192; lean_object* x_193; -lean_dec(x_185); -x_192 = l_Lean_nullKind; -x_193 = l_Lean_Parser_ParserState_mkNode(x_186, x_192, x_184); -x_161 = x_193; -goto block_180; +lean_object* x_198; lean_object* x_199; +lean_dec(x_191); +x_198 = l_Lean_nullKind; +x_199 = l_Lean_Parser_ParserState_mkNode(x_192, x_198, x_190); +x_167 = x_199; +goto block_186; } else { -lean_object* x_194; lean_object* x_195; lean_object* x_196; -x_194 = l_Lean_Parser_ParserState_restore(x_186, x_184, x_185); -x_195 = l_Lean_nullKind; -x_196 = l_Lean_Parser_ParserState_mkNode(x_194, x_195, x_184); -x_161 = x_196; -goto block_180; +lean_object* x_200; lean_object* x_201; lean_object* x_202; +x_200 = l_Lean_Parser_ParserState_restore(x_192, x_190, x_191); +x_201 = l_Lean_nullKind; +x_202 = l_Lean_Parser_ParserState_mkNode(x_200, x_201, x_190); +x_167 = x_202; +goto block_186; } } } else { -lean_object* x_197; lean_object* x_198; lean_object* x_199; -lean_dec(x_182); +lean_object* x_203; lean_object* x_204; lean_object* x_205; +lean_dec(x_188); lean_dec(x_1); -x_197 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_198 = l_Lean_Parser_ParserState_mkNode(x_181, x_197, x_131); -x_199 = l_Lean_Parser_mergeOrElseErrors(x_198, x_126, x_123); -lean_dec(x_123); -return x_199; +x_203 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_204 = l_Lean_Parser_ParserState_mkNode(x_187, x_203, x_137); +x_205 = l_Lean_Parser_mergeOrElseErrors(x_204, x_129, x_126); +lean_dec(x_126); +return x_205; } } -block_220: +block_226: { -lean_object* x_202; -x_202 = lean_ctor_get(x_201, 3); -lean_inc(x_202); -if (lean_obj_tag(x_202) == 0) +lean_object* x_208; +x_208 = lean_ctor_get(x_207, 3); +lean_inc(x_208); +if (lean_obj_tag(x_208) == 0) { -lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; -x_203 = lean_ctor_get(x_201, 0); -lean_inc(x_203); -x_204 = lean_array_get_size(x_203); -lean_dec(x_203); -x_205 = lean_ctor_get(x_201, 1); -lean_inc(x_205); +lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; +x_209 = lean_ctor_get(x_207, 0); +lean_inc(x_209); +x_210 = lean_array_get_size(x_209); +lean_dec(x_209); +x_211 = lean_ctor_get(x_207, 1); +lean_inc(x_211); lean_inc(x_1); -x_206 = l_Lean_Parser_Command_visibility___elambda__1(x_1, x_201); -x_207 = lean_ctor_get(x_206, 3); -lean_inc(x_207); -if (lean_obj_tag(x_207) == 0) +x_212 = l_Lean_Parser_Command_visibility___elambda__1(x_1, x_207); +x_213 = lean_ctor_get(x_212, 3); +lean_inc(x_213); +if (lean_obj_tag(x_213) == 0) { -lean_object* x_208; lean_object* x_209; -lean_dec(x_205); -x_208 = l_Lean_nullKind; -x_209 = l_Lean_Parser_ParserState_mkNode(x_206, x_208, x_204); -x_181 = x_209; -goto block_200; +lean_object* x_214; lean_object* x_215; +lean_dec(x_211); +x_214 = l_Lean_nullKind; +x_215 = l_Lean_Parser_ParserState_mkNode(x_212, x_214, x_210); +x_187 = x_215; +goto block_206; } else { -lean_object* x_210; uint8_t x_211; -lean_dec(x_207); -x_210 = lean_ctor_get(x_206, 1); -lean_inc(x_210); -x_211 = lean_nat_dec_eq(x_210, x_205); -lean_dec(x_210); -if (x_211 == 0) +lean_object* x_216; uint8_t x_217; +lean_dec(x_213); +x_216 = lean_ctor_get(x_212, 1); +lean_inc(x_216); +x_217 = lean_nat_dec_eq(x_216, x_211); +lean_dec(x_216); +if (x_217 == 0) { -lean_object* x_212; lean_object* x_213; -lean_dec(x_205); -x_212 = l_Lean_nullKind; -x_213 = l_Lean_Parser_ParserState_mkNode(x_206, x_212, x_204); -x_181 = x_213; -goto block_200; +lean_object* x_218; lean_object* x_219; +lean_dec(x_211); +x_218 = l_Lean_nullKind; +x_219 = l_Lean_Parser_ParserState_mkNode(x_212, x_218, x_210); +x_187 = x_219; +goto block_206; } else { -lean_object* x_214; lean_object* x_215; lean_object* x_216; -x_214 = l_Lean_Parser_ParserState_restore(x_206, x_204, x_205); -x_215 = l_Lean_nullKind; -x_216 = l_Lean_Parser_ParserState_mkNode(x_214, x_215, x_204); -x_181 = x_216; -goto block_200; +lean_object* x_220; lean_object* x_221; lean_object* x_222; +x_220 = l_Lean_Parser_ParserState_restore(x_212, x_210, x_211); +x_221 = l_Lean_nullKind; +x_222 = l_Lean_Parser_ParserState_mkNode(x_220, x_221, x_210); +x_187 = x_222; +goto block_206; } } } else { -lean_object* x_217; lean_object* x_218; lean_object* x_219; -lean_dec(x_202); +lean_object* x_223; lean_object* x_224; lean_object* x_225; +lean_dec(x_208); lean_dec(x_1); -x_217 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_218 = l_Lean_Parser_ParserState_mkNode(x_201, x_217, x_131); -x_219 = l_Lean_Parser_mergeOrElseErrors(x_218, x_126, x_123); -lean_dec(x_123); -return x_219; +x_223 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_224 = l_Lean_Parser_ParserState_mkNode(x_207, x_223, x_137); +x_225 = l_Lean_Parser_mergeOrElseErrors(x_224, x_129, x_126); +lean_dec(x_126); +return x_225; } } -block_240: +block_246: { -lean_object* x_222; -x_222 = lean_ctor_get(x_221, 3); -lean_inc(x_222); -if (lean_obj_tag(x_222) == 0) +lean_object* x_228; +x_228 = lean_ctor_get(x_227, 3); +lean_inc(x_228); +if (lean_obj_tag(x_228) == 0) { -lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; -x_223 = lean_ctor_get(x_221, 0); -lean_inc(x_223); -x_224 = lean_array_get_size(x_223); -lean_dec(x_223); -x_225 = lean_ctor_get(x_221, 1); -lean_inc(x_225); +lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; +x_229 = lean_ctor_get(x_227, 0); +lean_inc(x_229); +x_230 = lean_array_get_size(x_229); +lean_dec(x_229); +x_231 = lean_ctor_get(x_227, 1); +lean_inc(x_231); lean_inc(x_1); -x_226 = l_Lean_Parser_Command_attributes___elambda__1(x_1, x_221); -x_227 = lean_ctor_get(x_226, 3); -lean_inc(x_227); -if (lean_obj_tag(x_227) == 0) +x_232 = l_Lean_Parser_Command_attributes___elambda__1(x_1, x_227); +x_233 = lean_ctor_get(x_232, 3); +lean_inc(x_233); +if (lean_obj_tag(x_233) == 0) { -lean_object* x_228; lean_object* x_229; -lean_dec(x_225); -x_228 = l_Lean_nullKind; -x_229 = l_Lean_Parser_ParserState_mkNode(x_226, x_228, x_224); -x_201 = x_229; -goto block_220; +lean_object* x_234; lean_object* x_235; +lean_dec(x_231); +x_234 = l_Lean_nullKind; +x_235 = l_Lean_Parser_ParserState_mkNode(x_232, x_234, x_230); +x_207 = x_235; +goto block_226; } else { -lean_object* x_230; uint8_t x_231; -lean_dec(x_227); -x_230 = lean_ctor_get(x_226, 1); -lean_inc(x_230); -x_231 = lean_nat_dec_eq(x_230, x_225); -lean_dec(x_230); -if (x_231 == 0) +lean_object* x_236; uint8_t x_237; +lean_dec(x_233); +x_236 = lean_ctor_get(x_232, 1); +lean_inc(x_236); +x_237 = lean_nat_dec_eq(x_236, x_231); +lean_dec(x_236); +if (x_237 == 0) { -lean_object* x_232; lean_object* x_233; -lean_dec(x_225); -x_232 = l_Lean_nullKind; -x_233 = l_Lean_Parser_ParserState_mkNode(x_226, x_232, x_224); -x_201 = x_233; -goto block_220; +lean_object* x_238; lean_object* x_239; +lean_dec(x_231); +x_238 = l_Lean_nullKind; +x_239 = l_Lean_Parser_ParserState_mkNode(x_232, x_238, x_230); +x_207 = x_239; +goto block_226; } else { -lean_object* x_234; lean_object* x_235; lean_object* x_236; -x_234 = l_Lean_Parser_ParserState_restore(x_226, x_224, x_225); -x_235 = l_Lean_nullKind; -x_236 = l_Lean_Parser_ParserState_mkNode(x_234, x_235, x_224); -x_201 = x_236; -goto block_220; +lean_object* x_240; lean_object* x_241; lean_object* x_242; +x_240 = l_Lean_Parser_ParserState_restore(x_232, x_230, x_231); +x_241 = l_Lean_nullKind; +x_242 = l_Lean_Parser_ParserState_mkNode(x_240, x_241, x_230); +x_207 = x_242; +goto block_226; } } } else { -lean_object* x_237; lean_object* x_238; lean_object* x_239; -lean_dec(x_222); +lean_object* x_243; lean_object* x_244; lean_object* x_245; +lean_dec(x_228); lean_dec(x_1); -x_237 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; -x_238 = l_Lean_Parser_ParserState_mkNode(x_221, x_237, x_131); -x_239 = l_Lean_Parser_mergeOrElseErrors(x_238, x_126, x_123); -lean_dec(x_123); -return x_239; +x_243 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__2; +x_244 = l_Lean_Parser_ParserState_mkNode(x_227, x_243, x_137); +x_245 = l_Lean_Parser_mergeOrElseErrors(x_244, x_129, x_126); +lean_dec(x_126); +return x_245; } } } +else +{ +lean_object* x_259; +lean_dec(x_135); +lean_dec(x_1); +x_259 = l_Lean_Parser_mergeOrElseErrors(x_134, x_129, x_126); +lean_dec(x_126); +return x_259; +} +} } } } @@ -6746,16 +7162,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__13() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declModifiers___closed__12; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__14() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declModifiers___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declModifiers___closed__12; +x_3 = l_Lean_Parser_Command_declModifiers___closed__13; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__14() { +lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__15() { _start: { lean_object* x_1; @@ -6763,12 +7189,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declModifiers___elambda__ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__15() { +lean_object* _init_l_Lean_Parser_Command_declModifiers___closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declModifiers___closed__13; -x_2 = l_Lean_Parser_Command_declModifiers___closed__14; +x_1 = l_Lean_Parser_Command_declModifiers___closed__14; +x_2 = l_Lean_Parser_Command_declModifiers___closed__15; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6779,7 +7205,7 @@ lean_object* _init_l_Lean_Parser_Command_declModifiers() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declModifiers___closed__15; +x_1 = l_Lean_Parser_Command_declModifiers___closed__16; return x_1; } } @@ -7058,492 +7484,523 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_51; lean_object* x_52; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_8); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_34; lean_object* x_54; lean_object* x_55; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_54 = l_Lean_Parser_tokenFn(x_1, x_11); +x_55 = lean_ctor_get(x_54, 3); lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; +x_56 = lean_ctor_get(x_54, 0); +lean_inc(x_56); +x_57 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_56); +lean_dec(x_56); +if (lean_obj_tag(x_57) == 2) +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +lean_dec(x_57); +x_59 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; +x_60 = lean_string_dec_eq(x_58, x_59); +lean_dec(x_58); +if (x_60 == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_15); +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_61, x_15); +x_34 = x_62; +goto block_53; +} +else +{ +x_34 = x_54; +goto block_53; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_57); +x_63 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_15); +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_63, x_15); +x_34 = x_64; +goto block_53; +} +} +else +{ +lean_object* x_65; lean_object* x_66; lean_dec(x_55); -if (x_57 == 0) +x_65 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_15); +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_65, x_15); +x_34 = x_66; +goto block_53; +} +block_33: { -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_12); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_12); -x_31 = x_59; -goto block_50; +lean_object* x_17; +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -x_31 = x_51; -goto block_50; -} +lean_object* x_22; uint8_t x_23; +lean_dec(x_17); +x_22 = lean_ctor_get(x_16, 1); +lean_inc(x_22); +x_23 = lean_nat_dec_eq(x_22, x_15); +lean_dec(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_15); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_16, x_24, x_14); +x_26 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; } else { -lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_12); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_12); -x_31 = x_61; -goto block_50; -} -} -else -{ -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_12); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_12); -x_31 = x_63; -goto block_50; -} -block_30: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); -x_17 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; uint8_t x_20; -lean_dec(x_14); -x_19 = lean_ctor_get(x_13, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_12); -lean_dec(x_19); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_12); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_13, x_21, x_11); -x_23 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -x_28 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_28 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_14); +x_31 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; } } } -block_50: +block_53: { -lean_object* x_32; -x_32 = lean_ctor_get(x_31, 3); -lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) -{ -uint8_t x_33; lean_object* x_34; lean_object* x_35; -x_33 = 0; -lean_inc(x_1); -x_34 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_declId___elambda__1___spec__1(x_33, x_33, x_1, x_31); +lean_object* x_35; x_35 = lean_ctor_get(x_34, 3); lean_inc(x_35); if (lean_obj_tag(x_35) == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); -x_37 = l_Lean_Parser_tokenFn(x_1, x_34); +uint8_t x_36; lean_object* x_37; lean_object* x_38; +x_36 = 0; +lean_inc(x_1); +x_37 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_declId___elambda__1___spec__1(x_36, x_36, x_1, x_34); x_38 = lean_ctor_get(x_37, 3); lean_inc(x_38); if (lean_obj_tag(x_38) == 0) { -lean_object* x_39; lean_object* x_40; -x_39 = lean_ctor_get(x_37, 0); +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_37, 1); lean_inc(x_39); -x_40 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_39); -lean_dec(x_39); -if (lean_obj_tag(x_40) == 2) -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 1); +x_40 = l_Lean_Parser_tokenFn(x_1, x_37); +x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); -lean_dec(x_40); -x_42 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_43 = lean_string_dec_eq(x_41, x_42); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_42); +lean_dec(x_42); +if (lean_obj_tag(x_43) == 2) +{ +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_46 = lean_string_dec_eq(x_44, x_45); +lean_dec(x_44); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_47, x_39); +x_16 = x_48; +goto block_33; +} +else +{ +lean_dec(x_39); +x_16 = x_40; +goto block_33; +} +} +else +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_43); +x_49 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_49, x_39); +x_16 = x_50; +goto block_33; +} +} +else +{ +lean_object* x_51; lean_object* x_52; lean_dec(x_41); -if (x_43 == 0) -{ -lean_object* x_44; lean_object* x_45; -x_44 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_44, x_36); -x_13 = x_45; -goto block_30; -} -else -{ -lean_dec(x_36); -x_13 = x_37; -goto block_30; +x_51 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_51, x_39); +x_16 = x_52; +goto block_33; } } else { -lean_object* x_46; lean_object* x_47; -lean_dec(x_40); -x_46 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_46, x_36); -x_13 = x_47; -goto block_30; -} -} -else -{ -lean_object* x_48; lean_object* x_49; lean_dec(x_38); -x_48 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_48, x_36); -x_13 = x_49; -goto block_30; +lean_dec(x_1); +x_16 = x_37; +goto block_33; } } else { lean_dec(x_35); lean_dec(x_1); -x_13 = x_34; -goto block_30; +x_16 = x_34; +goto block_33; +} } } else { -lean_dec(x_32); +lean_object* x_67; lean_object* x_68; +lean_dec(x_12); lean_dec(x_1); -x_13 = x_31; -goto block_30; -} +x_67 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_68 = l_Lean_Parser_ParserState_mkNode(x_11, x_67, x_10); +return x_68; } } else { -lean_object* x_64; lean_object* x_65; -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -x_64 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_65 = l_Lean_Parser_ParserState_mkNode(x_8, x_64, x_7); -return x_65; +return x_7; } } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_66 = lean_ctor_get(x_2, 0); -lean_inc(x_66); -x_67 = lean_array_get_size(x_66); -lean_dec(x_66); -x_68 = lean_ctor_get(x_2, 1); -lean_inc(x_68); -lean_inc(x_1); -x_69 = lean_apply_2(x_4, x_1, x_2); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_1); -return x_69; -} -else -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 0); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_69 = lean_ctor_get(x_2, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_71 = lean_ctor_get(x_2, 1); lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_69, 1); -lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_68); -lean_dec(x_72); -if (x_73 == 0) +lean_inc(x_1); +x_72 = lean_apply_2(x_4, x_1, x_2); +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { lean_dec(x_71); -lean_dec(x_68); -lean_dec(x_67); +lean_dec(x_70); lean_dec(x_1); -return x_69; +return x_72; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_inc(x_68); -x_74 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); -lean_dec(x_67); -x_75 = lean_ctor_get(x_74, 0); +lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +lean_dec(x_73); +x_75 = lean_ctor_get(x_72, 1); lean_inc(x_75); -x_76 = lean_array_get_size(x_75); +x_76 = lean_nat_dec_eq(x_75, x_71); lean_dec(x_75); -lean_inc(x_1); -x_77 = l_Lean_Parser_ident___elambda__1(x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (x_76 == 0) { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_103; lean_object* x_123; lean_object* x_124; -x_79 = lean_ctor_get(x_77, 0); -lean_inc(x_79); -x_80 = lean_array_get_size(x_79); -lean_dec(x_79); -x_81 = lean_ctor_get(x_77, 1); -lean_inc(x_81); -lean_inc(x_1); -x_123 = l_Lean_Parser_tokenFn(x_1, x_77); -x_124 = lean_ctor_get(x_123, 3); -lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) -{ -lean_object* x_125; lean_object* x_126; -x_125 = lean_ctor_get(x_123, 0); -lean_inc(x_125); -x_126 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_125); -lean_dec(x_125); -if (lean_obj_tag(x_126) == 2) -{ -lean_object* x_127; lean_object* x_128; uint8_t x_129; -x_127 = lean_ctor_get(x_126, 1); -lean_inc(x_127); -lean_dec(x_126); -x_128 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; -x_129 = lean_string_dec_eq(x_127, x_128); -lean_dec(x_127); -if (x_129 == 0) -{ -lean_object* x_130; lean_object* x_131; -x_130 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_81); -x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_130, x_81); -x_103 = x_131; -goto block_122; +lean_dec(x_74); +lean_dec(x_71); +lean_dec(x_70); +lean_dec(x_1); +return x_72; } else { -x_103 = x_123; -goto block_122; -} -} -else +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +lean_inc(x_71); +x_77 = l_Lean_Parser_ParserState_restore(x_72, x_70, x_71); +lean_dec(x_70); +x_78 = lean_unsigned_to_nat(1024u); +x_79 = l_Lean_Parser_checkPrecFn(x_78, x_1, x_77); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_132; lean_object* x_133; -lean_dec(x_126); -x_132 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_81 = lean_ctor_get(x_79, 0); lean_inc(x_81); -x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_132, x_81); -x_103 = x_133; -goto block_122; -} -} -else -{ -lean_object* x_134; lean_object* x_135; -lean_dec(x_124); -x_134 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_81); -x_135 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_134, x_81); -x_103 = x_135; -goto block_122; -} -block_102: -{ -lean_object* x_83; -x_83 = lean_ctor_get(x_82, 3); -lean_inc(x_83); -if (lean_obj_tag(x_83) == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_82 = lean_array_get_size(x_81); lean_dec(x_81); -x_84 = l_Lean_nullKind; -x_85 = l_Lean_Parser_ParserState_mkNode(x_82, x_84, x_80); -x_86 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_76); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_71, x_68); -lean_dec(x_68); -return x_88; +lean_inc(x_1); +x_83 = l_Lean_Parser_ident___elambda__1(x_1, x_79); +x_84 = lean_ctor_get(x_83, 3); +lean_inc(x_84); +if (lean_obj_tag(x_84) == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_109; lean_object* x_129; lean_object* x_130; +x_85 = lean_ctor_get(x_83, 0); +lean_inc(x_85); +x_86 = lean_array_get_size(x_85); +lean_dec(x_85); +x_87 = lean_ctor_get(x_83, 1); +lean_inc(x_87); +lean_inc(x_1); +x_129 = l_Lean_Parser_tokenFn(x_1, x_83); +x_130 = lean_ctor_get(x_129, 3); +lean_inc(x_130); +if (lean_obj_tag(x_130) == 0) +{ +lean_object* x_131; lean_object* x_132; +x_131 = lean_ctor_get(x_129, 0); +lean_inc(x_131); +x_132 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_131); +lean_dec(x_131); +if (lean_obj_tag(x_132) == 2) +{ +lean_object* x_133; lean_object* x_134; uint8_t x_135; +x_133 = lean_ctor_get(x_132, 1); +lean_inc(x_133); +lean_dec(x_132); +x_134 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; +x_135 = lean_string_dec_eq(x_133, x_134); +lean_dec(x_133); +if (x_135 == 0) +{ +lean_object* x_136; lean_object* x_137; +x_136 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_87); +x_137 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_136, x_87); +x_109 = x_137; +goto block_128; } else { -lean_object* x_89; uint8_t x_90; -lean_dec(x_83); -x_89 = lean_ctor_get(x_82, 1); +x_109 = x_129; +goto block_128; +} +} +else +{ +lean_object* x_138; lean_object* x_139; +lean_dec(x_132); +x_138 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_87); +x_139 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_138, x_87); +x_109 = x_139; +goto block_128; +} +} +else +{ +lean_object* x_140; lean_object* x_141; +lean_dec(x_130); +x_140 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +lean_inc(x_87); +x_141 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_140, x_87); +x_109 = x_141; +goto block_128; +} +block_108: +{ +lean_object* x_89; +x_89 = lean_ctor_get(x_88, 3); lean_inc(x_89); -x_90 = lean_nat_dec_eq(x_89, x_81); -lean_dec(x_89); -if (x_90 == 0) +if (lean_obj_tag(x_89) == 0) { -lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -lean_dec(x_81); -x_91 = l_Lean_nullKind; -x_92 = l_Lean_Parser_ParserState_mkNode(x_82, x_91, x_80); -x_93 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_76); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_71, x_68); -lean_dec(x_68); -return x_95; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_87); +x_90 = l_Lean_nullKind; +x_91 = l_Lean_Parser_ParserState_mkNode(x_88, x_90, x_86); +x_92 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_82); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_74, x_71); +lean_dec(x_71); +return x_94; } else { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_96 = l_Lean_Parser_ParserState_restore(x_82, x_80, x_81); +lean_object* x_95; uint8_t x_96; +lean_dec(x_89); +x_95 = lean_ctor_get(x_88, 1); +lean_inc(x_95); +x_96 = lean_nat_dec_eq(x_95, x_87); +lean_dec(x_95); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_87); x_97 = l_Lean_nullKind; -x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_80); +x_98 = l_Lean_Parser_ParserState_mkNode(x_88, x_97, x_86); x_99 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_76); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_71, x_68); -lean_dec(x_68); +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_82); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_74, x_71); +lean_dec(x_71); return x_101; } +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_102 = l_Lean_Parser_ParserState_restore(x_88, x_86, x_87); +x_103 = l_Lean_nullKind; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_86); +x_105 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_82); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_74, x_71); +lean_dec(x_71); +return x_107; } } -block_122: +} +block_128: { -lean_object* x_104; -x_104 = lean_ctor_get(x_103, 3); -lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) -{ -uint8_t x_105; lean_object* x_106; lean_object* x_107; -x_105 = 0; -lean_inc(x_1); -x_106 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_declId___elambda__1___spec__1(x_105, x_105, x_1, x_103); -x_107 = lean_ctor_get(x_106, 3); -lean_inc(x_107); -if (lean_obj_tag(x_107) == 0) -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; -x_108 = lean_ctor_get(x_106, 1); -lean_inc(x_108); -x_109 = l_Lean_Parser_tokenFn(x_1, x_106); +lean_object* x_110; x_110 = lean_ctor_get(x_109, 3); lean_inc(x_110); if (lean_obj_tag(x_110) == 0) { -lean_object* x_111; lean_object* x_112; -x_111 = lean_ctor_get(x_109, 0); -lean_inc(x_111); -x_112 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_111); -lean_dec(x_111); -if (lean_obj_tag(x_112) == 2) -{ -lean_object* x_113; lean_object* x_114; uint8_t x_115; -x_113 = lean_ctor_get(x_112, 1); +uint8_t x_111; lean_object* x_112; lean_object* x_113; +x_111 = 0; +lean_inc(x_1); +x_112 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_declId___elambda__1___spec__1(x_111, x_111, x_1, x_109); +x_113 = lean_ctor_get(x_112, 3); lean_inc(x_113); -lean_dec(x_112); -x_114 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_115 = lean_string_dec_eq(x_113, x_114); +if (lean_obj_tag(x_113) == 0) +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_114 = lean_ctor_get(x_112, 1); +lean_inc(x_114); +x_115 = l_Lean_Parser_tokenFn(x_1, x_112); +x_116 = lean_ctor_get(x_115, 3); +lean_inc(x_116); +if (lean_obj_tag(x_116) == 0) +{ +lean_object* x_117; lean_object* x_118; +x_117 = lean_ctor_get(x_115, 0); +lean_inc(x_117); +x_118 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_117); +lean_dec(x_117); +if (lean_obj_tag(x_118) == 2) +{ +lean_object* x_119; lean_object* x_120; uint8_t x_121; +x_119 = lean_ctor_get(x_118, 1); +lean_inc(x_119); +lean_dec(x_118); +x_120 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_121 = lean_string_dec_eq(x_119, x_120); +lean_dec(x_119); +if (x_121 == 0) +{ +lean_object* x_122; lean_object* x_123; +x_122 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_123 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_122, x_114); +x_88 = x_123; +goto block_108; +} +else +{ +lean_dec(x_114); +x_88 = x_115; +goto block_108; +} +} +else +{ +lean_object* x_124; lean_object* x_125; +lean_dec(x_118); +x_124 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_125 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_124, x_114); +x_88 = x_125; +goto block_108; +} +} +else +{ +lean_object* x_126; lean_object* x_127; +lean_dec(x_116); +x_126 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_127 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_126, x_114); +x_88 = x_127; +goto block_108; +} +} +else +{ lean_dec(x_113); -if (x_115 == 0) -{ -lean_object* x_116; lean_object* x_117; -x_116 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_116, x_108); -x_82 = x_117; -goto block_102; -} -else -{ -lean_dec(x_108); -x_82 = x_109; -goto block_102; +lean_dec(x_1); +x_88 = x_112; +goto block_108; } } else { -lean_object* x_118; lean_object* x_119; -lean_dec(x_112); -x_118 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_119 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_118, x_108); -x_82 = x_119; -goto block_102; -} -} -else -{ -lean_object* x_120; lean_object* x_121; lean_dec(x_110); -x_120 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_121 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_120, x_108); -x_82 = x_121; -goto block_102; -} -} -else -{ -lean_dec(x_107); lean_dec(x_1); -x_82 = x_106; -goto block_102; -} -} -else -{ -lean_dec(x_104); -lean_dec(x_1); -x_82 = x_103; -goto block_102; +x_88 = x_109; +goto block_108; } } } else { -lean_object* x_136; lean_object* x_137; lean_object* x_138; -lean_dec(x_78); +lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_dec(x_84); lean_dec(x_1); -x_136 = l_Lean_Parser_Command_declId___elambda__1___closed__2; -x_137 = l_Lean_Parser_ParserState_mkNode(x_77, x_136, x_76); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_71, x_68); -lean_dec(x_68); -return x_138; +x_142 = l_Lean_Parser_Command_declId___elambda__1___closed__2; +x_143 = l_Lean_Parser_ParserState_mkNode(x_83, x_142, x_82); +x_144 = l_Lean_Parser_mergeOrElseErrors(x_143, x_74, x_71); +lean_dec(x_71); +return x_144; +} +} +else +{ +lean_object* x_145; +lean_dec(x_80); +lean_dec(x_1); +x_145 = l_Lean_Parser_mergeOrElseErrors(x_79, x_74, x_71); +lean_dec(x_71); +return x_145; } } } @@ -7616,16 +8073,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_declId___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declId___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declId___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declId___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declId___closed__6; +x_3 = l_Lean_Parser_Command_declId___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declId___closed__8() { +lean_object* _init_l_Lean_Parser_Command_declId___closed__9() { _start: { lean_object* x_1; @@ -7633,12 +8100,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declId___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declId___closed__9() { +lean_object* _init_l_Lean_Parser_Command_declId___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declId___closed__7; -x_2 = l_Lean_Parser_Command_declId___closed__8; +x_1 = l_Lean_Parser_Command_declId___closed__8; +x_2 = l_Lean_Parser_Command_declId___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -7649,7 +8116,7 @@ lean_object* _init_l_Lean_Parser_Command_declId() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declId___closed__9; +x_1 = l_Lean_Parser_Command_declId___closed__10; return x_1; } } @@ -7733,114 +8200,147 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -lean_inc(x_1); -x_10 = l_Lean_Parser_manyAux___main(x_4, x_1, x_2); -x_11 = l_Lean_nullKind; -lean_inc(x_9); -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_9); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Term_typeSpec___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_9); -return x_16; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); +lean_inc(x_1); +x_13 = l_Lean_Parser_manyAux___main(x_4, x_1, x_9); +x_14 = l_Lean_nullKind; +lean_inc(x_12); +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_12); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Term_typeSpec___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_12); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); lean_dec(x_1); -x_17 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_9); -return x_18; +x_20 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_12); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_6, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_22; +return x_9; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_6, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_4); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -lean_inc(x_1); -x_30 = l_Lean_Parser_manyAux___main(x_4, x_1, x_27); -x_31 = l_Lean_nullKind; -lean_inc(x_29); -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_4); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = l_Lean_Parser_Term_typeSpec___elambda__1(x_1, x_32); -x_35 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_29); -x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_24, x_21); -lean_dec(x_21); -return x_37; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +lean_inc(x_1); +x_36 = l_Lean_Parser_manyAux___main(x_4, x_1, x_32); +x_37 = l_Lean_nullKind; +lean_inc(x_35); +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_35); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_40 = l_Lean_Parser_Term_typeSpec___elambda__1(x_1, x_38); +x_41 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_35); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_27, x_24); +lean_dec(x_24); +return x_43; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_33); +lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_dec(x_39); lean_dec(x_1); -x_38 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_32, x_38, x_29); -x_40 = l_Lean_Parser_mergeOrElseErrors(x_39, x_24, x_21); -lean_dec(x_21); -return x_40; +x_44 = l_Lean_Parser_Command_declSig___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_38, x_44, x_35); +x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_27, x_24); +lean_dec(x_24); +return x_46; +} +} +else +{ +lean_object* x_47; +lean_dec(x_33); +lean_dec(x_4); +lean_dec(x_1); +x_47 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_47; } } } @@ -7872,16 +8372,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_declSig___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declSig___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declSig___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declSig___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declSig___closed__2; +x_3 = l_Lean_Parser_Command_declSig___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declSig___closed__4() { +lean_object* _init_l_Lean_Parser_Command_declSig___closed__5() { _start: { lean_object* x_1; @@ -7889,12 +8399,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declSig___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declSig___closed__5() { +lean_object* _init_l_Lean_Parser_Command_declSig___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declSig___closed__3; -x_2 = l_Lean_Parser_Command_declSig___closed__4; +x_1 = l_Lean_Parser_Command_declSig___closed__4; +x_2 = l_Lean_Parser_Command_declSig___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -7905,7 +8415,7 @@ lean_object* _init_l_Lean_Parser_Command_declSig() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declSig___closed__5; +x_1 = l_Lean_Parser_Command_declSig___closed__6; return x_1; } } @@ -7963,114 +8473,147 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -lean_inc(x_1); -x_10 = l_Lean_Parser_manyAux___main(x_4, x_1, x_2); -x_11 = l_Lean_nullKind; -lean_inc(x_9); -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_9); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_9); -return x_16; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); +lean_inc(x_1); +x_13 = l_Lean_Parser_manyAux___main(x_4, x_1, x_9); +x_14 = l_Lean_nullKind; +lean_inc(x_12); +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_12); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_12); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); lean_dec(x_1); -x_17 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_9); -return x_18; +x_20 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_12); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_6, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_22; +return x_9; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_6, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_4); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -lean_inc(x_1); -x_30 = l_Lean_Parser_manyAux___main(x_4, x_1, x_27); -x_31 = l_Lean_nullKind; -lean_inc(x_29); -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_4); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_32); -x_35 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_29); -x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_24, x_21); -lean_dec(x_21); -return x_37; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +lean_inc(x_1); +x_36 = l_Lean_Parser_manyAux___main(x_4, x_1, x_32); +x_37 = l_Lean_nullKind; +lean_inc(x_35); +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_35); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_40 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_38); +x_41 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_35); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_27, x_24); +lean_dec(x_24); +return x_43; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_33); +lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_dec(x_39); lean_dec(x_1); -x_38 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_32, x_38, x_29); -x_40 = l_Lean_Parser_mergeOrElseErrors(x_39, x_24, x_21); -lean_dec(x_21); -return x_40; +x_44 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_38, x_44, x_35); +x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_27, x_24); +lean_dec(x_24); +return x_46; +} +} +else +{ +lean_object* x_47; +lean_dec(x_33); +lean_dec(x_4); +lean_dec(x_1); +x_47 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_47; } } } @@ -8090,16 +8633,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_optDeclSig___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_optDeclSig___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_optDeclSig___closed__1; +x_3 = l_Lean_Parser_Command_optDeclSig___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__3() { +lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__4() { _start: { lean_object* x_1; @@ -8107,12 +8660,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_optDeclSig___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__4() { +lean_object* _init_l_Lean_Parser_Command_optDeclSig___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDeclSig___closed__2; -x_2 = l_Lean_Parser_Command_optDeclSig___closed__3; +x_1 = l_Lean_Parser_Command_optDeclSig___closed__3; +x_2 = l_Lean_Parser_Command_optDeclSig___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8123,7 +8676,7 @@ lean_object* _init_l_Lean_Parser_Command_optDeclSig() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_optDeclSig___closed__4; +x_1 = l_Lean_Parser_Command_optDeclSig___closed__5; return x_1; } } @@ -8178,228 +8731,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -8417,16 +9001,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declValSimple___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declValSimple___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declValSimple___closed__1; +x_3 = l_Lean_Parser_Command_declValSimple___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__3() { +lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__4() { _start: { lean_object* x_1; @@ -8434,12 +9028,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declValSimple___elambda__ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__4() { +lean_object* _init_l_Lean_Parser_Command_declValSimple___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declValSimple___closed__2; -x_2 = l_Lean_Parser_Command_declValSimple___closed__3; +x_1 = l_Lean_Parser_Command_declValSimple___closed__3; +x_2 = l_Lean_Parser_Command_declValSimple___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8450,7 +9044,7 @@ lean_object* _init_l_Lean_Parser_Command_declValSimple() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declValSimple___closed__4; +x_1 = l_Lean_Parser_Command_declValSimple___closed__5; return x_1; } } @@ -8508,73 +9102,106 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_10 = lean_apply_2(x_4, x_1, x_2); -x_11 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_9); -return x_12; +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); +x_13 = lean_apply_2(x_4, x_1, x_9); +x_14 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_12); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_6, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_16; +return x_9; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_6, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_4); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = lean_apply_2(x_4, x_1, x_21); -x_25 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_23); -x_27 = l_Lean_Parser_mergeOrElseErrors(x_26, x_18, x_15); -lean_dec(x_15); -return x_27; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_4); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = lean_apply_2(x_4, x_1, x_26); +x_31 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); +x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_21, x_18); +lean_dec(x_18); +return x_33; +} +else +{ +lean_object* x_34; +lean_dec(x_27); +lean_dec(x_4); +lean_dec(x_1); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_34; +} } } } @@ -8595,16 +9222,26 @@ return x_4; lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declValEqns___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declValEqns___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declValEqns___closed__1; +x_3 = l_Lean_Parser_Command_declValEqns___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__3() { +lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__4() { _start: { lean_object* x_1; @@ -8612,12 +9249,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declValEqns___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__4() { +lean_object* _init_l_Lean_Parser_Command_declValEqns___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declValEqns___closed__2; -x_2 = l_Lean_Parser_Command_declValEqns___closed__3; +x_1 = l_Lean_Parser_Command_declValEqns___closed__3; +x_2 = l_Lean_Parser_Command_declValEqns___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8628,7 +9265,7 @@ lean_object* _init_l_Lean_Parser_Command_declValEqns() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declValEqns___closed__4; +x_1 = l_Lean_Parser_Command_declValEqns___closed__5; return x_1; } } @@ -8827,295 +9464,326 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_24 = lean_ctor_get(x_2, 1); -lean_inc(x_24); -lean_inc(x_1); -x_25 = l_Lean_Parser_tokenFn(x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_27); -lean_dec(x_27); -if (lean_obj_tag(x_28) == 2) -{ -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = l_Lean_Parser_Command_abbrev___elambda__1___closed__6; -x_31 = lean_string_dec_eq(x_29, x_30); -lean_dec(x_29); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); -x_8 = x_33; -goto block_23; -} -else -{ -lean_dec(x_24); -x_8 = x_25; -goto block_23; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_28); -x_34 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_34, x_24); -x_8 = x_35; -goto block_23; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_26); -x_36 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_36, x_24); -x_8 = x_37; -goto block_23; -} -block_23: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; -} -} -else -{ -lean_object* x_21; lean_object* x_22; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_21 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_8, x_21, x_7); -return x_22; -} -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_38 = lean_ctor_get(x_2, 0); -lean_inc(x_38); -x_39 = lean_array_get_size(x_38); -lean_dec(x_38); -x_40 = lean_ctor_get(x_2, 1); -lean_inc(x_40); +x_27 = lean_ctor_get(x_7, 1); +lean_inc(x_27); lean_inc(x_1); -x_41 = lean_apply_2(x_4, x_1, x_2); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +x_28 = l_Lean_Parser_tokenFn(x_1, x_7); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_1); -return x_41; +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_30); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 2) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = l_Lean_Parser_Command_abbrev___elambda__1___closed__6; +x_34 = lean_string_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); +x_11 = x_36; +goto block_26; } else { -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_ctor_get(x_42, 0); +lean_dec(x_27); +x_11 = x_28; +goto block_26; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +x_37 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_37, x_27); +x_11 = x_38; +goto block_26; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_29); +x_39 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_39, x_27); +x_11 = x_40; +goto block_26; +} +block_26: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +lean_dec(x_1); +x_24 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_11, x_24, x_10); +return x_25; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = lean_ctor_get(x_2, 0); +lean_inc(x_41); +x_42 = lean_array_get_size(x_41); +lean_dec(x_41); +x_43 = lean_ctor_get(x_2, 1); lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_ctor_get(x_41, 1); -lean_inc(x_44); -x_45 = lean_nat_dec_eq(x_44, x_40); -lean_dec(x_44); -if (x_45 == 0) +lean_inc(x_1); +x_44 = lean_apply_2(x_4, x_1, x_2); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { lean_dec(x_43); -lean_dec(x_40); -lean_dec(x_39); +lean_dec(x_42); lean_dec(x_1); -return x_41; +return x_44; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_69; lean_object* x_70; -lean_inc(x_40); -x_46 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); -lean_dec(x_39); -x_47 = lean_ctor_get(x_46, 0); +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +x_47 = lean_ctor_get(x_44, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); +x_48 = lean_nat_dec_eq(x_47, x_43); lean_dec(x_47); -lean_inc(x_1); -x_69 = l_Lean_Parser_tokenFn(x_1, x_46); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +if (x_48 == 0) { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); -lean_dec(x_71); -if (lean_obj_tag(x_72) == 2) -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Command_abbrev___elambda__1___closed__6; -x_75 = lean_string_dec_eq(x_73, x_74); -lean_dec(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -lean_inc(x_40); -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_40); -x_49 = x_77; -goto block_68; +lean_dec(x_46); +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_1); +return x_44; } else { -x_49 = x_69; -goto block_68; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_72); -x_78 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -lean_inc(x_40); -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_40); -x_49 = x_79; -goto block_68; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_70); -x_80 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; -lean_inc(x_40); -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_40); -x_49 = x_81; -goto block_68; -} -block_68: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_49); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_inc(x_43); +x_49 = l_Lean_Parser_ParserState_restore(x_44, x_42, x_43); +lean_dec(x_42); +x_50 = lean_unsigned_to_nat(1024u); +x_51 = l_Lean_Parser_checkPrecFn(x_50, x_1, x_49); x_52 = lean_ctor_get(x_51, 3); lean_inc(x_52); if (lean_obj_tag(x_52) == 0) { -lean_object* x_53; lean_object* x_54; +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = lean_array_get_size(x_53); +lean_dec(x_53); +x_75 = lean_ctor_get(x_51, 1); +lean_inc(x_75); lean_inc(x_1); -x_53 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_51); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) +x_76 = l_Lean_Parser_tokenFn(x_1, x_51); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_53); -x_56 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_48); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_43, x_40); -lean_dec(x_40); -return x_58; +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 2) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Parser_Command_abbrev___elambda__1___closed__6; +x_82 = lean_string_dec_eq(x_80, x_81); +lean_dec(x_80); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; +x_83 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); +x_55 = x_84; +goto block_74; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -lean_dec(x_1); -x_59 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_43, x_40); -lean_dec(x_40); -return x_61; +lean_dec(x_75); +x_55 = x_76; +goto block_74; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_52); -lean_dec(x_1); +lean_object* x_85; lean_object* x_86; +lean_dec(x_79); +x_85 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); +x_55 = x_86; +goto block_74; +} +} +else +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_77); +x_87 = l_Lean_Parser_Command_abbrev___elambda__1___closed__9; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); +x_55 = x_88; +goto block_74; +} +block_74: +{ +lean_object* x_56; +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_inc(x_1); +x_57 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_55); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +lean_inc(x_1); +x_59 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_57); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_59); x_62 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_43, x_40); -lean_dec(x_40); +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_54); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_46, x_43); +lean_dec(x_43); return x_64; } -} else { lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_50); +lean_dec(x_60); lean_dec(x_1); x_65 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_48); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_43, x_40); -lean_dec(x_40); +x_66 = l_Lean_Parser_ParserState_mkNode(x_59, x_65, x_54); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_46, x_43); +lean_dec(x_43); return x_67; } } +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_dec(x_58); +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_57, x_68, x_54); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_46, x_43); +lean_dec(x_43); +return x_70; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_56); +lean_dec(x_1); +x_71 = l_Lean_Parser_Command_abbrev___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_54); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_46, x_43); +lean_dec(x_43); +return x_73; +} +} +} +else +{ +lean_object* x_89; +lean_dec(x_52); +lean_dec(x_1); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_51, x_46, x_43); +lean_dec(x_43); +return x_89; +} } } } @@ -9179,16 +9847,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_abbrev___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_abbrev___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_abbrev___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_abbrev___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_abbrev___closed__5; +x_3 = l_Lean_Parser_Command_abbrev___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_abbrev___closed__7() { +lean_object* _init_l_Lean_Parser_Command_abbrev___closed__8() { _start: { lean_object* x_1; @@ -9196,12 +9874,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_abbrev___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_abbrev___closed__8() { +lean_object* _init_l_Lean_Parser_Command_abbrev___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_abbrev___closed__6; -x_2 = l_Lean_Parser_Command_abbrev___closed__7; +x_1 = l_Lean_Parser_Command_abbrev___closed__7; +x_2 = l_Lean_Parser_Command_abbrev___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -9212,7 +9890,7 @@ lean_object* _init_l_Lean_Parser_Command_abbrev() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_abbrev___closed__8; +x_1 = l_Lean_Parser_Command_abbrev___closed__9; return x_1; } } @@ -9316,295 +9994,326 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_24 = lean_ctor_get(x_2, 1); -lean_inc(x_24); -lean_inc(x_1); -x_25 = l_Lean_Parser_tokenFn(x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_27); -lean_dec(x_27); -if (lean_obj_tag(x_28) == 2) -{ -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = l_Lean_Parser_Command_def___elambda__1___closed__6; -x_31 = lean_string_dec_eq(x_29, x_30); -lean_dec(x_29); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_Command_def___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); -x_8 = x_33; -goto block_23; -} -else -{ -lean_dec(x_24); -x_8 = x_25; -goto block_23; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_28); -x_34 = l_Lean_Parser_Command_def___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_34, x_24); -x_8 = x_35; -goto block_23; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_26); -x_36 = l_Lean_Parser_Command_def___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_36, x_24); -x_8 = x_37; -goto block_23; -} -block_23: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; -} -} -else -{ -lean_object* x_21; lean_object* x_22; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_21 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_8, x_21, x_7); -return x_22; -} -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_38 = lean_ctor_get(x_2, 0); -lean_inc(x_38); -x_39 = lean_array_get_size(x_38); -lean_dec(x_38); -x_40 = lean_ctor_get(x_2, 1); -lean_inc(x_40); +x_27 = lean_ctor_get(x_7, 1); +lean_inc(x_27); lean_inc(x_1); -x_41 = lean_apply_2(x_4, x_1, x_2); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +x_28 = l_Lean_Parser_tokenFn(x_1, x_7); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_1); -return x_41; +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_30); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 2) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = l_Lean_Parser_Command_def___elambda__1___closed__6; +x_34 = lean_string_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); +x_11 = x_36; +goto block_26; } else { -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_ctor_get(x_42, 0); +lean_dec(x_27); +x_11 = x_28; +goto block_26; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +x_37 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_37, x_27); +x_11 = x_38; +goto block_26; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_29); +x_39 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_39, x_27); +x_11 = x_40; +goto block_26; +} +block_26: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +lean_dec(x_1); +x_24 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_11, x_24, x_10); +return x_25; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = lean_ctor_get(x_2, 0); +lean_inc(x_41); +x_42 = lean_array_get_size(x_41); +lean_dec(x_41); +x_43 = lean_ctor_get(x_2, 1); lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_ctor_get(x_41, 1); -lean_inc(x_44); -x_45 = lean_nat_dec_eq(x_44, x_40); -lean_dec(x_44); -if (x_45 == 0) +lean_inc(x_1); +x_44 = lean_apply_2(x_4, x_1, x_2); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { lean_dec(x_43); -lean_dec(x_40); -lean_dec(x_39); +lean_dec(x_42); lean_dec(x_1); -return x_41; +return x_44; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_69; lean_object* x_70; -lean_inc(x_40); -x_46 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); -lean_dec(x_39); -x_47 = lean_ctor_get(x_46, 0); +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +x_47 = lean_ctor_get(x_44, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); +x_48 = lean_nat_dec_eq(x_47, x_43); lean_dec(x_47); -lean_inc(x_1); -x_69 = l_Lean_Parser_tokenFn(x_1, x_46); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +if (x_48 == 0) { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); -lean_dec(x_71); -if (lean_obj_tag(x_72) == 2) -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Command_def___elambda__1___closed__6; -x_75 = lean_string_dec_eq(x_73, x_74); -lean_dec(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = l_Lean_Parser_Command_def___elambda__1___closed__9; -lean_inc(x_40); -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_40); -x_49 = x_77; -goto block_68; +lean_dec(x_46); +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_1); +return x_44; } else { -x_49 = x_69; -goto block_68; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_72); -x_78 = l_Lean_Parser_Command_def___elambda__1___closed__9; -lean_inc(x_40); -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_40); -x_49 = x_79; -goto block_68; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_70); -x_80 = l_Lean_Parser_Command_def___elambda__1___closed__9; -lean_inc(x_40); -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_40); -x_49 = x_81; -goto block_68; -} -block_68: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_49); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_inc(x_43); +x_49 = l_Lean_Parser_ParserState_restore(x_44, x_42, x_43); +lean_dec(x_42); +x_50 = lean_unsigned_to_nat(1024u); +x_51 = l_Lean_Parser_checkPrecFn(x_50, x_1, x_49); x_52 = lean_ctor_get(x_51, 3); lean_inc(x_52); if (lean_obj_tag(x_52) == 0) { -lean_object* x_53; lean_object* x_54; +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = lean_array_get_size(x_53); +lean_dec(x_53); +x_75 = lean_ctor_get(x_51, 1); +lean_inc(x_75); lean_inc(x_1); -x_53 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_51); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) +x_76 = l_Lean_Parser_tokenFn(x_1, x_51); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_53); -x_56 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_48); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_43, x_40); -lean_dec(x_40); -return x_58; +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 2) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Parser_Command_def___elambda__1___closed__6; +x_82 = lean_string_dec_eq(x_80, x_81); +lean_dec(x_80); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; +x_83 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); +x_55 = x_84; +goto block_74; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -lean_dec(x_1); -x_59 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_43, x_40); -lean_dec(x_40); -return x_61; +lean_dec(x_75); +x_55 = x_76; +goto block_74; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_52); -lean_dec(x_1); +lean_object* x_85; lean_object* x_86; +lean_dec(x_79); +x_85 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); +x_55 = x_86; +goto block_74; +} +} +else +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_77); +x_87 = l_Lean_Parser_Command_def___elambda__1___closed__9; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); +x_55 = x_88; +goto block_74; +} +block_74: +{ +lean_object* x_56; +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_inc(x_1); +x_57 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_55); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +lean_inc(x_1); +x_59 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_57); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_59); x_62 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_43, x_40); -lean_dec(x_40); +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_54); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_46, x_43); +lean_dec(x_43); return x_64; } -} else { lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_50); +lean_dec(x_60); lean_dec(x_1); x_65 = l_Lean_Parser_Command_def___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_48); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_43, x_40); -lean_dec(x_40); +x_66 = l_Lean_Parser_ParserState_mkNode(x_59, x_65, x_54); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_46, x_43); +lean_dec(x_43); return x_67; } } +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_dec(x_58); +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_57, x_68, x_54); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_46, x_43); +lean_dec(x_43); +return x_70; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_56); +lean_dec(x_1); +x_71 = l_Lean_Parser_Command_def___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_54); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_46, x_43); +lean_dec(x_43); +return x_73; +} +} +} +else +{ +lean_object* x_89; +lean_dec(x_52); +lean_dec(x_1); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_51, x_46, x_43); +lean_dec(x_43); +return x_89; +} } } } @@ -9642,16 +10351,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_def___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_def___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_def___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_def___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_def___closed__3; +x_3 = l_Lean_Parser_Command_def___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_def___closed__5() { +lean_object* _init_l_Lean_Parser_Command_def___closed__6() { _start: { lean_object* x_1; @@ -9659,12 +10378,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_def___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Command_def___closed__6() { +lean_object* _init_l_Lean_Parser_Command_def___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_def___closed__4; -x_2 = l_Lean_Parser_Command_def___closed__5; +x_1 = l_Lean_Parser_Command_def___closed__5; +x_2 = l_Lean_Parser_Command_def___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -9675,7 +10394,7 @@ lean_object* _init_l_Lean_Parser_Command_def() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_def___closed__6; +x_1 = l_Lean_Parser_Command_def___closed__7; return x_1; } } @@ -9779,295 +10498,326 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_24 = lean_ctor_get(x_2, 1); -lean_inc(x_24); -lean_inc(x_1); -x_25 = l_Lean_Parser_tokenFn(x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_27); -lean_dec(x_27); -if (lean_obj_tag(x_28) == 2) -{ -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = l_Lean_Parser_Command_theorem___elambda__1___closed__6; -x_31 = lean_string_dec_eq(x_29, x_30); -lean_dec(x_29); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); -x_8 = x_33; -goto block_23; -} -else -{ -lean_dec(x_24); -x_8 = x_25; -goto block_23; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_28); -x_34 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_34, x_24); -x_8 = x_35; -goto block_23; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_26); -x_36 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_36, x_24); -x_8 = x_37; -goto block_23; -} -block_23: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; -} -} -else -{ -lean_object* x_21; lean_object* x_22; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_21 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_8, x_21, x_7); -return x_22; -} -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_38 = lean_ctor_get(x_2, 0); -lean_inc(x_38); -x_39 = lean_array_get_size(x_38); -lean_dec(x_38); -x_40 = lean_ctor_get(x_2, 1); -lean_inc(x_40); +x_27 = lean_ctor_get(x_7, 1); +lean_inc(x_27); lean_inc(x_1); -x_41 = lean_apply_2(x_4, x_1, x_2); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +x_28 = l_Lean_Parser_tokenFn(x_1, x_7); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_1); -return x_41; +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_30); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 2) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = l_Lean_Parser_Command_theorem___elambda__1___closed__6; +x_34 = lean_string_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); +x_11 = x_36; +goto block_26; } else { -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_ctor_get(x_42, 0); +lean_dec(x_27); +x_11 = x_28; +goto block_26; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +x_37 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_37, x_27); +x_11 = x_38; +goto block_26; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_29); +x_39 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_39, x_27); +x_11 = x_40; +goto block_26; +} +block_26: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +lean_dec(x_1); +x_24 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_11, x_24, x_10); +return x_25; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = lean_ctor_get(x_2, 0); +lean_inc(x_41); +x_42 = lean_array_get_size(x_41); +lean_dec(x_41); +x_43 = lean_ctor_get(x_2, 1); lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_ctor_get(x_41, 1); -lean_inc(x_44); -x_45 = lean_nat_dec_eq(x_44, x_40); -lean_dec(x_44); -if (x_45 == 0) +lean_inc(x_1); +x_44 = lean_apply_2(x_4, x_1, x_2); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { lean_dec(x_43); -lean_dec(x_40); -lean_dec(x_39); +lean_dec(x_42); lean_dec(x_1); -return x_41; +return x_44; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_69; lean_object* x_70; -lean_inc(x_40); -x_46 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); -lean_dec(x_39); -x_47 = lean_ctor_get(x_46, 0); +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +x_47 = lean_ctor_get(x_44, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); +x_48 = lean_nat_dec_eq(x_47, x_43); lean_dec(x_47); -lean_inc(x_1); -x_69 = l_Lean_Parser_tokenFn(x_1, x_46); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +if (x_48 == 0) { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); -lean_dec(x_71); -if (lean_obj_tag(x_72) == 2) -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Command_theorem___elambda__1___closed__6; -x_75 = lean_string_dec_eq(x_73, x_74); -lean_dec(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -lean_inc(x_40); -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_40); -x_49 = x_77; -goto block_68; +lean_dec(x_46); +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_1); +return x_44; } else { -x_49 = x_69; -goto block_68; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_72); -x_78 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -lean_inc(x_40); -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_40); -x_49 = x_79; -goto block_68; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_70); -x_80 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; -lean_inc(x_40); -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_40); -x_49 = x_81; -goto block_68; -} -block_68: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_49); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_inc(x_43); +x_49 = l_Lean_Parser_ParserState_restore(x_44, x_42, x_43); +lean_dec(x_42); +x_50 = lean_unsigned_to_nat(1024u); +x_51 = l_Lean_Parser_checkPrecFn(x_50, x_1, x_49); x_52 = lean_ctor_get(x_51, 3); lean_inc(x_52); if (lean_obj_tag(x_52) == 0) { -lean_object* x_53; lean_object* x_54; +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = lean_array_get_size(x_53); +lean_dec(x_53); +x_75 = lean_ctor_get(x_51, 1); +lean_inc(x_75); lean_inc(x_1); -x_53 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_51); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) +x_76 = l_Lean_Parser_tokenFn(x_1, x_51); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_53); -x_56 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_48); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_43, x_40); -lean_dec(x_40); -return x_58; +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 2) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Parser_Command_theorem___elambda__1___closed__6; +x_82 = lean_string_dec_eq(x_80, x_81); +lean_dec(x_80); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; +x_83 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); +x_55 = x_84; +goto block_74; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -lean_dec(x_1); -x_59 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_43, x_40); -lean_dec(x_40); -return x_61; +lean_dec(x_75); +x_55 = x_76; +goto block_74; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_52); -lean_dec(x_1); +lean_object* x_85; lean_object* x_86; +lean_dec(x_79); +x_85 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); +x_55 = x_86; +goto block_74; +} +} +else +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_77); +x_87 = l_Lean_Parser_Command_theorem___elambda__1___closed__9; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); +x_55 = x_88; +goto block_74; +} +block_74: +{ +lean_object* x_56; +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_inc(x_1); +x_57 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_55); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +lean_inc(x_1); +x_59 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_57); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_59); x_62 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_43, x_40); -lean_dec(x_40); +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_54); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_46, x_43); +lean_dec(x_43); return x_64; } -} else { lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_50); +lean_dec(x_60); lean_dec(x_1); x_65 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_48); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_43, x_40); -lean_dec(x_40); +x_66 = l_Lean_Parser_ParserState_mkNode(x_59, x_65, x_54); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_46, x_43); +lean_dec(x_43); return x_67; } } +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_dec(x_58); +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_57, x_68, x_54); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_46, x_43); +lean_dec(x_43); +return x_70; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_56); +lean_dec(x_1); +x_71 = l_Lean_Parser_Command_theorem___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_54); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_46, x_43); +lean_dec(x_43); +return x_73; +} +} +} +else +{ +lean_object* x_89; +lean_dec(x_52); +lean_dec(x_1); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_51, x_46, x_43); +lean_dec(x_43); +return x_89; +} } } } @@ -10131,16 +10881,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_theorem___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_theorem___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_theorem___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_theorem___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_theorem___closed__5; +x_3 = l_Lean_Parser_Command_theorem___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_theorem___closed__7() { +lean_object* _init_l_Lean_Parser_Command_theorem___closed__8() { _start: { lean_object* x_1; @@ -10148,12 +10908,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_theorem___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_theorem___closed__8() { +lean_object* _init_l_Lean_Parser_Command_theorem___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_theorem___closed__6; -x_2 = l_Lean_Parser_Command_theorem___closed__7; +x_1 = l_Lean_Parser_Command_theorem___closed__7; +x_2 = l_Lean_Parser_Command_theorem___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10164,7 +10924,7 @@ lean_object* _init_l_Lean_Parser_Command_theorem() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_theorem___closed__8; +x_1 = l_Lean_Parser_Command_theorem___closed__9; return x_1; } } @@ -10268,387 +11028,418 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_41 = lean_ctor_get(x_2, 1); -lean_inc(x_41); -lean_inc(x_1); -x_42 = l_Lean_Parser_tokenFn(x_1, x_2); -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_42, 0); -lean_inc(x_44); -x_45 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_44); -lean_dec(x_44); -if (lean_obj_tag(x_45) == 2) -{ -lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_46 = lean_ctor_get(x_45, 1); -lean_inc(x_46); -lean_dec(x_45); -x_47 = l_Lean_Parser_Command_constant___elambda__1___closed__6; -x_48 = lean_string_dec_eq(x_46, x_47); -lean_dec(x_46); -if (x_48 == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_49, x_41); -x_8 = x_50; -goto block_40; -} -else -{ -lean_dec(x_41); -x_8 = x_42; -goto block_40; -} -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_45); -x_51 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_51, x_41); -x_8 = x_52; -goto block_40; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_43); -x_53 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_53, x_41); -x_8 = x_54; -goto block_40; -} -block_40: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_Command_declValSimple___elambda__1(x_1, x_12); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -lean_dec(x_16); -x_19 = l_Lean_nullKind; -x_20 = l_Lean_Parser_ParserState_mkNode(x_17, x_19, x_15); -x_21 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; -} -else -{ -lean_object* x_23; uint8_t x_24; -lean_dec(x_18); -x_23 = lean_ctor_get(x_17, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_23, x_16); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_16); -x_25 = l_Lean_nullKind; -x_26 = l_Lean_Parser_ParserState_mkNode(x_17, x_25, x_15); -x_27 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_7); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_29 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); -x_30 = l_Lean_nullKind; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_15); -x_32 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); -return x_33; -} -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_13); -lean_dec(x_1); -x_34 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_12, x_34, x_7); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_11); -lean_dec(x_1); -x_36 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_10, x_36, x_7); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_38 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_8, x_38, x_7); -return x_39; -} -} -} -else -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_55 = lean_ctor_get(x_2, 0); -lean_inc(x_55); -x_56 = lean_array_get_size(x_55); -lean_dec(x_55); -x_57 = lean_ctor_get(x_2, 1); -lean_inc(x_57); +x_44 = lean_ctor_get(x_7, 1); +lean_inc(x_44); lean_inc(x_1); -x_58 = lean_apply_2(x_4, x_1, x_2); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) +x_45 = l_Lean_Parser_tokenFn(x_1, x_7); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_dec(x_57); -lean_dec(x_56); -lean_dec(x_1); -return x_58; +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 2) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = l_Lean_Parser_Command_constant___elambda__1___closed__6; +x_51 = lean_string_dec_eq(x_49, x_50); +lean_dec(x_49); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); +x_11 = x_53; +goto block_43; } else { -lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_60 = lean_ctor_get(x_59, 0); +lean_dec(x_44); +x_11 = x_45; +goto block_43; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +x_54 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); +x_11 = x_55; +goto block_43; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_46); +x_56 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); +x_11 = x_57; +goto block_43; +} +block_43: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +x_20 = l_Lean_Parser_Command_declValSimple___elambda__1(x_1, x_15); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_19); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_20, x_22, x_18); +x_24 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +else +{ +lean_object* x_26; uint8_t x_27; +lean_dec(x_21); +x_26 = lean_ctor_get(x_20, 1); +lean_inc(x_26); +x_27 = lean_nat_dec_eq(x_26, x_19); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_19); +x_28 = l_Lean_nullKind; +x_29 = l_Lean_Parser_ParserState_mkNode(x_20, x_28, x_18); +x_30 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = l_Lean_Parser_ParserState_restore(x_20, x_18, x_19); +x_33 = l_Lean_nullKind; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_18); +x_35 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_16); +lean_dec(x_1); +x_37 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_15, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_14); +lean_dec(x_1); +x_39 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_13, x_39, x_10); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_12); +lean_dec(x_1); +x_41 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_58 = lean_ctor_get(x_2, 0); +lean_inc(x_58); +x_59 = lean_array_get_size(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_2, 1); lean_inc(x_60); -lean_dec(x_59); -x_61 = lean_ctor_get(x_58, 1); -lean_inc(x_61); -x_62 = lean_nat_dec_eq(x_61, x_57); -lean_dec(x_61); -if (x_62 == 0) +lean_inc(x_1); +x_61 = lean_apply_2(x_4, x_1, x_2); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { lean_dec(x_60); -lean_dec(x_57); -lean_dec(x_56); +lean_dec(x_59); lean_dec(x_1); -return x_58; +return x_61; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_105; lean_object* x_106; -lean_inc(x_57); -x_63 = l_Lean_Parser_ParserState_restore(x_58, x_56, x_57); -lean_dec(x_56); -x_64 = lean_ctor_get(x_63, 0); +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +lean_dec(x_62); +x_64 = lean_ctor_get(x_61, 1); lean_inc(x_64); -x_65 = lean_array_get_size(x_64); +x_65 = lean_nat_dec_eq(x_64, x_60); lean_dec(x_64); -lean_inc(x_1); -x_105 = l_Lean_Parser_tokenFn(x_1, x_63); -x_106 = lean_ctor_get(x_105, 3); -lean_inc(x_106); -if (lean_obj_tag(x_106) == 0) +if (x_65 == 0) { -lean_object* x_107; lean_object* x_108; -x_107 = lean_ctor_get(x_105, 0); -lean_inc(x_107); -x_108 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_107); -lean_dec(x_107); -if (lean_obj_tag(x_108) == 2) -{ -lean_object* x_109; lean_object* x_110; uint8_t x_111; -x_109 = lean_ctor_get(x_108, 1); -lean_inc(x_109); -lean_dec(x_108); -x_110 = l_Lean_Parser_Command_constant___elambda__1___closed__6; -x_111 = lean_string_dec_eq(x_109, x_110); -lean_dec(x_109); -if (x_111 == 0) -{ -lean_object* x_112; lean_object* x_113; -x_112 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -lean_inc(x_57); -x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_112, x_57); -x_66 = x_113; -goto block_104; +lean_dec(x_63); +lean_dec(x_60); +lean_dec(x_59); +lean_dec(x_1); +return x_61; } else { -x_66 = x_105; -goto block_104; -} -} -else -{ -lean_object* x_114; lean_object* x_115; -lean_dec(x_108); -x_114 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -lean_inc(x_57); -x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_114, x_57); -x_66 = x_115; -goto block_104; -} -} -else -{ -lean_object* x_116; lean_object* x_117; -lean_dec(x_106); -x_116 = l_Lean_Parser_Command_constant___elambda__1___closed__9; -lean_inc(x_57); -x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_116, x_57); -x_66 = x_117; -goto block_104; -} -block_104: -{ -lean_object* x_67; -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) -{ -lean_object* x_68; lean_object* x_69; -lean_inc(x_1); -x_68 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_66); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_inc(x_60); +x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); +lean_dec(x_59); +x_67 = lean_unsigned_to_nat(1024u); +x_68 = l_Lean_Parser_checkPrecFn(x_67, x_1, x_66); x_69 = lean_ctor_get(x_68, 3); lean_inc(x_69); if (lean_obj_tag(x_69) == 0) { -lean_object* x_70; lean_object* x_71; +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); +x_111 = lean_ctor_get(x_68, 1); +lean_inc(x_111); lean_inc(x_1); -x_70 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_68); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) +x_112 = l_Lean_Parser_tokenFn(x_1, x_68); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_72 = lean_ctor_get(x_70, 0); -lean_inc(x_72); -x_73 = lean_array_get_size(x_72); -lean_dec(x_72); -x_74 = lean_ctor_get(x_70, 1); -lean_inc(x_74); -x_75 = l_Lean_Parser_Command_declValSimple___elambda__1(x_1, x_70); -x_76 = lean_ctor_get(x_75, 3); -lean_inc(x_76); -if (lean_obj_tag(x_76) == 0) +lean_object* x_114; lean_object* x_115; +x_114 = lean_ctor_get(x_112, 0); +lean_inc(x_114); +x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_114); +if (lean_obj_tag(x_115) == 2) { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_74); -x_77 = l_Lean_nullKind; -x_78 = l_Lean_Parser_ParserState_mkNode(x_75, x_77, x_73); -x_79 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_78, x_79, x_65); -x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_60, x_57); -lean_dec(x_57); -return x_81; +lean_object* x_116; lean_object* x_117; uint8_t x_118; +x_116 = lean_ctor_get(x_115, 1); +lean_inc(x_116); +lean_dec(x_115); +x_117 = l_Lean_Parser_Command_constant___elambda__1___closed__6; +x_118 = lean_string_dec_eq(x_116, x_117); +lean_dec(x_116); +if (x_118 == 0) +{ +lean_object* x_119; lean_object* x_120; +x_119 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); +x_72 = x_120; +goto block_110; } else { -lean_object* x_82; uint8_t x_83; -lean_dec(x_76); -x_82 = lean_ctor_get(x_75, 1); +lean_dec(x_111); +x_72 = x_112; +goto block_110; +} +} +else +{ +lean_object* x_121; lean_object* x_122; +lean_dec(x_115); +x_121 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); +x_72 = x_122; +goto block_110; +} +} +else +{ +lean_object* x_123; lean_object* x_124; +lean_dec(x_113); +x_123 = l_Lean_Parser_Command_constant___elambda__1___closed__9; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); +x_72 = x_124; +goto block_110; +} +block_110: +{ +lean_object* x_73; +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; +lean_inc(x_1); +x_74 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_72); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) +{ +lean_object* x_76; lean_object* x_77; +lean_inc(x_1); +x_76 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_74); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = lean_array_get_size(x_78); +lean_dec(x_78); +x_80 = lean_ctor_get(x_76, 1); +lean_inc(x_80); +x_81 = l_Lean_Parser_Command_declValSimple___elambda__1(x_1, x_76); +x_82 = lean_ctor_get(x_81, 3); lean_inc(x_82); -x_83 = lean_nat_dec_eq(x_82, x_74); -lean_dec(x_82); -if (x_83 == 0) +if (lean_obj_tag(x_82) == 0) { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -lean_dec(x_74); -x_84 = l_Lean_nullKind; -x_85 = l_Lean_Parser_ParserState_mkNode(x_75, x_84, x_73); -x_86 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_65); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_60, x_57); -lean_dec(x_57); -return x_88; +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_80); +x_83 = l_Lean_nullKind; +x_84 = l_Lean_Parser_ParserState_mkNode(x_81, x_83, x_79); +x_85 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_86 = l_Lean_Parser_ParserState_mkNode(x_84, x_85, x_71); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_63, x_60); +lean_dec(x_60); +return x_87; } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_89 = l_Lean_Parser_ParserState_restore(x_75, x_73, x_74); +lean_object* x_88; uint8_t x_89; +lean_dec(x_82); +x_88 = lean_ctor_get(x_81, 1); +lean_inc(x_88); +x_89 = lean_nat_dec_eq(x_88, x_80); +lean_dec(x_88); +if (x_89 == 0) +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_80); x_90 = l_Lean_nullKind; -x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_73); +x_91 = l_Lean_Parser_ParserState_mkNode(x_81, x_90, x_79); x_92 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_65); -x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_60, x_57); -lean_dec(x_57); +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_71); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_63, x_60); +lean_dec(x_60); return x_94; } -} -} else { -lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_71); -lean_dec(x_1); -x_95 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_70, x_95, x_65); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_60, x_57); -lean_dec(x_57); -return x_97; -} -} -else -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_69); -lean_dec(x_1); +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_95 = l_Lean_Parser_ParserState_restore(x_81, x_79, x_80); +x_96 = l_Lean_nullKind; +x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_79); x_98 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_99 = l_Lean_Parser_ParserState_mkNode(x_68, x_98, x_65); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_60, x_57); -lean_dec(x_57); +x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_71); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_63, x_60); +lean_dec(x_60); return x_100; } } +} else { lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_67); +lean_dec(x_77); lean_dec(x_1); x_101 = l_Lean_Parser_Command_constant___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_66, x_101, x_65); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_60, x_57); -lean_dec(x_57); +x_102 = l_Lean_Parser_ParserState_mkNode(x_76, x_101, x_71); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); +lean_dec(x_60); return x_103; } } +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_75); +lean_dec(x_1); +x_104 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_74, x_104, x_71); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); +lean_dec(x_60); +return x_106; +} +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_73); +lean_dec(x_1); +x_107 = l_Lean_Parser_Command_constant___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_72, x_107, x_71); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); +lean_dec(x_60); +return x_109; +} +} +} +else +{ +lean_object* x_125; +lean_dec(x_69); +lean_dec(x_1); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_68, x_63, x_60); +lean_dec(x_60); +return x_125; +} } } } @@ -10721,16 +11512,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_constant___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_constant___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_constant___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_constant___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_constant___closed__6; +x_3 = l_Lean_Parser_Command_constant___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_constant___closed__8() { +lean_object* _init_l_Lean_Parser_Command_constant___closed__9() { _start: { lean_object* x_1; @@ -10738,12 +11539,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_constant___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_constant___closed__9() { +lean_object* _init_l_Lean_Parser_Command_constant___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_constant___closed__7; -x_2 = l_Lean_Parser_Command_constant___closed__8; +x_1 = l_Lean_Parser_Command_constant___closed__8; +x_2 = l_Lean_Parser_Command_constant___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10754,7 +11555,7 @@ lean_object* _init_l_Lean_Parser_Command_constant() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_constant___closed__9; +x_1 = l_Lean_Parser_Command_constant___closed__10; return x_1; } } @@ -10858,527 +11659,558 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_57 = lean_ctor_get(x_2, 1); -lean_inc(x_57); -lean_inc(x_1); -x_58 = l_Lean_Parser_tokenFn(x_1, x_2); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_60; lean_object* x_61; -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); -lean_dec(x_60); -if (lean_obj_tag(x_61) == 2) -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 1); -lean_inc(x_62); -lean_dec(x_61); -x_63 = l_Lean_Parser_Command_instance___elambda__1___closed__6; -x_64 = lean_string_dec_eq(x_62, x_63); -lean_dec(x_62); -if (x_64 == 0) -{ -lean_object* x_65; lean_object* x_66; -x_65 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); -x_8 = x_66; -goto block_56; -} -else -{ -lean_dec(x_57); -x_8 = x_58; -goto block_56; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_61); -x_67 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); -x_8 = x_68; -goto block_56; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_59); -x_69 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); -x_8 = x_70; -goto block_56; -} -block_56: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_60 = lean_ctor_get(x_7, 1); +lean_inc(x_60); lean_inc(x_1); -x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) +x_61 = l_Lean_Parser_tokenFn(x_1, x_7); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_61, 0); +lean_inc(x_63); +x_64 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_63); +lean_dec(x_63); +if (lean_obj_tag(x_64) == 2) +{ +lean_object* x_65; lean_object* x_66; uint8_t x_67; +x_65 = lean_ctor_get(x_64, 1); +lean_inc(x_65); +lean_dec(x_64); +x_66 = l_Lean_Parser_Command_instance___elambda__1___closed__6; +x_67 = lean_string_dec_eq(x_65, x_66); +lean_dec(x_65); +if (x_67 == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_68, x_60); +x_11 = x_69; +goto block_59; +} +else +{ +lean_dec(x_60); +x_11 = x_61; +goto block_59; +} +} +else +{ +lean_object* x_70; lean_object* x_71; +lean_dec(x_64); +x_70 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_70, x_60); +x_11 = x_71; +goto block_59; +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_62); +x_72 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_72, x_60); +x_11 = x_73; +goto block_59; +} +block_59: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); x_17 = lean_ctor_get(x_16, 3); lean_inc(x_17); if (lean_obj_tag(x_17) == 0) { -lean_object* x_18; lean_object* x_19; +lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_inc(x_1); -x_18 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_16); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) +x_21 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_19); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_18); -x_21 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_21); +x_24 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; } else { -lean_object* x_23; lean_object* x_24; -lean_dec(x_19); +lean_object* x_26; lean_object* x_27; +lean_dec(x_22); lean_dec(x_1); -x_23 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_18, x_23, x_7); -return x_24; +x_26 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_21, x_26, x_10); +return x_27; } } else { -lean_object* x_25; lean_object* x_26; +lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_1); +x_28 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_19, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; uint8_t x_31; lean_dec(x_17); +x_30 = lean_ctor_get(x_16, 1); +lean_inc(x_30); +x_31 = lean_nat_dec_eq(x_30, x_15); +lean_dec(x_30); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_32 = l_Lean_nullKind; +x_33 = l_Lean_Parser_ParserState_mkNode(x_16, x_32, x_14); +x_34 = lean_ctor_get(x_33, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; +lean_inc(x_1); +x_35 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_33); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_35); +x_38 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_36); lean_dec(x_1); -x_25 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_16, x_25, x_7); -return x_26; +x_40 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_35, x_40, x_10); +return x_41; } } else { -lean_object* x_27; uint8_t x_28; -lean_dec(x_14); -x_27 = lean_ctor_get(x_13, 1); -lean_inc(x_27); -x_28 = lean_nat_dec_eq(x_27, x_12); -lean_dec(x_27); -if (x_28 == 0) +lean_object* x_42; lean_object* x_43; +lean_dec(x_34); +lean_dec(x_1); +x_42 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_33, x_42, x_10); +return x_43; +} +} +else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_45 = l_Lean_nullKind; +x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_14); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; +lean_inc(x_1); +x_48 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_46); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_48); +x_51 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_51, x_10); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_49); +lean_dec(x_1); +x_53 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_48, x_53, x_10); +return x_54; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_47); +lean_dec(x_1); +x_55 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_46, x_55, x_10); +return x_56; +} +} +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_dec(x_12); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_13, x_29, x_11); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) -{ -lean_object* x_32; lean_object* x_33; -lean_inc(x_1); -x_32 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_30); -x_33 = lean_ctor_get(x_32, 3); -lean_inc(x_33); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_32); -x_35 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_7); -return x_36; -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_dec(x_33); lean_dec(x_1); -x_37 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_32, x_37, x_7); -return x_38; +x_57 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_11, x_57, x_10); +return x_58; +} } } else { -lean_object* x_39; lean_object* x_40; -lean_dec(x_31); +lean_dec(x_8); lean_dec(x_1); -x_39 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_30, x_39, x_7); -return x_40; +return x_7; } } else { -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_41 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_42 = l_Lean_nullKind; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_11); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; -lean_inc(x_1); -x_45 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_43); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_45); -x_48 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_7); -return x_49; -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_46); -lean_dec(x_1); -x_50 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_45, x_50, x_7); -return x_51; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_44); -lean_dec(x_1); -x_52 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_53 = l_Lean_Parser_ParserState_mkNode(x_43, x_52, x_7); -return x_53; -} -} -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_9); -lean_dec(x_1); -x_54 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_8, x_54, x_7); -return x_55; -} -} -} -else -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_71 = lean_ctor_get(x_2, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -x_73 = lean_ctor_get(x_2, 1); -lean_inc(x_73); -lean_inc(x_1); -x_74 = lean_apply_2(x_4, x_1, x_2); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_dec(x_73); -lean_dec(x_72); -lean_dec(x_1); -return x_74; -} -else -{ -lean_object* x_76; lean_object* x_77; uint8_t x_78; -x_76 = lean_ctor_get(x_75, 0); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_74 = lean_ctor_get(x_2, 0); +lean_inc(x_74); +x_75 = lean_array_get_size(x_74); +lean_dec(x_74); +x_76 = lean_ctor_get(x_2, 1); lean_inc(x_76); -lean_dec(x_75); -x_77 = lean_ctor_get(x_74, 1); -lean_inc(x_77); -x_78 = lean_nat_dec_eq(x_77, x_73); -lean_dec(x_77); -if (x_78 == 0) +lean_inc(x_1); +x_77 = lean_apply_2(x_4, x_1, x_2); +x_78 = lean_ctor_get(x_77, 3); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) { lean_dec(x_76); -lean_dec(x_73); -lean_dec(x_72); +lean_dec(x_75); lean_dec(x_1); -return x_74; +return x_77; } else { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_141; lean_object* x_142; -lean_inc(x_73); -x_79 = l_Lean_Parser_ParserState_restore(x_74, x_72, x_73); -lean_dec(x_72); -x_80 = lean_ctor_get(x_79, 0); +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +lean_dec(x_78); +x_80 = lean_ctor_get(x_77, 1); lean_inc(x_80); -x_81 = lean_array_get_size(x_80); +x_81 = lean_nat_dec_eq(x_80, x_76); lean_dec(x_80); +if (x_81 == 0) +{ +lean_dec(x_79); +lean_dec(x_76); +lean_dec(x_75); +lean_dec(x_1); +return x_77; +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_inc(x_76); +x_82 = l_Lean_Parser_ParserState_restore(x_77, x_75, x_76); +lean_dec(x_75); +x_83 = lean_unsigned_to_nat(1024u); +x_84 = l_Lean_Parser_checkPrecFn(x_83, x_1, x_82); +x_85 = lean_ctor_get(x_84, 3); +lean_inc(x_85); +if (lean_obj_tag(x_85) == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_86 = lean_ctor_get(x_84, 0); +lean_inc(x_86); +x_87 = lean_array_get_size(x_86); +lean_dec(x_86); +x_147 = lean_ctor_get(x_84, 1); +lean_inc(x_147); lean_inc(x_1); -x_141 = l_Lean_Parser_tokenFn(x_1, x_79); -x_142 = lean_ctor_get(x_141, 3); -lean_inc(x_142); -if (lean_obj_tag(x_142) == 0) -{ -lean_object* x_143; lean_object* x_144; -x_143 = lean_ctor_get(x_141, 0); -lean_inc(x_143); -x_144 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_143); -lean_dec(x_143); -if (lean_obj_tag(x_144) == 2) -{ -lean_object* x_145; lean_object* x_146; uint8_t x_147; -x_145 = lean_ctor_get(x_144, 1); -lean_inc(x_145); -lean_dec(x_144); -x_146 = l_Lean_Parser_Command_instance___elambda__1___closed__6; -x_147 = lean_string_dec_eq(x_145, x_146); -lean_dec(x_145); -if (x_147 == 0) -{ -lean_object* x_148; lean_object* x_149; -x_148 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -lean_inc(x_73); -x_149 = l_Lean_Parser_ParserState_mkErrorsAt(x_141, x_148, x_73); -x_82 = x_149; -goto block_140; -} -else -{ -x_82 = x_141; -goto block_140; -} -} -else +x_148 = l_Lean_Parser_tokenFn(x_1, x_84); +x_149 = lean_ctor_get(x_148, 3); +lean_inc(x_149); +if (lean_obj_tag(x_149) == 0) { lean_object* x_150; lean_object* x_151; -lean_dec(x_144); -x_150 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -lean_inc(x_73); -x_151 = l_Lean_Parser_ParserState_mkErrorsAt(x_141, x_150, x_73); -x_82 = x_151; -goto block_140; +x_150 = lean_ctor_get(x_148, 0); +lean_inc(x_150); +x_151 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_150); +lean_dec(x_150); +if (lean_obj_tag(x_151) == 2) +{ +lean_object* x_152; lean_object* x_153; uint8_t x_154; +x_152 = lean_ctor_get(x_151, 1); +lean_inc(x_152); +lean_dec(x_151); +x_153 = l_Lean_Parser_Command_instance___elambda__1___closed__6; +x_154 = lean_string_dec_eq(x_152, x_153); +lean_dec(x_152); +if (x_154 == 0) +{ +lean_object* x_155; lean_object* x_156; +x_155 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_156 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_155, x_147); +x_88 = x_156; +goto block_146; +} +else +{ +lean_dec(x_147); +x_88 = x_148; +goto block_146; } } else { -lean_object* x_152; lean_object* x_153; -lean_dec(x_142); -x_152 = l_Lean_Parser_Command_instance___elambda__1___closed__9; -lean_inc(x_73); -x_153 = l_Lean_Parser_ParserState_mkErrorsAt(x_141, x_152, x_73); -x_82 = x_153; -goto block_140; +lean_object* x_157; lean_object* x_158; +lean_dec(x_151); +x_157 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_158 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_157, x_147); +x_88 = x_158; +goto block_146; } -block_140: +} +else { -lean_object* x_83; -x_83 = lean_ctor_get(x_82, 3); -lean_inc(x_83); -if (lean_obj_tag(x_83) == 0) +lean_object* x_159; lean_object* x_160; +lean_dec(x_149); +x_159 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_160 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_159, x_147); +x_88 = x_160; +goto block_146; +} +block_146: { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = lean_ctor_get(x_82, 0); -lean_inc(x_84); -x_85 = lean_array_get_size(x_84); -lean_dec(x_84); -x_86 = lean_ctor_get(x_82, 1); -lean_inc(x_86); +lean_object* x_89; +x_89 = lean_ctor_get(x_88, 3); +lean_inc(x_89); +if (lean_obj_tag(x_89) == 0) +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_90 = lean_ctor_get(x_88, 0); +lean_inc(x_90); +x_91 = lean_array_get_size(x_90); +lean_dec(x_90); +x_92 = lean_ctor_get(x_88, 1); +lean_inc(x_92); lean_inc(x_1); -x_87 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_82); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) +x_93 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_88); +x_94 = lean_ctor_get(x_93, 3); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) { -lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_86); -x_89 = l_Lean_nullKind; -x_90 = l_Lean_Parser_ParserState_mkNode(x_87, x_89, x_85); -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) +lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_92); +x_95 = l_Lean_nullKind; +x_96 = l_Lean_Parser_ParserState_mkNode(x_93, x_95, x_91); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) { -lean_object* x_92; lean_object* x_93; +lean_object* x_98; lean_object* x_99; lean_inc(x_1); -x_92 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_90); -x_93 = lean_ctor_get(x_92, 3); -lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) +x_98 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_96); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_94 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_92); -x_95 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_81); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_76, x_73); -lean_dec(x_73); -return x_97; -} -else -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_93); -lean_dec(x_1); -x_98 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_99 = l_Lean_Parser_ParserState_mkNode(x_92, x_98, x_81); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_76, x_73); -lean_dec(x_73); -return x_100; -} -} -else -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_91); -lean_dec(x_1); +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_100 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_98); x_101 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_90, x_101, x_81); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_76, x_73); -lean_dec(x_73); +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_87); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_79, x_76); +lean_dec(x_76); return x_103; } +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_99); +lean_dec(x_1); +x_104 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_98, x_104, x_87); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_79, x_76); +lean_dec(x_76); +return x_106; +} } else { -lean_object* x_104; uint8_t x_105; -lean_dec(x_88); -x_104 = lean_ctor_get(x_87, 1); -lean_inc(x_104); -x_105 = lean_nat_dec_eq(x_104, x_86); -lean_dec(x_104); -if (x_105 == 0) +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_97); +lean_dec(x_1); +x_107 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_96, x_107, x_87); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_79, x_76); +lean_dec(x_76); +return x_109; +} +} +else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_86); -x_106 = l_Lean_nullKind; -x_107 = l_Lean_Parser_ParserState_mkNode(x_87, x_106, x_85); -x_108 = lean_ctor_get(x_107, 3); -lean_inc(x_108); -if (lean_obj_tag(x_108) == 0) -{ -lean_object* x_109; lean_object* x_110; -lean_inc(x_1); -x_109 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_107); -x_110 = lean_ctor_get(x_109, 3); +lean_object* x_110; uint8_t x_111; +lean_dec(x_94); +x_110 = lean_ctor_get(x_93, 1); lean_inc(x_110); -if (lean_obj_tag(x_110) == 0) -{ -lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -x_111 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_109); -x_112 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_81); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_76, x_73); -lean_dec(x_73); -return x_114; -} -else -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_111 = lean_nat_dec_eq(x_110, x_92); lean_dec(x_110); -lean_dec(x_1); -x_115 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_116 = l_Lean_Parser_ParserState_mkNode(x_109, x_115, x_81); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_76, x_73); -lean_dec(x_73); -return x_117; -} -} -else +if (x_111 == 0) { -lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_108); -lean_dec(x_1); +lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_92); +x_112 = l_Lean_nullKind; +x_113 = l_Lean_Parser_ParserState_mkNode(x_93, x_112, x_91); +x_114 = lean_ctor_get(x_113, 3); +lean_inc(x_114); +if (lean_obj_tag(x_114) == 0) +{ +lean_object* x_115; lean_object* x_116; +lean_inc(x_1); +x_115 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_113); +x_116 = lean_ctor_get(x_115, 3); +lean_inc(x_116); +if (lean_obj_tag(x_116) == 0) +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_117 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_115); x_118 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_107, x_118, x_81); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_76, x_73); -lean_dec(x_73); +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_87); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_79, x_76); +lean_dec(x_76); return x_120; } +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_116); +lean_dec(x_1); +x_121 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_115, x_121, x_87); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_79, x_76); +lean_dec(x_76); +return x_123; +} } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_121 = l_Lean_Parser_ParserState_restore(x_87, x_85, x_86); -x_122 = l_Lean_nullKind; -x_123 = l_Lean_Parser_ParserState_mkNode(x_121, x_122, x_85); -x_124 = lean_ctor_get(x_123, 3); -lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) -{ -lean_object* x_125; lean_object* x_126; -lean_inc(x_1); -x_125 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_123); -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_114); +lean_dec(x_1); +x_124 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_125 = l_Lean_Parser_ParserState_mkNode(x_113, x_124, x_87); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_79, x_76); +lean_dec(x_76); +return x_126; +} +} +else { lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_127 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_125); -x_128 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_129 = l_Lean_Parser_ParserState_mkNode(x_127, x_128, x_81); -x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_76, x_73); -lean_dec(x_73); -return x_130; -} -else +x_127 = l_Lean_Parser_ParserState_restore(x_93, x_91, x_92); +x_128 = l_Lean_nullKind; +x_129 = l_Lean_Parser_ParserState_mkNode(x_127, x_128, x_91); +x_130 = lean_ctor_get(x_129, 3); +lean_inc(x_130); +if (lean_obj_tag(x_130) == 0) { -lean_object* x_131; lean_object* x_132; lean_object* x_133; -lean_dec(x_126); -lean_dec(x_1); -x_131 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_132 = l_Lean_Parser_ParserState_mkNode(x_125, x_131, x_81); -x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_76, x_73); -lean_dec(x_73); -return x_133; -} -} -else +lean_object* x_131; lean_object* x_132; +lean_inc(x_1); +x_131 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_129); +x_132 = lean_ctor_get(x_131, 3); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 0) { -lean_object* x_134; lean_object* x_135; lean_object* x_136; -lean_dec(x_124); -lean_dec(x_1); +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_133 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_131); x_134 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_135 = l_Lean_Parser_ParserState_mkNode(x_123, x_134, x_81); -x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_76, x_73); -lean_dec(x_73); +x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_87); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_79, x_76); +lean_dec(x_76); return x_136; } -} -} -} else { lean_object* x_137; lean_object* x_138; lean_object* x_139; -lean_dec(x_83); +lean_dec(x_132); lean_dec(x_1); x_137 = l_Lean_Parser_Command_instance___elambda__1___closed__2; -x_138 = l_Lean_Parser_ParserState_mkNode(x_82, x_137, x_81); -x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_76, x_73); -lean_dec(x_73); +x_138 = l_Lean_Parser_ParserState_mkNode(x_131, x_137, x_87); +x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_79, x_76); +lean_dec(x_76); return x_139; } } +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; +lean_dec(x_130); +lean_dec(x_1); +x_140 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_141 = l_Lean_Parser_ParserState_mkNode(x_129, x_140, x_87); +x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_79, x_76); +lean_dec(x_76); +return x_142; +} +} +} +} +else +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; +lean_dec(x_89); +lean_dec(x_1); +x_143 = l_Lean_Parser_Command_instance___elambda__1___closed__2; +x_144 = l_Lean_Parser_ParserState_mkNode(x_88, x_143, x_87); +x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_79, x_76); +lean_dec(x_76); +return x_145; +} +} +} +else +{ +lean_object* x_161; +lean_dec(x_85); +lean_dec(x_1); +x_161 = l_Lean_Parser_mergeOrElseErrors(x_84, x_79, x_76); +lean_dec(x_76); +return x_161; +} } } } @@ -11437,16 +12269,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_instance___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_instance___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_instance___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_instance___closed__5; +x_3 = l_Lean_Parser_Command_instance___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_instance___closed__7() { +lean_object* _init_l_Lean_Parser_Command_instance___closed__8() { _start: { lean_object* x_1; @@ -11454,12 +12296,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_instance___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_instance___closed__8() { +lean_object* _init_l_Lean_Parser_Command_instance___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___closed__6; -x_2 = l_Lean_Parser_Command_instance___closed__7; +x_1 = l_Lean_Parser_Command_instance___closed__7; +x_2 = l_Lean_Parser_Command_instance___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -11470,7 +12312,7 @@ lean_object* _init_l_Lean_Parser_Command_instance() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_instance___closed__8; +x_1 = l_Lean_Parser_Command_instance___closed__9; return x_1; } } @@ -11574,258 +12416,289 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_20 = lean_ctor_get(x_2, 1); -lean_inc(x_20); -lean_inc(x_1); -x_21 = l_Lean_Parser_tokenFn(x_1, x_2); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Command_axiom___elambda__1___closed__6; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); -x_8 = x_29; -goto block_19; -} -else -{ -lean_dec(x_20); -x_8 = x_21; -goto block_19; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); -x_8 = x_31; -goto block_19; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_22); -x_32 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); -x_8 = x_33; -goto block_19; -} -block_19: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_10); -x_13 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; -lean_dec(x_11); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_10, x_15, x_7); -return x_16; -} -} -else -{ -lean_object* x_17; lean_object* x_18; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_8, x_17, x_7); -return x_18; -} -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +x_23 = lean_ctor_get(x_7, 1); +lean_inc(x_23); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) +x_24 = l_Lean_Parser_tokenFn(x_1, x_7); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_26); +lean_dec(x_26); +if (lean_obj_tag(x_27) == 2) +{ +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = lean_ctor_get(x_27, 1); +lean_inc(x_28); +lean_dec(x_27); +x_29 = l_Lean_Parser_Command_axiom___elambda__1___closed__6; +x_30 = lean_string_dec_eq(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_31, x_23); +x_11 = x_32; +goto block_22; } else { -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_23); +x_11 = x_24; +goto block_22; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_27); +x_33 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_33, x_23); +x_11 = x_34; +goto block_22; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_25); +x_35 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_35, x_23); +x_11 = x_36; +goto block_22; +} +block_22: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_13); +x_16 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_14); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_13, x_18, x_10); +return x_19; +} +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_11, x_20, x_10); +return x_21; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = lean_ctor_get(x_2, 0); +lean_inc(x_37); +x_38 = lean_array_get_size(x_37); +lean_dec(x_37); +x_39 = lean_ctor_get(x_2, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) +lean_inc(x_1); +x_40 = lean_apply_2(x_4, x_1, x_2); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_35); +lean_dec(x_38); lean_dec(x_1); -return x_37; +return x_40; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_60; lean_object* x_61; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = lean_ctor_get(x_42, 0); +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +lean_dec(x_41); +x_43 = lean_ctor_get(x_40, 1); lean_inc(x_43); -x_44 = lean_array_get_size(x_43); +x_44 = lean_nat_dec_eq(x_43, x_39); lean_dec(x_43); -lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_42); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +if (x_44 == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); -lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); -lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Command_axiom___elambda__1___closed__6; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; -x_67 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -lean_inc(x_36); -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_36); -x_45 = x_68; -goto block_59; +lean_dec(x_42); +lean_dec(x_39); +lean_dec(x_38); +lean_dec(x_1); +return x_40; } else { -x_45 = x_60; -goto block_59; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_63); -x_69 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -lean_inc(x_36); -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_36); -x_45 = x_70; -goto block_59; -} -} -else -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_61); -x_71 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; -lean_inc(x_36); -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_36); -x_45 = x_72; -goto block_59; -} -block_59: -{ -lean_object* x_46; -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -lean_inc(x_1); -x_47 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_45); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_inc(x_39); +x_45 = l_Lean_Parser_ParserState_restore(x_40, x_38, x_39); +lean_dec(x_38); +x_46 = lean_unsigned_to_nat(1024u); +x_47 = l_Lean_Parser_checkPrecFn(x_46, x_1, x_45); x_48 = lean_ctor_get(x_47, 3); lean_inc(x_48); if (lean_obj_tag(x_48) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_47); -x_50 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_44); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_39, x_36); -lean_dec(x_36); -return x_52; +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_66 = lean_ctor_get(x_47, 1); +lean_inc(x_66); +lean_inc(x_1); +x_67 = l_Lean_Parser_tokenFn(x_1, x_47); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 2) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = l_Lean_Parser_Command_axiom___elambda__1___closed__6; +x_73 = lean_string_dec_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_66); +x_51 = x_75; +goto block_65; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -lean_dec(x_1); -x_53 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_44); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_39, x_36); -lean_dec(x_36); -return x_55; +lean_dec(x_66); +x_51 = x_67; +goto block_65; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_46); -lean_dec(x_1); +lean_object* x_76; lean_object* x_77; +lean_dec(x_70); +x_76 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_66); +x_51 = x_77; +goto block_65; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_68); +x_78 = l_Lean_Parser_Command_axiom___elambda__1___closed__9; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_66); +x_51 = x_79; +goto block_65; +} +block_65: +{ +lean_object* x_52; +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; +lean_inc(x_1); +x_53 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_51); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_53); x_56 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_45, x_56, x_44); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_39, x_36); -lean_dec(x_36); +x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); +x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_42, x_39); +lean_dec(x_39); return x_58; } +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_54); +lean_dec(x_1); +x_59 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; +x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_50); +x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_42, x_39); +lean_dec(x_39); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_52); +lean_dec(x_1); +x_62 = l_Lean_Parser_Command_axiom___elambda__1___closed__2; +x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_50); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_42, x_39); +lean_dec(x_39); +return x_64; +} +} +} +else +{ +lean_object* x_80; +lean_dec(x_48); +lean_dec(x_1); +x_80 = l_Lean_Parser_mergeOrElseErrors(x_47, x_42, x_39); +lean_dec(x_39); +return x_80; } } } @@ -11878,16 +12751,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_axiom___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_axiom___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_axiom___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_axiom___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_axiom___closed__4; +x_3 = l_Lean_Parser_Command_axiom___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_axiom___closed__6() { +lean_object* _init_l_Lean_Parser_Command_axiom___closed__7() { _start: { lean_object* x_1; @@ -11895,12 +12778,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_axiom___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_axiom___closed__7() { +lean_object* _init_l_Lean_Parser_Command_axiom___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_axiom___closed__5; -x_2 = l_Lean_Parser_Command_axiom___closed__6; +x_1 = l_Lean_Parser_Command_axiom___closed__6; +x_2 = l_Lean_Parser_Command_axiom___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -11911,7 +12794,7 @@ lean_object* _init_l_Lean_Parser_Command_axiom() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_axiom___closed__7; +x_1 = l_Lean_Parser_Command_axiom___closed__8; return x_1; } } @@ -12015,258 +12898,289 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_20 = lean_ctor_get(x_2, 1); -lean_inc(x_20); -lean_inc(x_1); -x_21 = l_Lean_Parser_tokenFn(x_1, x_2); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Command_example___elambda__1___closed__6; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Command_example___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); -x_8 = x_29; -goto block_19; -} -else -{ -lean_dec(x_20); -x_8 = x_21; -goto block_19; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Command_example___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); -x_8 = x_31; -goto block_19; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_22); -x_32 = l_Lean_Parser_Command_example___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); -x_8 = x_33; -goto block_19; -} -block_19: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_10); -x_13 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; -lean_dec(x_11); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_10, x_15, x_7); -return x_16; -} -} -else -{ -lean_object* x_17; lean_object* x_18; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_8, x_17, x_7); -return x_18; -} -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +x_23 = lean_ctor_get(x_7, 1); +lean_inc(x_23); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) +x_24 = l_Lean_Parser_tokenFn(x_1, x_7); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_26); +lean_dec(x_26); +if (lean_obj_tag(x_27) == 2) +{ +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = lean_ctor_get(x_27, 1); +lean_inc(x_28); +lean_dec(x_27); +x_29 = l_Lean_Parser_Command_example___elambda__1___closed__6; +x_30 = lean_string_dec_eq(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_31, x_23); +x_11 = x_32; +goto block_22; } else { -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_23); +x_11 = x_24; +goto block_22; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_27); +x_33 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_33, x_23); +x_11 = x_34; +goto block_22; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_25); +x_35 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_24, x_35, x_23); +x_11 = x_36; +goto block_22; +} +block_22: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_13); +x_16 = l_Lean_Parser_Command_example___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_14); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_example___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_13, x_18, x_10); +return x_19; +} +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_example___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_11, x_20, x_10); +return x_21; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = lean_ctor_get(x_2, 0); +lean_inc(x_37); +x_38 = lean_array_get_size(x_37); +lean_dec(x_37); +x_39 = lean_ctor_get(x_2, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) +lean_inc(x_1); +x_40 = lean_apply_2(x_4, x_1, x_2); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_35); +lean_dec(x_38); lean_dec(x_1); -return x_37; +return x_40; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_60; lean_object* x_61; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = lean_ctor_get(x_42, 0); +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +lean_dec(x_41); +x_43 = lean_ctor_get(x_40, 1); lean_inc(x_43); -x_44 = lean_array_get_size(x_43); +x_44 = lean_nat_dec_eq(x_43, x_39); lean_dec(x_43); -lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_42); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +if (x_44 == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); -lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); -lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Command_example___elambda__1___closed__6; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; -x_67 = l_Lean_Parser_Command_example___elambda__1___closed__9; -lean_inc(x_36); -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_36); -x_45 = x_68; -goto block_59; +lean_dec(x_42); +lean_dec(x_39); +lean_dec(x_38); +lean_dec(x_1); +return x_40; } else { -x_45 = x_60; -goto block_59; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_63); -x_69 = l_Lean_Parser_Command_example___elambda__1___closed__9; -lean_inc(x_36); -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_36); -x_45 = x_70; -goto block_59; -} -} -else -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_61); -x_71 = l_Lean_Parser_Command_example___elambda__1___closed__9; -lean_inc(x_36); -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_36); -x_45 = x_72; -goto block_59; -} -block_59: -{ -lean_object* x_46; -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -lean_inc(x_1); -x_47 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_45); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_inc(x_39); +x_45 = l_Lean_Parser_ParserState_restore(x_40, x_38, x_39); +lean_dec(x_38); +x_46 = lean_unsigned_to_nat(1024u); +x_47 = l_Lean_Parser_checkPrecFn(x_46, x_1, x_45); x_48 = lean_ctor_get(x_47, 3); lean_inc(x_48); if (lean_obj_tag(x_48) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_47); -x_50 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_44); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_39, x_36); -lean_dec(x_36); -return x_52; +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_66 = lean_ctor_get(x_47, 1); +lean_inc(x_66); +lean_inc(x_1); +x_67 = l_Lean_Parser_tokenFn(x_1, x_47); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 2) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = l_Lean_Parser_Command_example___elambda__1___closed__6; +x_73 = lean_string_dec_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_66); +x_51 = x_75; +goto block_65; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -lean_dec(x_1); -x_53 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_44); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_39, x_36); -lean_dec(x_36); -return x_55; +lean_dec(x_66); +x_51 = x_67; +goto block_65; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_46); -lean_dec(x_1); +lean_object* x_76; lean_object* x_77; +lean_dec(x_70); +x_76 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_66); +x_51 = x_77; +goto block_65; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_68); +x_78 = l_Lean_Parser_Command_example___elambda__1___closed__9; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_66); +x_51 = x_79; +goto block_65; +} +block_65: +{ +lean_object* x_52; +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; +lean_inc(x_1); +x_53 = l_Lean_Parser_Command_declSig___elambda__1(x_1, x_51); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Parser_Command_declVal___elambda__1(x_1, x_53); x_56 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_45, x_56, x_44); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_39, x_36); -lean_dec(x_36); +x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); +x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_42, x_39); +lean_dec(x_39); return x_58; } +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_54); +lean_dec(x_1); +x_59 = l_Lean_Parser_Command_example___elambda__1___closed__2; +x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_50); +x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_42, x_39); +lean_dec(x_39); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_52); +lean_dec(x_1); +x_62 = l_Lean_Parser_Command_example___elambda__1___closed__2; +x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_50); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_42, x_39); +lean_dec(x_39); +return x_64; +} +} +} +else +{ +lean_object* x_80; +lean_dec(x_48); +lean_dec(x_1); +x_80 = l_Lean_Parser_mergeOrElseErrors(x_47, x_42, x_39); +lean_dec(x_39); +return x_80; } } } @@ -12305,16 +13219,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_example___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_example___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_example___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_example___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_example___closed__3; +x_3 = l_Lean_Parser_Command_example___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_example___closed__5() { +lean_object* _init_l_Lean_Parser_Command_example___closed__6() { _start: { lean_object* x_1; @@ -12322,12 +13246,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_example___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_example___closed__6() { +lean_object* _init_l_Lean_Parser_Command_example___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_example___closed__4; -x_2 = l_Lean_Parser_Command_example___closed__5; +x_1 = l_Lean_Parser_Command_example___closed__5; +x_2 = l_Lean_Parser_Command_example___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -12338,7 +13262,7 @@ lean_object* _init_l_Lean_Parser_Command_example() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_example___closed__6; +x_1 = l_Lean_Parser_Command_example___closed__7; return x_1; } } @@ -12393,488 +13317,503 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_20; lean_object* x_52; lean_object* x_53; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_52 = l_Lean_Parser_tokenFn(x_1, x_2); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); -lean_dec(x_54); -if (lean_obj_tag(x_55) == 2) -{ -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_58 = lean_string_dec_eq(x_56, x_57); -lean_dec(x_56); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_7); -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_7); -x_20 = x_60; -goto block_51; -} -else -{ -x_20 = x_52; -goto block_51; -} -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_55); -x_61 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_7); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_7); -x_20 = x_62; -goto block_51; -} -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_53); -x_63 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_7); -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_7); -x_20 = x_64; -goto block_51; -} -block_19: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_9, x_13, x_8); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_23; lean_object* x_55; lean_object* x_56; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); lean_dec(x_9); -x_15 = l_Array_shrink___main___rarg(x_10, x_8); -x_16 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_7); -lean_ctor_set(x_16, 2, x_11); -lean_ctor_set(x_16, 3, x_12); -x_17 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_8); -return x_18; +lean_inc(x_1); +x_55 = l_Lean_Parser_tokenFn(x_1, x_7); +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); +lean_dec(x_57); +if (lean_obj_tag(x_58) == 2) +{ +lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +x_60 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_61 = lean_string_dec_eq(x_59, x_60); +lean_dec(x_59); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; +x_62 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_10); +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_10); +x_23 = x_63; +goto block_54; +} +else +{ +x_23 = x_55; +goto block_54; } } -block_51: +else { -lean_object* x_21; -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) +lean_object* x_64; lean_object* x_65; +lean_dec(x_58); +x_64 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_10); +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_10); +x_23 = x_65; +goto block_54; +} +} +else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -x_23 = l_Lean_Parser_tokenFn(x_1, x_20); +lean_object* x_66; lean_object* x_67; +lean_dec(x_56); +x_66 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_10); +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_10); +x_23 = x_67; +goto block_54; +} +block_22: +{ +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_10); +x_16 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_12, x_16, x_11); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +x_18 = l_Array_shrink___main___rarg(x_13, x_11); +x_19 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_10); +lean_ctor_set(x_19, 2, x_14); +lean_ctor_set(x_19, 3, x_15); +x_20 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_11); +return x_21; +} +} +block_54: +{ +lean_object* x_24; x_24 = lean_ctor_get(x_23, 3); lean_inc(x_24); if (lean_obj_tag(x_24) == 0) { -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); +x_26 = l_Lean_Parser_tokenFn(x_1, x_23); +x_27 = lean_ctor_get(x_26, 3); lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) +if (lean_obj_tag(x_27) == 0) { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 2); -lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 3); -lean_inc(x_34); -x_9 = x_31; -x_10 = x_32; -x_11 = x_33; -x_12 = x_34; -goto block_19; -} -else +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_28); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 2) { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_22); -x_35 = lean_ctor_get(x_23, 0); +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_32 = lean_string_dec_eq(x_30, x_31); +lean_dec(x_30); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_33, x_25); +x_35 = lean_ctor_get(x_34, 0); lean_inc(x_35); -x_36 = lean_ctor_get(x_23, 2); +x_36 = lean_ctor_get(x_34, 2); lean_inc(x_36); -x_37 = lean_ctor_get(x_23, 3); +x_37 = lean_ctor_get(x_34, 3); lean_inc(x_37); -x_9 = x_23; -x_10 = x_35; -x_11 = x_36; -x_12 = x_37; -goto block_19; -} +x_12 = x_34; +x_13 = x_35; +x_14 = x_36; +x_15 = x_37; +goto block_22; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_26); -x_38 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_38, x_22); -x_40 = lean_ctor_get(x_39, 0); +lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_25); +x_38 = lean_ctor_get(x_26, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_26, 2); +lean_inc(x_39); +x_40 = lean_ctor_get(x_26, 3); lean_inc(x_40); -x_41 = lean_ctor_get(x_39, 2); -lean_inc(x_41); -x_42 = lean_ctor_get(x_39, 3); -lean_inc(x_42); -x_9 = x_39; -x_10 = x_40; -x_11 = x_41; -x_12 = x_42; -goto block_19; +x_12 = x_26; +x_13 = x_38; +x_14 = x_39; +x_15 = x_40; +goto block_22; } } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_24); -x_43 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_43, x_22); -x_45 = lean_ctor_get(x_44, 0); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_29); +x_41 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_41, x_25); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 2); +lean_inc(x_44); +x_45 = lean_ctor_get(x_42, 3); lean_inc(x_45); -x_46 = lean_ctor_get(x_44, 2); -lean_inc(x_46); -x_47 = lean_ctor_get(x_44, 3); -lean_inc(x_47); -x_9 = x_44; -x_10 = x_45; -x_11 = x_46; -x_12 = x_47; -goto block_19; +x_12 = x_42; +x_13 = x_43; +x_14 = x_44; +x_15 = x_45; +goto block_22; } } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_21); -lean_dec(x_1); -x_48 = lean_ctor_get(x_20, 0); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_dec(x_27); +x_46 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_46, x_25); +x_48 = lean_ctor_get(x_47, 0); lean_inc(x_48); -x_49 = lean_ctor_get(x_20, 2); +x_49 = lean_ctor_get(x_47, 2); lean_inc(x_49); -x_50 = lean_ctor_get(x_20, 3); +x_50 = lean_ctor_get(x_47, 3); lean_inc(x_50); -x_9 = x_20; -x_10 = x_48; -x_11 = x_49; -x_12 = x_50; -goto block_19; +x_12 = x_47; +x_13 = x_48; +x_14 = x_49; +x_15 = x_50; +goto block_22; +} +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_24); +lean_dec(x_1); +x_51 = lean_ctor_get(x_23, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_23, 2); +lean_inc(x_52); +x_53 = lean_ctor_get(x_23, 3); +lean_inc(x_53); +x_12 = x_23; +x_13 = x_51; +x_14 = x_52; +x_15 = x_53; +goto block_22; } } } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_65 = lean_ctor_get(x_2, 0); -lean_inc(x_65); -x_66 = lean_ctor_get(x_2, 1); -lean_inc(x_66); -x_67 = lean_array_get_size(x_65); -lean_dec(x_65); -lean_inc(x_2); -lean_inc(x_1); -x_68 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_69 = x_2; -} else { - lean_dec_ref(x_2); - x_69 = lean_box(0); +lean_dec(x_8); +lean_dec(x_1); +return x_7; } -x_70 = lean_ctor_get(x_68, 3); +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_68 = lean_ctor_get(x_2, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_70 = lean_ctor_get(x_2, 1); lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_dec(x_69); -lean_dec(x_67); -lean_dec(x_66); -lean_dec(x_1); -return x_68; -} -else -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_68, 1); -lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_66); -lean_dec(x_72); -if (x_73 == 0) -{ -lean_dec(x_71); -lean_dec(x_69); -lean_dec(x_67); -lean_dec(x_66); -lean_dec(x_1); -return x_68; -} -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_90; lean_object* x_122; lean_object* x_123; -lean_inc(x_66); -x_74 = l_Lean_Parser_ParserState_restore(x_68, x_67, x_66); -lean_dec(x_67); -x_75 = lean_ctor_get(x_74, 0); -lean_inc(x_75); -x_76 = lean_array_get_size(x_75); -lean_dec(x_75); lean_inc(x_1); -x_122 = l_Lean_Parser_tokenFn(x_1, x_74); -x_123 = lean_ctor_get(x_122, 3); -lean_inc(x_123); -if (lean_obj_tag(x_123) == 0) +x_71 = lean_apply_2(x_4, x_1, x_2); +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_124; lean_object* x_125; -x_124 = lean_ctor_get(x_122, 0); -lean_inc(x_124); -x_125 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_124); -lean_dec(x_124); -if (lean_obj_tag(x_125) == 2) -{ -lean_object* x_126; lean_object* x_127; uint8_t x_128; -x_126 = lean_ctor_get(x_125, 1); -lean_inc(x_126); -lean_dec(x_125); -x_127 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_128 = lean_string_dec_eq(x_126, x_127); -lean_dec(x_126); -if (x_128 == 0) -{ -lean_object* x_129; lean_object* x_130; -x_129 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_66); -x_130 = l_Lean_Parser_ParserState_mkErrorsAt(x_122, x_129, x_66); -x_90 = x_130; -goto block_121; -} -else -{ -x_90 = x_122; -goto block_121; -} -} -else -{ -lean_object* x_131; lean_object* x_132; -lean_dec(x_125); -x_131 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_66); -x_132 = l_Lean_Parser_ParserState_mkErrorsAt(x_122, x_131, x_66); -x_90 = x_132; -goto block_121; -} -} -else -{ -lean_object* x_133; lean_object* x_134; -lean_dec(x_123); -x_133 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_66); -x_134 = l_Lean_Parser_ParserState_mkErrorsAt(x_122, x_133, x_66); -x_90 = x_134; -goto block_121; -} -block_89: -{ -if (lean_obj_tag(x_80) == 0) -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; -lean_dec(x_79); -lean_dec(x_78); +lean_dec(x_70); lean_dec(x_69); -x_81 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; -x_82 = l_Lean_Parser_ParserState_mkNode(x_77, x_81, x_76); -x_83 = l_Lean_Parser_mergeOrElseErrors(x_82, x_71, x_66); -lean_dec(x_66); -return x_83; -} -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -lean_dec(x_77); -x_84 = l_Array_shrink___main___rarg(x_78, x_76); -lean_inc(x_66); -if (lean_is_scalar(x_69)) { - x_85 = lean_alloc_ctor(0, 4, 0); -} else { - x_85 = x_69; -} -lean_ctor_set(x_85, 0, x_84); -lean_ctor_set(x_85, 1, x_66); -lean_ctor_set(x_85, 2, x_79); -lean_ctor_set(x_85, 3, x_80); -x_86 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_76); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_71, x_66); -lean_dec(x_66); -return x_88; -} -} -block_121: -{ -lean_object* x_91; -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_90, 1); -lean_inc(x_92); -x_93 = l_Lean_Parser_tokenFn(x_1, x_90); -x_94 = lean_ctor_get(x_93, 3); -lean_inc(x_94); -if (lean_obj_tag(x_94) == 0) -{ -lean_object* x_95; lean_object* x_96; -x_95 = lean_ctor_get(x_93, 0); -lean_inc(x_95); -x_96 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_95); -lean_dec(x_95); -if (lean_obj_tag(x_96) == 2) -{ -lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_97 = lean_ctor_get(x_96, 1); -lean_inc(x_97); -lean_dec(x_96); -x_98 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_99 = lean_string_dec_eq(x_97, x_98); -lean_dec(x_97); -if (x_99 == 0) -{ -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_100 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_100, x_92); -x_102 = lean_ctor_get(x_101, 0); -lean_inc(x_102); -x_103 = lean_ctor_get(x_101, 2); -lean_inc(x_103); -x_104 = lean_ctor_get(x_101, 3); -lean_inc(x_104); -x_77 = x_101; -x_78 = x_102; -x_79 = x_103; -x_80 = x_104; -goto block_89; -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; -lean_dec(x_92); -x_105 = lean_ctor_get(x_93, 0); -lean_inc(x_105); -x_106 = lean_ctor_get(x_93, 2); -lean_inc(x_106); -x_107 = lean_ctor_get(x_93, 3); -lean_inc(x_107); -x_77 = x_93; -x_78 = x_105; -x_79 = x_106; -x_80 = x_107; -goto block_89; -} -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_96); -x_108 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_108, x_92); -x_110 = lean_ctor_get(x_109, 0); -lean_inc(x_110); -x_111 = lean_ctor_get(x_109, 2); -lean_inc(x_111); -x_112 = lean_ctor_get(x_109, 3); -lean_inc(x_112); -x_77 = x_109; -x_78 = x_110; -x_79 = x_111; -x_80 = x_112; -goto block_89; -} -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_94); -x_113 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_113, x_92); -x_115 = lean_ctor_get(x_114, 0); -lean_inc(x_115); -x_116 = lean_ctor_get(x_114, 2); -lean_inc(x_116); -x_117 = lean_ctor_get(x_114, 3); -lean_inc(x_117); -x_77 = x_114; -x_78 = x_115; -x_79 = x_116; -x_80 = x_117; -goto block_89; -} -} -else -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_91); lean_dec(x_1); -x_118 = lean_ctor_get(x_90, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_90, 2); -lean_inc(x_119); -x_120 = lean_ctor_get(x_90, 3); -lean_inc(x_120); -x_77 = x_90; -x_78 = x_118; -x_79 = x_119; -x_80 = x_120; -goto block_89; +return x_71; } +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +lean_dec(x_72); +x_74 = lean_ctor_get(x_71, 1); +lean_inc(x_74); +x_75 = lean_nat_dec_eq(x_74, x_70); +lean_dec(x_74); +if (x_75 == 0) +{ +lean_dec(x_73); +lean_dec(x_70); +lean_dec(x_69); +lean_dec(x_1); +return x_71; +} +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_inc(x_70); +x_76 = l_Lean_Parser_ParserState_restore(x_71, x_69, x_70); +lean_dec(x_69); +x_77 = lean_unsigned_to_nat(1024u); +x_78 = l_Lean_Parser_checkPrecFn(x_77, x_1, x_76); +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_96; lean_object* x_128; lean_object* x_129; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +x_82 = lean_array_get_size(x_80); +lean_dec(x_80); +lean_inc(x_1); +x_128 = l_Lean_Parser_tokenFn(x_1, x_78); +x_129 = lean_ctor_get(x_128, 3); +lean_inc(x_129); +if (lean_obj_tag(x_129) == 0) +{ +lean_object* x_130; lean_object* x_131; +x_130 = lean_ctor_get(x_128, 0); +lean_inc(x_130); +x_131 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_130); +lean_dec(x_130); +if (lean_obj_tag(x_131) == 2) +{ +lean_object* x_132; lean_object* x_133; uint8_t x_134; +x_132 = lean_ctor_get(x_131, 1); +lean_inc(x_132); +lean_dec(x_131); +x_133 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_134 = lean_string_dec_eq(x_132, x_133); +lean_dec(x_132); +if (x_134 == 0) +{ +lean_object* x_135; lean_object* x_136; +x_135 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_81); +x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_135, x_81); +x_96 = x_136; +goto block_127; +} +else +{ +x_96 = x_128; +goto block_127; +} +} +else +{ +lean_object* x_137; lean_object* x_138; +lean_dec(x_131); +x_137 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_81); +x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_137, x_81); +x_96 = x_138; +goto block_127; +} +} +else +{ +lean_object* x_139; lean_object* x_140; +lean_dec(x_129); +x_139 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +lean_inc(x_81); +x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_139, x_81); +x_96 = x_140; +goto block_127; +} +block_95: +{ +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_85); +lean_dec(x_84); +lean_dec(x_81); +x_87 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_83, x_87, x_82); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_73, x_70); +lean_dec(x_70); +return x_89; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_83); +x_90 = l_Array_shrink___main___rarg(x_84, x_82); +x_91 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_91, 0, x_90); +lean_ctor_set(x_91, 1, x_81); +lean_ctor_set(x_91, 2, x_85); +lean_ctor_set(x_91, 3, x_86); +x_92 = l_Lean_Parser_Command_inferMod___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_82); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_73, x_70); +lean_dec(x_70); +return x_94; +} +} +block_127: +{ +lean_object* x_97; +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +x_99 = l_Lean_Parser_tokenFn(x_1, x_96); +x_100 = lean_ctor_get(x_99, 3); +lean_inc(x_100); +if (lean_obj_tag(x_100) == 0) +{ +lean_object* x_101; lean_object* x_102; +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +x_102 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_101); +lean_dec(x_101); +if (lean_obj_tag(x_102) == 2) +{ +lean_object* x_103; lean_object* x_104; uint8_t x_105; +x_103 = lean_ctor_get(x_102, 1); +lean_inc(x_103); +lean_dec(x_102); +x_104 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_105 = lean_string_dec_eq(x_103, x_104); +lean_dec(x_103); +if (x_105 == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_106 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_107 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_106, x_98); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 2); +lean_inc(x_109); +x_110 = lean_ctor_get(x_107, 3); +lean_inc(x_110); +x_83 = x_107; +x_84 = x_108; +x_85 = x_109; +x_86 = x_110; +goto block_95; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_98); +x_111 = lean_ctor_get(x_99, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_99, 2); +lean_inc(x_112); +x_113 = lean_ctor_get(x_99, 3); +lean_inc(x_113); +x_83 = x_99; +x_84 = x_111; +x_85 = x_112; +x_86 = x_113; +goto block_95; +} +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_102); +x_114 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_114, x_98); +x_116 = lean_ctor_get(x_115, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_115, 2); +lean_inc(x_117); +x_118 = lean_ctor_get(x_115, 3); +lean_inc(x_118); +x_83 = x_115; +x_84 = x_116; +x_85 = x_117; +x_86 = x_118; +goto block_95; +} +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_100); +x_119 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_119, x_98); +x_121 = lean_ctor_get(x_120, 0); +lean_inc(x_121); +x_122 = lean_ctor_get(x_120, 2); +lean_inc(x_122); +x_123 = lean_ctor_get(x_120, 3); +lean_inc(x_123); +x_83 = x_120; +x_84 = x_121; +x_85 = x_122; +x_86 = x_123; +goto block_95; +} +} +else +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_97); +lean_dec(x_1); +x_124 = lean_ctor_get(x_96, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_96, 2); +lean_inc(x_125); +x_126 = lean_ctor_get(x_96, 3); +lean_inc(x_126); +x_83 = x_96; +x_84 = x_124; +x_85 = x_125; +x_86 = x_126; +goto block_95; +} +} +} +else +{ +lean_object* x_141; +lean_dec(x_79); +lean_dec(x_1); +x_141 = l_Lean_Parser_mergeOrElseErrors(x_78, x_73, x_70); +lean_dec(x_70); +return x_141; } } } @@ -12904,16 +13843,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_inferMod___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_inferMod___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_inferMod___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_inferMod___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_inferMod___closed__2; +x_3 = l_Lean_Parser_Command_inferMod___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_inferMod___closed__4() { +lean_object* _init_l_Lean_Parser_Command_inferMod___closed__5() { _start: { lean_object* x_1; @@ -12921,12 +13870,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_inferMod___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_inferMod___closed__5() { +lean_object* _init_l_Lean_Parser_Command_inferMod___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_inferMod___closed__3; -x_2 = l_Lean_Parser_Command_inferMod___closed__4; +x_1 = l_Lean_Parser_Command_inferMod___closed__4; +x_2 = l_Lean_Parser_Command_inferMod___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -12937,7 +13886,7 @@ lean_object* _init_l_Lean_Parser_Command_inferMod() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_inferMod___closed__5; +x_1 = l_Lean_Parser_Command_inferMod___closed__6; return x_1; } } @@ -12992,457 +13941,488 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_49 = lean_ctor_get(x_2, 1); -lean_inc(x_49); -lean_inc(x_1); -x_50 = l_Lean_Parser_tokenFn(x_1, x_2); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); -lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_8 = x_58; -goto block_48; -} -else -{ -lean_dec(x_49); -x_8 = x_50; -goto block_48; -} -} -else -{ -lean_object* x_59; lean_object* x_60; -lean_dec(x_53); -x_59 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_59, x_49); -x_8 = x_60; -goto block_48; -} -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_51); -x_61 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_61, x_49); -x_8 = x_62; -goto block_48; -} -block_48: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_52 = lean_ctor_get(x_7, 1); +lean_inc(x_52); lean_inc(x_1); -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_53 = l_Lean_Parser_tokenFn(x_1, x_7); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_10, 0); +lean_object* x_55; lean_object* x_56; +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); +lean_dec(x_55); +if (lean_obj_tag(x_56) == 2) +{ +lean_object* x_57; lean_object* x_58; uint8_t x_59; +x_57 = lean_ctor_get(x_56, 1); +lean_inc(x_57); +lean_dec(x_56); +x_58 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_59 = lean_string_dec_eq(x_57, x_58); +lean_dec(x_57); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; +x_60 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_52); +x_11 = x_61; +goto block_51; +} +else +{ +lean_dec(x_52); +x_11 = x_53; +goto block_51; +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_56); +x_62 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_52); +x_11 = x_63; +goto block_51; +} +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_54); +x_64 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_52); +x_11 = x_65; +goto block_51; +} +block_51: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_10, 1); -lean_inc(x_14); -lean_inc(x_1); -x_15 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_10); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) +if (lean_obj_tag(x_12) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_dec(x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_15, x_17, x_13); +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +lean_inc(x_1); +x_18 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_13); x_19 = lean_ctor_get(x_18, 3); lean_inc(x_19); if (lean_obj_tag(x_19) == 0) { lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_18); -x_21 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; +lean_dec(x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_18, x_20, x_16); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_21); +x_24 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; } else { -lean_object* x_23; lean_object* x_24; -lean_dec(x_19); +lean_object* x_26; lean_object* x_27; +lean_dec(x_22); lean_dec(x_1); -x_23 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_18, x_23, x_7); -return x_24; +x_26 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_21, x_26, x_10); +return x_27; } } else { -lean_object* x_25; uint8_t x_26; -lean_dec(x_16); -x_25 = lean_ctor_get(x_15, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_14); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_14); -x_27 = l_Lean_nullKind; -x_28 = l_Lean_Parser_ParserState_mkNode(x_15, x_27, x_13); -x_29 = lean_ctor_get(x_28, 3); -lean_inc(x_29); -if (lean_obj_tag(x_29) == 0) +lean_object* x_28; uint8_t x_29; +lean_dec(x_19); +x_28 = lean_ctor_get(x_18, 1); +lean_inc(x_28); +x_29 = lean_nat_dec_eq(x_28, x_17); +lean_dec(x_28); +if (x_29 == 0) { lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_30 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_28); -x_31 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_7); -return x_32; +lean_dec(x_17); +x_30 = l_Lean_nullKind; +x_31 = l_Lean_Parser_ParserState_mkNode(x_18, x_30, x_16); +x_32 = lean_ctor_get(x_31, 3); +lean_inc(x_32); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_31); +x_34 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; } else { -lean_object* x_33; lean_object* x_34; -lean_dec(x_29); +lean_object* x_36; lean_object* x_37; +lean_dec(x_32); lean_dec(x_1); -x_33 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_28, x_33, x_7); -return x_34; +x_36 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_31, x_36, x_10); +return x_37; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_35 = l_Lean_Parser_ParserState_restore(x_15, x_13, x_14); -x_36 = l_Lean_nullKind; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_13); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_16); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_37); -x_40 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_7); -return x_41; +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_40); +x_43 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_10); +return x_44; } else { -lean_object* x_42; lean_object* x_43; -lean_dec(x_38); +lean_object* x_45; lean_object* x_46; +lean_dec(x_41); lean_dec(x_1); -x_42 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_37, x_42, x_7); -return x_43; +x_45 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_40, x_45, x_10); +return x_46; } } } } else { -lean_object* x_44; lean_object* x_45; -lean_dec(x_11); +lean_object* x_47; lean_object* x_48; +lean_dec(x_14); lean_dec(x_1); -x_44 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_10, x_44, x_7); -return x_45; +x_47 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_13, x_47, x_10); +return x_48; } } else { -lean_object* x_46; lean_object* x_47; -lean_dec(x_9); +lean_object* x_49; lean_object* x_50; +lean_dec(x_12); lean_dec(x_1); -x_46 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_8, x_46, x_7); -return x_47; +x_49 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_11, x_49, x_10); +return x_50; } } } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_63 = lean_ctor_get(x_2, 0); -lean_inc(x_63); -x_64 = lean_array_get_size(x_63); -lean_dec(x_63); -x_65 = lean_ctor_get(x_2, 1); -lean_inc(x_65); -lean_inc(x_1); -x_66 = lean_apply_2(x_4, x_1, x_2); -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) -{ -lean_dec(x_65); -lean_dec(x_64); +lean_dec(x_8); lean_dec(x_1); -return x_66; +return x_7; +} } else { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 0); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_66 = lean_ctor_get(x_2, 0); +lean_inc(x_66); +x_67 = lean_array_get_size(x_66); +lean_dec(x_66); +x_68 = lean_ctor_get(x_2, 1); lean_inc(x_68); -lean_dec(x_67); -x_69 = lean_ctor_get(x_66, 1); -lean_inc(x_69); -x_70 = lean_nat_dec_eq(x_69, x_65); -lean_dec(x_69); -if (x_70 == 0) +lean_inc(x_1); +x_69 = lean_apply_2(x_4, x_1, x_2); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) { lean_dec(x_68); -lean_dec(x_65); -lean_dec(x_64); +lean_dec(x_67); lean_dec(x_1); -return x_66; +return x_69; } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_123; lean_object* x_124; -lean_inc(x_65); -x_71 = l_Lean_Parser_ParserState_restore(x_66, x_64, x_65); -lean_dec(x_64); -x_72 = lean_ctor_get(x_71, 0); +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +lean_dec(x_70); +x_72 = lean_ctor_get(x_69, 1); lean_inc(x_72); -x_73 = lean_array_get_size(x_72); +x_73 = lean_nat_dec_eq(x_72, x_68); lean_dec(x_72); -lean_inc(x_1); -x_123 = l_Lean_Parser_tokenFn(x_1, x_71); -x_124 = lean_ctor_get(x_123, 3); -lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) +if (x_73 == 0) { -lean_object* x_125; lean_object* x_126; -x_125 = lean_ctor_get(x_123, 0); -lean_inc(x_125); -x_126 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_125); -lean_dec(x_125); -if (lean_obj_tag(x_126) == 2) -{ -lean_object* x_127; lean_object* x_128; uint8_t x_129; -x_127 = lean_ctor_get(x_126, 1); -lean_inc(x_127); -lean_dec(x_126); -x_128 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; -x_129 = lean_string_dec_eq(x_127, x_128); -lean_dec(x_127); -if (x_129 == 0) -{ -lean_object* x_130; lean_object* x_131; -x_130 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_65); -x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_130, x_65); -x_74 = x_131; -goto block_122; +lean_dec(x_71); +lean_dec(x_68); +lean_dec(x_67); +lean_dec(x_1); +return x_69; } else { -x_74 = x_123; -goto block_122; -} -} -else -{ -lean_object* x_132; lean_object* x_133; -lean_dec(x_126); -x_132 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_65); -x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_132, x_65); -x_74 = x_133; -goto block_122; -} -} -else -{ -lean_object* x_134; lean_object* x_135; -lean_dec(x_124); -x_134 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_65); -x_135 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_134, x_65); -x_74 = x_135; -goto block_122; -} -block_122: -{ -lean_object* x_75; -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; -lean_inc(x_1); -x_76 = l_Lean_Parser_ident___elambda__1(x_1, x_74); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_inc(x_68); +x_74 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); +lean_dec(x_67); +x_75 = lean_unsigned_to_nat(1024u); +x_76 = l_Lean_Parser_checkPrecFn(x_75, x_1, x_74); x_77 = lean_ctor_get(x_76, 3); lean_inc(x_77); if (lean_obj_tag(x_77) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_129; lean_object* x_130; lean_object* x_131; x_78 = lean_ctor_get(x_76, 0); lean_inc(x_78); x_79 = lean_array_get_size(x_78); lean_dec(x_78); -x_80 = lean_ctor_get(x_76, 1); -lean_inc(x_80); +x_129 = lean_ctor_get(x_76, 1); +lean_inc(x_129); lean_inc(x_1); -x_81 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_76); -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) +x_130 = l_Lean_Parser_tokenFn(x_1, x_76); +x_131 = lean_ctor_get(x_130, 3); +lean_inc(x_131); +if (lean_obj_tag(x_131) == 0) { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_80); -x_83 = l_Lean_nullKind; -x_84 = l_Lean_Parser_ParserState_mkNode(x_81, x_83, x_79); -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +lean_object* x_132; lean_object* x_133; +x_132 = lean_ctor_get(x_130, 0); +lean_inc(x_132); +x_133 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_132); +lean_dec(x_132); +if (lean_obj_tag(x_133) == 2) { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_86 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_84); -x_87 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_87, x_73); -x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_68, x_65); -lean_dec(x_65); -return x_89; +lean_object* x_134; lean_object* x_135; uint8_t x_136; +x_134 = lean_ctor_get(x_133, 1); +lean_inc(x_134); +lean_dec(x_133); +x_135 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_136 = lean_string_dec_eq(x_134, x_135); +lean_dec(x_134); +if (x_136 == 0) +{ +lean_object* x_137; lean_object* x_138; +x_137 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_130, x_137, x_129); +x_80 = x_138; +goto block_128; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -lean_dec(x_85); +lean_dec(x_129); +x_80 = x_130; +goto block_128; +} +} +else +{ +lean_object* x_139; lean_object* x_140; +lean_dec(x_133); +x_139 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_130, x_139, x_129); +x_80 = x_140; +goto block_128; +} +} +else +{ +lean_object* x_141; lean_object* x_142; +lean_dec(x_131); +x_141 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_130, x_141, x_129); +x_80 = x_142; +goto block_128; +} +block_128: +{ +lean_object* x_81; +x_81 = lean_ctor_get(x_80, 3); +lean_inc(x_81); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; +lean_inc(x_1); +x_82 = l_Lean_Parser_ident___elambda__1(x_1, x_80); +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = lean_ctor_get(x_82, 0); +lean_inc(x_84); +x_85 = lean_array_get_size(x_84); +lean_dec(x_84); +x_86 = lean_ctor_get(x_82, 1); +lean_inc(x_86); +lean_inc(x_1); +x_87 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_82); +x_88 = lean_ctor_get(x_87, 3); +lean_inc(x_88); +if (lean_obj_tag(x_88) == 0) +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_86); +x_89 = l_Lean_nullKind; +x_90 = l_Lean_Parser_ParserState_mkNode(x_87, x_89, x_85); +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_92 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_90); +x_93 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_79); +x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_71, x_68); +lean_dec(x_68); +return x_95; +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_91); lean_dec(x_1); -x_90 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_91 = l_Lean_Parser_ParserState_mkNode(x_84, x_90, x_73); -x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_68, x_65); -lean_dec(x_65); -return x_92; +x_96 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_97 = l_Lean_Parser_ParserState_mkNode(x_90, x_96, x_79); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_71, x_68); +lean_dec(x_68); +return x_98; } } else { -lean_object* x_93; uint8_t x_94; -lean_dec(x_82); -x_93 = lean_ctor_get(x_81, 1); -lean_inc(x_93); -x_94 = lean_nat_dec_eq(x_93, x_80); -lean_dec(x_93); -if (x_94 == 0) +lean_object* x_99; uint8_t x_100; +lean_dec(x_88); +x_99 = lean_ctor_get(x_87, 1); +lean_inc(x_99); +x_100 = lean_nat_dec_eq(x_99, x_86); +lean_dec(x_99); +if (x_100 == 0) { -lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_80); -x_95 = l_Lean_nullKind; -x_96 = l_Lean_Parser_ParserState_mkNode(x_81, x_95, x_79); -x_97 = lean_ctor_get(x_96, 3); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) +lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_86); +x_101 = l_Lean_nullKind; +x_102 = l_Lean_Parser_ParserState_mkNode(x_87, x_101, x_85); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_98 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_96); -x_99 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_73); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_68, x_65); -lean_dec(x_65); -return x_101; +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_104 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_102); +x_105 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_79); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_71, x_68); +lean_dec(x_68); +return x_107; } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_97); +lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_dec(x_103); lean_dec(x_1); -x_102 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_96, x_102, x_73); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_68, x_65); -lean_dec(x_65); -return x_104; +x_108 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_102, x_108, x_79); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_71, x_68); +lean_dec(x_68); +return x_110; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_105 = l_Lean_Parser_ParserState_restore(x_81, x_79, x_80); -x_106 = l_Lean_nullKind; -x_107 = l_Lean_Parser_ParserState_mkNode(x_105, x_106, x_79); -x_108 = lean_ctor_get(x_107, 3); -lean_inc(x_108); -if (lean_obj_tag(x_108) == 0) +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_111 = l_Lean_Parser_ParserState_restore(x_87, x_85, x_86); +x_112 = l_Lean_nullKind; +x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_85); +x_114 = lean_ctor_get(x_113, 3); +lean_inc(x_114); +if (lean_obj_tag(x_114) == 0) { -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_109 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_107); -x_110 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_73); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_68, x_65); -lean_dec(x_65); -return x_112; -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; -lean_dec(x_108); -lean_dec(x_1); -x_113 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_114 = l_Lean_Parser_ParserState_mkNode(x_107, x_113, x_73); -x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_68, x_65); -lean_dec(x_65); -return x_115; -} -} -} -} -else -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; -lean_dec(x_77); -lean_dec(x_1); +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_115 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_113); x_116 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_117 = l_Lean_Parser_ParserState_mkNode(x_76, x_116, x_73); -x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_68, x_65); -lean_dec(x_65); +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_79); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_71, x_68); +lean_dec(x_68); return x_118; } -} else { lean_object* x_119; lean_object* x_120; lean_object* x_121; -lean_dec(x_75); +lean_dec(x_114); lean_dec(x_1); x_119 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; -x_120 = l_Lean_Parser_ParserState_mkNode(x_74, x_119, x_73); -x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_68, x_65); -lean_dec(x_65); +x_120 = l_Lean_Parser_ParserState_mkNode(x_113, x_119, x_79); +x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_71, x_68); +lean_dec(x_68); return x_121; } } } } +else +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; +lean_dec(x_83); +lean_dec(x_1); +x_122 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_123 = l_Lean_Parser_ParserState_mkNode(x_82, x_122, x_79); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_71, x_68); +lean_dec(x_68); +return x_124; +} +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_dec(x_81); +lean_dec(x_1); +x_125 = l_Lean_Parser_Command_introRule___elambda__1___closed__2; +x_126 = l_Lean_Parser_ParserState_mkNode(x_80, x_125, x_79); +x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_71, x_68); +lean_dec(x_68); +return x_127; +} +} +} +else +{ +lean_object* x_143; +lean_dec(x_77); +lean_dec(x_1); +x_143 = l_Lean_Parser_mergeOrElseErrors(x_76, x_71, x_68); +lean_dec(x_68); +return x_143; +} +} +} } } } @@ -13504,16 +14484,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_introRule___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_introRule___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_introRule___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_introRule___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_introRule___closed__5; +x_3 = l_Lean_Parser_Command_introRule___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_introRule___closed__7() { +lean_object* _init_l_Lean_Parser_Command_introRule___closed__8() { _start: { lean_object* x_1; @@ -13521,12 +14511,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_introRule___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_introRule___closed__8() { +lean_object* _init_l_Lean_Parser_Command_introRule___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_introRule___closed__6; -x_2 = l_Lean_Parser_Command_introRule___closed__7; +x_1 = l_Lean_Parser_Command_introRule___closed__7; +x_2 = l_Lean_Parser_Command_introRule___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -13537,7 +14527,7 @@ lean_object* _init_l_Lean_Parser_Command_introRule() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_introRule___closed__8; +x_1 = l_Lean_Parser_Command_introRule___closed__9; return x_1; } } @@ -13703,307 +14693,338 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_28 = lean_ctor_get(x_2, 1); -lean_inc(x_28); -lean_inc(x_1); -x_29 = l_Lean_Parser_tokenFn(x_1, x_2); -x_30 = lean_ctor_get(x_29, 3); -lean_inc(x_30); -if (lean_obj_tag(x_30) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_29, 0); -lean_inc(x_31); -x_32 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_31); -lean_dec(x_31); -if (lean_obj_tag(x_32) == 2) -{ -lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_33 = lean_ctor_get(x_32, 1); -lean_inc(x_33); -lean_dec(x_32); -x_34 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; -x_35 = lean_string_dec_eq(x_33, x_34); -lean_dec(x_33); -if (x_35 == 0) -{ -lean_object* x_36; lean_object* x_37; -x_36 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_36, x_28); -x_8 = x_37; -goto block_27; -} -else -{ -lean_dec(x_28); -x_8 = x_29; -goto block_27; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_32); -x_38 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_38, x_28); -x_8 = x_39; -goto block_27; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_30); -x_40 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_40, x_28); -x_8 = x_41; -goto block_27; -} -block_27: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_12); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_15); -x_19 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; -lean_dec(x_13); -lean_dec(x_1); -x_21 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_12, x_21, x_7); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_11); -lean_dec(x_1); -x_23 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_10, x_23, x_7); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_25 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_8, x_25, x_7); -return x_26; -} -} -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_42 = lean_ctor_get(x_2, 0); -lean_inc(x_42); -x_43 = lean_array_get_size(x_42); -lean_dec(x_42); -x_44 = lean_ctor_get(x_2, 1); -lean_inc(x_44); +x_31 = lean_ctor_get(x_7, 1); +lean_inc(x_31); lean_inc(x_1); -x_45 = lean_apply_2(x_4, x_1, x_2); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +x_32 = l_Lean_Parser_tokenFn(x_1, x_7); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) { -lean_dec(x_44); -lean_dec(x_43); -lean_dec(x_1); -return x_45; +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_34); +lean_dec(x_34); +if (lean_obj_tag(x_35) == 2) +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; +x_38 = lean_string_dec_eq(x_36, x_37); +lean_dec(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +x_39 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_39, x_31); +x_11 = x_40; +goto block_30; } else { -lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_47 = lean_ctor_get(x_46, 0); +lean_dec(x_31); +x_11 = x_32; +goto block_30; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_35); +x_41 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_41, x_31); +x_11 = x_42; +goto block_30; +} +} +else +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_33); +x_43 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_43, x_31); +x_11 = x_44; +goto block_30; +} +block_30: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_15); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_18); +x_22 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_16); +lean_dec(x_1); +x_24 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_15, x_24, x_10); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_14); +lean_dec(x_1); +x_26 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_13, x_26, x_10); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_12); +lean_dec(x_1); +x_28 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_11, x_28, x_10); +return x_29; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_2, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_2, 1); lean_inc(x_47); -lean_dec(x_46); -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -x_49 = lean_nat_dec_eq(x_48, x_44); -lean_dec(x_48); -if (x_49 == 0) +lean_inc(x_1); +x_48 = lean_apply_2(x_4, x_1, x_2); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { lean_dec(x_47); -lean_dec(x_44); -lean_dec(x_43); +lean_dec(x_46); lean_dec(x_1); -return x_45; +return x_48; } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_77; lean_object* x_78; -lean_inc(x_44); -x_50 = l_Lean_Parser_ParserState_restore(x_45, x_43, x_44); -lean_dec(x_43); -x_51 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +lean_dec(x_49); +x_51 = lean_ctor_get(x_48, 1); lean_inc(x_51); -x_52 = lean_array_get_size(x_51); +x_52 = lean_nat_dec_eq(x_51, x_47); lean_dec(x_51); -lean_inc(x_1); -x_77 = l_Lean_Parser_tokenFn(x_1, x_50); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (x_52 == 0) { -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); -lean_inc(x_79); -x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); -lean_dec(x_79); -if (lean_obj_tag(x_80) == 2) -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 1); -lean_inc(x_81); -lean_dec(x_80); -x_82 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; -x_83 = lean_string_dec_eq(x_81, x_82); -lean_dec(x_81); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; -x_84 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -lean_inc(x_44); -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_44); -x_53 = x_85; -goto block_76; +lean_dec(x_50); +lean_dec(x_47); +lean_dec(x_46); +lean_dec(x_1); +return x_48; } else { -x_53 = x_77; -goto block_76; -} -} -else -{ -lean_object* x_86; lean_object* x_87; -lean_dec(x_80); -x_86 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -lean_inc(x_44); -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_86, x_44); -x_53 = x_87; -goto block_76; -} -} -else -{ -lean_object* x_88; lean_object* x_89; -lean_dec(x_78); -x_88 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -lean_inc(x_44); -x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_88, x_44); -x_53 = x_89; -goto block_76; -} -block_76: -{ -lean_object* x_54; -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -lean_inc(x_1); -x_55 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_53); +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +lean_inc(x_47); +x_53 = l_Lean_Parser_ParserState_restore(x_48, x_46, x_47); +lean_dec(x_46); +x_54 = lean_unsigned_to_nat(1024u); +x_55 = l_Lean_Parser_checkPrecFn(x_54, x_1, x_53); x_56 = lean_ctor_get(x_55, 3); lean_inc(x_56); if (lean_obj_tag(x_56) == 0) { -lean_object* x_57; lean_object* x_58; +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_83 = lean_ctor_get(x_55, 1); +lean_inc(x_83); lean_inc(x_1); -x_57 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_55); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) +x_84 = l_Lean_Parser_tokenFn(x_1, x_55); +x_85 = lean_ctor_get(x_84, 3); +lean_inc(x_85); +if (lean_obj_tag(x_85) == 0) { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -x_60 = lean_array_get_size(x_59); -lean_dec(x_59); -x_61 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_57); -x_62 = l_Lean_nullKind; -x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_60); -x_64 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_52); -x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_47, x_44); -lean_dec(x_44); -return x_66; +lean_object* x_86; lean_object* x_87; +x_86 = lean_ctor_get(x_84, 0); +lean_inc(x_86); +x_87 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_86); +lean_dec(x_86); +if (lean_obj_tag(x_87) == 2) +{ +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_87, 1); +lean_inc(x_88); +lean_dec(x_87); +x_89 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; +x_90 = lean_string_dec_eq(x_88, x_89); +lean_dec(x_88); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; +x_91 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_92 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_91, x_83); +x_59 = x_92; +goto block_82; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_58); -lean_dec(x_1); -x_67 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_57, x_67, x_52); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_47, x_44); -lean_dec(x_44); -return x_69; +lean_dec(x_83); +x_59 = x_84; +goto block_82; } } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_dec(x_56); -lean_dec(x_1); +lean_object* x_93; lean_object* x_94; +lean_dec(x_87); +x_93 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_93, x_83); +x_59 = x_94; +goto block_82; +} +} +else +{ +lean_object* x_95; lean_object* x_96; +lean_dec(x_85); +x_95 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_95, x_83); +x_59 = x_96; +goto block_82; +} +block_82: +{ +lean_object* x_60; +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; +lean_inc(x_1); +x_61 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_59); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) +{ +lean_object* x_63; lean_object* x_64; +lean_inc(x_1); +x_63 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_61); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_65 = lean_ctor_get(x_63, 0); +lean_inc(x_65); +x_66 = lean_array_get_size(x_65); +lean_dec(x_65); +x_67 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_63); +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_67, x_68, x_66); x_70 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_55, x_70, x_52); -x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_47, x_44); -lean_dec(x_44); +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_58); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_50, x_47); +lean_dec(x_47); return x_72; } -} else { lean_object* x_73; lean_object* x_74; lean_object* x_75; -lean_dec(x_54); +lean_dec(x_64); lean_dec(x_1); x_73 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; -x_74 = l_Lean_Parser_ParserState_mkNode(x_53, x_73, x_52); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_47, x_44); -lean_dec(x_44); +x_74 = l_Lean_Parser_ParserState_mkNode(x_63, x_73, x_58); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_50, x_47); +lean_dec(x_47); return x_75; } } +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_dec(x_62); +lean_dec(x_1); +x_76 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_77 = l_Lean_Parser_ParserState_mkNode(x_61, x_76, x_58); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_50, x_47); +lean_dec(x_47); +return x_78; +} +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; +lean_dec(x_60); +lean_dec(x_1); +x_79 = l_Lean_Parser_Command_inductive___elambda__1___closed__2; +x_80 = l_Lean_Parser_ParserState_mkNode(x_59, x_79, x_58); +x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_50, x_47); +lean_dec(x_47); +return x_81; +} +} +} +else +{ +lean_object* x_97; +lean_dec(x_56); +lean_dec(x_1); +x_97 = l_Lean_Parser_mergeOrElseErrors(x_55, x_50, x_47); +lean_dec(x_47); +return x_97; +} } } } @@ -14076,16 +15097,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_inductive___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_inductive___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_inductive___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_inductive___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_inductive___closed__6; +x_3 = l_Lean_Parser_Command_inductive___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_inductive___closed__8() { +lean_object* _init_l_Lean_Parser_Command_inductive___closed__9() { _start: { lean_object* x_1; @@ -14093,12 +15124,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_inductive___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_inductive___closed__9() { +lean_object* _init_l_Lean_Parser_Command_inductive___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_inductive___closed__7; -x_2 = l_Lean_Parser_Command_inductive___closed__8; +x_1 = l_Lean_Parser_Command_inductive___closed__8; +x_2 = l_Lean_Parser_Command_inductive___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -14109,7 +15140,7 @@ lean_object* _init_l_Lean_Parser_Command_inductive() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_inductive___closed__9; +x_1 = l_Lean_Parser_Command_inductive___closed__10; return x_1; } } @@ -14213,609 +15244,624 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_36; lean_object* x_68; lean_object* x_69; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_39; lean_object* x_71; lean_object* x_72; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_68 = l_Lean_Parser_tokenFn(x_1, x_2); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) -{ -lean_object* x_70; lean_object* x_71; -x_70 = lean_ctor_get(x_68, 0); -lean_inc(x_70); -x_71 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_70); -lean_dec(x_70); -if (lean_obj_tag(x_71) == 2) -{ -lean_object* x_72; lean_object* x_73; uint8_t x_74; -x_72 = lean_ctor_get(x_71, 1); +x_71 = l_Lean_Parser_tokenFn(x_1, x_7); +x_72 = lean_ctor_get(x_71, 3); lean_inc(x_72); -lean_dec(x_71); -x_73 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; -x_74 = lean_string_dec_eq(x_72, x_73); +if (lean_obj_tag(x_72) == 0) +{ +lean_object* x_73; lean_object* x_74; +x_73 = lean_ctor_get(x_71, 0); +lean_inc(x_73); +x_74 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_73); +lean_dec(x_73); +if (lean_obj_tag(x_74) == 2) +{ +lean_object* x_75; lean_object* x_76; uint8_t x_77; +x_75 = lean_ctor_get(x_74, 1); +lean_inc(x_75); +lean_dec(x_74); +x_76 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; +x_77 = lean_string_dec_eq(x_75, x_76); +lean_dec(x_75); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; +x_78 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_10); +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_78, x_10); +x_39 = x_79; +goto block_70; +} +else +{ +x_39 = x_71; +goto block_70; +} +} +else +{ +lean_object* x_80; lean_object* x_81; +lean_dec(x_74); +x_80 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_10); +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_80, x_10); +x_39 = x_81; +goto block_70; +} +} +else +{ +lean_object* x_82; lean_object* x_83; lean_dec(x_72); -if (x_74 == 0) -{ -lean_object* x_75; lean_object* x_76; -x_75 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_7); -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_75, x_7); -x_36 = x_76; -goto block_67; +x_82 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_10); +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_82, x_10); +x_39 = x_83; +goto block_70; } -else +block_38: { -x_36 = x_68; -goto block_67; -} -} -else -{ -lean_object* x_77; lean_object* x_78; -lean_dec(x_71); -x_77 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_7); -x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_77, x_7); -x_36 = x_78; -goto block_67; -} -} -else -{ -lean_object* x_79; lean_object* x_80; -lean_dec(x_69); -x_79 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_7); -x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_79, x_7); -x_36 = x_80; -goto block_67; -} -block_35: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = lean_ctor_get(x_9, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_9); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; lean_object* x_17; -lean_inc(x_1); -x_16 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_14); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -x_19 = lean_array_get_size(x_18); -lean_dec(x_18); -x_20 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_16); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_19); -x_23 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_8); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_17); -lean_dec(x_1); -x_25 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_16, x_25, x_8); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -lean_dec(x_1); -x_27 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_14, x_27, x_8); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; +lean_object* x_16; +lean_dec(x_14); lean_dec(x_13); +lean_dec(x_10); +x_16 = lean_ctor_get(x_12, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; +lean_inc(x_1); +x_17 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_12); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_inc(x_1); +x_19 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_17); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = lean_array_get_size(x_21); +lean_dec(x_21); +x_23 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_19); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_22); +x_26 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_20); lean_dec(x_1); -x_29 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_9, x_29, x_8); -return x_30; +x_28 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_19, x_28, x_11); +return x_29; } } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_9); +lean_object* x_30; lean_object* x_31; +lean_dec(x_18); lean_dec(x_1); -x_31 = l_Array_shrink___main___rarg(x_10, x_8); -x_32 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_7); -lean_ctor_set(x_32, 2, x_11); -lean_ctor_set(x_32, 3, x_12); -x_33 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_8); -return x_34; +x_30 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_17, x_30, x_11); +return x_31; } } -block_67: +else { -lean_object* x_37; -x_37 = lean_ctor_get(x_36, 3); -lean_inc(x_37); -if (lean_obj_tag(x_37) == 0) +lean_object* x_32; lean_object* x_33; +lean_dec(x_16); +lean_dec(x_1); +x_32 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_12, x_32, x_11); +return x_33; +} +} +else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = l_Lean_Parser_tokenFn(x_1, x_36); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_12); +lean_dec(x_1); +x_34 = l_Array_shrink___main___rarg(x_13, x_11); +x_35 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_10); +lean_ctor_set(x_35, 2, x_14); +lean_ctor_set(x_35, 3, x_15); +x_36 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); +return x_37; +} +} +block_70: +{ +lean_object* x_40; x_40 = lean_ctor_get(x_39, 3); lean_inc(x_40); if (lean_obj_tag(x_40) == 0) { -lean_object* x_41; lean_object* x_42; -x_41 = lean_ctor_get(x_39, 0); +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_39, 1); lean_inc(x_41); -x_42 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_41); -lean_dec(x_41); -if (lean_obj_tag(x_42) == 2) -{ -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_ctor_get(x_42, 1); +lean_inc(x_1); +x_42 = l_Lean_Parser_tokenFn(x_1, x_39); +x_43 = lean_ctor_get(x_42, 3); lean_inc(x_43); -lean_dec(x_42); -x_44 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; -x_45 = lean_string_dec_eq(x_43, x_44); -lean_dec(x_43); -if (x_45 == 0) +if (lean_obj_tag(x_43) == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_46 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_39, x_46, x_38); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 2); -lean_inc(x_49); -x_50 = lean_ctor_get(x_47, 3); -lean_inc(x_50); -x_9 = x_47; -x_10 = x_48; -x_11 = x_49; -x_12 = x_50; -goto block_35; -} -else +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_44); +lean_dec(x_44); +if (lean_obj_tag(x_45) == 2) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_38); -x_51 = lean_ctor_get(x_39, 0); +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 1); +lean_inc(x_46); +lean_dec(x_45); +x_47 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; +x_48 = lean_string_dec_eq(x_46, x_47); +lean_dec(x_46); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_49, x_41); +x_51 = lean_ctor_get(x_50, 0); lean_inc(x_51); -x_52 = lean_ctor_get(x_39, 2); +x_52 = lean_ctor_get(x_50, 2); lean_inc(x_52); -x_53 = lean_ctor_get(x_39, 3); +x_53 = lean_ctor_get(x_50, 3); lean_inc(x_53); -x_9 = x_39; -x_10 = x_51; -x_11 = x_52; -x_12 = x_53; -goto block_35; -} +x_12 = x_50; +x_13 = x_51; +x_14 = x_52; +x_15 = x_53; +goto block_38; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_42); -x_54 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_39, x_54, x_38); -x_56 = lean_ctor_get(x_55, 0); +lean_object* x_54; lean_object* x_55; lean_object* x_56; +lean_dec(x_41); +x_54 = lean_ctor_get(x_42, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_42, 2); +lean_inc(x_55); +x_56 = lean_ctor_get(x_42, 3); lean_inc(x_56); -x_57 = lean_ctor_get(x_55, 2); -lean_inc(x_57); -x_58 = lean_ctor_get(x_55, 3); -lean_inc(x_58); -x_9 = x_55; -x_10 = x_56; -x_11 = x_57; -x_12 = x_58; -goto block_35; +x_12 = x_42; +x_13 = x_54; +x_14 = x_55; +x_15 = x_56; +goto block_38; } } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_40); -x_59 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_39, x_59, x_38); -x_61 = lean_ctor_get(x_60, 0); +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_45); +x_57 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_57, x_41); +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_58, 2); +lean_inc(x_60); +x_61 = lean_ctor_get(x_58, 3); lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 2); -lean_inc(x_62); -x_63 = lean_ctor_get(x_60, 3); -lean_inc(x_63); -x_9 = x_60; -x_10 = x_61; -x_11 = x_62; -x_12 = x_63; -goto block_35; +x_12 = x_58; +x_13 = x_59; +x_14 = x_60; +x_15 = x_61; +goto block_38; } } else { -lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_dec(x_37); -x_64 = lean_ctor_get(x_36, 0); +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +lean_dec(x_43); +x_62 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_62, x_41); +x_64 = lean_ctor_get(x_63, 0); lean_inc(x_64); -x_65 = lean_ctor_get(x_36, 2); +x_65 = lean_ctor_get(x_63, 2); lean_inc(x_65); -x_66 = lean_ctor_get(x_36, 3); +x_66 = lean_ctor_get(x_63, 3); lean_inc(x_66); -x_9 = x_36; -x_10 = x_64; -x_11 = x_65; -x_12 = x_66; -goto block_35; +x_12 = x_63; +x_13 = x_64; +x_14 = x_65; +x_15 = x_66; +goto block_38; +} +} +else +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_dec(x_40); +x_67 = lean_ctor_get(x_39, 0); +lean_inc(x_67); +x_68 = lean_ctor_get(x_39, 2); +lean_inc(x_68); +x_69 = lean_ctor_get(x_39, 3); +lean_inc(x_69); +x_12 = x_39; +x_13 = x_67; +x_14 = x_68; +x_15 = x_69; +goto block_38; } } } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_81 = lean_ctor_get(x_2, 0); -lean_inc(x_81); -x_82 = lean_ctor_get(x_2, 1); -lean_inc(x_82); -x_83 = lean_array_get_size(x_81); -lean_dec(x_81); -lean_inc(x_2); -lean_inc(x_1); -x_84 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_85 = x_2; -} else { - lean_dec_ref(x_2); - x_85 = lean_box(0); +lean_dec(x_8); +lean_dec(x_1); +return x_7; } -x_86 = lean_ctor_get(x_84, 3); +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = lean_ctor_get(x_2, 0); +lean_inc(x_84); +x_85 = lean_array_get_size(x_84); +lean_dec(x_84); +x_86 = lean_ctor_get(x_2, 1); lean_inc(x_86); -if (lean_obj_tag(x_86) == 0) -{ -lean_dec(x_85); -lean_dec(x_83); -lean_dec(x_82); -lean_dec(x_1); -return x_84; -} -else -{ -lean_object* x_87; lean_object* x_88; uint8_t x_89; -x_87 = lean_ctor_get(x_86, 0); -lean_inc(x_87); -lean_dec(x_86); -x_88 = lean_ctor_get(x_84, 1); +lean_inc(x_1); +x_87 = lean_apply_2(x_4, x_1, x_2); +x_88 = lean_ctor_get(x_87, 3); lean_inc(x_88); -x_89 = lean_nat_dec_eq(x_88, x_82); +if (lean_obj_tag(x_88) == 0) +{ +lean_dec(x_86); +lean_dec(x_85); +lean_dec(x_1); +return x_87; +} +else +{ +lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); lean_dec(x_88); -if (x_89 == 0) +x_90 = lean_ctor_get(x_87, 1); +lean_inc(x_90); +x_91 = lean_nat_dec_eq(x_90, x_86); +lean_dec(x_90); +if (x_91 == 0) { -lean_dec(x_87); +lean_dec(x_89); +lean_dec(x_86); lean_dec(x_85); -lean_dec(x_83); -lean_dec(x_82); lean_dec(x_1); -return x_84; +return x_87; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_125; lean_object* x_157; lean_object* x_158; -lean_inc(x_82); -x_90 = l_Lean_Parser_ParserState_restore(x_84, x_83, x_82); -lean_dec(x_83); -x_91 = lean_ctor_get(x_90, 0); -lean_inc(x_91); -x_92 = lean_array_get_size(x_91); -lean_dec(x_91); -lean_inc(x_1); -x_157 = l_Lean_Parser_tokenFn(x_1, x_90); -x_158 = lean_ctor_get(x_157, 3); -lean_inc(x_158); -if (lean_obj_tag(x_158) == 0) -{ -lean_object* x_159; lean_object* x_160; -x_159 = lean_ctor_get(x_157, 0); -lean_inc(x_159); -x_160 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_159); -lean_dec(x_159); -if (lean_obj_tag(x_160) == 2) -{ -lean_object* x_161; lean_object* x_162; uint8_t x_163; -x_161 = lean_ctor_get(x_160, 1); -lean_inc(x_161); -lean_dec(x_160); -x_162 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; -x_163 = lean_string_dec_eq(x_161, x_162); -lean_dec(x_161); -if (x_163 == 0) -{ -lean_object* x_164; lean_object* x_165; -x_164 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_82); -x_165 = l_Lean_Parser_ParserState_mkErrorsAt(x_157, x_164, x_82); -x_125 = x_165; -goto block_156; -} -else -{ -x_125 = x_157; -goto block_156; -} -} -else -{ -lean_object* x_166; lean_object* x_167; -lean_dec(x_160); -x_166 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_82); -x_167 = l_Lean_Parser_ParserState_mkErrorsAt(x_157, x_166, x_82); -x_125 = x_167; -goto block_156; -} -} -else -{ -lean_object* x_168; lean_object* x_169; -lean_dec(x_158); -x_168 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_82); -x_169 = l_Lean_Parser_ParserState_mkErrorsAt(x_157, x_168, x_82); -x_125 = x_169; -goto block_156; -} -block_124: -{ -if (lean_obj_tag(x_96) == 0) -{ -lean_object* x_97; -lean_dec(x_95); -lean_dec(x_94); +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_inc(x_86); +x_92 = l_Lean_Parser_ParserState_restore(x_87, x_85, x_86); lean_dec(x_85); -x_97 = lean_ctor_get(x_93, 3); +x_93 = lean_unsigned_to_nat(1024u); +x_94 = l_Lean_Parser_checkPrecFn(x_93, x_1, x_92); +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_131; lean_object* x_163; lean_object* x_164; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +x_97 = lean_ctor_get(x_94, 1); lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) -{ -lean_object* x_98; lean_object* x_99; +x_98 = lean_array_get_size(x_96); +lean_dec(x_96); lean_inc(x_1); -x_98 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_93); -x_99 = lean_ctor_get(x_98, 3); -lean_inc(x_99); -if (lean_obj_tag(x_99) == 0) +x_163 = l_Lean_Parser_tokenFn(x_1, x_94); +x_164 = lean_ctor_get(x_163, 3); +lean_inc(x_164); +if (lean_obj_tag(x_164) == 0) { -lean_object* x_100; lean_object* x_101; -lean_inc(x_1); -x_100 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_98); -x_101 = lean_ctor_get(x_100, 3); -lean_inc(x_101); -if (lean_obj_tag(x_101) == 0) +lean_object* x_165; lean_object* x_166; +x_165 = lean_ctor_get(x_163, 0); +lean_inc(x_165); +x_166 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_165); +lean_dec(x_165); +if (lean_obj_tag(x_166) == 2) { -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_102 = lean_ctor_get(x_100, 0); -lean_inc(x_102); -x_103 = lean_array_get_size(x_102); -lean_dec(x_102); -x_104 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_100); -x_105 = l_Lean_nullKind; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_103); -x_107 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_92); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_87, x_82); -lean_dec(x_82); -return x_109; +lean_object* x_167; lean_object* x_168; uint8_t x_169; +x_167 = lean_ctor_get(x_166, 1); +lean_inc(x_167); +lean_dec(x_166); +x_168 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; +x_169 = lean_string_dec_eq(x_167, x_168); +lean_dec(x_167); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +x_170 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_97); +x_171 = l_Lean_Parser_ParserState_mkErrorsAt(x_163, x_170, x_97); +x_131 = x_171; +goto block_162; } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; +x_131 = x_163; +goto block_162; +} +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_166); +x_172 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_97); +x_173 = l_Lean_Parser_ParserState_mkErrorsAt(x_163, x_172, x_97); +x_131 = x_173; +goto block_162; +} +} +else +{ +lean_object* x_174; lean_object* x_175; +lean_dec(x_164); +x_174 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +lean_inc(x_97); +x_175 = l_Lean_Parser_ParserState_mkErrorsAt(x_163, x_174, x_97); +x_131 = x_175; +goto block_162; +} +block_130: +{ +if (lean_obj_tag(x_102) == 0) +{ +lean_object* x_103; lean_dec(x_101); -lean_dec(x_1); -x_110 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_100, x_110, x_92); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_87, x_82); -lean_dec(x_82); -return x_112; -} -} -else +lean_dec(x_100); +lean_dec(x_97); +x_103 = lean_ctor_get(x_99, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_113; lean_object* x_114; lean_object* x_115; -lean_dec(x_99); -lean_dec(x_1); +lean_object* x_104; lean_object* x_105; +lean_inc(x_1); +x_104 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_99); +x_105 = lean_ctor_get(x_104, 3); +lean_inc(x_105); +if (lean_obj_tag(x_105) == 0) +{ +lean_object* x_106; lean_object* x_107; +lean_inc(x_1); +x_106 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_104); +x_107 = lean_ctor_get(x_106, 3); +lean_inc(x_107); +if (lean_obj_tag(x_107) == 0) +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_108 = lean_ctor_get(x_106, 0); +lean_inc(x_108); +x_109 = lean_array_get_size(x_108); +lean_dec(x_108); +x_110 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_inductive___elambda__1___spec__1(x_1, x_106); +x_111 = l_Lean_nullKind; +x_112 = l_Lean_Parser_ParserState_mkNode(x_110, x_111, x_109); x_113 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_114 = l_Lean_Parser_ParserState_mkNode(x_98, x_113, x_92); -x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_87, x_82); -lean_dec(x_82); +x_114 = l_Lean_Parser_ParserState_mkNode(x_112, x_113, x_98); +x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_89, x_86); +lean_dec(x_86); return x_115; } -} else { lean_object* x_116; lean_object* x_117; lean_object* x_118; -lean_dec(x_97); +lean_dec(x_107); lean_dec(x_1); x_116 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_117 = l_Lean_Parser_ParserState_mkNode(x_93, x_116, x_92); -x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_87, x_82); -lean_dec(x_82); +x_117 = l_Lean_Parser_ParserState_mkNode(x_106, x_116, x_98); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_89, x_86); +lean_dec(x_86); return x_118; } } else { -lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_93); +lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_dec(x_105); lean_dec(x_1); -x_119 = l_Array_shrink___main___rarg(x_94, x_92); -lean_inc(x_82); -if (lean_is_scalar(x_85)) { - x_120 = lean_alloc_ctor(0, 4, 0); -} else { - x_120 = x_85; -} -lean_ctor_set(x_120, 0, x_119); -lean_ctor_set(x_120, 1, x_82); -lean_ctor_set(x_120, 2, x_95); -lean_ctor_set(x_120, 3, x_96); -x_121 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; -x_122 = l_Lean_Parser_ParserState_mkNode(x_120, x_121, x_92); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_87, x_82); -lean_dec(x_82); -return x_123; +x_119 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_120 = l_Lean_Parser_ParserState_mkNode(x_104, x_119, x_98); +x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_89, x_86); +lean_dec(x_86); +return x_121; } } -block_156: +else { -lean_object* x_126; -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_122; lean_object* x_123; lean_object* x_124; +lean_dec(x_103); +lean_dec(x_1); +x_122 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_123 = l_Lean_Parser_ParserState_mkNode(x_99, x_122, x_98); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_89, x_86); +lean_dec(x_86); +return x_124; +} +} +else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_127 = lean_ctor_get(x_125, 1); -lean_inc(x_127); -lean_inc(x_1); -x_128 = l_Lean_Parser_tokenFn(x_1, x_125); -x_129 = lean_ctor_get(x_128, 3); -lean_inc(x_129); -if (lean_obj_tag(x_129) == 0) +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_99); +lean_dec(x_1); +x_125 = l_Array_shrink___main___rarg(x_100, x_98); +x_126 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_126, 0, x_125); +lean_ctor_set(x_126, 1, x_97); +lean_ctor_set(x_126, 2, x_101); +lean_ctor_set(x_126, 3, x_102); +x_127 = l_Lean_Parser_Command_classInductive___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_126, x_127, x_98); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_89, x_86); +lean_dec(x_86); +return x_129; +} +} +block_162: { -lean_object* x_130; lean_object* x_131; -x_130 = lean_ctor_get(x_128, 0); -lean_inc(x_130); -x_131 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_130); -lean_dec(x_130); -if (lean_obj_tag(x_131) == 2) -{ -lean_object* x_132; lean_object* x_133; uint8_t x_134; -x_132 = lean_ctor_get(x_131, 1); +lean_object* x_132; +x_132 = lean_ctor_get(x_131, 3); lean_inc(x_132); -lean_dec(x_131); -x_133 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; -x_134 = lean_string_dec_eq(x_132, x_133); -lean_dec(x_132); -if (x_134 == 0) +if (lean_obj_tag(x_132) == 0) { -lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; -x_135 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_135, x_127); -x_137 = lean_ctor_get(x_136, 0); -lean_inc(x_137); -x_138 = lean_ctor_get(x_136, 2); +lean_object* x_133; lean_object* x_134; lean_object* x_135; +x_133 = lean_ctor_get(x_131, 1); +lean_inc(x_133); +lean_inc(x_1); +x_134 = l_Lean_Parser_tokenFn(x_1, x_131); +x_135 = lean_ctor_get(x_134, 3); +lean_inc(x_135); +if (lean_obj_tag(x_135) == 0) +{ +lean_object* x_136; lean_object* x_137; +x_136 = lean_ctor_get(x_134, 0); +lean_inc(x_136); +x_137 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_136); +lean_dec(x_136); +if (lean_obj_tag(x_137) == 2) +{ +lean_object* x_138; lean_object* x_139; uint8_t x_140; +x_138 = lean_ctor_get(x_137, 1); lean_inc(x_138); -x_139 = lean_ctor_get(x_136, 3); -lean_inc(x_139); -x_93 = x_136; -x_94 = x_137; -x_95 = x_138; -x_96 = x_139; -goto block_124; -} -else +lean_dec(x_137); +x_139 = l_Lean_Parser_Command_inductive___elambda__1___closed__6; +x_140 = lean_string_dec_eq(x_138, x_139); +lean_dec(x_138); +if (x_140 == 0) { -lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_127); -x_140 = lean_ctor_get(x_128, 0); -lean_inc(x_140); -x_141 = lean_ctor_get(x_128, 2); -lean_inc(x_141); -x_142 = lean_ctor_get(x_128, 3); -lean_inc(x_142); -x_93 = x_128; -x_94 = x_140; -x_95 = x_141; -x_96 = x_142; -goto block_124; -} -} -else -{ -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; -lean_dec(x_131); -x_143 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_144 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_143, x_127); -x_145 = lean_ctor_get(x_144, 0); +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; +x_141 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_141, x_133); +x_143 = lean_ctor_get(x_142, 0); +lean_inc(x_143); +x_144 = lean_ctor_get(x_142, 2); +lean_inc(x_144); +x_145 = lean_ctor_get(x_142, 3); lean_inc(x_145); -x_146 = lean_ctor_get(x_144, 2); +x_99 = x_142; +x_100 = x_143; +x_101 = x_144; +x_102 = x_145; +goto block_130; +} +else +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_133); +x_146 = lean_ctor_get(x_134, 0); lean_inc(x_146); -x_147 = lean_ctor_get(x_144, 3); +x_147 = lean_ctor_get(x_134, 2); lean_inc(x_147); -x_93 = x_144; -x_94 = x_145; -x_95 = x_146; -x_96 = x_147; -goto block_124; +x_148 = lean_ctor_get(x_134, 3); +lean_inc(x_148); +x_99 = x_134; +x_100 = x_146; +x_101 = x_147; +x_102 = x_148; +goto block_130; } } else { -lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; -lean_dec(x_129); -x_148 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; -x_149 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_148, x_127); -x_150 = lean_ctor_get(x_149, 0); -lean_inc(x_150); -x_151 = lean_ctor_get(x_149, 2); +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +lean_dec(x_137); +x_149 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_150 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_149, x_133); +x_151 = lean_ctor_get(x_150, 0); lean_inc(x_151); -x_152 = lean_ctor_get(x_149, 3); +x_152 = lean_ctor_get(x_150, 2); lean_inc(x_152); -x_93 = x_149; -x_94 = x_150; -x_95 = x_151; -x_96 = x_152; -goto block_124; +x_153 = lean_ctor_get(x_150, 3); +lean_inc(x_153); +x_99 = x_150; +x_100 = x_151; +x_101 = x_152; +x_102 = x_153; +goto block_130; } } else { -lean_object* x_153; lean_object* x_154; lean_object* x_155; -lean_dec(x_126); -x_153 = lean_ctor_get(x_125, 0); -lean_inc(x_153); -x_154 = lean_ctor_get(x_125, 2); -lean_inc(x_154); -x_155 = lean_ctor_get(x_125, 3); -lean_inc(x_155); -x_93 = x_125; -x_94 = x_153; -x_95 = x_154; -x_96 = x_155; -goto block_124; +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; +lean_dec(x_135); +x_154 = l_Lean_Parser_Command_inductive___elambda__1___closed__9; +x_155 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_154, x_133); +x_156 = lean_ctor_get(x_155, 0); +lean_inc(x_156); +x_157 = lean_ctor_get(x_155, 2); +lean_inc(x_157); +x_158 = lean_ctor_get(x_155, 3); +lean_inc(x_158); +x_99 = x_155; +x_100 = x_156; +x_101 = x_157; +x_102 = x_158; +goto block_130; } } +else +{ +lean_object* x_159; lean_object* x_160; lean_object* x_161; +lean_dec(x_132); +x_159 = lean_ctor_get(x_131, 0); +lean_inc(x_159); +x_160 = lean_ctor_get(x_131, 2); +lean_inc(x_160); +x_161 = lean_ctor_get(x_131, 3); +lean_inc(x_161); +x_99 = x_131; +x_100 = x_159; +x_101 = x_160; +x_102 = x_161; +goto block_130; +} +} +} +else +{ +lean_object* x_176; +lean_dec(x_95); +lean_dec(x_1); +x_176 = l_Lean_Parser_mergeOrElseErrors(x_94, x_89, x_86); +lean_dec(x_86); +return x_176; +} } } } @@ -14863,16 +15909,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_classInductive___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_classInductive___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_classInductive___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_classInductive___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_classInductive___closed__4; +x_3 = l_Lean_Parser_Command_classInductive___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_classInductive___closed__6() { +lean_object* _init_l_Lean_Parser_Command_classInductive___closed__7() { _start: { lean_object* x_1; @@ -14880,12 +15936,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_classInductive___elambda_ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_classInductive___closed__7() { +lean_object* _init_l_Lean_Parser_Command_classInductive___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_classInductive___closed__5; -x_2 = l_Lean_Parser_Command_classInductive___closed__6; +x_1 = l_Lean_Parser_Command_classInductive___closed__6; +x_2 = l_Lean_Parser_Command_classInductive___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -14896,7 +15952,7 @@ lean_object* _init_l_Lean_Parser_Command_classInductive() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_classInductive___closed__7; +x_1 = l_Lean_Parser_Command_classInductive___closed__8; return x_1; } } @@ -15013,682 +16069,713 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_35; lean_object* x_58; lean_object* x_82; lean_object* x_83; lean_object* x_84; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_82 = lean_ctor_get(x_2, 1); -lean_inc(x_82); -lean_inc(x_1); -x_83 = l_Lean_Parser_tokenFn(x_1, x_2); -x_84 = lean_ctor_get(x_83, 3); -lean_inc(x_84); -if (lean_obj_tag(x_84) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_85; lean_object* x_86; -x_85 = lean_ctor_get(x_83, 0); -lean_inc(x_85); -x_86 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_85); -lean_dec(x_85); -if (lean_obj_tag(x_86) == 2) -{ -lean_object* x_87; lean_object* x_88; uint8_t x_89; -x_87 = lean_ctor_get(x_86, 1); -lean_inc(x_87); -lean_dec(x_86); -x_88 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_89 = lean_string_dec_eq(x_87, x_88); -lean_dec(x_87); -if (x_89 == 0) -{ -lean_object* x_90; lean_object* x_91; -x_90 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_83, x_90, x_82); -x_58 = x_91; -goto block_81; -} -else -{ -lean_dec(x_82); -x_58 = x_83; -goto block_81; -} -} -else -{ -lean_object* x_92; lean_object* x_93; -lean_dec(x_86); -x_92 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_83, x_92, x_82); -x_58 = x_93; -goto block_81; -} -} -else -{ -lean_object* x_94; lean_object* x_95; -lean_dec(x_84); -x_94 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_83, x_94, x_82); -x_58 = x_95; -goto block_81; -} -block_34: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_61; lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_85 = lean_ctor_get(x_7, 1); +lean_inc(x_85); +lean_inc(x_1); +x_86 = l_Lean_Parser_tokenFn(x_1, x_7); +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -x_11 = l_Lean_Parser_tokenFn(x_1, x_8); +lean_object* x_88; lean_object* x_89; +x_88 = lean_ctor_get(x_86, 0); +lean_inc(x_88); +x_89 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_88); +lean_dec(x_88); +if (lean_obj_tag(x_89) == 2) +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +x_90 = lean_ctor_get(x_89, 1); +lean_inc(x_90); +lean_dec(x_89); +x_91 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_92 = lean_string_dec_eq(x_90, x_91); +lean_dec(x_90); +if (x_92 == 0) +{ +lean_object* x_93; lean_object* x_94; +x_93 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_93, x_85); +x_61 = x_94; +goto block_84; +} +else +{ +lean_dec(x_85); +x_61 = x_86; +goto block_84; +} +} +else +{ +lean_object* x_95; lean_object* x_96; +lean_dec(x_89); +x_95 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_95, x_85); +x_61 = x_96; +goto block_84; +} +} +else +{ +lean_object* x_97; lean_object* x_98; +lean_dec(x_87); +x_97 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_97, x_85); +x_61 = x_98; +goto block_84; +} +block_37: +{ +lean_object* x_12; x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_17 = lean_string_dec_eq(x_15, x_16); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_dec(x_15); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -x_20 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_22 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_11, x_22, x_7); -return x_23; +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; } } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_24, x_10); -x_26 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_35; lean_object* x_36; lean_dec(x_12); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_28, x_10); -x_30 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_9); lean_dec(x_1); -x_32 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_8, x_32, x_7); -return x_33; +x_35 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; } } -block_57: +block_60: { -lean_object* x_36; -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) -{ -lean_object* x_37; lean_object* x_38; -lean_inc(x_1); -x_37 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_35); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_ctor_get(x_37, 0); +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); -lean_dec(x_39); -x_41 = lean_ctor_get(x_37, 1); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; +lean_inc(x_1); +x_40 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_38); +x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = lean_array_get_size(x_42); +lean_dec(x_42); +x_44 = lean_ctor_get(x_40, 1); +lean_inc(x_44); lean_inc(x_1); -x_42 = l_Lean_Parser_Term_binderDefault___elambda__1(x_1, x_37); -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; lean_object* x_45; -lean_dec(x_41); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_42, x_44, x_40); -x_8 = x_45; -goto block_34; -} -else -{ -lean_object* x_46; uint8_t x_47; -lean_dec(x_43); -x_46 = lean_ctor_get(x_42, 1); +x_45 = l_Lean_Parser_Term_binderDefault___elambda__1(x_1, x_40); +x_46 = lean_ctor_get(x_45, 3); lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_41); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_44); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_45, x_47, x_43); +x_11 = x_48; +goto block_37; +} +else +{ +lean_object* x_49; uint8_t x_50; lean_dec(x_46); -if (x_47 == 0) +x_49 = lean_ctor_get(x_45, 1); +lean_inc(x_49); +x_50 = lean_nat_dec_eq(x_49, x_44); +lean_dec(x_49); +if (x_50 == 0) { -lean_object* x_48; lean_object* x_49; -lean_dec(x_41); -x_48 = l_Lean_nullKind; -x_49 = l_Lean_Parser_ParserState_mkNode(x_42, x_48, x_40); -x_8 = x_49; -goto block_34; -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = l_Lean_Parser_ParserState_restore(x_42, x_40, x_41); +lean_object* x_51; lean_object* x_52; +lean_dec(x_44); x_51 = l_Lean_nullKind; -x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_51, x_40); -x_8 = x_52; -goto block_34; +x_52 = l_Lean_Parser_ParserState_mkNode(x_45, x_51, x_43); +x_11 = x_52; +goto block_37; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = l_Lean_Parser_ParserState_restore(x_45, x_43, x_44); +x_54 = l_Lean_nullKind; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_43); +x_11 = x_55; +goto block_37; } } } else { -lean_object* x_53; lean_object* x_54; -lean_dec(x_38); +lean_object* x_56; lean_object* x_57; +lean_dec(x_41); lean_dec(x_1); -x_53 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_37, x_53, x_7); -return x_54; +x_56 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_57 = l_Lean_Parser_ParserState_mkNode(x_40, x_56, x_10); +return x_57; } } else { -lean_object* x_55; lean_object* x_56; -lean_dec(x_36); +lean_object* x_58; lean_object* x_59; +lean_dec(x_39); lean_dec(x_1); -x_55 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_56 = l_Lean_Parser_ParserState_mkNode(x_35, x_55, x_7); -return x_56; +x_58 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_59 = l_Lean_Parser_ParserState_mkNode(x_38, x_58, x_10); +return x_59; } } -block_81: +block_84: { -lean_object* x_59; -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) +lean_object* x_62; +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); -lean_dec(x_60); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_63 = lean_ctor_get(x_61, 0); +lean_inc(x_63); +x_64 = lean_array_get_size(x_63); +lean_dec(x_63); lean_inc(x_1); -x_62 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_58); -x_63 = l_Lean_nullKind; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_61); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_66 = lean_ctor_get(x_64, 0); -lean_inc(x_66); -x_67 = lean_array_get_size(x_66); -lean_dec(x_66); -x_68 = lean_ctor_get(x_64, 1); +x_65 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_61); +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_64); +x_68 = lean_ctor_get(x_67, 3); lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_71 = lean_ctor_get(x_67, 1); +lean_inc(x_71); lean_inc(x_1); -x_69 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_64); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; -lean_dec(x_68); -x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_63, x_67); -x_35 = x_71; -goto block_57; -} -else -{ -lean_object* x_72; uint8_t x_73; -lean_dec(x_70); -x_72 = lean_ctor_get(x_69, 1); -lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_68); -lean_dec(x_72); -if (x_73 == 0) +x_72 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_67); +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { lean_object* x_74; +lean_dec(x_71); +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_66, x_70); +x_38 = x_74; +goto block_60; +} +else +{ +lean_object* x_75; uint8_t x_76; +lean_dec(x_73); +x_75 = lean_ctor_get(x_72, 1); +lean_inc(x_75); +x_76 = lean_nat_dec_eq(x_75, x_71); +lean_dec(x_75); +if (x_76 == 0) +{ +lean_object* x_77; +lean_dec(x_71); +x_77 = l_Lean_Parser_ParserState_mkNode(x_72, x_66, x_70); +x_38 = x_77; +goto block_60; +} +else +{ +lean_object* x_78; lean_object* x_79; +x_78 = l_Lean_Parser_ParserState_restore(x_72, x_70, x_71); +x_79 = l_Lean_Parser_ParserState_mkNode(x_78, x_66, x_70); +x_38 = x_79; +goto block_60; +} +} +} +else +{ +lean_object* x_80; lean_object* x_81; lean_dec(x_68); -x_74 = l_Lean_Parser_ParserState_mkNode(x_69, x_63, x_67); -x_35 = x_74; -goto block_57; -} -else -{ -lean_object* x_75; lean_object* x_76; -x_75 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); -x_76 = l_Lean_Parser_ParserState_mkNode(x_75, x_63, x_67); -x_35 = x_76; -goto block_57; -} -} -} -else -{ -lean_object* x_77; lean_object* x_78; -lean_dec(x_65); lean_dec(x_1); -x_77 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_78 = l_Lean_Parser_ParserState_mkNode(x_64, x_77, x_7); -return x_78; +x_80 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_81 = l_Lean_Parser_ParserState_mkNode(x_67, x_80, x_10); +return x_81; } } else { -lean_object* x_79; lean_object* x_80; -lean_dec(x_59); +lean_object* x_82; lean_object* x_83; +lean_dec(x_62); lean_dec(x_1); -x_79 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_58, x_79, x_7); -return x_80; +x_82 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_83 = l_Lean_Parser_ParserState_mkNode(x_61, x_82, x_10); +return x_83; } } } else { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; -x_96 = lean_ctor_get(x_2, 0); -lean_inc(x_96); -x_97 = lean_array_get_size(x_96); -lean_dec(x_96); -x_98 = lean_ctor_get(x_2, 1); -lean_inc(x_98); -lean_inc(x_1); -x_99 = lean_apply_2(x_4, x_1, x_2); -x_100 = lean_ctor_get(x_99, 3); -lean_inc(x_100); -if (lean_obj_tag(x_100) == 0) -{ -lean_dec(x_98); -lean_dec(x_97); +lean_dec(x_8); lean_dec(x_1); -return x_99; +return x_7; +} } else { -lean_object* x_101; lean_object* x_102; uint8_t x_103; -x_101 = lean_ctor_get(x_100, 0); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_99 = lean_ctor_get(x_2, 0); +lean_inc(x_99); +x_100 = lean_array_get_size(x_99); +lean_dec(x_99); +x_101 = lean_ctor_get(x_2, 1); lean_inc(x_101); -lean_dec(x_100); -x_102 = lean_ctor_get(x_99, 1); -lean_inc(x_102); -x_103 = lean_nat_dec_eq(x_102, x_98); -lean_dec(x_102); -if (x_103 == 0) +lean_inc(x_1); +x_102 = lean_apply_2(x_4, x_1, x_2); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { lean_dec(x_101); -lean_dec(x_98); -lean_dec(x_97); +lean_dec(x_100); lean_dec(x_1); -return x_99; +return x_102; } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_139; lean_object* x_164; lean_object* x_190; lean_object* x_191; -lean_inc(x_98); -x_104 = l_Lean_Parser_ParserState_restore(x_99, x_97, x_98); -lean_dec(x_97); -x_105 = lean_ctor_get(x_104, 0); +lean_object* x_104; lean_object* x_105; uint8_t x_106; +x_104 = lean_ctor_get(x_103, 0); +lean_inc(x_104); +lean_dec(x_103); +x_105 = lean_ctor_get(x_102, 1); lean_inc(x_105); -x_106 = lean_array_get_size(x_105); +x_106 = lean_nat_dec_eq(x_105, x_101); lean_dec(x_105); +if (x_106 == 0) +{ +lean_dec(x_104); +lean_dec(x_101); +lean_dec(x_100); +lean_dec(x_1); +return x_102; +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_inc(x_101); +x_107 = l_Lean_Parser_ParserState_restore(x_102, x_100, x_101); +lean_dec(x_100); +x_108 = lean_unsigned_to_nat(1024u); +x_109 = l_Lean_Parser_checkPrecFn(x_108, x_1, x_107); +x_110 = lean_ctor_get(x_109, 3); +lean_inc(x_110); +if (lean_obj_tag(x_110) == 0) +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_145; lean_object* x_170; lean_object* x_196; lean_object* x_197; lean_object* x_198; +x_111 = lean_ctor_get(x_109, 0); +lean_inc(x_111); +x_112 = lean_array_get_size(x_111); +lean_dec(x_111); +x_196 = lean_ctor_get(x_109, 1); +lean_inc(x_196); lean_inc(x_1); -x_190 = l_Lean_Parser_tokenFn(x_1, x_104); -x_191 = lean_ctor_get(x_190, 3); -lean_inc(x_191); -if (lean_obj_tag(x_191) == 0) -{ -lean_object* x_192; lean_object* x_193; -x_192 = lean_ctor_get(x_190, 0); -lean_inc(x_192); -x_193 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_192); -lean_dec(x_192); -if (lean_obj_tag(x_193) == 2) -{ -lean_object* x_194; lean_object* x_195; uint8_t x_196; -x_194 = lean_ctor_get(x_193, 1); -lean_inc(x_194); -lean_dec(x_193); -x_195 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_196 = lean_string_dec_eq(x_194, x_195); -lean_dec(x_194); -if (x_196 == 0) -{ -lean_object* x_197; lean_object* x_198; -x_197 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_98); -x_198 = l_Lean_Parser_ParserState_mkErrorsAt(x_190, x_197, x_98); -x_164 = x_198; -goto block_189; -} -else -{ -x_164 = x_190; -goto block_189; -} -} -else +x_197 = l_Lean_Parser_tokenFn(x_1, x_109); +x_198 = lean_ctor_get(x_197, 3); +lean_inc(x_198); +if (lean_obj_tag(x_198) == 0) { lean_object* x_199; lean_object* x_200; -lean_dec(x_193); -x_199 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_98); -x_200 = l_Lean_Parser_ParserState_mkErrorsAt(x_190, x_199, x_98); -x_164 = x_200; -goto block_189; +x_199 = lean_ctor_get(x_197, 0); +lean_inc(x_199); +x_200 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_199); +lean_dec(x_199); +if (lean_obj_tag(x_200) == 2) +{ +lean_object* x_201; lean_object* x_202; uint8_t x_203; +x_201 = lean_ctor_get(x_200, 1); +lean_inc(x_201); +lean_dec(x_200); +x_202 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_203 = lean_string_dec_eq(x_201, x_202); +lean_dec(x_201); +if (x_203 == 0) +{ +lean_object* x_204; lean_object* x_205; +x_204 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_205 = l_Lean_Parser_ParserState_mkErrorsAt(x_197, x_204, x_196); +x_170 = x_205; +goto block_195; +} +else +{ +lean_dec(x_196); +x_170 = x_197; +goto block_195; } } else { -lean_object* x_201; lean_object* x_202; -lean_dec(x_191); -x_201 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_98); -x_202 = l_Lean_Parser_ParserState_mkErrorsAt(x_190, x_201, x_98); -x_164 = x_202; -goto block_189; +lean_object* x_206; lean_object* x_207; +lean_dec(x_200); +x_206 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_207 = l_Lean_Parser_ParserState_mkErrorsAt(x_197, x_206, x_196); +x_170 = x_207; +goto block_195; } -block_138: +} +else { -lean_object* x_108; -x_108 = lean_ctor_get(x_107, 3); -lean_inc(x_108); -if (lean_obj_tag(x_108) == 0) +lean_object* x_208; lean_object* x_209; +lean_dec(x_198); +x_208 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_209 = l_Lean_Parser_ParserState_mkErrorsAt(x_197, x_208, x_196); +x_170 = x_209; +goto block_195; +} +block_144: { -lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_109 = lean_ctor_get(x_107, 1); -lean_inc(x_109); -x_110 = l_Lean_Parser_tokenFn(x_1, x_107); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) -{ -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); -lean_inc(x_112); -x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); -lean_dec(x_112); -if (lean_obj_tag(x_113) == 2) -{ -lean_object* x_114; lean_object* x_115; uint8_t x_116; -x_114 = lean_ctor_get(x_113, 1); +lean_object* x_114; +x_114 = lean_ctor_get(x_113, 3); lean_inc(x_114); -lean_dec(x_113); -x_115 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_116 = lean_string_dec_eq(x_114, x_115); +if (lean_obj_tag(x_114) == 0) +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_115 = lean_ctor_get(x_113, 1); +lean_inc(x_115); +x_116 = l_Lean_Parser_tokenFn(x_1, x_113); +x_117 = lean_ctor_get(x_116, 3); +lean_inc(x_117); +if (lean_obj_tag(x_117) == 0) +{ +lean_object* x_118; lean_object* x_119; +x_118 = lean_ctor_get(x_116, 0); +lean_inc(x_118); +x_119 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_118); +lean_dec(x_118); +if (lean_obj_tag(x_119) == 2) +{ +lean_object* x_120; lean_object* x_121; uint8_t x_122; +x_120 = lean_ctor_get(x_119, 1); +lean_inc(x_120); +lean_dec(x_119); +x_121 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_122 = lean_string_dec_eq(x_120, x_121); +lean_dec(x_120); +if (x_122 == 0) +{ +lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_123 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_123, x_115); +x_125 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_112); +x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_104, x_101); +lean_dec(x_101); +return x_127; +} +else +{ +lean_object* x_128; lean_object* x_129; lean_object* x_130; +lean_dec(x_115); +x_128 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_129 = l_Lean_Parser_ParserState_mkNode(x_116, x_128, x_112); +x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_104, x_101); +lean_dec(x_101); +return x_130; +} +} +else +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; +lean_dec(x_119); +x_131 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_132 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_131, x_115); +x_133 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_134 = l_Lean_Parser_ParserState_mkNode(x_132, x_133, x_112); +x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_104, x_101); +lean_dec(x_101); +return x_135; +} +} +else +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +lean_dec(x_117); +x_136 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_137 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_136, x_115); +x_138 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_112); +x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_104, x_101); +lean_dec(x_101); +return x_140; +} +} +else +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_dec(x_114); -if (x_116 == 0) -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_117 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); -x_119 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_120 = l_Lean_Parser_ParserState_mkNode(x_118, x_119, x_106); -x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_101, x_98); -lean_dec(x_98); -return x_121; -} -else -{ -lean_object* x_122; lean_object* x_123; lean_object* x_124; -lean_dec(x_109); -x_122 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_123 = l_Lean_Parser_ParserState_mkNode(x_110, x_122, x_106); -x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_101, x_98); -lean_dec(x_98); -return x_124; -} -} -else -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_113); -x_125 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_125, x_109); -x_127 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_128 = l_Lean_Parser_ParserState_mkNode(x_126, x_127, x_106); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_101, x_98); -lean_dec(x_98); -return x_129; -} -} -else -{ -lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; -lean_dec(x_111); -x_130 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_130, x_109); -x_132 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_106); -x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_101, x_98); -lean_dec(x_98); -return x_134; -} -} -else -{ -lean_object* x_135; lean_object* x_136; lean_object* x_137; -lean_dec(x_108); lean_dec(x_1); -x_135 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_136 = l_Lean_Parser_ParserState_mkNode(x_107, x_135, x_106); -x_137 = l_Lean_Parser_mergeOrElseErrors(x_136, x_101, x_98); -lean_dec(x_98); -return x_137; +x_141 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_142 = l_Lean_Parser_ParserState_mkNode(x_113, x_141, x_112); +x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_104, x_101); +lean_dec(x_101); +return x_143; } } -block_163: +block_169: { -lean_object* x_140; -x_140 = lean_ctor_get(x_139, 3); -lean_inc(x_140); -if (lean_obj_tag(x_140) == 0) +lean_object* x_146; +x_146 = lean_ctor_get(x_145, 3); +lean_inc(x_146); +if (lean_obj_tag(x_146) == 0) { -lean_object* x_141; lean_object* x_142; +lean_object* x_147; lean_object* x_148; lean_inc(x_1); -x_141 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_139); -x_142 = lean_ctor_get(x_141, 3); -lean_inc(x_142); -if (lean_obj_tag(x_142) == 0) +x_147 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_145); +x_148 = lean_ctor_get(x_147, 3); +lean_inc(x_148); +if (lean_obj_tag(x_148) == 0) { -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; -x_143 = lean_ctor_get(x_141, 0); -lean_inc(x_143); -x_144 = lean_array_get_size(x_143); -lean_dec(x_143); -x_145 = lean_ctor_get(x_141, 1); -lean_inc(x_145); +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_149 = lean_ctor_get(x_147, 0); +lean_inc(x_149); +x_150 = lean_array_get_size(x_149); +lean_dec(x_149); +x_151 = lean_ctor_get(x_147, 1); +lean_inc(x_151); lean_inc(x_1); -x_146 = l_Lean_Parser_Term_binderDefault___elambda__1(x_1, x_141); -x_147 = lean_ctor_get(x_146, 3); -lean_inc(x_147); -if (lean_obj_tag(x_147) == 0) +x_152 = l_Lean_Parser_Term_binderDefault___elambda__1(x_1, x_147); +x_153 = lean_ctor_get(x_152, 3); +lean_inc(x_153); +if (lean_obj_tag(x_153) == 0) { -lean_object* x_148; lean_object* x_149; -lean_dec(x_145); -x_148 = l_Lean_nullKind; -x_149 = l_Lean_Parser_ParserState_mkNode(x_146, x_148, x_144); -x_107 = x_149; -goto block_138; +lean_object* x_154; lean_object* x_155; +lean_dec(x_151); +x_154 = l_Lean_nullKind; +x_155 = l_Lean_Parser_ParserState_mkNode(x_152, x_154, x_150); +x_113 = x_155; +goto block_144; } else { -lean_object* x_150; uint8_t x_151; -lean_dec(x_147); -x_150 = lean_ctor_get(x_146, 1); -lean_inc(x_150); -x_151 = lean_nat_dec_eq(x_150, x_145); -lean_dec(x_150); -if (x_151 == 0) +lean_object* x_156; uint8_t x_157; +lean_dec(x_153); +x_156 = lean_ctor_get(x_152, 1); +lean_inc(x_156); +x_157 = lean_nat_dec_eq(x_156, x_151); +lean_dec(x_156); +if (x_157 == 0) { -lean_object* x_152; lean_object* x_153; -lean_dec(x_145); -x_152 = l_Lean_nullKind; -x_153 = l_Lean_Parser_ParserState_mkNode(x_146, x_152, x_144); -x_107 = x_153; -goto block_138; -} -else -{ -lean_object* x_154; lean_object* x_155; lean_object* x_156; -x_154 = l_Lean_Parser_ParserState_restore(x_146, x_144, x_145); -x_155 = l_Lean_nullKind; -x_156 = l_Lean_Parser_ParserState_mkNode(x_154, x_155, x_144); -x_107 = x_156; -goto block_138; -} -} -} -else -{ -lean_object* x_157; lean_object* x_158; lean_object* x_159; -lean_dec(x_142); -lean_dec(x_1); -x_157 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_158 = l_Lean_Parser_ParserState_mkNode(x_141, x_157, x_106); -x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_101, x_98); -lean_dec(x_98); -return x_159; -} +lean_object* x_158; lean_object* x_159; +lean_dec(x_151); +x_158 = l_Lean_nullKind; +x_159 = l_Lean_Parser_ParserState_mkNode(x_152, x_158, x_150); +x_113 = x_159; +goto block_144; } else { lean_object* x_160; lean_object* x_161; lean_object* x_162; -lean_dec(x_140); +x_160 = l_Lean_Parser_ParserState_restore(x_152, x_150, x_151); +x_161 = l_Lean_nullKind; +x_162 = l_Lean_Parser_ParserState_mkNode(x_160, x_161, x_150); +x_113 = x_162; +goto block_144; +} +} +} +else +{ +lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_148); lean_dec(x_1); -x_160 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_161 = l_Lean_Parser_ParserState_mkNode(x_139, x_160, x_106); -x_162 = l_Lean_Parser_mergeOrElseErrors(x_161, x_101, x_98); -lean_dec(x_98); -return x_162; +x_163 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_164 = l_Lean_Parser_ParserState_mkNode(x_147, x_163, x_112); +x_165 = l_Lean_Parser_mergeOrElseErrors(x_164, x_104, x_101); +lean_dec(x_101); +return x_165; } } -block_189: +else { -lean_object* x_165; -x_165 = lean_ctor_get(x_164, 3); -lean_inc(x_165); -if (lean_obj_tag(x_165) == 0) +lean_object* x_166; lean_object* x_167; lean_object* x_168; +lean_dec(x_146); +lean_dec(x_1); +x_166 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_167 = l_Lean_Parser_ParserState_mkNode(x_145, x_166, x_112); +x_168 = l_Lean_Parser_mergeOrElseErrors(x_167, x_104, x_101); +lean_dec(x_101); +return x_168; +} +} +block_195: { -lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; -x_166 = lean_ctor_get(x_164, 0); -lean_inc(x_166); -x_167 = lean_array_get_size(x_166); -lean_dec(x_166); -lean_inc(x_1); -x_168 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_164); -x_169 = l_Lean_nullKind; -x_170 = l_Lean_Parser_ParserState_mkNode(x_168, x_169, x_167); +lean_object* x_171; x_171 = lean_ctor_get(x_170, 3); lean_inc(x_171); if (lean_obj_tag(x_171) == 0) { -lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; +lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; x_172 = lean_ctor_get(x_170, 0); lean_inc(x_172); x_173 = lean_array_get_size(x_172); lean_dec(x_172); -x_174 = lean_ctor_get(x_170, 1); -lean_inc(x_174); lean_inc(x_1); -x_175 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_170); -x_176 = lean_ctor_get(x_175, 3); -lean_inc(x_176); -if (lean_obj_tag(x_176) == 0) +x_174 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_170); +x_175 = l_Lean_nullKind; +x_176 = l_Lean_Parser_ParserState_mkNode(x_174, x_175, x_173); +x_177 = lean_ctor_get(x_176, 3); +lean_inc(x_177); +if (lean_obj_tag(x_177) == 0) { -lean_object* x_177; -lean_dec(x_174); -x_177 = l_Lean_Parser_ParserState_mkNode(x_175, x_169, x_173); -x_139 = x_177; -goto block_163; -} -else -{ -lean_object* x_178; uint8_t x_179; -lean_dec(x_176); -x_178 = lean_ctor_get(x_175, 1); +lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_178 = lean_ctor_get(x_176, 0); lean_inc(x_178); -x_179 = lean_nat_dec_eq(x_178, x_174); +x_179 = lean_array_get_size(x_178); lean_dec(x_178); -if (x_179 == 0) +x_180 = lean_ctor_get(x_176, 1); +lean_inc(x_180); +lean_inc(x_1); +x_181 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_176); +x_182 = lean_ctor_get(x_181, 3); +lean_inc(x_182); +if (lean_obj_tag(x_182) == 0) { -lean_object* x_180; -lean_dec(x_174); -x_180 = l_Lean_Parser_ParserState_mkNode(x_175, x_169, x_173); -x_139 = x_180; -goto block_163; +lean_object* x_183; +lean_dec(x_180); +x_183 = l_Lean_Parser_ParserState_mkNode(x_181, x_175, x_179); +x_145 = x_183; +goto block_169; } else { -lean_object* x_181; lean_object* x_182; -x_181 = l_Lean_Parser_ParserState_restore(x_175, x_173, x_174); -x_182 = l_Lean_Parser_ParserState_mkNode(x_181, x_169, x_173); -x_139 = x_182; -goto block_163; +lean_object* x_184; uint8_t x_185; +lean_dec(x_182); +x_184 = lean_ctor_get(x_181, 1); +lean_inc(x_184); +x_185 = lean_nat_dec_eq(x_184, x_180); +lean_dec(x_184); +if (x_185 == 0) +{ +lean_object* x_186; +lean_dec(x_180); +x_186 = l_Lean_Parser_ParserState_mkNode(x_181, x_175, x_179); +x_145 = x_186; +goto block_169; +} +else +{ +lean_object* x_187; lean_object* x_188; +x_187 = l_Lean_Parser_ParserState_restore(x_181, x_179, x_180); +x_188 = l_Lean_Parser_ParserState_mkNode(x_187, x_175, x_179); +x_145 = x_188; +goto block_169; } } } else { -lean_object* x_183; lean_object* x_184; lean_object* x_185; +lean_object* x_189; lean_object* x_190; lean_object* x_191; +lean_dec(x_177); +lean_dec(x_1); +x_189 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_190 = l_Lean_Parser_ParserState_mkNode(x_176, x_189, x_112); +x_191 = l_Lean_Parser_mergeOrElseErrors(x_190, x_104, x_101); +lean_dec(x_101); +return x_191; +} +} +else +{ +lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_dec(x_171); lean_dec(x_1); -x_183 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_184 = l_Lean_Parser_ParserState_mkNode(x_170, x_183, x_106); -x_185 = l_Lean_Parser_mergeOrElseErrors(x_184, x_101, x_98); -lean_dec(x_98); -return x_185; +x_192 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; +x_193 = l_Lean_Parser_ParserState_mkNode(x_170, x_192, x_112); +x_194 = l_Lean_Parser_mergeOrElseErrors(x_193, x_104, x_101); +lean_dec(x_101); +return x_194; +} } } else { -lean_object* x_186; lean_object* x_187; lean_object* x_188; -lean_dec(x_165); +lean_object* x_210; +lean_dec(x_110); lean_dec(x_1); -x_186 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__2; -x_187 = l_Lean_Parser_ParserState_mkNode(x_164, x_186, x_106); -x_188 = l_Lean_Parser_mergeOrElseErrors(x_187, x_101, x_98); -lean_dec(x_98); -return x_188; -} +x_210 = l_Lean_Parser_mergeOrElseErrors(x_109, x_104, x_101); +lean_dec(x_101); +return x_210; } } } @@ -15782,16 +16869,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structExplicitBinder___closed__8; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structExplicitBinder___closed__8; +x_3 = l_Lean_Parser_Command_structExplicitBinder___closed__9; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__10() { +lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__11() { _start: { lean_object* x_1; @@ -15799,12 +16896,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structExplicitBinder___el return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__11() { +lean_object* _init_l_Lean_Parser_Command_structExplicitBinder___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structExplicitBinder___closed__9; -x_2 = l_Lean_Parser_Command_structExplicitBinder___closed__10; +x_1 = l_Lean_Parser_Command_structExplicitBinder___closed__10; +x_2 = l_Lean_Parser_Command_structExplicitBinder___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -15815,7 +16912,7 @@ lean_object* _init_l_Lean_Parser_Command_structExplicitBinder() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structExplicitBinder___closed__11; +x_1 = l_Lean_Parser_Command_structExplicitBinder___closed__12; return x_1; } } @@ -15870,550 +16967,581 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_39; lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_63 = lean_ctor_get(x_2, 1); -lean_inc(x_63); -lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_2); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); -lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); -lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) -{ -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) -{ -lean_object* x_71; lean_object* x_72; -x_71 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_39 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_39 = x_64; -goto block_62; -} -} -else -{ -lean_object* x_73; lean_object* x_74; -lean_dec(x_67); -x_73 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_39 = x_74; -goto block_62; -} -} -else -{ -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_39 = x_76; -goto block_62; -} -block_38: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_66 = lean_ctor_get(x_7, 1); +lean_inc(x_66); lean_inc(x_1); -x_10 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_67 = l_Lean_Parser_tokenFn(x_1, x_7); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 1); +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 2) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_73 = lean_string_dec_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_66); +x_42 = x_75; +goto block_65; +} +else +{ +lean_dec(x_66); +x_42 = x_67; +goto block_65; +} +} +else +{ +lean_object* x_76; lean_object* x_77; +lean_dec(x_70); +x_76 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_66); +x_42 = x_77; +goto block_65; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_68); +x_78 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_66); +x_42 = x_79; +goto block_65; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_10); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_11); x_14 = lean_ctor_get(x_13, 3); lean_inc(x_14); if (lean_obj_tag(x_14) == 0) { -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_19 = lean_string_dec_eq(x_17, x_18); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_7); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_7); -return x_25; +x_33 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; } } else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_object* x_37; lean_object* x_38; lean_dec(x_14); -x_30 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); -return x_33; +lean_dec(x_1); +x_37 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; } } else { -lean_object* x_34; lean_object* x_35; -lean_dec(x_11); +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); lean_dec(x_1); -x_34 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_10, x_34, x_7); -return x_35; +x_39 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; } } -else +block_65: { -lean_object* x_36; lean_object* x_37; -lean_dec(x_9); -lean_dec(x_1); -x_36 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_8, x_36, x_7); -return x_37; -} -} -block_62: +lean_object* x_43; +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_array_get_size(x_44); +lean_dec(x_44); lean_inc(x_1); -x_43 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_39); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_42); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_45); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_48, 1); +lean_inc(x_52); lean_inc(x_1); -x_50 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) -{ -lean_object* x_52; -lean_dec(x_49); -x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_44, x_48); -x_8 = x_52; -goto block_38; -} -else -{ -lean_object* x_53; uint8_t x_54; -lean_dec(x_51); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -x_54 = lean_nat_dec_eq(x_53, x_49); -lean_dec(x_53); -if (x_54 == 0) +x_53 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_48); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { lean_object* x_55; +lean_dec(x_52); +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_47, x_51); +x_11 = x_55; +goto block_41; +} +else +{ +lean_object* x_56; uint8_t x_57; +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); +lean_inc(x_56); +x_57 = lean_nat_dec_eq(x_56, x_52); +lean_dec(x_56); +if (x_57 == 0) +{ +lean_object* x_58; +lean_dec(x_52); +x_58 = l_Lean_Parser_ParserState_mkNode(x_53, x_47, x_51); +x_11 = x_58; +goto block_41; +} +else +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +x_60 = l_Lean_Parser_ParserState_mkNode(x_59, x_47, x_51); +x_11 = x_60; +goto block_41; +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_dec(x_49); -x_55 = l_Lean_Parser_ParserState_mkNode(x_50, x_44, x_48); -x_8 = x_55; -goto block_38; -} -else -{ -lean_object* x_56; lean_object* x_57; -x_56 = l_Lean_Parser_ParserState_restore(x_50, x_48, x_49); -x_57 = l_Lean_Parser_ParserState_mkNode(x_56, x_44, x_48); -x_8 = x_57; -goto block_38; -} -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_46); lean_dec(x_1); -x_58 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_45, x_58, x_7); -return x_59; +x_61 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_48, x_61, x_10); +return x_62; } } else { -lean_object* x_60; lean_object* x_61; -lean_dec(x_40); +lean_object* x_63; lean_object* x_64; +lean_dec(x_43); lean_dec(x_1); -x_60 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_39, x_60, x_7); -return x_61; +x_63 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_42, x_63, x_10); +return x_64; } } } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_77 = lean_ctor_get(x_2, 0); -lean_inc(x_77); -x_78 = lean_array_get_size(x_77); -lean_dec(x_77); -x_79 = lean_ctor_get(x_2, 1); -lean_inc(x_79); -lean_inc(x_1); -x_80 = lean_apply_2(x_4, x_1, x_2); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -lean_dec(x_79); -lean_dec(x_78); +lean_dec(x_8); lean_dec(x_1); -return x_80; +return x_7; +} } else { -lean_object* x_82; lean_object* x_83; uint8_t x_84; -x_82 = lean_ctor_get(x_81, 0); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_80 = lean_ctor_get(x_2, 0); +lean_inc(x_80); +x_81 = lean_array_get_size(x_80); +lean_dec(x_80); +x_82 = lean_ctor_get(x_2, 1); lean_inc(x_82); -lean_dec(x_81); -x_83 = lean_ctor_get(x_80, 1); -lean_inc(x_83); -x_84 = lean_nat_dec_eq(x_83, x_79); -lean_dec(x_83); -if (x_84 == 0) +lean_inc(x_1); +x_83 = lean_apply_2(x_4, x_1, x_2); +x_84 = lean_ctor_get(x_83, 3); +lean_inc(x_84); +if (lean_obj_tag(x_84) == 0) { lean_dec(x_82); -lean_dec(x_79); -lean_dec(x_78); +lean_dec(x_81); lean_dec(x_1); -return x_80; +return x_83; } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_125; lean_object* x_151; lean_object* x_152; -lean_inc(x_79); -x_85 = l_Lean_Parser_ParserState_restore(x_80, x_78, x_79); -lean_dec(x_78); -x_86 = lean_ctor_get(x_85, 0); +lean_object* x_85; lean_object* x_86; uint8_t x_87; +x_85 = lean_ctor_get(x_84, 0); +lean_inc(x_85); +lean_dec(x_84); +x_86 = lean_ctor_get(x_83, 1); lean_inc(x_86); -x_87 = lean_array_get_size(x_86); +x_87 = lean_nat_dec_eq(x_86, x_82); lean_dec(x_86); -lean_inc(x_1); -x_151 = l_Lean_Parser_tokenFn(x_1, x_85); -x_152 = lean_ctor_get(x_151, 3); -lean_inc(x_152); -if (lean_obj_tag(x_152) == 0) +if (x_87 == 0) { -lean_object* x_153; lean_object* x_154; -x_153 = lean_ctor_get(x_151, 0); -lean_inc(x_153); -x_154 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_153); -lean_dec(x_153); -if (lean_obj_tag(x_154) == 2) -{ -lean_object* x_155; lean_object* x_156; uint8_t x_157; -x_155 = lean_ctor_get(x_154, 1); -lean_inc(x_155); -lean_dec(x_154); -x_156 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_157 = lean_string_dec_eq(x_155, x_156); -lean_dec(x_155); -if (x_157 == 0) -{ -lean_object* x_158; lean_object* x_159; -x_158 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_79); -x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_158, x_79); -x_125 = x_159; -goto block_150; +lean_dec(x_85); +lean_dec(x_82); +lean_dec(x_81); +lean_dec(x_1); +return x_83; } else { -x_125 = x_151; -goto block_150; -} -} -else -{ -lean_object* x_160; lean_object* x_161; -lean_dec(x_154); -x_160 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_79); -x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_160, x_79); -x_125 = x_161; -goto block_150; -} -} -else -{ -lean_object* x_162; lean_object* x_163; -lean_dec(x_152); -x_162 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -lean_inc(x_79); -x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_162, x_79); -x_125 = x_163; -goto block_150; -} -block_124: -{ -lean_object* x_89; -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) -{ -lean_object* x_90; lean_object* x_91; -lean_inc(x_1); -x_90 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_88); +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_inc(x_82); +x_88 = l_Lean_Parser_ParserState_restore(x_83, x_81, x_82); +lean_dec(x_81); +x_89 = lean_unsigned_to_nat(1024u); +x_90 = l_Lean_Parser_checkPrecFn(x_89, x_1, x_88); x_91 = lean_ctor_get(x_90, 3); lean_inc(x_91); if (lean_obj_tag(x_91) == 0) { -lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_90, 1); +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_131; lean_object* x_157; lean_object* x_158; lean_object* x_159; +x_92 = lean_ctor_get(x_90, 0); lean_inc(x_92); -x_93 = l_Lean_Parser_tokenFn(x_1, x_90); -x_94 = lean_ctor_get(x_93, 3); -lean_inc(x_94); -if (lean_obj_tag(x_94) == 0) -{ -lean_object* x_95; lean_object* x_96; -x_95 = lean_ctor_get(x_93, 0); -lean_inc(x_95); -x_96 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_95); -lean_dec(x_95); -if (lean_obj_tag(x_96) == 2) -{ -lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_97 = lean_ctor_get(x_96, 1); -lean_inc(x_97); -lean_dec(x_96); -x_98 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_99 = lean_string_dec_eq(x_97, x_98); -lean_dec(x_97); -if (x_99 == 0) -{ -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_100 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_100, x_92); -x_102 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_87); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_82, x_79); -lean_dec(x_79); -return x_104; -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_93 = lean_array_get_size(x_92); lean_dec(x_92); -x_105 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_93, x_105, x_87); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_82, x_79); -lean_dec(x_79); -return x_107; +x_157 = lean_ctor_get(x_90, 1); +lean_inc(x_157); +lean_inc(x_1); +x_158 = l_Lean_Parser_tokenFn(x_1, x_90); +x_159 = lean_ctor_get(x_158, 3); +lean_inc(x_159); +if (lean_obj_tag(x_159) == 0) +{ +lean_object* x_160; lean_object* x_161; +x_160 = lean_ctor_get(x_158, 0); +lean_inc(x_160); +x_161 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_160); +lean_dec(x_160); +if (lean_obj_tag(x_161) == 2) +{ +lean_object* x_162; lean_object* x_163; uint8_t x_164; +x_162 = lean_ctor_get(x_161, 1); +lean_inc(x_162); +lean_dec(x_161); +x_163 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_164 = lean_string_dec_eq(x_162, x_163); +lean_dec(x_162); +if (x_164 == 0) +{ +lean_object* x_165; lean_object* x_166; +x_165 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_165, x_157); +x_131 = x_166; +goto block_156; +} +else +{ +lean_dec(x_157); +x_131 = x_158; +goto block_156; } } else { -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_96); -x_108 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_108, x_92); -x_110 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_87); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_82, x_79); -lean_dec(x_79); -return x_112; +lean_object* x_167; lean_object* x_168; +lean_dec(x_161); +x_167 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_167, x_157); +x_131 = x_168; +goto block_156; } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_94); -x_113 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_113, x_92); -x_115 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_87); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_82, x_79); -lean_dec(x_79); -return x_117; +lean_object* x_169; lean_object* x_170; +lean_dec(x_159); +x_169 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_169, x_157); +x_131 = x_170; +goto block_156; +} +block_130: +{ +lean_object* x_95; +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) +{ +lean_object* x_96; lean_object* x_97; +lean_inc(x_1); +x_96 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_94); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +x_99 = l_Lean_Parser_tokenFn(x_1, x_96); +x_100 = lean_ctor_get(x_99, 3); +lean_inc(x_100); +if (lean_obj_tag(x_100) == 0) +{ +lean_object* x_101; lean_object* x_102; +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +x_102 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_101); +lean_dec(x_101); +if (lean_obj_tag(x_102) == 2) +{ +lean_object* x_103; lean_object* x_104; uint8_t x_105; +x_103 = lean_ctor_get(x_102, 1); +lean_inc(x_103); +lean_dec(x_102); +x_104 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_105 = lean_string_dec_eq(x_103, x_104); +lean_dec(x_103); +if (x_105 == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_106 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_107 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_106, x_98); +x_108 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_107, x_108, x_93); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_85, x_82); +lean_dec(x_82); +return x_110; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_98); +x_111 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_112 = l_Lean_Parser_ParserState_mkNode(x_99, x_111, x_93); +x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_85, x_82); +lean_dec(x_82); +return x_113; } } else { -lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_91); -lean_dec(x_1); -x_118 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_90, x_118, x_87); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_82, x_79); -lean_dec(x_79); -return x_120; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_102); +x_114 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_114, x_98); +x_116 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_93); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_85, x_82); +lean_dec(x_82); +return x_118; } } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_89); -lean_dec(x_1); +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_100); +x_119 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_119, x_98); x_121 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_122 = l_Lean_Parser_ParserState_mkNode(x_88, x_121, x_87); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_82, x_79); -lean_dec(x_79); +x_122 = l_Lean_Parser_ParserState_mkNode(x_120, x_121, x_93); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_85, x_82); +lean_dec(x_82); return x_123; } } -block_150: +else { -lean_object* x_126; -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_97); +lean_dec(x_1); +x_124 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_125 = l_Lean_Parser_ParserState_mkNode(x_96, x_124, x_93); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_85, x_82); +lean_dec(x_82); +return x_126; +} +} +else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_127 = lean_ctor_get(x_125, 0); -lean_inc(x_127); -x_128 = lean_array_get_size(x_127); -lean_dec(x_127); -lean_inc(x_1); -x_129 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_125); -x_130 = l_Lean_nullKind; -x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_128); +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_95); +lean_dec(x_1); +x_127 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_94, x_127, x_93); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_85, x_82); +lean_dec(x_82); +return x_129; +} +} +block_156: +{ +lean_object* x_132; x_132 = lean_ctor_get(x_131, 3); lean_inc(x_132); if (lean_obj_tag(x_132) == 0) { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; x_133 = lean_ctor_get(x_131, 0); lean_inc(x_133); x_134 = lean_array_get_size(x_133); lean_dec(x_133); -x_135 = lean_ctor_get(x_131, 1); -lean_inc(x_135); lean_inc(x_1); -x_136 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_131); -x_137 = lean_ctor_get(x_136, 3); -lean_inc(x_137); -if (lean_obj_tag(x_137) == 0) +x_135 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_131); +x_136 = l_Lean_nullKind; +x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_134); +x_138 = lean_ctor_get(x_137, 3); +lean_inc(x_138); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_138; -lean_dec(x_135); -x_138 = l_Lean_Parser_ParserState_mkNode(x_136, x_130, x_134); -x_88 = x_138; -goto block_124; -} -else -{ -lean_object* x_139; uint8_t x_140; -lean_dec(x_137); -x_139 = lean_ctor_get(x_136, 1); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_139 = lean_ctor_get(x_137, 0); lean_inc(x_139); -x_140 = lean_nat_dec_eq(x_139, x_135); +x_140 = lean_array_get_size(x_139); lean_dec(x_139); -if (x_140 == 0) +x_141 = lean_ctor_get(x_137, 1); +lean_inc(x_141); +lean_inc(x_1); +x_142 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_137); +x_143 = lean_ctor_get(x_142, 3); +lean_inc(x_143); +if (lean_obj_tag(x_143) == 0) { -lean_object* x_141; -lean_dec(x_135); -x_141 = l_Lean_Parser_ParserState_mkNode(x_136, x_130, x_134); -x_88 = x_141; -goto block_124; +lean_object* x_144; +lean_dec(x_141); +x_144 = l_Lean_Parser_ParserState_mkNode(x_142, x_136, x_140); +x_94 = x_144; +goto block_130; } else { -lean_object* x_142; lean_object* x_143; -x_142 = l_Lean_Parser_ParserState_restore(x_136, x_134, x_135); -x_143 = l_Lean_Parser_ParserState_mkNode(x_142, x_130, x_134); -x_88 = x_143; -goto block_124; +lean_object* x_145; uint8_t x_146; +lean_dec(x_143); +x_145 = lean_ctor_get(x_142, 1); +lean_inc(x_145); +x_146 = lean_nat_dec_eq(x_145, x_141); +lean_dec(x_145); +if (x_146 == 0) +{ +lean_object* x_147; +lean_dec(x_141); +x_147 = l_Lean_Parser_ParserState_mkNode(x_142, x_136, x_140); +x_94 = x_147; +goto block_130; +} +else +{ +lean_object* x_148; lean_object* x_149; +x_148 = l_Lean_Parser_ParserState_restore(x_142, x_140, x_141); +x_149 = l_Lean_Parser_ParserState_mkNode(x_148, x_136, x_140); +x_94 = x_149; +goto block_130; } } } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; +lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_dec(x_138); +lean_dec(x_1); +x_150 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_151 = l_Lean_Parser_ParserState_mkNode(x_137, x_150, x_93); +x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_85, x_82); +lean_dec(x_82); +return x_152; +} +} +else +{ +lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_dec(x_132); lean_dec(x_1); -x_144 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_145 = l_Lean_Parser_ParserState_mkNode(x_131, x_144, x_87); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_82, x_79); -lean_dec(x_79); -return x_146; +x_153 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; +x_154 = l_Lean_Parser_ParserState_mkNode(x_131, x_153, x_93); +x_155 = l_Lean_Parser_mergeOrElseErrors(x_154, x_85, x_82); +lean_dec(x_82); +return x_155; +} } } else { -lean_object* x_147; lean_object* x_148; lean_object* x_149; -lean_dec(x_126); +lean_object* x_171; +lean_dec(x_91); lean_dec(x_1); -x_147 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__2; -x_148 = l_Lean_Parser_ParserState_mkNode(x_125, x_147, x_87); -x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_82, x_79); -lean_dec(x_79); -return x_149; -} +x_171 = l_Lean_Parser_mergeOrElseErrors(x_90, x_85, x_82); +lean_dec(x_82); +return x_171; } } } @@ -16475,16 +17603,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structImplicitBinder___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structImplicitBinder___closed__5; +x_3 = l_Lean_Parser_Command_structImplicitBinder___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__7() { +lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__8() { _start: { lean_object* x_1; @@ -16492,12 +17630,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structImplicitBinder___el return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__8() { +lean_object* _init_l_Lean_Parser_Command_structImplicitBinder___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structImplicitBinder___closed__6; -x_2 = l_Lean_Parser_Command_structImplicitBinder___closed__7; +x_1 = l_Lean_Parser_Command_structImplicitBinder___closed__7; +x_2 = l_Lean_Parser_Command_structImplicitBinder___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -16508,7 +17646,7 @@ lean_object* _init_l_Lean_Parser_Command_structImplicitBinder() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structImplicitBinder___closed__8; +x_1 = l_Lean_Parser_Command_structImplicitBinder___closed__9; return x_1; } } @@ -16563,550 +17701,581 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_39; lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_63 = lean_ctor_get(x_2, 1); -lean_inc(x_63); -lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_2); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); -lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); -lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) -{ -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) -{ -lean_object* x_71; lean_object* x_72; -x_71 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_39 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_39 = x_64; -goto block_62; -} -} -else -{ -lean_object* x_73; lean_object* x_74; -lean_dec(x_67); -x_73 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_39 = x_74; -goto block_62; -} -} -else -{ -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_39 = x_76; -goto block_62; -} -block_38: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_66 = lean_ctor_get(x_7, 1); +lean_inc(x_66); lean_inc(x_1); -x_10 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_67 = l_Lean_Parser_tokenFn(x_1, x_7); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 1); +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 2) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_73 = lean_string_dec_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_66); +x_42 = x_75; +goto block_65; +} +else +{ +lean_dec(x_66); +x_42 = x_67; +goto block_65; +} +} +else +{ +lean_object* x_76; lean_object* x_77; +lean_dec(x_70); +x_76 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_66); +x_42 = x_77; +goto block_65; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_68); +x_78 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_66); +x_42 = x_79; +goto block_65; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_10); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_11); x_14 = lean_ctor_get(x_13, 3); lean_inc(x_14); if (lean_obj_tag(x_14) == 0) { -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_19 = lean_string_dec_eq(x_17, x_18); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_7); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_7); -return x_25; +x_33 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; } } else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_object* x_37; lean_object* x_38; lean_dec(x_14); -x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); -return x_33; +lean_dec(x_1); +x_37 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; } } else { -lean_object* x_34; lean_object* x_35; -lean_dec(x_11); +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); lean_dec(x_1); -x_34 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_10, x_34, x_7); -return x_35; +x_39 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; } } -else +block_65: { -lean_object* x_36; lean_object* x_37; -lean_dec(x_9); -lean_dec(x_1); -x_36 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_8, x_36, x_7); -return x_37; -} -} -block_62: +lean_object* x_43; +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_array_get_size(x_44); +lean_dec(x_44); lean_inc(x_1); -x_43 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_39); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_42); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_45); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_48, 1); +lean_inc(x_52); lean_inc(x_1); -x_50 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) -{ -lean_object* x_52; -lean_dec(x_49); -x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_44, x_48); -x_8 = x_52; -goto block_38; -} -else -{ -lean_object* x_53; uint8_t x_54; -lean_dec(x_51); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -x_54 = lean_nat_dec_eq(x_53, x_49); -lean_dec(x_53); -if (x_54 == 0) +x_53 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_48); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { lean_object* x_55; +lean_dec(x_52); +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_47, x_51); +x_11 = x_55; +goto block_41; +} +else +{ +lean_object* x_56; uint8_t x_57; +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); +lean_inc(x_56); +x_57 = lean_nat_dec_eq(x_56, x_52); +lean_dec(x_56); +if (x_57 == 0) +{ +lean_object* x_58; +lean_dec(x_52); +x_58 = l_Lean_Parser_ParserState_mkNode(x_53, x_47, x_51); +x_11 = x_58; +goto block_41; +} +else +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +x_60 = l_Lean_Parser_ParserState_mkNode(x_59, x_47, x_51); +x_11 = x_60; +goto block_41; +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_dec(x_49); -x_55 = l_Lean_Parser_ParserState_mkNode(x_50, x_44, x_48); -x_8 = x_55; -goto block_38; -} -else -{ -lean_object* x_56; lean_object* x_57; -x_56 = l_Lean_Parser_ParserState_restore(x_50, x_48, x_49); -x_57 = l_Lean_Parser_ParserState_mkNode(x_56, x_44, x_48); -x_8 = x_57; -goto block_38; -} -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_46); lean_dec(x_1); -x_58 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_45, x_58, x_7); -return x_59; +x_61 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_48, x_61, x_10); +return x_62; } } else { -lean_object* x_60; lean_object* x_61; -lean_dec(x_40); +lean_object* x_63; lean_object* x_64; +lean_dec(x_43); lean_dec(x_1); -x_60 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_39, x_60, x_7); -return x_61; +x_63 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_42, x_63, x_10); +return x_64; } } } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_77 = lean_ctor_get(x_2, 0); -lean_inc(x_77); -x_78 = lean_array_get_size(x_77); -lean_dec(x_77); -x_79 = lean_ctor_get(x_2, 1); -lean_inc(x_79); -lean_inc(x_1); -x_80 = lean_apply_2(x_4, x_1, x_2); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -lean_dec(x_79); -lean_dec(x_78); +lean_dec(x_8); lean_dec(x_1); -return x_80; +return x_7; +} } else { -lean_object* x_82; lean_object* x_83; uint8_t x_84; -x_82 = lean_ctor_get(x_81, 0); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_80 = lean_ctor_get(x_2, 0); +lean_inc(x_80); +x_81 = lean_array_get_size(x_80); +lean_dec(x_80); +x_82 = lean_ctor_get(x_2, 1); lean_inc(x_82); -lean_dec(x_81); -x_83 = lean_ctor_get(x_80, 1); -lean_inc(x_83); -x_84 = lean_nat_dec_eq(x_83, x_79); -lean_dec(x_83); -if (x_84 == 0) +lean_inc(x_1); +x_83 = lean_apply_2(x_4, x_1, x_2); +x_84 = lean_ctor_get(x_83, 3); +lean_inc(x_84); +if (lean_obj_tag(x_84) == 0) { lean_dec(x_82); -lean_dec(x_79); -lean_dec(x_78); +lean_dec(x_81); lean_dec(x_1); -return x_80; +return x_83; } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_125; lean_object* x_151; lean_object* x_152; -lean_inc(x_79); -x_85 = l_Lean_Parser_ParserState_restore(x_80, x_78, x_79); -lean_dec(x_78); -x_86 = lean_ctor_get(x_85, 0); +lean_object* x_85; lean_object* x_86; uint8_t x_87; +x_85 = lean_ctor_get(x_84, 0); +lean_inc(x_85); +lean_dec(x_84); +x_86 = lean_ctor_get(x_83, 1); lean_inc(x_86); -x_87 = lean_array_get_size(x_86); +x_87 = lean_nat_dec_eq(x_86, x_82); lean_dec(x_86); -lean_inc(x_1); -x_151 = l_Lean_Parser_tokenFn(x_1, x_85); -x_152 = lean_ctor_get(x_151, 3); -lean_inc(x_152); -if (lean_obj_tag(x_152) == 0) +if (x_87 == 0) { -lean_object* x_153; lean_object* x_154; -x_153 = lean_ctor_get(x_151, 0); -lean_inc(x_153); -x_154 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_153); -lean_dec(x_153); -if (lean_obj_tag(x_154) == 2) -{ -lean_object* x_155; lean_object* x_156; uint8_t x_157; -x_155 = lean_ctor_get(x_154, 1); -lean_inc(x_155); -lean_dec(x_154); -x_156 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_157 = lean_string_dec_eq(x_155, x_156); -lean_dec(x_155); -if (x_157 == 0) -{ -lean_object* x_158; lean_object* x_159; -x_158 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_79); -x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_158, x_79); -x_125 = x_159; -goto block_150; +lean_dec(x_85); +lean_dec(x_82); +lean_dec(x_81); +lean_dec(x_1); +return x_83; } else { -x_125 = x_151; -goto block_150; -} -} -else -{ -lean_object* x_160; lean_object* x_161; -lean_dec(x_154); -x_160 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_79); -x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_160, x_79); -x_125 = x_161; -goto block_150; -} -} -else -{ -lean_object* x_162; lean_object* x_163; -lean_dec(x_152); -x_162 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_79); -x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_162, x_79); -x_125 = x_163; -goto block_150; -} -block_124: -{ -lean_object* x_89; -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) -{ -lean_object* x_90; lean_object* x_91; -lean_inc(x_1); -x_90 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_88); +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_inc(x_82); +x_88 = l_Lean_Parser_ParserState_restore(x_83, x_81, x_82); +lean_dec(x_81); +x_89 = lean_unsigned_to_nat(1024u); +x_90 = l_Lean_Parser_checkPrecFn(x_89, x_1, x_88); x_91 = lean_ctor_get(x_90, 3); lean_inc(x_91); if (lean_obj_tag(x_91) == 0) { -lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_90, 1); +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_131; lean_object* x_157; lean_object* x_158; lean_object* x_159; +x_92 = lean_ctor_get(x_90, 0); lean_inc(x_92); -x_93 = l_Lean_Parser_tokenFn(x_1, x_90); -x_94 = lean_ctor_get(x_93, 3); -lean_inc(x_94); -if (lean_obj_tag(x_94) == 0) -{ -lean_object* x_95; lean_object* x_96; -x_95 = lean_ctor_get(x_93, 0); -lean_inc(x_95); -x_96 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_95); -lean_dec(x_95); -if (lean_obj_tag(x_96) == 2) -{ -lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_97 = lean_ctor_get(x_96, 1); -lean_inc(x_97); -lean_dec(x_96); -x_98 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_99 = lean_string_dec_eq(x_97, x_98); -lean_dec(x_97); -if (x_99 == 0) -{ -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_100 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_100, x_92); -x_102 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_87); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_82, x_79); -lean_dec(x_79); -return x_104; -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_93 = lean_array_get_size(x_92); lean_dec(x_92); -x_105 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_93, x_105, x_87); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_82, x_79); -lean_dec(x_79); -return x_107; +x_157 = lean_ctor_get(x_90, 1); +lean_inc(x_157); +lean_inc(x_1); +x_158 = l_Lean_Parser_tokenFn(x_1, x_90); +x_159 = lean_ctor_get(x_158, 3); +lean_inc(x_159); +if (lean_obj_tag(x_159) == 0) +{ +lean_object* x_160; lean_object* x_161; +x_160 = lean_ctor_get(x_158, 0); +lean_inc(x_160); +x_161 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_160); +lean_dec(x_160); +if (lean_obj_tag(x_161) == 2) +{ +lean_object* x_162; lean_object* x_163; uint8_t x_164; +x_162 = lean_ctor_get(x_161, 1); +lean_inc(x_162); +lean_dec(x_161); +x_163 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_164 = lean_string_dec_eq(x_162, x_163); +lean_dec(x_162); +if (x_164 == 0) +{ +lean_object* x_165; lean_object* x_166; +x_165 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_165, x_157); +x_131 = x_166; +goto block_156; +} +else +{ +lean_dec(x_157); +x_131 = x_158; +goto block_156; } } else { -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_96); -x_108 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_108, x_92); -x_110 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_87); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_82, x_79); -lean_dec(x_79); -return x_112; +lean_object* x_167; lean_object* x_168; +lean_dec(x_161); +x_167 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_167, x_157); +x_131 = x_168; +goto block_156; } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_94); -x_113 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_113, x_92); -x_115 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_87); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_82, x_79); -lean_dec(x_79); -return x_117; +lean_object* x_169; lean_object* x_170; +lean_dec(x_159); +x_169 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_169, x_157); +x_131 = x_170; +goto block_156; +} +block_130: +{ +lean_object* x_95; +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) +{ +lean_object* x_96; lean_object* x_97; +lean_inc(x_1); +x_96 = l_Lean_Parser_Command_optDeclSig___elambda__1(x_1, x_94); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +x_99 = l_Lean_Parser_tokenFn(x_1, x_96); +x_100 = lean_ctor_get(x_99, 3); +lean_inc(x_100); +if (lean_obj_tag(x_100) == 0) +{ +lean_object* x_101; lean_object* x_102; +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +x_102 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_101); +lean_dec(x_101); +if (lean_obj_tag(x_102) == 2) +{ +lean_object* x_103; lean_object* x_104; uint8_t x_105; +x_103 = lean_ctor_get(x_102, 1); +lean_inc(x_103); +lean_dec(x_102); +x_104 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_105 = lean_string_dec_eq(x_103, x_104); +lean_dec(x_103); +if (x_105 == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_106 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_107 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_106, x_98); +x_108 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_107, x_108, x_93); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_85, x_82); +lean_dec(x_82); +return x_110; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_98); +x_111 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_112 = l_Lean_Parser_ParserState_mkNode(x_99, x_111, x_93); +x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_85, x_82); +lean_dec(x_82); +return x_113; } } else { -lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_91); -lean_dec(x_1); -x_118 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_90, x_118, x_87); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_82, x_79); -lean_dec(x_79); -return x_120; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_102); +x_114 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_114, x_98); +x_116 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_93); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_85, x_82); +lean_dec(x_82); +return x_118; } } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_89); -lean_dec(x_1); +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_100); +x_119 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_119, x_98); x_121 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_122 = l_Lean_Parser_ParserState_mkNode(x_88, x_121, x_87); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_82, x_79); -lean_dec(x_79); +x_122 = l_Lean_Parser_ParserState_mkNode(x_120, x_121, x_93); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_85, x_82); +lean_dec(x_82); return x_123; } } -block_150: +else { -lean_object* x_126; -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_97); +lean_dec(x_1); +x_124 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_125 = l_Lean_Parser_ParserState_mkNode(x_96, x_124, x_93); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_85, x_82); +lean_dec(x_82); +return x_126; +} +} +else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_127 = lean_ctor_get(x_125, 0); -lean_inc(x_127); -x_128 = lean_array_get_size(x_127); -lean_dec(x_127); -lean_inc(x_1); -x_129 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_125); -x_130 = l_Lean_nullKind; -x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_128); +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_95); +lean_dec(x_1); +x_127 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_94, x_127, x_93); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_85, x_82); +lean_dec(x_82); +return x_129; +} +} +block_156: +{ +lean_object* x_132; x_132 = lean_ctor_get(x_131, 3); lean_inc(x_132); if (lean_obj_tag(x_132) == 0) { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; x_133 = lean_ctor_get(x_131, 0); lean_inc(x_133); x_134 = lean_array_get_size(x_133); lean_dec(x_133); -x_135 = lean_ctor_get(x_131, 1); -lean_inc(x_135); lean_inc(x_1); -x_136 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_131); -x_137 = lean_ctor_get(x_136, 3); -lean_inc(x_137); -if (lean_obj_tag(x_137) == 0) +x_135 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_131); +x_136 = l_Lean_nullKind; +x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_134); +x_138 = lean_ctor_get(x_137, 3); +lean_inc(x_138); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_138; -lean_dec(x_135); -x_138 = l_Lean_Parser_ParserState_mkNode(x_136, x_130, x_134); -x_88 = x_138; -goto block_124; -} -else -{ -lean_object* x_139; uint8_t x_140; -lean_dec(x_137); -x_139 = lean_ctor_get(x_136, 1); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_139 = lean_ctor_get(x_137, 0); lean_inc(x_139); -x_140 = lean_nat_dec_eq(x_139, x_135); +x_140 = lean_array_get_size(x_139); lean_dec(x_139); -if (x_140 == 0) +x_141 = lean_ctor_get(x_137, 1); +lean_inc(x_141); +lean_inc(x_1); +x_142 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_137); +x_143 = lean_ctor_get(x_142, 3); +lean_inc(x_143); +if (lean_obj_tag(x_143) == 0) { -lean_object* x_141; -lean_dec(x_135); -x_141 = l_Lean_Parser_ParserState_mkNode(x_136, x_130, x_134); -x_88 = x_141; -goto block_124; +lean_object* x_144; +lean_dec(x_141); +x_144 = l_Lean_Parser_ParserState_mkNode(x_142, x_136, x_140); +x_94 = x_144; +goto block_130; } else { -lean_object* x_142; lean_object* x_143; -x_142 = l_Lean_Parser_ParserState_restore(x_136, x_134, x_135); -x_143 = l_Lean_Parser_ParserState_mkNode(x_142, x_130, x_134); -x_88 = x_143; -goto block_124; +lean_object* x_145; uint8_t x_146; +lean_dec(x_143); +x_145 = lean_ctor_get(x_142, 1); +lean_inc(x_145); +x_146 = lean_nat_dec_eq(x_145, x_141); +lean_dec(x_145); +if (x_146 == 0) +{ +lean_object* x_147; +lean_dec(x_141); +x_147 = l_Lean_Parser_ParserState_mkNode(x_142, x_136, x_140); +x_94 = x_147; +goto block_130; +} +else +{ +lean_object* x_148; lean_object* x_149; +x_148 = l_Lean_Parser_ParserState_restore(x_142, x_140, x_141); +x_149 = l_Lean_Parser_ParserState_mkNode(x_148, x_136, x_140); +x_94 = x_149; +goto block_130; } } } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; +lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_dec(x_138); +lean_dec(x_1); +x_150 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_151 = l_Lean_Parser_ParserState_mkNode(x_137, x_150, x_93); +x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_85, x_82); +lean_dec(x_82); +return x_152; +} +} +else +{ +lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_dec(x_132); lean_dec(x_1); -x_144 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_145 = l_Lean_Parser_ParserState_mkNode(x_131, x_144, x_87); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_82, x_79); -lean_dec(x_79); -return x_146; +x_153 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; +x_154 = l_Lean_Parser_ParserState_mkNode(x_131, x_153, x_93); +x_155 = l_Lean_Parser_mergeOrElseErrors(x_154, x_85, x_82); +lean_dec(x_82); +return x_155; +} } } else { -lean_object* x_147; lean_object* x_148; lean_object* x_149; -lean_dec(x_126); +lean_object* x_171; +lean_dec(x_91); lean_dec(x_1); -x_147 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__2; -x_148 = l_Lean_Parser_ParserState_mkNode(x_125, x_147, x_87); -x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_82, x_79); -lean_dec(x_79); -return x_149; -} +x_171 = l_Lean_Parser_mergeOrElseErrors(x_90, x_85, x_82); +lean_dec(x_82); +return x_171; } } } @@ -17168,16 +18337,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structInstBinder___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structInstBinder___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structInstBinder___closed__5; +x_3 = l_Lean_Parser_Command_structInstBinder___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__7() { +lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__8() { _start: { lean_object* x_1; @@ -17185,12 +18364,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structInstBinder___elambd return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__8() { +lean_object* _init_l_Lean_Parser_Command_structInstBinder___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structInstBinder___closed__6; -x_2 = l_Lean_Parser_Command_structInstBinder___closed__7; +x_1 = l_Lean_Parser_Command_structInstBinder___closed__7; +x_2 = l_Lean_Parser_Command_structInstBinder___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -17201,7 +18380,7 @@ lean_object* _init_l_Lean_Parser_Command_structInstBinder() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structInstBinder___closed__8; +x_1 = l_Lean_Parser_Command_structInstBinder___closed__9; return x_1; } } @@ -17401,77 +18580,108 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structFields___elambda__1___spec__1(x_1, x_2); -x_9 = l_Lean_nullKind; -lean_inc(x_7); -x_10 = l_Lean_Parser_ParserState_mkNode(x_8, x_9, x_7); -x_11 = l_Lean_Parser_Command_structFields___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structFields___elambda__1___spec__1(x_1, x_7); +x_12 = l_Lean_nullKind; +lean_inc(x_10); +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +x_14 = l_Lean_Parser_Command_structFields___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structFields___elambda__1___spec__1(x_1, x_21); -x_25 = l_Lean_nullKind; -lean_inc(x_23); -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_23); -x_27 = l_Lean_Parser_Command_structFields___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structFields___elambda__1___spec__1(x_1, x_26); +x_31 = l_Lean_nullKind; +lean_inc(x_29); +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); +x_33 = l_Lean_Parser_Command_structFields___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -17525,16 +18735,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structFields___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structFields___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structFields___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structFields___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structFields___closed__4; +x_3 = l_Lean_Parser_Command_structFields___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structFields___closed__6() { +lean_object* _init_l_Lean_Parser_Command_structFields___closed__7() { _start: { lean_object* x_1; @@ -17542,12 +18762,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structFields___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structFields___closed__7() { +lean_object* _init_l_Lean_Parser_Command_structFields___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structFields___closed__5; -x_2 = l_Lean_Parser_Command_structFields___closed__6; +x_1 = l_Lean_Parser_Command_structFields___closed__6; +x_2 = l_Lean_Parser_Command_structFields___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -17558,7 +18778,7 @@ lean_object* _init_l_Lean_Parser_Command_structFields() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structFields___closed__7; +x_1 = l_Lean_Parser_Command_structFields___closed__8; return x_1; } } @@ -17654,356 +18874,387 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_35; lean_object* x_36; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_35 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = lean_ctor_get(x_35, 0); -lean_inc(x_37); -x_38 = lean_array_get_size(x_37); -lean_dec(x_37); -x_39 = lean_ctor_get(x_35, 1); -lean_inc(x_39); -lean_inc(x_1); -x_40 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_35); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_39); -x_42 = l_Lean_nullKind; -x_43 = l_Lean_Parser_ParserState_mkNode(x_40, x_42, x_38); -x_8 = x_43; -goto block_34; -} -else -{ -lean_object* x_44; uint8_t x_45; -lean_dec(x_41); -x_44 = lean_ctor_get(x_40, 1); -lean_inc(x_44); -x_45 = lean_nat_dec_eq(x_44, x_39); -lean_dec(x_44); -if (x_45 == 0) -{ -lean_object* x_46; lean_object* x_47; -lean_dec(x_39); -x_46 = l_Lean_nullKind; -x_47 = l_Lean_Parser_ParserState_mkNode(x_40, x_46, x_38); -x_8 = x_47; -goto block_34; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = l_Lean_Parser_ParserState_restore(x_40, x_38, x_39); -x_49 = l_Lean_nullKind; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_38); -x_8 = x_50; -goto block_34; -} -} -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_36); -lean_dec(x_1); -x_51 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_35, x_51, x_7); -return x_52; -} -block_34: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_39; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +lean_inc(x_1); +x_38 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -x_11 = l_Lean_Parser_tokenFn(x_1, x_8); +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +x_42 = lean_ctor_get(x_38, 1); +lean_inc(x_42); +lean_inc(x_1); +x_43 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_38); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_42); +x_45 = l_Lean_nullKind; +x_46 = l_Lean_Parser_ParserState_mkNode(x_43, x_45, x_41); +x_11 = x_46; +goto block_37; +} +else +{ +lean_object* x_47; uint8_t x_48; +lean_dec(x_44); +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = lean_nat_dec_eq(x_47, x_42); +lean_dec(x_47); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_42); +x_49 = l_Lean_nullKind; +x_50 = l_Lean_Parser_ParserState_mkNode(x_43, x_49, x_41); +x_11 = x_50; +goto block_37; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); +x_52 = l_Lean_nullKind; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_41); +x_11 = x_53; +goto block_37; +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_39); +lean_dec(x_1); +x_54 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_38, x_54, x_10); +return x_55; +} +block_37: +{ +lean_object* x_12; x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_Command_structCtor___elambda__1___closed__5; -x_17 = lean_string_dec_eq(x_15, x_16); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_Command_structCtor___elambda__1___closed__5; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_dec(x_15); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -x_20 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_22 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_11, x_22, x_7); -return x_23; +x_31 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; } } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_24 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_24, x_10); -x_26 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_35; lean_object* x_36; lean_dec(x_12); -x_28 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_28, x_10); -x_30 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_9); lean_dec(x_1); -x_32 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_8, x_32, x_7); -return x_33; +x_35 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; } } } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_53 = lean_ctor_get(x_2, 0); -lean_inc(x_53); -x_54 = lean_array_get_size(x_53); -lean_dec(x_53); -x_55 = lean_ctor_get(x_2, 1); -lean_inc(x_55); -lean_inc(x_1); -x_56 = lean_apply_2(x_4, x_1, x_2); -x_57 = lean_ctor_get(x_56, 3); -lean_inc(x_57); -if (lean_obj_tag(x_57) == 0) -{ -lean_dec(x_55); -lean_dec(x_54); +lean_dec(x_8); lean_dec(x_1); -return x_56; +return x_7; +} } else { -lean_object* x_58; lean_object* x_59; uint8_t x_60; -x_58 = lean_ctor_get(x_57, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_ctor_get(x_2, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_2, 1); lean_inc(x_58); -lean_dec(x_57); -x_59 = lean_ctor_get(x_56, 1); -lean_inc(x_59); -x_60 = lean_nat_dec_eq(x_59, x_55); -lean_dec(x_59); -if (x_60 == 0) +lean_inc(x_1); +x_59 = lean_apply_2(x_4, x_1, x_2); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) { lean_dec(x_58); -lean_dec(x_55); -lean_dec(x_54); +lean_dec(x_57); lean_dec(x_1); -return x_56; +return x_59; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_96; lean_object* x_97; -lean_inc(x_55); -x_61 = l_Lean_Parser_ParserState_restore(x_56, x_54, x_55); -lean_dec(x_54); -x_62 = lean_ctor_get(x_61, 0); +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); lean_inc(x_62); -x_63 = lean_array_get_size(x_62); +x_63 = lean_nat_dec_eq(x_62, x_58); lean_dec(x_62); -lean_inc(x_1); -x_96 = l_Lean_Parser_ident___elambda__1(x_1, x_61); -x_97 = lean_ctor_get(x_96, 3); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) +if (x_63 == 0) { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_98 = lean_ctor_get(x_96, 0); -lean_inc(x_98); -x_99 = lean_array_get_size(x_98); -lean_dec(x_98); -x_100 = lean_ctor_get(x_96, 1); -lean_inc(x_100); -lean_inc(x_1); -x_101 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_96); -x_102 = lean_ctor_get(x_101, 3); -lean_inc(x_102); -if (lean_obj_tag(x_102) == 0) -{ -lean_object* x_103; lean_object* x_104; -lean_dec(x_100); -x_103 = l_Lean_nullKind; -x_104 = l_Lean_Parser_ParserState_mkNode(x_101, x_103, x_99); -x_64 = x_104; -goto block_95; -} -else -{ -lean_object* x_105; uint8_t x_106; -lean_dec(x_102); -x_105 = lean_ctor_get(x_101, 1); -lean_inc(x_105); -x_106 = lean_nat_dec_eq(x_105, x_100); -lean_dec(x_105); -if (x_106 == 0) -{ -lean_object* x_107; lean_object* x_108; -lean_dec(x_100); -x_107 = l_Lean_nullKind; -x_108 = l_Lean_Parser_ParserState_mkNode(x_101, x_107, x_99); -x_64 = x_108; -goto block_95; -} -else -{ -lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_109 = l_Lean_Parser_ParserState_restore(x_101, x_99, x_100); -x_110 = l_Lean_nullKind; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_99); -x_64 = x_111; -goto block_95; -} -} -} -else -{ -lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_97); +lean_dec(x_61); +lean_dec(x_58); +lean_dec(x_57); lean_dec(x_1); -x_112 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_96, x_112, x_63); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_58, x_55); -lean_dec(x_55); -return x_114; +return x_59; } -block_95: +else { -lean_object* x_65; -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_58); +x_64 = l_Lean_Parser_ParserState_restore(x_59, x_57, x_58); +lean_dec(x_57); +x_65 = lean_unsigned_to_nat(1024u); +x_66 = l_Lean_Parser_checkPrecFn(x_65, x_1, x_64); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_64, 1); -lean_inc(x_66); -x_67 = l_Lean_Parser_tokenFn(x_1, x_64); -x_68 = lean_ctor_get(x_67, 3); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_102; lean_object* x_103; +x_68 = lean_ctor_get(x_66, 0); lean_inc(x_68); -if (lean_obj_tag(x_68) == 0) -{ -lean_object* x_69; lean_object* x_70; -x_69 = lean_ctor_get(x_67, 0); -lean_inc(x_69); -x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); -lean_dec(x_69); -if (lean_obj_tag(x_70) == 2) -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 1); -lean_inc(x_71); -lean_dec(x_70); -x_72 = l_Lean_Parser_Command_structCtor___elambda__1___closed__5; -x_73 = lean_string_dec_eq(x_71, x_72); -lean_dec(x_71); -if (x_73 == 0) -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_74 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_66); -x_76 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_77 = l_Lean_Parser_ParserState_mkNode(x_75, x_76, x_63); -x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_58, x_55); -lean_dec(x_55); -return x_78; -} -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_66); -x_79 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_67, x_79, x_63); -x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_58, x_55); -lean_dec(x_55); -return x_81; -} -} -else -{ -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -lean_dec(x_70); -x_82 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_82, x_66); -x_84 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_63); -x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_58, x_55); -lean_dec(x_55); -return x_86; -} -} -else -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_69 = lean_array_get_size(x_68); lean_dec(x_68); -x_87 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; -x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_87, x_66); -x_89 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_63); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_58, x_55); -lean_dec(x_55); -return x_91; +lean_inc(x_1); +x_102 = l_Lean_Parser_ident___elambda__1(x_1, x_66); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_array_get_size(x_104); +lean_dec(x_104); +x_106 = lean_ctor_get(x_102, 1); +lean_inc(x_106); +lean_inc(x_1); +x_107 = l_Lean_Parser_Command_inferMod___elambda__1(x_1, x_102); +x_108 = lean_ctor_get(x_107, 3); +lean_inc(x_108); +if (lean_obj_tag(x_108) == 0) +{ +lean_object* x_109; lean_object* x_110; +lean_dec(x_106); +x_109 = l_Lean_nullKind; +x_110 = l_Lean_Parser_ParserState_mkNode(x_107, x_109, x_105); +x_70 = x_110; +goto block_101; +} +else +{ +lean_object* x_111; uint8_t x_112; +lean_dec(x_108); +x_111 = lean_ctor_get(x_107, 1); +lean_inc(x_111); +x_112 = lean_nat_dec_eq(x_111, x_106); +lean_dec(x_111); +if (x_112 == 0) +{ +lean_object* x_113; lean_object* x_114; +lean_dec(x_106); +x_113 = l_Lean_nullKind; +x_114 = l_Lean_Parser_ParserState_mkNode(x_107, x_113, x_105); +x_70 = x_114; +goto block_101; +} +else +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_115 = l_Lean_Parser_ParserState_restore(x_107, x_105, x_106); +x_116 = l_Lean_nullKind; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_105); +x_70 = x_117; +goto block_101; +} } } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; -lean_dec(x_65); +lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_103); lean_dec(x_1); -x_92 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; -x_93 = l_Lean_Parser_ParserState_mkNode(x_64, x_92, x_63); -x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_58, x_55); -lean_dec(x_55); -return x_94; +x_118 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_102, x_118, x_69); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_61, x_58); +lean_dec(x_58); +return x_120; } +block_101: +{ +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +x_73 = l_Lean_Parser_tokenFn(x_1, x_70); +x_74 = lean_ctor_get(x_73, 3); +lean_inc(x_74); +if (lean_obj_tag(x_74) == 0) +{ +lean_object* x_75; lean_object* x_76; +x_75 = lean_ctor_get(x_73, 0); +lean_inc(x_75); +x_76 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_75); +lean_dec(x_75); +if (lean_obj_tag(x_76) == 2) +{ +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = lean_ctor_get(x_76, 1); +lean_inc(x_77); +lean_dec(x_76); +x_78 = l_Lean_Parser_Command_structCtor___elambda__1___closed__5; +x_79 = lean_string_dec_eq(x_77, x_78); +lean_dec(x_77); +if (x_79 == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_80 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_80, x_72); +x_82 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_69); +x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_61, x_58); +lean_dec(x_58); +return x_84; +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_72); +x_85 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_86 = l_Lean_Parser_ParserState_mkNode(x_73, x_85, x_69); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_61, x_58); +lean_dec(x_58); +return x_87; +} +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_76); +x_88 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_88, x_72); +x_90 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_69); +x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_61, x_58); +lean_dec(x_58); +return x_92; +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_74); +x_93 = l_Lean_Parser_Command_structCtor___elambda__1___closed__8; +x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_93, x_72); +x_95 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_69); +x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_61, x_58); +lean_dec(x_58); +return x_97; +} +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_dec(x_71); +lean_dec(x_1); +x_98 = l_Lean_Parser_Command_structCtor___elambda__1___closed__2; +x_99 = l_Lean_Parser_ParserState_mkNode(x_70, x_98, x_69); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_61, x_58); +lean_dec(x_58); +return x_100; +} +} +} +else +{ +lean_object* x_121; +lean_dec(x_67); +lean_dec(x_1); +x_121 = l_Lean_Parser_mergeOrElseErrors(x_66, x_61, x_58); +lean_dec(x_58); +return x_121; } } } @@ -18054,16 +19305,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structCtor___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structCtor___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structCtor___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structCtor___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structCtor___closed__4; +x_3 = l_Lean_Parser_Command_structCtor___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structCtor___closed__6() { +lean_object* _init_l_Lean_Parser_Command_structCtor___closed__7() { _start: { lean_object* x_1; @@ -18071,12 +19332,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structCtor___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structCtor___closed__7() { +lean_object* _init_l_Lean_Parser_Command_structCtor___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structCtor___closed__5; -x_2 = l_Lean_Parser_Command_structCtor___closed__6; +x_1 = l_Lean_Parser_Command_structCtor___closed__6; +x_2 = l_Lean_Parser_Command_structCtor___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -18087,7 +19348,7 @@ lean_object* _init_l_Lean_Parser_Command_structCtor() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structCtor___closed__7; +x_1 = l_Lean_Parser_Command_structCtor___closed__8; return x_1; } } @@ -18191,188 +19452,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_structureTk___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_structureTk___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_structureTk___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_structureTk___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_structureTk___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_structureTk___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -18401,16 +19693,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structureTk___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structureTk___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structureTk___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structureTk___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structureTk___closed__2; +x_3 = l_Lean_Parser_Command_structureTk___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structureTk___closed__4() { +lean_object* _init_l_Lean_Parser_Command_structureTk___closed__5() { _start: { lean_object* x_1; @@ -18418,12 +19720,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structureTk___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structureTk___closed__5() { +lean_object* _init_l_Lean_Parser_Command_structureTk___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structureTk___closed__3; -x_2 = l_Lean_Parser_Command_structureTk___closed__4; +x_1 = l_Lean_Parser_Command_structureTk___closed__4; +x_2 = l_Lean_Parser_Command_structureTk___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -18434,7 +19736,7 @@ lean_object* _init_l_Lean_Parser_Command_structureTk() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structureTk___closed__5; +x_1 = l_Lean_Parser_Command_structureTk___closed__6; return x_1; } } @@ -18489,188 +19791,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_classInductive___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_classInductive___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_classTk___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -18690,16 +20023,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_classTk___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_classTk___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_classTk___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_classTk___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_classTk___closed__1; +x_3 = l_Lean_Parser_Command_classTk___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_classTk___closed__3() { +lean_object* _init_l_Lean_Parser_Command_classTk___closed__4() { _start: { lean_object* x_1; @@ -18707,12 +20050,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_classTk___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_classTk___closed__4() { +lean_object* _init_l_Lean_Parser_Command_classTk___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_classTk___closed__2; -x_2 = l_Lean_Parser_Command_classTk___closed__3; +x_1 = l_Lean_Parser_Command_classTk___closed__3; +x_2 = l_Lean_Parser_Command_classTk___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -18723,7 +20066,7 @@ lean_object* _init_l_Lean_Parser_Command_classTk() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_classTk___closed__4; +x_1 = l_Lean_Parser_Command_classTk___closed__5; return x_1; } } @@ -18827,226 +20170,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); -lean_inc(x_1); -x_18 = l_Lean_Parser_tokenFn(x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_Parser_Command_extends___elambda__1___closed__6; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_8 = x_26; -goto block_16; -} -else -{ -lean_dec(x_17); -x_8 = x_18; -goto block_16; -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_21); -x_27 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_27, x_17); -x_8 = x_28; -goto block_16; -} -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_19); -x_29 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_29, x_17); -x_8 = x_30; -goto block_16; -} -block_16: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -uint8_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = 0; -x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_10, x_10, x_1, x_8); -x_12 = l_Lean_Parser_Command_extends___elambda__1___closed__2; -x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_7); -return x_13; -} -else -{ -lean_object* x_14; lean_object* x_15; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_14 = l_Lean_Parser_Command_extends___elambda__1___closed__2; -x_15 = l_Lean_Parser_ParserState_mkNode(x_8, x_14, x_7); -return x_15; -} -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_2, 0); -lean_inc(x_31); -x_32 = lean_array_get_size(x_31); -lean_dec(x_31); -x_33 = lean_ctor_get(x_2, 1); -lean_inc(x_33); +x_20 = lean_ctor_get(x_7, 1); +lean_inc(x_20); lean_inc(x_1); -x_34 = lean_apply_2(x_4, x_1, x_2); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_21 = l_Lean_Parser_tokenFn(x_1, x_7); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) { -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_1); -return x_34; +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); +lean_dec(x_23); +if (lean_obj_tag(x_24) == 2) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_24, 1); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l_Lean_Parser_Command_extends___elambda__1___closed__6; +x_27 = lean_string_dec_eq(x_25, x_26); +lean_dec(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; +x_28 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); +x_11 = x_29; +goto block_19; } else { -lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_36 = lean_ctor_get(x_35, 0); +lean_dec(x_20); +x_11 = x_21; +goto block_19; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_24); +x_30 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); +x_11 = x_31; +goto block_19; +} +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_22); +x_32 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); +x_11 = x_33; +goto block_19; +} +block_19: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = 0; +x_14 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_13, x_13, x_1, x_11); +x_15 = l_Lean_Parser_Command_extends___elambda__1___closed__2; +x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_10); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_12); +lean_dec(x_1); +x_17 = l_Lean_Parser_Command_extends___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkNode(x_11, x_17, x_10); +return x_18; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_2, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_2, 1); lean_inc(x_36); -lean_dec(x_35); -x_37 = lean_ctor_get(x_34, 1); -lean_inc(x_37); -x_38 = lean_nat_dec_eq(x_37, x_33); -lean_dec(x_37); -if (x_38 == 0) +lean_inc(x_1); +x_37 = lean_apply_2(x_4, x_1, x_2); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) { lean_dec(x_36); -lean_dec(x_33); -lean_dec(x_32); +lean_dec(x_35); lean_dec(x_1); -return x_34; +return x_37; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_53; lean_object* x_54; -lean_inc(x_33); -x_39 = l_Lean_Parser_ParserState_restore(x_34, x_32, x_33); -lean_dec(x_32); -x_40 = lean_ctor_get(x_39, 0); +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +lean_dec(x_38); +x_40 = lean_ctor_get(x_37, 1); lean_inc(x_40); -x_41 = lean_array_get_size(x_40); +x_41 = lean_nat_dec_eq(x_40, x_36); lean_dec(x_40); +if (x_41 == 0) +{ +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_1); +return x_37; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_inc(x_36); +x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); +lean_dec(x_35); +x_43 = lean_unsigned_to_nat(1024u); +x_44 = l_Lean_Parser_checkPrecFn(x_43, x_1, x_42); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_array_get_size(x_46); +lean_dec(x_46); +x_59 = lean_ctor_get(x_44, 1); +lean_inc(x_59); lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_39); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l_Lean_Parser_Command_extends___elambda__1___closed__6; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -lean_inc(x_33); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_33); -x_42 = x_61; -goto block_52; -} -else -{ -x_42 = x_53; -goto block_52; -} -} -else +x_60 = l_Lean_Parser_tokenFn(x_1, x_44); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -lean_inc(x_33); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_33); -x_42 = x_63; -goto block_52; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_62); +if (lean_obj_tag(x_63) == 2) +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = l_Lean_Parser_Command_extends___elambda__1___closed__6; +x_66 = lean_string_dec_eq(x_64, x_65); +lean_dec(x_64); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; +x_67 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); +x_48 = x_68; +goto block_58; +} +else +{ +lean_dec(x_59); +x_48 = x_60; +goto block_58; } } else { -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l_Lean_Parser_Command_extends___elambda__1___closed__9; -lean_inc(x_33); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_33); -x_42 = x_65; -goto block_52; +lean_object* x_69; lean_object* x_70; +lean_dec(x_63); +x_69 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); +x_48 = x_70; +goto block_58; } -block_52: -{ -lean_object* x_43; -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) -{ -uint8_t x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = 0; -x_45 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_44, x_44, x_1, x_42); -x_46 = l_Lean_Parser_Command_extends___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_41); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_36, x_33); -lean_dec(x_33); -return x_48; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_43); +lean_object* x_71; lean_object* x_72; +lean_dec(x_61); +x_71 = l_Lean_Parser_Command_extends___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); +x_48 = x_72; +goto block_58; +} +block_58: +{ +lean_object* x_49; +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +uint8_t x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = 0; +x_51 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_50, x_50, x_1, x_48); +x_52 = l_Lean_Parser_Command_extends___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_47); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_39, x_36); +lean_dec(x_36); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_49); lean_dec(x_1); -x_49 = l_Lean_Parser_Command_extends___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_42, x_49, x_41); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_36, x_33); -lean_dec(x_33); -return x_51; +x_55 = l_Lean_Parser_Command_extends___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_48, x_55, x_47); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_39, x_36); +lean_dec(x_36); +return x_57; } } } +else +{ +lean_object* x_73; +lean_dec(x_45); +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_44, x_39, x_36); +lean_dec(x_36); +return x_73; +} +} } } } @@ -19083,16 +20457,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_extends___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_extends___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_extends___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_extends___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_extends___closed__3; +x_3 = l_Lean_Parser_Command_extends___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_extends___closed__5() { +lean_object* _init_l_Lean_Parser_Command_extends___closed__6() { _start: { lean_object* x_1; @@ -19100,12 +20484,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_extends___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_extends___closed__6() { +lean_object* _init_l_Lean_Parser_Command_extends___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_extends___closed__4; -x_2 = l_Lean_Parser_Command_extends___closed__5; +x_1 = l_Lean_Parser_Command_extends___closed__5; +x_2 = l_Lean_Parser_Command_extends___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -19116,7 +20500,7 @@ lean_object* _init_l_Lean_Parser_Command_extends() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_extends___closed__6; +x_1 = l_Lean_Parser_Command_extends___closed__7; return x_1; } } @@ -19174,790 +20558,828 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_47; lean_object* x_70; lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_98 = lean_ctor_get(x_2, 1); -lean_inc(x_98); -lean_inc(x_1); -x_99 = l_Lean_Parser_Command_structureTk___elambda__1(x_1, x_2); -x_100 = lean_ctor_get(x_99, 3); -lean_inc(x_100); -if (lean_obj_tag(x_100) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_dec(x_98); -x_70 = x_99; -goto block_97; -} -else -{ -lean_object* x_101; lean_object* x_102; uint8_t x_103; -x_101 = lean_ctor_get(x_100, 0); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_50; lean_object* x_73; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); +x_101 = lean_ctor_get(x_9, 1); lean_inc(x_101); -lean_dec(x_100); -x_102 = lean_ctor_get(x_99, 1); -lean_inc(x_102); -x_103 = lean_nat_dec_eq(x_102, x_98); -lean_dec(x_102); -if (x_103 == 0) +lean_inc(x_1); +x_102 = l_Lean_Parser_Command_structureTk___elambda__1(x_1, x_9); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { lean_dec(x_101); -lean_dec(x_98); -x_70 = x_99; -goto block_97; +x_73 = x_102; +goto block_100; } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_inc(x_98); -x_104 = l_Lean_Parser_ParserState_restore(x_99, x_9, x_98); +lean_object* x_104; lean_object* x_105; uint8_t x_106; +x_104 = lean_ctor_get(x_103, 0); +lean_inc(x_104); +lean_dec(x_103); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +x_106 = lean_nat_dec_eq(x_105, x_101); +lean_dec(x_105); +if (x_106 == 0) +{ +lean_dec(x_104); +lean_dec(x_101); +x_73 = x_102; +goto block_100; +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_inc(x_101); +x_107 = l_Lean_Parser_ParserState_restore(x_102, x_12, x_101); lean_inc(x_1); -x_105 = l_Lean_Parser_Command_classTk___elambda__1(x_1, x_104); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_101, x_98); -lean_dec(x_98); -x_70 = x_106; -goto block_97; +x_108 = l_Lean_Parser_Command_classTk___elambda__1(x_1, x_107); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_104, x_101); +lean_dec(x_101); +x_73 = x_109; +goto block_100; } } -block_46: +block_49: { -lean_object* x_11; -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_10, 1); +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); lean_inc(x_14); -lean_inc(x_1); -x_15 = l_Lean_Parser_Command_structCtor___elambda__1(x_1, x_10); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) +if (lean_obj_tag(x_14) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_dec(x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_15, x_17, x_13); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +lean_inc(x_1); +x_18 = l_Lean_Parser_Command_structCtor___elambda__1(x_1, x_13); x_19 = lean_ctor_get(x_18, 3); lean_inc(x_19); if (lean_obj_tag(x_19) == 0) { lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_18); -x_21 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_9); -return x_22; +lean_dec(x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_18, x_20, x_16); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_21); +x_24 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_12); +return x_25; } else { -lean_object* x_23; lean_object* x_24; -lean_dec(x_19); +lean_object* x_26; lean_object* x_27; +lean_dec(x_22); lean_dec(x_1); -x_23 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_18, x_23, x_9); -return x_24; +x_26 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_21, x_26, x_12); +return x_27; } } else { -lean_object* x_25; uint8_t x_26; -lean_dec(x_16); -x_25 = lean_ctor_get(x_15, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_14); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_14); -x_27 = l_Lean_nullKind; -x_28 = l_Lean_Parser_ParserState_mkNode(x_15, x_27, x_13); -x_29 = lean_ctor_get(x_28, 3); -lean_inc(x_29); -if (lean_obj_tag(x_29) == 0) +lean_object* x_28; uint8_t x_29; +lean_dec(x_19); +x_28 = lean_ctor_get(x_18, 1); +lean_inc(x_28); +x_29 = lean_nat_dec_eq(x_28, x_17); +lean_dec(x_28); +if (x_29 == 0) { lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_30 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_28); -x_31 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_9); -return x_32; +lean_dec(x_17); +x_30 = l_Lean_nullKind; +x_31 = l_Lean_Parser_ParserState_mkNode(x_18, x_30, x_16); +x_32 = lean_ctor_get(x_31, 3); +lean_inc(x_32); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_31); +x_34 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_12); +return x_35; } else { -lean_object* x_33; lean_object* x_34; -lean_dec(x_29); +lean_object* x_36; lean_object* x_37; +lean_dec(x_32); lean_dec(x_1); -x_33 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_28, x_33, x_9); -return x_34; +x_36 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_31, x_36, x_12); +return x_37; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_35 = l_Lean_Parser_ParserState_restore(x_15, x_13, x_14); -x_36 = l_Lean_nullKind; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_13); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_16); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_37); -x_40 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_9); -return x_41; +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_40); +x_43 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_12); +return x_44; } else { -lean_object* x_42; lean_object* x_43; -lean_dec(x_38); +lean_object* x_45; lean_object* x_46; +lean_dec(x_41); lean_dec(x_1); -x_42 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_37, x_42, x_9); -return x_43; +x_45 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_40, x_45, x_12); +return x_46; } } } } else { -lean_object* x_44; lean_object* x_45; -lean_dec(x_11); +lean_object* x_47; lean_object* x_48; +lean_dec(x_14); lean_dec(x_1); -x_44 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_10, x_44, x_9); -return x_45; +x_47 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_13, x_47, x_12); +return x_48; } } -block_69: +block_72: { -lean_object* x_48; -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; -lean_inc(x_1); -x_49 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_47); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_49, 1); +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 3); lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_inc(x_1); -x_52 = l_Lean_Parser_tokenFn(x_1, x_49); +x_52 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_50); x_53 = lean_ctor_get(x_52, 3); lean_inc(x_53); if (lean_obj_tag(x_53) == 0) { -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_52, 0); +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_52, 1); lean_inc(x_54); -x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); -lean_dec(x_54); -if (lean_obj_tag(x_55) == 2) -{ -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_1); +x_55 = l_Lean_Parser_tokenFn(x_1, x_52); +x_56 = lean_ctor_get(x_55, 3); lean_inc(x_56); -lean_dec(x_55); -x_57 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_58 = lean_string_dec_eq(x_56, x_57); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); +lean_dec(x_57); +if (lean_obj_tag(x_58) == 2) +{ +lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +x_60 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_61 = lean_string_dec_eq(x_59, x_60); +lean_dec(x_59); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; +x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_54); +x_13 = x_63; +goto block_49; +} +else +{ +lean_dec(x_54); +x_13 = x_55; +goto block_49; +} +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_58); +x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_54); +x_13 = x_65; +goto block_49; +} +} +else +{ +lean_object* x_66; lean_object* x_67; lean_dec(x_56); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_51); -x_10 = x_60; -goto block_46; -} -else -{ -lean_dec(x_51); -x_10 = x_52; -goto block_46; +x_66 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_54); +x_13 = x_67; +goto block_49; } } else { -lean_object* x_61; lean_object* x_62; -lean_dec(x_55); -x_61 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_51); -x_10 = x_62; -goto block_46; -} -} -else -{ -lean_object* x_63; lean_object* x_64; +lean_object* x_68; lean_object* x_69; lean_dec(x_53); -x_63 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_51); -x_10 = x_64; -goto block_46; +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_52, x_68, x_12); +return x_69; } } else { -lean_object* x_65; lean_object* x_66; -lean_dec(x_50); +lean_object* x_70; lean_object* x_71; +lean_dec(x_51); lean_dec(x_1); -x_65 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_9); -return x_66; +x_70 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_50, x_70, x_12); +return x_71; } } -else +block_100: { -lean_object* x_67; lean_object* x_68; -lean_dec(x_48); -lean_dec(x_1); -x_67 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_47, x_67, x_9); -return x_68; -} -} -block_97: -{ -lean_object* x_71; -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; lean_object* x_73; -lean_inc(x_1); -x_72 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_70); -x_73 = lean_ctor_get(x_72, 3); -lean_inc(x_73); -if (lean_obj_tag(x_73) == 0) -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_74 = lean_ctor_get(x_72, 0); +lean_object* x_74; +x_74 = lean_ctor_get(x_73, 3); lean_inc(x_74); -x_75 = lean_array_get_size(x_74); -lean_dec(x_74); -lean_inc(x_1); -x_76 = l_Lean_Parser_manyAux___main(x_4, x_1, x_72); -x_77 = l_Lean_nullKind; -x_78 = l_Lean_Parser_ParserState_mkNode(x_76, x_77, x_75); -x_79 = lean_ctor_get(x_78, 3); -lean_inc(x_79); -if (lean_obj_tag(x_79) == 0) +if (lean_obj_tag(x_74) == 0) { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_80 = lean_ctor_get(x_78, 0); -lean_inc(x_80); -x_81 = lean_array_get_size(x_80); -lean_dec(x_80); -x_82 = lean_ctor_get(x_78, 1); +lean_object* x_75; lean_object* x_76; +lean_inc(x_1); +x_75 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_73); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = lean_array_get_size(x_77); +lean_dec(x_77); +lean_inc(x_1); +x_79 = l_Lean_Parser_manyAux___main(x_4, x_1, x_75); +x_80 = l_Lean_nullKind; +x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_78); +x_82 = lean_ctor_get(x_81, 3); lean_inc(x_82); +if (lean_obj_tag(x_82) == 0) +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = lean_array_get_size(x_83); +lean_dec(x_83); +x_85 = lean_ctor_get(x_81, 1); +lean_inc(x_85); lean_inc(x_1); -x_83 = l_Lean_Parser_Command_extends___elambda__1(x_1, x_78); -x_84 = lean_ctor_get(x_83, 3); -lean_inc(x_84); -if (lean_obj_tag(x_84) == 0) -{ -lean_object* x_85; -lean_dec(x_82); -x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_77, x_81); -x_47 = x_85; -goto block_69; -} -else -{ -lean_object* x_86; uint8_t x_87; -lean_dec(x_84); -x_86 = lean_ctor_get(x_83, 1); -lean_inc(x_86); -x_87 = lean_nat_dec_eq(x_86, x_82); -lean_dec(x_86); -if (x_87 == 0) +x_86 = l_Lean_Parser_Command_extends___elambda__1(x_1, x_81); +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) { lean_object* x_88; +lean_dec(x_85); +x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_80, x_84); +x_50 = x_88; +goto block_72; +} +else +{ +lean_object* x_89; uint8_t x_90; +lean_dec(x_87); +x_89 = lean_ctor_get(x_86, 1); +lean_inc(x_89); +x_90 = lean_nat_dec_eq(x_89, x_85); +lean_dec(x_89); +if (x_90 == 0) +{ +lean_object* x_91; +lean_dec(x_85); +x_91 = l_Lean_Parser_ParserState_mkNode(x_86, x_80, x_84); +x_50 = x_91; +goto block_72; +} +else +{ +lean_object* x_92; lean_object* x_93; +x_92 = l_Lean_Parser_ParserState_restore(x_86, x_84, x_85); +x_93 = l_Lean_Parser_ParserState_mkNode(x_92, x_80, x_84); +x_50 = x_93; +goto block_72; +} +} +} +else +{ +lean_object* x_94; lean_object* x_95; lean_dec(x_82); -x_88 = l_Lean_Parser_ParserState_mkNode(x_83, x_77, x_81); -x_47 = x_88; -goto block_69; -} -else -{ -lean_object* x_89; lean_object* x_90; -x_89 = l_Lean_Parser_ParserState_restore(x_83, x_81, x_82); -x_90 = l_Lean_Parser_ParserState_mkNode(x_89, x_77, x_81); -x_47 = x_90; -goto block_69; -} -} -} -else -{ -lean_object* x_91; lean_object* x_92; -lean_dec(x_79); lean_dec(x_1); -x_91 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_78, x_91, x_9); -return x_92; +x_94 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_81, x_94, x_12); +return x_95; } } else { -lean_object* x_93; lean_object* x_94; -lean_dec(x_73); +lean_object* x_96; lean_object* x_97; +lean_dec(x_76); lean_dec(x_4); lean_dec(x_1); -x_93 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_94 = l_Lean_Parser_ParserState_mkNode(x_72, x_93, x_9); -return x_94; +x_96 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_97 = l_Lean_Parser_ParserState_mkNode(x_75, x_96, x_12); +return x_97; } } else { -lean_object* x_95; lean_object* x_96; -lean_dec(x_71); +lean_object* x_98; lean_object* x_99; +lean_dec(x_74); lean_dec(x_4); lean_dec(x_1); -x_95 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_70, x_95, x_9); -return x_96; +x_98 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_99 = l_Lean_Parser_ParserState_mkNode(x_73, x_98, x_12); +return x_99; } } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_107 = lean_ctor_get(x_2, 0); -lean_inc(x_107); -x_108 = lean_array_get_size(x_107); -lean_dec(x_107); -x_109 = lean_ctor_get(x_2, 1); -lean_inc(x_109); -lean_inc(x_1); -x_110 = lean_apply_2(x_6, x_1, x_2); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) -{ -lean_dec(x_109); -lean_dec(x_108); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_110; +return x_9; +} } else { -lean_object* x_112; lean_object* x_113; uint8_t x_114; -x_112 = lean_ctor_get(x_111, 0); +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_110 = lean_ctor_get(x_2, 0); +lean_inc(x_110); +x_111 = lean_array_get_size(x_110); +lean_dec(x_110); +x_112 = lean_ctor_get(x_2, 1); lean_inc(x_112); -lean_dec(x_111); -x_113 = lean_ctor_get(x_110, 1); -lean_inc(x_113); -x_114 = lean_nat_dec_eq(x_113, x_109); -lean_dec(x_113); -if (x_114 == 0) +lean_inc(x_1); +x_113 = lean_apply_2(x_6, x_1, x_2); +x_114 = lean_ctor_get(x_113, 3); +lean_inc(x_114); +if (lean_obj_tag(x_114) == 0) { lean_dec(x_112); -lean_dec(x_109); -lean_dec(x_108); +lean_dec(x_111); lean_dec(x_4); lean_dec(x_1); -return x_110; +return x_113; } else { -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_162; lean_object* x_187; lean_object* x_218; lean_object* x_219; -lean_inc(x_109); -x_115 = l_Lean_Parser_ParserState_restore(x_110, x_108, x_109); -lean_dec(x_108); -x_116 = lean_ctor_get(x_115, 0); +lean_object* x_115; lean_object* x_116; uint8_t x_117; +x_115 = lean_ctor_get(x_114, 0); +lean_inc(x_115); +lean_dec(x_114); +x_116 = lean_ctor_get(x_113, 1); lean_inc(x_116); -x_117 = lean_array_get_size(x_116); +x_117 = lean_nat_dec_eq(x_116, x_112); lean_dec(x_116); -lean_inc(x_1); -x_218 = l_Lean_Parser_Command_structureTk___elambda__1(x_1, x_115); -x_219 = lean_ctor_get(x_218, 3); -lean_inc(x_219); -if (lean_obj_tag(x_219) == 0) +if (x_117 == 0) { -x_187 = x_218; -goto block_217; +lean_dec(x_115); +lean_dec(x_112); +lean_dec(x_111); +lean_dec(x_4); +lean_dec(x_1); +return x_113; } else { -lean_object* x_220; lean_object* x_221; uint8_t x_222; -x_220 = lean_ctor_get(x_219, 0); -lean_inc(x_220); -lean_dec(x_219); -x_221 = lean_ctor_get(x_218, 1); -lean_inc(x_221); -x_222 = lean_nat_dec_eq(x_221, x_109); -lean_dec(x_221); -if (x_222 == 0) +lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_inc(x_112); +x_118 = l_Lean_Parser_ParserState_restore(x_113, x_111, x_112); +lean_dec(x_111); +x_119 = lean_unsigned_to_nat(1024u); +x_120 = l_Lean_Parser_checkPrecFn(x_119, x_1, x_118); +x_121 = lean_ctor_get(x_120, 3); +lean_inc(x_121); +if (lean_obj_tag(x_121) == 0) { -lean_dec(x_220); -x_187 = x_218; -goto block_217; -} -else -{ -lean_object* x_223; lean_object* x_224; lean_object* x_225; -lean_inc(x_109); -x_223 = l_Lean_Parser_ParserState_restore(x_218, x_117, x_109); -lean_inc(x_1); -x_224 = l_Lean_Parser_Command_classTk___elambda__1(x_1, x_223); -x_225 = l_Lean_Parser_mergeOrElseErrors(x_224, x_220, x_109); -x_187 = x_225; -goto block_217; -} -} -block_161: -{ -lean_object* x_119; -x_119 = lean_ctor_get(x_118, 3); -lean_inc(x_119); -if (lean_obj_tag(x_119) == 0) -{ -lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_120 = lean_ctor_get(x_118, 0); -lean_inc(x_120); -x_121 = lean_array_get_size(x_120); -lean_dec(x_120); -x_122 = lean_ctor_get(x_118, 1); +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_168; lean_object* x_193; lean_object* x_224; lean_object* x_225; lean_object* x_226; +x_122 = lean_ctor_get(x_120, 0); lean_inc(x_122); +x_123 = lean_array_get_size(x_122); +lean_dec(x_122); +x_224 = lean_ctor_get(x_120, 1); +lean_inc(x_224); lean_inc(x_1); -x_123 = l_Lean_Parser_Command_structCtor___elambda__1(x_1, x_118); -x_124 = lean_ctor_get(x_123, 3); -lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) +x_225 = l_Lean_Parser_Command_structureTk___elambda__1(x_1, x_120); +x_226 = lean_ctor_get(x_225, 3); +lean_inc(x_226); +if (lean_obj_tag(x_226) == 0) { -lean_object* x_125; lean_object* x_126; lean_object* x_127; -lean_dec(x_122); -x_125 = l_Lean_nullKind; -x_126 = l_Lean_Parser_ParserState_mkNode(x_123, x_125, x_121); -x_127 = lean_ctor_get(x_126, 3); -lean_inc(x_127); -if (lean_obj_tag(x_127) == 0) -{ -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; -x_128 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_126); -x_129 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_130 = l_Lean_Parser_ParserState_mkNode(x_128, x_129, x_117); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_112, x_109); -lean_dec(x_109); -return x_131; +lean_dec(x_224); +x_193 = x_225; +goto block_223; } else { -lean_object* x_132; lean_object* x_133; lean_object* x_134; -lean_dec(x_127); +lean_object* x_227; lean_object* x_228; uint8_t x_229; +x_227 = lean_ctor_get(x_226, 0); +lean_inc(x_227); +lean_dec(x_226); +x_228 = lean_ctor_get(x_225, 1); +lean_inc(x_228); +x_229 = lean_nat_dec_eq(x_228, x_224); +lean_dec(x_228); +if (x_229 == 0) +{ +lean_dec(x_227); +lean_dec(x_224); +x_193 = x_225; +goto block_223; +} +else +{ +lean_object* x_230; lean_object* x_231; lean_object* x_232; +lean_inc(x_224); +x_230 = l_Lean_Parser_ParserState_restore(x_225, x_123, x_224); +lean_inc(x_1); +x_231 = l_Lean_Parser_Command_classTk___elambda__1(x_1, x_230); +x_232 = l_Lean_Parser_mergeOrElseErrors(x_231, x_227, x_224); +lean_dec(x_224); +x_193 = x_232; +goto block_223; +} +} +block_167: +{ +lean_object* x_125; +x_125 = lean_ctor_get(x_124, 3); +lean_inc(x_125); +if (lean_obj_tag(x_125) == 0) +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_126 = lean_ctor_get(x_124, 0); +lean_inc(x_126); +x_127 = lean_array_get_size(x_126); +lean_dec(x_126); +x_128 = lean_ctor_get(x_124, 1); +lean_inc(x_128); +lean_inc(x_1); +x_129 = l_Lean_Parser_Command_structCtor___elambda__1(x_1, x_124); +x_130 = lean_ctor_get(x_129, 3); +lean_inc(x_130); +if (lean_obj_tag(x_130) == 0) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; +lean_dec(x_128); +x_131 = l_Lean_nullKind; +x_132 = l_Lean_Parser_ParserState_mkNode(x_129, x_131, x_127); +x_133 = lean_ctor_get(x_132, 3); +lean_inc(x_133); +if (lean_obj_tag(x_133) == 0) +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_134 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_132); +x_135 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_136 = l_Lean_Parser_ParserState_mkNode(x_134, x_135, x_123); +x_137 = l_Lean_Parser_mergeOrElseErrors(x_136, x_115, x_112); +lean_dec(x_112); +return x_137; +} +else +{ +lean_object* x_138; lean_object* x_139; lean_object* x_140; +lean_dec(x_133); lean_dec(x_1); -x_132 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_133 = l_Lean_Parser_ParserState_mkNode(x_126, x_132, x_117); -x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_112, x_109); -lean_dec(x_109); -return x_134; +x_138 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_139 = l_Lean_Parser_ParserState_mkNode(x_132, x_138, x_123); +x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_115, x_112); +lean_dec(x_112); +return x_140; } } else { -lean_object* x_135; uint8_t x_136; -lean_dec(x_124); -x_135 = lean_ctor_get(x_123, 1); -lean_inc(x_135); -x_136 = lean_nat_dec_eq(x_135, x_122); -lean_dec(x_135); -if (x_136 == 0) +lean_object* x_141; uint8_t x_142; +lean_dec(x_130); +x_141 = lean_ctor_get(x_129, 1); +lean_inc(x_141); +x_142 = lean_nat_dec_eq(x_141, x_128); +lean_dec(x_141); +if (x_142 == 0) { -lean_object* x_137; lean_object* x_138; lean_object* x_139; -lean_dec(x_122); -x_137 = l_Lean_nullKind; -x_138 = l_Lean_Parser_ParserState_mkNode(x_123, x_137, x_121); -x_139 = lean_ctor_get(x_138, 3); -lean_inc(x_139); -if (lean_obj_tag(x_139) == 0) +lean_object* x_143; lean_object* x_144; lean_object* x_145; +lean_dec(x_128); +x_143 = l_Lean_nullKind; +x_144 = l_Lean_Parser_ParserState_mkNode(x_129, x_143, x_127); +x_145 = lean_ctor_get(x_144, 3); +lean_inc(x_145); +if (lean_obj_tag(x_145) == 0) { -lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; -x_140 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_138); -x_141 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_142 = l_Lean_Parser_ParserState_mkNode(x_140, x_141, x_117); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_112, x_109); -lean_dec(x_109); -return x_143; +lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_146 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_144); +x_147 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_148 = l_Lean_Parser_ParserState_mkNode(x_146, x_147, x_123); +x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_115, x_112); +lean_dec(x_112); +return x_149; } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; -lean_dec(x_139); +lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_dec(x_145); lean_dec(x_1); -x_144 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_145 = l_Lean_Parser_ParserState_mkNode(x_138, x_144, x_117); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_112, x_109); -lean_dec(x_109); -return x_146; +x_150 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_151 = l_Lean_Parser_ParserState_mkNode(x_144, x_150, x_123); +x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_115, x_112); +lean_dec(x_112); +return x_152; } } else { -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; -x_147 = l_Lean_Parser_ParserState_restore(x_123, x_121, x_122); -x_148 = l_Lean_nullKind; -x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_121); -x_150 = lean_ctor_get(x_149, 3); -lean_inc(x_150); -if (lean_obj_tag(x_150) == 0) +lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; +x_153 = l_Lean_Parser_ParserState_restore(x_129, x_127, x_128); +x_154 = l_Lean_nullKind; +x_155 = l_Lean_Parser_ParserState_mkNode(x_153, x_154, x_127); +x_156 = lean_ctor_get(x_155, 3); +lean_inc(x_156); +if (lean_obj_tag(x_156) == 0) { -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; -x_151 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_149); -x_152 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_153 = l_Lean_Parser_ParserState_mkNode(x_151, x_152, x_117); -x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_112, x_109); -lean_dec(x_109); -return x_154; -} -else -{ -lean_object* x_155; lean_object* x_156; lean_object* x_157; -lean_dec(x_150); -lean_dec(x_1); -x_155 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_156 = l_Lean_Parser_ParserState_mkNode(x_149, x_155, x_117); -x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_112, x_109); -lean_dec(x_109); -return x_157; -} -} -} -} -else -{ -lean_object* x_158; lean_object* x_159; lean_object* x_160; -lean_dec(x_119); -lean_dec(x_1); +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; +x_157 = l_Lean_Parser_Command_structFields___elambda__1(x_1, x_155); x_158 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_159 = l_Lean_Parser_ParserState_mkNode(x_118, x_158, x_117); -x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_112, x_109); -lean_dec(x_109); +x_159 = l_Lean_Parser_ParserState_mkNode(x_157, x_158, x_123); +x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_115, x_112); +lean_dec(x_112); return x_160; } +else +{ +lean_object* x_161; lean_object* x_162; lean_object* x_163; +lean_dec(x_156); +lean_dec(x_1); +x_161 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_162 = l_Lean_Parser_ParserState_mkNode(x_155, x_161, x_123); +x_163 = l_Lean_Parser_mergeOrElseErrors(x_162, x_115, x_112); +lean_dec(x_112); +return x_163; } -block_186: +} +} +} +else { -lean_object* x_163; -x_163 = lean_ctor_get(x_162, 3); -lean_inc(x_163); -if (lean_obj_tag(x_163) == 0) +lean_object* x_164; lean_object* x_165; lean_object* x_166; +lean_dec(x_125); +lean_dec(x_1); +x_164 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_165 = l_Lean_Parser_ParserState_mkNode(x_124, x_164, x_123); +x_166 = l_Lean_Parser_mergeOrElseErrors(x_165, x_115, x_112); +lean_dec(x_112); +return x_166; +} +} +block_192: { -lean_object* x_164; lean_object* x_165; -lean_inc(x_1); -x_164 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_162); -x_165 = lean_ctor_get(x_164, 3); -lean_inc(x_165); -if (lean_obj_tag(x_165) == 0) -{ -lean_object* x_166; lean_object* x_167; lean_object* x_168; -x_166 = lean_ctor_get(x_164, 1); -lean_inc(x_166); -lean_inc(x_1); -x_167 = l_Lean_Parser_tokenFn(x_1, x_164); -x_168 = lean_ctor_get(x_167, 3); -lean_inc(x_168); -if (lean_obj_tag(x_168) == 0) -{ -lean_object* x_169; lean_object* x_170; -x_169 = lean_ctor_get(x_167, 0); +lean_object* x_169; +x_169 = lean_ctor_get(x_168, 3); lean_inc(x_169); -x_170 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_169); -lean_dec(x_169); -if (lean_obj_tag(x_170) == 2) +if (lean_obj_tag(x_169) == 0) { -lean_object* x_171; lean_object* x_172; uint8_t x_173; -x_171 = lean_ctor_get(x_170, 1); +lean_object* x_170; lean_object* x_171; +lean_inc(x_1); +x_170 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_168); +x_171 = lean_ctor_get(x_170, 3); lean_inc(x_171); -lean_dec(x_170); -x_172 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_173 = lean_string_dec_eq(x_171, x_172); +if (lean_obj_tag(x_171) == 0) +{ +lean_object* x_172; lean_object* x_173; lean_object* x_174; +x_172 = lean_ctor_get(x_170, 1); +lean_inc(x_172); +lean_inc(x_1); +x_173 = l_Lean_Parser_tokenFn(x_1, x_170); +x_174 = lean_ctor_get(x_173, 3); +lean_inc(x_174); +if (lean_obj_tag(x_174) == 0) +{ +lean_object* x_175; lean_object* x_176; +x_175 = lean_ctor_get(x_173, 0); +lean_inc(x_175); +x_176 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_175); +lean_dec(x_175); +if (lean_obj_tag(x_176) == 2) +{ +lean_object* x_177; lean_object* x_178; uint8_t x_179; +x_177 = lean_ctor_get(x_176, 1); +lean_inc(x_177); +lean_dec(x_176); +x_178 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_179 = lean_string_dec_eq(x_177, x_178); +lean_dec(x_177); +if (x_179 == 0) +{ +lean_object* x_180; lean_object* x_181; +x_180 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_181 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_180, x_172); +x_124 = x_181; +goto block_167; +} +else +{ +lean_dec(x_172); +x_124 = x_173; +goto block_167; +} +} +else +{ +lean_object* x_182; lean_object* x_183; +lean_dec(x_176); +x_182 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_182, x_172); +x_124 = x_183; +goto block_167; +} +} +else +{ +lean_object* x_184; lean_object* x_185; +lean_dec(x_174); +x_184 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_184, x_172); +x_124 = x_185; +goto block_167; +} +} +else +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_dec(x_171); -if (x_173 == 0) -{ -lean_object* x_174; lean_object* x_175; -x_174 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_175 = l_Lean_Parser_ParserState_mkErrorsAt(x_167, x_174, x_166); -x_118 = x_175; -goto block_161; -} -else -{ -lean_dec(x_166); -x_118 = x_167; -goto block_161; -} -} -else -{ -lean_object* x_176; lean_object* x_177; -lean_dec(x_170); -x_176 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_177 = l_Lean_Parser_ParserState_mkErrorsAt(x_167, x_176, x_166); -x_118 = x_177; -goto block_161; -} -} -else -{ -lean_object* x_178; lean_object* x_179; -lean_dec(x_168); -x_178 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_179 = l_Lean_Parser_ParserState_mkErrorsAt(x_167, x_178, x_166); -x_118 = x_179; -goto block_161; -} -} -else -{ -lean_object* x_180; lean_object* x_181; lean_object* x_182; -lean_dec(x_165); lean_dec(x_1); -x_180 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_181 = l_Lean_Parser_ParserState_mkNode(x_164, x_180, x_117); -x_182 = l_Lean_Parser_mergeOrElseErrors(x_181, x_112, x_109); -lean_dec(x_109); -return x_182; +x_186 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_187 = l_Lean_Parser_ParserState_mkNode(x_170, x_186, x_123); +x_188 = l_Lean_Parser_mergeOrElseErrors(x_187, x_115, x_112); +lean_dec(x_112); +return x_188; } } else { -lean_object* x_183; lean_object* x_184; lean_object* x_185; -lean_dec(x_163); +lean_object* x_189; lean_object* x_190; lean_object* x_191; +lean_dec(x_169); lean_dec(x_1); -x_183 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_184 = l_Lean_Parser_ParserState_mkNode(x_162, x_183, x_117); -x_185 = l_Lean_Parser_mergeOrElseErrors(x_184, x_112, x_109); -lean_dec(x_109); -return x_185; +x_189 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_190 = l_Lean_Parser_ParserState_mkNode(x_168, x_189, x_123); +x_191 = l_Lean_Parser_mergeOrElseErrors(x_190, x_115, x_112); +lean_dec(x_112); +return x_191; } } -block_217: +block_223: { -lean_object* x_188; -x_188 = lean_ctor_get(x_187, 3); -lean_inc(x_188); -if (lean_obj_tag(x_188) == 0) +lean_object* x_194; +x_194 = lean_ctor_get(x_193, 3); +lean_inc(x_194); +if (lean_obj_tag(x_194) == 0) { -lean_object* x_189; lean_object* x_190; +lean_object* x_195; lean_object* x_196; lean_inc(x_1); -x_189 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_187); -x_190 = lean_ctor_get(x_189, 3); -lean_inc(x_190); -if (lean_obj_tag(x_190) == 0) -{ -lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; -x_191 = lean_ctor_get(x_189, 0); -lean_inc(x_191); -x_192 = lean_array_get_size(x_191); -lean_dec(x_191); -lean_inc(x_1); -x_193 = l_Lean_Parser_manyAux___main(x_4, x_1, x_189); -x_194 = l_Lean_nullKind; -x_195 = l_Lean_Parser_ParserState_mkNode(x_193, x_194, x_192); +x_195 = l_Lean_Parser_Command_declId___elambda__1(x_1, x_193); x_196 = lean_ctor_get(x_195, 3); lean_inc(x_196); if (lean_obj_tag(x_196) == 0) { -lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; +lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; x_197 = lean_ctor_get(x_195, 0); lean_inc(x_197); x_198 = lean_array_get_size(x_197); lean_dec(x_197); -x_199 = lean_ctor_get(x_195, 1); -lean_inc(x_199); lean_inc(x_1); -x_200 = l_Lean_Parser_Command_extends___elambda__1(x_1, x_195); -x_201 = lean_ctor_get(x_200, 3); -lean_inc(x_201); -if (lean_obj_tag(x_201) == 0) +x_199 = l_Lean_Parser_manyAux___main(x_4, x_1, x_195); +x_200 = l_Lean_nullKind; +x_201 = l_Lean_Parser_ParserState_mkNode(x_199, x_200, x_198); +x_202 = lean_ctor_get(x_201, 3); +lean_inc(x_202); +if (lean_obj_tag(x_202) == 0) { -lean_object* x_202; -lean_dec(x_199); -x_202 = l_Lean_Parser_ParserState_mkNode(x_200, x_194, x_198); -x_162 = x_202; -goto block_186; -} -else -{ -lean_object* x_203; uint8_t x_204; -lean_dec(x_201); -x_203 = lean_ctor_get(x_200, 1); +lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; +x_203 = lean_ctor_get(x_201, 0); lean_inc(x_203); -x_204 = lean_nat_dec_eq(x_203, x_199); +x_204 = lean_array_get_size(x_203); lean_dec(x_203); -if (x_204 == 0) +x_205 = lean_ctor_get(x_201, 1); +lean_inc(x_205); +lean_inc(x_1); +x_206 = l_Lean_Parser_Command_extends___elambda__1(x_1, x_201); +x_207 = lean_ctor_get(x_206, 3); +lean_inc(x_207); +if (lean_obj_tag(x_207) == 0) { -lean_object* x_205; -lean_dec(x_199); -x_205 = l_Lean_Parser_ParserState_mkNode(x_200, x_194, x_198); -x_162 = x_205; -goto block_186; +lean_object* x_208; +lean_dec(x_205); +x_208 = l_Lean_Parser_ParserState_mkNode(x_206, x_200, x_204); +x_168 = x_208; +goto block_192; } else { -lean_object* x_206; lean_object* x_207; -x_206 = l_Lean_Parser_ParserState_restore(x_200, x_198, x_199); -x_207 = l_Lean_Parser_ParserState_mkNode(x_206, x_194, x_198); -x_162 = x_207; -goto block_186; -} -} +lean_object* x_209; uint8_t x_210; +lean_dec(x_207); +x_209 = lean_ctor_get(x_206, 1); +lean_inc(x_209); +x_210 = lean_nat_dec_eq(x_209, x_205); +lean_dec(x_209); +if (x_210 == 0) +{ +lean_object* x_211; +lean_dec(x_205); +x_211 = l_Lean_Parser_ParserState_mkNode(x_206, x_200, x_204); +x_168 = x_211; +goto block_192; } else { -lean_object* x_208; lean_object* x_209; lean_object* x_210; -lean_dec(x_196); -lean_dec(x_1); -x_208 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_209 = l_Lean_Parser_ParserState_mkNode(x_195, x_208, x_117); -x_210 = l_Lean_Parser_mergeOrElseErrors(x_209, x_112, x_109); -lean_dec(x_109); -return x_210; +lean_object* x_212; lean_object* x_213; +x_212 = l_Lean_Parser_ParserState_restore(x_206, x_204, x_205); +x_213 = l_Lean_Parser_ParserState_mkNode(x_212, x_200, x_204); +x_168 = x_213; +goto block_192; } } -else -{ -lean_object* x_211; lean_object* x_212; lean_object* x_213; -lean_dec(x_190); -lean_dec(x_4); -lean_dec(x_1); -x_211 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_212 = l_Lean_Parser_ParserState_mkNode(x_189, x_211, x_117); -x_213 = l_Lean_Parser_mergeOrElseErrors(x_212, x_112, x_109); -lean_dec(x_109); -return x_213; -} } else { lean_object* x_214; lean_object* x_215; lean_object* x_216; -lean_dec(x_188); -lean_dec(x_4); +lean_dec(x_202); lean_dec(x_1); x_214 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_215 = l_Lean_Parser_ParserState_mkNode(x_187, x_214, x_117); -x_216 = l_Lean_Parser_mergeOrElseErrors(x_215, x_112, x_109); -lean_dec(x_109); +x_215 = l_Lean_Parser_ParserState_mkNode(x_201, x_214, x_123); +x_216 = l_Lean_Parser_mergeOrElseErrors(x_215, x_115, x_112); +lean_dec(x_112); return x_216; } } +else +{ +lean_object* x_217; lean_object* x_218; lean_object* x_219; +lean_dec(x_196); +lean_dec(x_4); +lean_dec(x_1); +x_217 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_218 = l_Lean_Parser_ParserState_mkNode(x_195, x_217, x_123); +x_219 = l_Lean_Parser_mergeOrElseErrors(x_218, x_115, x_112); +lean_dec(x_112); +return x_219; +} +} +else +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; +lean_dec(x_194); +lean_dec(x_4); +lean_dec(x_1); +x_220 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_221 = l_Lean_Parser_ParserState_mkNode(x_193, x_220, x_123); +x_222 = l_Lean_Parser_mergeOrElseErrors(x_221, x_115, x_112); +lean_dec(x_112); +return x_222; +} +} +} +else +{ +lean_object* x_233; +lean_dec(x_121); +lean_dec(x_4); +lean_dec(x_1); +x_233 = l_Lean_Parser_mergeOrElseErrors(x_120, x_115, x_112); +lean_dec(x_112); +return x_233; +} } } } @@ -20088,16 +21510,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_structure___closed__12() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_structure___closed__11; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_structure___closed__13() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structure___closed__11; +x_3 = l_Lean_Parser_Command_structure___closed__12; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_structure___closed__13() { +lean_object* _init_l_Lean_Parser_Command_structure___closed__14() { _start: { lean_object* x_1; @@ -20105,12 +21537,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structure___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_structure___closed__14() { +lean_object* _init_l_Lean_Parser_Command_structure___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___closed__12; -x_2 = l_Lean_Parser_Command_structure___closed__13; +x_1 = l_Lean_Parser_Command_structure___closed__13; +x_2 = l_Lean_Parser_Command_structure___closed__14; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -20121,7 +21553,7 @@ lean_object* _init_l_Lean_Parser_Command_structure() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_structure___closed__14; +x_1 = l_Lean_Parser_Command_structure___closed__15; return x_1; } } @@ -20176,1127 +21608,1148 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_Command_declModifiers___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -lean_inc(x_1); -x_13 = l_Lean_Parser_Command_abbrev___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_14, 0); -lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_ctor_get(x_13, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_18, x_12); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; -lean_dec(x_17); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_1); -x_20 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_inc(x_12); -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -lean_dec(x_11); -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -lean_inc(x_1); -x_25 = l_Lean_Parser_Command_def___elambda__1(x_1, x_22); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_24); -lean_dec(x_1); -x_27 = l_Lean_Parser_mergeOrElseErrors(x_25, x_17, x_12); -lean_dec(x_12); -x_28 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_30 = lean_ctor_get(x_26, 0); -lean_inc(x_30); -lean_dec(x_26); -x_31 = lean_ctor_get(x_25, 1); -lean_inc(x_31); -x_32 = lean_nat_dec_eq(x_31, x_12); -lean_dec(x_31); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_30); -lean_dec(x_24); -lean_dec(x_1); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_25, x_17, x_12); -lean_dec(x_12); -x_34 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); -return x_35; -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_inc(x_12); -x_36 = l_Lean_Parser_ParserState_restore(x_25, x_24, x_12); -lean_dec(x_24); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_array_get_size(x_37); -lean_dec(x_37); -lean_inc(x_1); -x_39 = l_Lean_Parser_Command_theorem___elambda__1(x_1, x_36); -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_38); -lean_dec(x_1); -x_41 = l_Lean_Parser_mergeOrElseErrors(x_39, x_30, x_12); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_17, x_12); -lean_dec(x_12); -x_43 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_7); -return x_44; -} -else -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_40, 0); -lean_inc(x_45); -lean_dec(x_40); -x_46 = lean_ctor_get(x_39, 1); -lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_12); -lean_dec(x_46); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_45); -lean_dec(x_38); -lean_dec(x_1); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_39, x_30, x_12); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_17, x_12); -lean_dec(x_12); -x_50 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_7); -return x_51; -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_inc(x_12); -x_52 = l_Lean_Parser_ParserState_restore(x_39, x_38, x_12); -lean_dec(x_38); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -x_54 = lean_array_get_size(x_53); -lean_dec(x_53); -lean_inc(x_1); -x_55 = l_Lean_Parser_Command_constant___elambda__1(x_1, x_52); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -lean_dec(x_1); -x_57 = l_Lean_Parser_mergeOrElseErrors(x_55, x_45, x_12); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_30, x_12); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_17, x_12); -lean_dec(x_12); -x_60 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_7); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_56, 0); -lean_inc(x_62); -lean_dec(x_56); -x_63 = lean_ctor_get(x_55, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_12); -lean_dec(x_63); -if (x_64 == 0) -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_62); -lean_dec(x_54); -lean_dec(x_1); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_55, x_45, x_12); -x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_30, x_12); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_17, x_12); -lean_dec(x_12); -x_68 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_67, x_68, x_7); -return x_69; -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_inc(x_12); -x_70 = l_Lean_Parser_ParserState_restore(x_55, x_54, x_12); -lean_dec(x_54); -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -lean_inc(x_1); -x_73 = l_Lean_Parser_Command_instance___elambda__1(x_1, x_70); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -lean_dec(x_72); -lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_73, x_62, x_12); -x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_45, x_12); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_30, x_12); -x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_17, x_12); -lean_dec(x_12); -x_79 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_78, x_79, x_7); -return x_80; -} -else -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_74, 0); -lean_inc(x_81); -lean_dec(x_74); -x_82 = lean_ctor_get(x_73, 1); -lean_inc(x_82); -x_83 = lean_nat_dec_eq(x_82, x_12); -lean_dec(x_82); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -lean_dec(x_81); -lean_dec(x_72); -lean_dec(x_1); -x_84 = l_Lean_Parser_mergeOrElseErrors(x_73, x_62, x_12); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_45, x_12); -x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_30, x_12); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_17, x_12); -lean_dec(x_12); -x_88 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_7); -return x_89; -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -lean_inc(x_12); -x_90 = l_Lean_Parser_ParserState_restore(x_73, x_72, x_12); -lean_dec(x_72); -x_91 = lean_ctor_get(x_90, 0); -lean_inc(x_91); -x_92 = lean_array_get_size(x_91); -lean_dec(x_91); -lean_inc(x_1); -x_93 = l_Lean_Parser_Command_axiom___elambda__1(x_1, x_90); -x_94 = lean_ctor_get(x_93, 3); -lean_inc(x_94); -if (lean_obj_tag(x_94) == 0) -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_92); -lean_dec(x_1); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_93, x_81, x_12); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_12); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_45, x_12); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_30, x_12); -x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_17, x_12); -lean_dec(x_12); -x_100 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_7); -return x_101; -} -else -{ -lean_object* x_102; lean_object* x_103; uint8_t x_104; -x_102 = lean_ctor_get(x_94, 0); -lean_inc(x_102); -lean_dec(x_94); -x_103 = lean_ctor_get(x_93, 1); -lean_inc(x_103); -x_104 = lean_nat_dec_eq(x_103, x_12); -lean_dec(x_103); -if (x_104 == 0) -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_102); -lean_dec(x_92); -lean_dec(x_1); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_93, x_81, x_12); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_62, x_12); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_45, x_12); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_30, x_12); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_17, x_12); -lean_dec(x_12); -x_110 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_7); -return x_111; -} -else -{ -lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_inc(x_12); -x_112 = l_Lean_Parser_ParserState_restore(x_93, x_92, x_12); -lean_dec(x_92); -x_113 = lean_ctor_get(x_112, 0); -lean_inc(x_113); -x_114 = lean_array_get_size(x_113); -lean_dec(x_113); -lean_inc(x_1); -x_115 = l_Lean_Parser_Command_example___elambda__1(x_1, x_112); -x_116 = lean_ctor_get(x_115, 3); -lean_inc(x_116); -if (lean_obj_tag(x_116) == 0) -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -lean_dec(x_114); -lean_dec(x_1); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_115, x_102, x_12); -x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_81, x_12); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_62, x_12); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_45, x_12); -x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_30, x_12); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_17, x_12); -lean_dec(x_12); -x_123 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_7); -return x_124; -} -else -{ -lean_object* x_125; lean_object* x_126; uint8_t x_127; -x_125 = lean_ctor_get(x_116, 0); -lean_inc(x_125); -lean_dec(x_116); -x_126 = lean_ctor_get(x_115, 1); -lean_inc(x_126); -x_127 = lean_nat_dec_eq(x_126, x_12); -lean_dec(x_126); -if (x_127 == 0) -{ -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; -lean_dec(x_125); -lean_dec(x_114); -lean_dec(x_1); -x_128 = l_Lean_Parser_mergeOrElseErrors(x_115, x_102, x_12); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_81, x_12); -x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_62, x_12); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_45, x_12); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_30, x_12); -x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_17, x_12); -lean_dec(x_12); -x_134 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_7); -return x_135; -} -else -{ -lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; -lean_inc(x_12); -x_136 = l_Lean_Parser_ParserState_restore(x_115, x_114, x_12); -lean_dec(x_114); -x_137 = lean_ctor_get(x_136, 0); -lean_inc(x_137); -x_138 = lean_array_get_size(x_137); -lean_dec(x_137); -lean_inc(x_1); -x_139 = l_Lean_Parser_Command_inductive___elambda__1(x_1, x_136); -x_140 = lean_ctor_get(x_139, 3); -lean_inc(x_140); -if (lean_obj_tag(x_140) == 0) -{ -lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; -lean_dec(x_138); -lean_dec(x_1); -x_141 = l_Lean_Parser_mergeOrElseErrors(x_139, x_125, x_12); -x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_102, x_12); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_81, x_12); -x_144 = l_Lean_Parser_mergeOrElseErrors(x_143, x_62, x_12); -x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_45, x_12); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_30, x_12); -x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_17, x_12); -lean_dec(x_12); -x_148 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_7); -return x_149; -} -else -{ -lean_object* x_150; lean_object* x_151; uint8_t x_152; -x_150 = lean_ctor_get(x_140, 0); -lean_inc(x_150); -lean_dec(x_140); -x_151 = lean_ctor_get(x_139, 1); -lean_inc(x_151); -x_152 = lean_nat_dec_eq(x_151, x_12); -lean_dec(x_151); -if (x_152 == 0) -{ -lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; -lean_dec(x_150); -lean_dec(x_138); -lean_dec(x_1); -x_153 = l_Lean_Parser_mergeOrElseErrors(x_139, x_125, x_12); -x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_102, x_12); -x_155 = l_Lean_Parser_mergeOrElseErrors(x_154, x_81, x_12); -x_156 = l_Lean_Parser_mergeOrElseErrors(x_155, x_62, x_12); -x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_45, x_12); -x_158 = l_Lean_Parser_mergeOrElseErrors(x_157, x_30, x_12); -x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_17, x_12); -lean_dec(x_12); -x_160 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_161 = l_Lean_Parser_ParserState_mkNode(x_159, x_160, x_7); -return x_161; -} -else -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; -lean_inc(x_12); -x_162 = l_Lean_Parser_ParserState_restore(x_139, x_138, x_12); -lean_dec(x_138); -x_163 = lean_ctor_get(x_162, 0); -lean_inc(x_163); -x_164 = lean_array_get_size(x_163); -lean_dec(x_163); -lean_inc(x_1); -x_165 = l_Lean_Parser_Command_classInductive___elambda__1(x_1, x_162); -x_166 = lean_ctor_get(x_165, 3); -lean_inc(x_166); -if (lean_obj_tag(x_166) == 0) -{ -lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; -lean_dec(x_164); -lean_dec(x_1); -x_167 = l_Lean_Parser_mergeOrElseErrors(x_165, x_150, x_12); -x_168 = l_Lean_Parser_mergeOrElseErrors(x_167, x_125, x_12); -x_169 = l_Lean_Parser_mergeOrElseErrors(x_168, x_102, x_12); -x_170 = l_Lean_Parser_mergeOrElseErrors(x_169, x_81, x_12); -x_171 = l_Lean_Parser_mergeOrElseErrors(x_170, x_62, x_12); -x_172 = l_Lean_Parser_mergeOrElseErrors(x_171, x_45, x_12); -x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_30, x_12); -x_174 = l_Lean_Parser_mergeOrElseErrors(x_173, x_17, x_12); -lean_dec(x_12); -x_175 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_176 = l_Lean_Parser_ParserState_mkNode(x_174, x_175, x_7); -return x_176; -} -else -{ -lean_object* x_177; lean_object* x_178; uint8_t x_179; -x_177 = lean_ctor_get(x_166, 0); -lean_inc(x_177); -lean_dec(x_166); -x_178 = lean_ctor_get(x_165, 1); -lean_inc(x_178); -x_179 = lean_nat_dec_eq(x_178, x_12); -lean_dec(x_178); -if (x_179 == 0) -{ -lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; -lean_dec(x_177); -lean_dec(x_164); -lean_dec(x_1); -x_180 = l_Lean_Parser_mergeOrElseErrors(x_165, x_150, x_12); -x_181 = l_Lean_Parser_mergeOrElseErrors(x_180, x_125, x_12); -x_182 = l_Lean_Parser_mergeOrElseErrors(x_181, x_102, x_12); -x_183 = l_Lean_Parser_mergeOrElseErrors(x_182, x_81, x_12); -x_184 = l_Lean_Parser_mergeOrElseErrors(x_183, x_62, x_12); -x_185 = l_Lean_Parser_mergeOrElseErrors(x_184, x_45, x_12); -x_186 = l_Lean_Parser_mergeOrElseErrors(x_185, x_30, x_12); -x_187 = l_Lean_Parser_mergeOrElseErrors(x_186, x_17, x_12); -lean_dec(x_12); -x_188 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_189 = l_Lean_Parser_ParserState_mkNode(x_187, x_188, x_7); -return x_189; -} -else -{ -lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; -lean_inc(x_12); -x_190 = l_Lean_Parser_ParserState_restore(x_165, x_164, x_12); -lean_dec(x_164); -x_191 = l_Lean_Parser_Command_structure___elambda__1(x_1, x_190); -x_192 = l_Lean_Parser_mergeOrElseErrors(x_191, x_177, x_12); -x_193 = l_Lean_Parser_mergeOrElseErrors(x_192, x_150, x_12); -x_194 = l_Lean_Parser_mergeOrElseErrors(x_193, x_125, x_12); -x_195 = l_Lean_Parser_mergeOrElseErrors(x_194, x_102, x_12); -x_196 = l_Lean_Parser_mergeOrElseErrors(x_195, x_81, x_12); -x_197 = l_Lean_Parser_mergeOrElseErrors(x_196, x_62, x_12); -x_198 = l_Lean_Parser_mergeOrElseErrors(x_197, x_45, x_12); -x_199 = l_Lean_Parser_mergeOrElseErrors(x_198, x_30, x_12); -x_200 = l_Lean_Parser_mergeOrElseErrors(x_199, x_17, x_12); -lean_dec(x_12); -x_201 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_202 = l_Lean_Parser_ParserState_mkNode(x_200, x_201, x_7); -return x_202; -} -} -} -} -} -} -} -} -} -} -} -} -} -} -} -} -} -} -} -else -{ -lean_object* x_203; lean_object* x_204; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_203 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_204 = l_Lean_Parser_ParserState_mkNode(x_8, x_203, x_7); -return x_204; -} -} -else -{ -lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; -x_205 = lean_ctor_get(x_2, 0); -lean_inc(x_205); -x_206 = lean_array_get_size(x_205); -lean_dec(x_205); -x_207 = lean_ctor_get(x_2, 1); -lean_inc(x_207); lean_inc(x_1); -x_208 = lean_apply_2(x_4, x_1, x_2); -x_209 = lean_ctor_get(x_208, 3); -lean_inc(x_209); -if (lean_obj_tag(x_209) == 0) +x_11 = l_Lean_Parser_Command_declModifiers___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_207); -lean_dec(x_206); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_Command_abbrev___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_15); +lean_dec(x_14); lean_dec(x_1); -return x_208; +x_18 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_10); +return x_19; } else { -lean_object* x_210; lean_object* x_211; uint8_t x_212; -x_210 = lean_ctor_get(x_209, 0); +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 0); +lean_inc(x_20); +lean_dec(x_17); +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); +x_22 = lean_nat_dec_eq(x_21, x_15); +lean_dec(x_21); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_20); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_1); +x_23 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_16, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_inc(x_15); +x_25 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +lean_dec(x_14); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +lean_inc(x_1); +x_28 = l_Lean_Parser_Command_def___elambda__1(x_1, x_25); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_1); +x_30 = l_Lean_Parser_mergeOrElseErrors(x_28, x_20, x_15); +lean_dec(x_15); +x_31 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = lean_ctor_get(x_29, 0); +lean_inc(x_33); +lean_dec(x_29); +x_34 = lean_ctor_get(x_28, 1); +lean_inc(x_34); +x_35 = lean_nat_dec_eq(x_34, x_15); +lean_dec(x_34); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_33); +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_28, x_20, x_15); +lean_dec(x_15); +x_37 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_inc(x_15); +x_39 = l_Lean_Parser_ParserState_restore(x_28, x_27, x_15); +lean_dec(x_27); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +lean_inc(x_1); +x_42 = l_Lean_Parser_Command_theorem___elambda__1(x_1, x_39); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_41); +lean_dec(x_1); +x_44 = l_Lean_Parser_mergeOrElseErrors(x_42, x_33, x_15); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_20, x_15); +lean_dec(x_15); +x_46 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +lean_dec(x_43); +x_49 = lean_ctor_get(x_42, 1); +lean_inc(x_49); +x_50 = lean_nat_dec_eq(x_49, x_15); +lean_dec(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_48); +lean_dec(x_41); +lean_dec(x_1); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_42, x_33, x_15); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_20, x_15); +lean_dec(x_15); +x_53 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_52, x_53, x_10); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_inc(x_15); +x_55 = l_Lean_Parser_ParserState_restore(x_42, x_41, x_15); +lean_dec(x_41); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +lean_inc(x_1); +x_58 = l_Lean_Parser_Command_constant___elambda__1(x_1, x_55); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_57); +lean_dec(x_1); +x_60 = l_Lean_Parser_mergeOrElseErrors(x_58, x_48, x_15); +x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_33, x_15); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_20, x_15); +lean_dec(x_15); +x_63 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_10); +return x_64; +} +else +{ +lean_object* x_65; lean_object* x_66; uint8_t x_67; +x_65 = lean_ctor_get(x_59, 0); +lean_inc(x_65); +lean_dec(x_59); +x_66 = lean_ctor_get(x_58, 1); +lean_inc(x_66); +x_67 = lean_nat_dec_eq(x_66, x_15); +lean_dec(x_66); +if (x_67 == 0) +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +lean_dec(x_57); +lean_dec(x_1); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_58, x_48, x_15); +x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_33, x_15); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_20, x_15); +lean_dec(x_15); +x_71 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_70, x_71, x_10); +return x_72; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_inc(x_15); +x_73 = l_Lean_Parser_ParserState_restore(x_58, x_57, x_15); +lean_dec(x_57); +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_array_get_size(x_74); +lean_dec(x_74); +lean_inc(x_1); +x_76 = l_Lean_Parser_Command_instance___elambda__1(x_1, x_73); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_75); +lean_dec(x_1); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_76, x_65, x_15); +x_79 = l_Lean_Parser_mergeOrElseErrors(x_78, x_48, x_15); +x_80 = l_Lean_Parser_mergeOrElseErrors(x_79, x_33, x_15); +x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_20, x_15); +lean_dec(x_15); +x_82 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_10); +return x_83; +} +else +{ +lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_84 = lean_ctor_get(x_77, 0); +lean_inc(x_84); +lean_dec(x_77); +x_85 = lean_ctor_get(x_76, 1); +lean_inc(x_85); +x_86 = lean_nat_dec_eq(x_85, x_15); +lean_dec(x_85); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_84); +lean_dec(x_75); +lean_dec(x_1); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_76, x_65, x_15); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_48, x_15); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_33, x_15); +x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_20, x_15); +lean_dec(x_15); +x_91 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_92 = l_Lean_Parser_ParserState_mkNode(x_90, x_91, x_10); +return x_92; +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_inc(x_15); +x_93 = l_Lean_Parser_ParserState_restore(x_76, x_75, x_15); +lean_dec(x_75); +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +x_95 = lean_array_get_size(x_94); +lean_dec(x_94); +lean_inc(x_1); +x_96 = l_Lean_Parser_Command_axiom___elambda__1(x_1, x_93); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_95); +lean_dec(x_1); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_96, x_84, x_15); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_65, x_15); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_48, x_15); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_33, x_15); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_20, x_15); +lean_dec(x_15); +x_103 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_10); +return x_104; +} +else +{ +lean_object* x_105; lean_object* x_106; uint8_t x_107; +x_105 = lean_ctor_get(x_97, 0); +lean_inc(x_105); +lean_dec(x_97); +x_106 = lean_ctor_get(x_96, 1); +lean_inc(x_106); +x_107 = lean_nat_dec_eq(x_106, x_15); +lean_dec(x_106); +if (x_107 == 0) +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_105); +lean_dec(x_95); +lean_dec(x_1); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_96, x_84, x_15); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_65, x_15); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_48, x_15); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_33, x_15); +x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_20, x_15); +lean_dec(x_15); +x_113 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_114 = l_Lean_Parser_ParserState_mkNode(x_112, x_113, x_10); +return x_114; +} +else +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_inc(x_15); +x_115 = l_Lean_Parser_ParserState_restore(x_96, x_95, x_15); +lean_dec(x_95); +x_116 = lean_ctor_get(x_115, 0); +lean_inc(x_116); +x_117 = lean_array_get_size(x_116); +lean_dec(x_116); +lean_inc(x_1); +x_118 = l_Lean_Parser_Command_example___elambda__1(x_1, x_115); +x_119 = lean_ctor_get(x_118, 3); +lean_inc(x_119); +if (lean_obj_tag(x_119) == 0) +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_dec(x_117); +lean_dec(x_1); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_118, x_105, x_15); +x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_84, x_15); +x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_65, x_15); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_48, x_15); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_33, x_15); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_20, x_15); +lean_dec(x_15); +x_126 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_127 = l_Lean_Parser_ParserState_mkNode(x_125, x_126, x_10); +return x_127; +} +else +{ +lean_object* x_128; lean_object* x_129; uint8_t x_130; +x_128 = lean_ctor_get(x_119, 0); +lean_inc(x_128); +lean_dec(x_119); +x_129 = lean_ctor_get(x_118, 1); +lean_inc(x_129); +x_130 = lean_nat_dec_eq(x_129, x_15); +lean_dec(x_129); +if (x_130 == 0) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_128); +lean_dec(x_117); +lean_dec(x_1); +x_131 = l_Lean_Parser_mergeOrElseErrors(x_118, x_105, x_15); +x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_84, x_15); +x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_65, x_15); +x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_48, x_15); +x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_33, x_15); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_20, x_15); +lean_dec(x_15); +x_137 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_138 = l_Lean_Parser_ParserState_mkNode(x_136, x_137, x_10); +return x_138; +} +else +{ +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +lean_inc(x_15); +x_139 = l_Lean_Parser_ParserState_restore(x_118, x_117, x_15); +lean_dec(x_117); +x_140 = lean_ctor_get(x_139, 0); +lean_inc(x_140); +x_141 = lean_array_get_size(x_140); +lean_dec(x_140); +lean_inc(x_1); +x_142 = l_Lean_Parser_Command_inductive___elambda__1(x_1, x_139); +x_143 = lean_ctor_get(x_142, 3); +lean_inc(x_143); +if (lean_obj_tag(x_143) == 0) +{ +lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_dec(x_141); +lean_dec(x_1); +x_144 = l_Lean_Parser_mergeOrElseErrors(x_142, x_128, x_15); +x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_105, x_15); +x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_84, x_15); +x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_65, x_15); +x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_48, x_15); +x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_33, x_15); +x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_20, x_15); +lean_dec(x_15); +x_151 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_152 = l_Lean_Parser_ParserState_mkNode(x_150, x_151, x_10); +return x_152; +} +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; +x_153 = lean_ctor_get(x_143, 0); +lean_inc(x_153); +lean_dec(x_143); +x_154 = lean_ctor_get(x_142, 1); +lean_inc(x_154); +x_155 = lean_nat_dec_eq(x_154, x_15); +lean_dec(x_154); +if (x_155 == 0) +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +lean_dec(x_153); +lean_dec(x_141); +lean_dec(x_1); +x_156 = l_Lean_Parser_mergeOrElseErrors(x_142, x_128, x_15); +x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_105, x_15); +x_158 = l_Lean_Parser_mergeOrElseErrors(x_157, x_84, x_15); +x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_65, x_15); +x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_48, x_15); +x_161 = l_Lean_Parser_mergeOrElseErrors(x_160, x_33, x_15); +x_162 = l_Lean_Parser_mergeOrElseErrors(x_161, x_20, x_15); +lean_dec(x_15); +x_163 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_164 = l_Lean_Parser_ParserState_mkNode(x_162, x_163, x_10); +return x_164; +} +else +{ +lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; +lean_inc(x_15); +x_165 = l_Lean_Parser_ParserState_restore(x_142, x_141, x_15); +lean_dec(x_141); +x_166 = lean_ctor_get(x_165, 0); +lean_inc(x_166); +x_167 = lean_array_get_size(x_166); +lean_dec(x_166); +lean_inc(x_1); +x_168 = l_Lean_Parser_Command_classInductive___elambda__1(x_1, x_165); +x_169 = lean_ctor_get(x_168, 3); +lean_inc(x_169); +if (lean_obj_tag(x_169) == 0) +{ +lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; +lean_dec(x_167); +lean_dec(x_1); +x_170 = l_Lean_Parser_mergeOrElseErrors(x_168, x_153, x_15); +x_171 = l_Lean_Parser_mergeOrElseErrors(x_170, x_128, x_15); +x_172 = l_Lean_Parser_mergeOrElseErrors(x_171, x_105, x_15); +x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_84, x_15); +x_174 = l_Lean_Parser_mergeOrElseErrors(x_173, x_65, x_15); +x_175 = l_Lean_Parser_mergeOrElseErrors(x_174, x_48, x_15); +x_176 = l_Lean_Parser_mergeOrElseErrors(x_175, x_33, x_15); +x_177 = l_Lean_Parser_mergeOrElseErrors(x_176, x_20, x_15); +lean_dec(x_15); +x_178 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_179 = l_Lean_Parser_ParserState_mkNode(x_177, x_178, x_10); +return x_179; +} +else +{ +lean_object* x_180; lean_object* x_181; uint8_t x_182; +x_180 = lean_ctor_get(x_169, 0); +lean_inc(x_180); +lean_dec(x_169); +x_181 = lean_ctor_get(x_168, 1); +lean_inc(x_181); +x_182 = lean_nat_dec_eq(x_181, x_15); +lean_dec(x_181); +if (x_182 == 0) +{ +lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; +lean_dec(x_180); +lean_dec(x_167); +lean_dec(x_1); +x_183 = l_Lean_Parser_mergeOrElseErrors(x_168, x_153, x_15); +x_184 = l_Lean_Parser_mergeOrElseErrors(x_183, x_128, x_15); +x_185 = l_Lean_Parser_mergeOrElseErrors(x_184, x_105, x_15); +x_186 = l_Lean_Parser_mergeOrElseErrors(x_185, x_84, x_15); +x_187 = l_Lean_Parser_mergeOrElseErrors(x_186, x_65, x_15); +x_188 = l_Lean_Parser_mergeOrElseErrors(x_187, x_48, x_15); +x_189 = l_Lean_Parser_mergeOrElseErrors(x_188, x_33, x_15); +x_190 = l_Lean_Parser_mergeOrElseErrors(x_189, x_20, x_15); +lean_dec(x_15); +x_191 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_192 = l_Lean_Parser_ParserState_mkNode(x_190, x_191, x_10); +return x_192; +} +else +{ +lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; +lean_inc(x_15); +x_193 = l_Lean_Parser_ParserState_restore(x_168, x_167, x_15); +lean_dec(x_167); +x_194 = l_Lean_Parser_Command_structure___elambda__1(x_1, x_193); +x_195 = l_Lean_Parser_mergeOrElseErrors(x_194, x_180, x_15); +x_196 = l_Lean_Parser_mergeOrElseErrors(x_195, x_153, x_15); +x_197 = l_Lean_Parser_mergeOrElseErrors(x_196, x_128, x_15); +x_198 = l_Lean_Parser_mergeOrElseErrors(x_197, x_105, x_15); +x_199 = l_Lean_Parser_mergeOrElseErrors(x_198, x_84, x_15); +x_200 = l_Lean_Parser_mergeOrElseErrors(x_199, x_65, x_15); +x_201 = l_Lean_Parser_mergeOrElseErrors(x_200, x_48, x_15); +x_202 = l_Lean_Parser_mergeOrElseErrors(x_201, x_33, x_15); +x_203 = l_Lean_Parser_mergeOrElseErrors(x_202, x_20, x_15); +lean_dec(x_15); +x_204 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_205 = l_Lean_Parser_ParserState_mkNode(x_203, x_204, x_10); +return x_205; +} +} +} +} +} +} +} +} +} +} +} +} +} +} +} +} +} +} +} +else +{ +lean_object* x_206; lean_object* x_207; +lean_dec(x_12); +lean_dec(x_1); +x_206 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_207 = l_Lean_Parser_ParserState_mkNode(x_11, x_206, x_10); +return x_207; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; +x_208 = lean_ctor_get(x_2, 0); +lean_inc(x_208); +x_209 = lean_array_get_size(x_208); +lean_dec(x_208); +x_210 = lean_ctor_get(x_2, 1); lean_inc(x_210); -lean_dec(x_209); -x_211 = lean_ctor_get(x_208, 1); -lean_inc(x_211); -x_212 = lean_nat_dec_eq(x_211, x_207); -lean_dec(x_211); -if (x_212 == 0) +lean_inc(x_1); +x_211 = lean_apply_2(x_4, x_1, x_2); +x_212 = lean_ctor_get(x_211, 3); +lean_inc(x_212); +if (lean_obj_tag(x_212) == 0) { lean_dec(x_210); -lean_dec(x_207); -lean_dec(x_206); +lean_dec(x_209); lean_dec(x_1); -return x_208; +return x_211; } else { -lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; -lean_inc(x_207); -x_213 = l_Lean_Parser_ParserState_restore(x_208, x_206, x_207); -lean_dec(x_206); -x_214 = lean_ctor_get(x_213, 0); +lean_object* x_213; lean_object* x_214; uint8_t x_215; +x_213 = lean_ctor_get(x_212, 0); +lean_inc(x_213); +lean_dec(x_212); +x_214 = lean_ctor_get(x_211, 1); lean_inc(x_214); -x_215 = lean_array_get_size(x_214); +x_215 = lean_nat_dec_eq(x_214, x_210); lean_dec(x_214); -lean_inc(x_1); -x_216 = l_Lean_Parser_Command_declModifiers___elambda__1(x_1, x_213); -x_217 = lean_ctor_get(x_216, 3); -lean_inc(x_217); -if (lean_obj_tag(x_217) == 0) +if (x_215 == 0) { -lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; -x_218 = lean_ctor_get(x_216, 0); -lean_inc(x_218); -x_219 = lean_array_get_size(x_218); -lean_dec(x_218); -x_220 = lean_ctor_get(x_216, 1); -lean_inc(x_220); -lean_inc(x_1); -x_221 = l_Lean_Parser_Command_abbrev___elambda__1(x_1, x_216); -x_222 = lean_ctor_get(x_221, 3); -lean_inc(x_222); -if (lean_obj_tag(x_222) == 0) -{ -lean_object* x_223; lean_object* x_224; lean_object* x_225; -lean_dec(x_220); -lean_dec(x_219); +lean_dec(x_213); +lean_dec(x_210); +lean_dec(x_209); lean_dec(x_1); -x_223 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_224 = l_Lean_Parser_ParserState_mkNode(x_221, x_223, x_215); -x_225 = l_Lean_Parser_mergeOrElseErrors(x_224, x_210, x_207); -lean_dec(x_207); -return x_225; +return x_211; } else { -lean_object* x_226; lean_object* x_227; uint8_t x_228; -x_226 = lean_ctor_get(x_222, 0); +lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; +lean_inc(x_210); +x_216 = l_Lean_Parser_ParserState_restore(x_211, x_209, x_210); +lean_dec(x_209); +x_217 = lean_unsigned_to_nat(1024u); +x_218 = l_Lean_Parser_checkPrecFn(x_217, x_1, x_216); +x_219 = lean_ctor_get(x_218, 3); +lean_inc(x_219); +if (lean_obj_tag(x_219) == 0) +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; +x_220 = lean_ctor_get(x_218, 0); +lean_inc(x_220); +x_221 = lean_array_get_size(x_220); +lean_dec(x_220); +lean_inc(x_1); +x_222 = l_Lean_Parser_Command_declModifiers___elambda__1(x_1, x_218); +x_223 = lean_ctor_get(x_222, 3); +lean_inc(x_223); +if (lean_obj_tag(x_223) == 0) +{ +lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; +x_224 = lean_ctor_get(x_222, 0); +lean_inc(x_224); +x_225 = lean_array_get_size(x_224); +lean_dec(x_224); +x_226 = lean_ctor_get(x_222, 1); lean_inc(x_226); -lean_dec(x_222); -x_227 = lean_ctor_get(x_221, 1); -lean_inc(x_227); -x_228 = lean_nat_dec_eq(x_227, x_220); -lean_dec(x_227); -if (x_228 == 0) +lean_inc(x_1); +x_227 = l_Lean_Parser_Command_abbrev___elambda__1(x_1, x_222); +x_228 = lean_ctor_get(x_227, 3); +lean_inc(x_228); +if (lean_obj_tag(x_228) == 0) { lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_dec(x_226); -lean_dec(x_220); -lean_dec(x_219); +lean_dec(x_225); lean_dec(x_1); x_229 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_230 = l_Lean_Parser_ParserState_mkNode(x_221, x_229, x_215); -x_231 = l_Lean_Parser_mergeOrElseErrors(x_230, x_210, x_207); -lean_dec(x_207); +x_230 = l_Lean_Parser_ParserState_mkNode(x_227, x_229, x_221); +x_231 = l_Lean_Parser_mergeOrElseErrors(x_230, x_213, x_210); +lean_dec(x_210); return x_231; } else { -lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; -lean_inc(x_220); -x_232 = l_Lean_Parser_ParserState_restore(x_221, x_219, x_220); -lean_dec(x_219); -x_233 = lean_ctor_get(x_232, 0); +lean_object* x_232; lean_object* x_233; uint8_t x_234; +x_232 = lean_ctor_get(x_228, 0); +lean_inc(x_232); +lean_dec(x_228); +x_233 = lean_ctor_get(x_227, 1); lean_inc(x_233); -x_234 = lean_array_get_size(x_233); +x_234 = lean_nat_dec_eq(x_233, x_226); lean_dec(x_233); -lean_inc(x_1); -x_235 = l_Lean_Parser_Command_def___elambda__1(x_1, x_232); -x_236 = lean_ctor_get(x_235, 3); -lean_inc(x_236); -if (lean_obj_tag(x_236) == 0) +if (x_234 == 0) { -lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; -lean_dec(x_234); +lean_object* x_235; lean_object* x_236; lean_object* x_237; +lean_dec(x_232); +lean_dec(x_226); +lean_dec(x_225); lean_dec(x_1); -x_237 = l_Lean_Parser_mergeOrElseErrors(x_235, x_226, x_220); -lean_dec(x_220); -x_238 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_239 = l_Lean_Parser_ParserState_mkNode(x_237, x_238, x_215); -x_240 = l_Lean_Parser_mergeOrElseErrors(x_239, x_210, x_207); -lean_dec(x_207); -return x_240; +x_235 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_236 = l_Lean_Parser_ParserState_mkNode(x_227, x_235, x_221); +x_237 = l_Lean_Parser_mergeOrElseErrors(x_236, x_213, x_210); +lean_dec(x_210); +return x_237; } else { -lean_object* x_241; lean_object* x_242; uint8_t x_243; -x_241 = lean_ctor_get(x_236, 0); -lean_inc(x_241); -lean_dec(x_236); -x_242 = lean_ctor_get(x_235, 1); +lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; +lean_inc(x_226); +x_238 = l_Lean_Parser_ParserState_restore(x_227, x_225, x_226); +lean_dec(x_225); +x_239 = lean_ctor_get(x_238, 0); +lean_inc(x_239); +x_240 = lean_array_get_size(x_239); +lean_dec(x_239); +lean_inc(x_1); +x_241 = l_Lean_Parser_Command_def___elambda__1(x_1, x_238); +x_242 = lean_ctor_get(x_241, 3); lean_inc(x_242); -x_243 = lean_nat_dec_eq(x_242, x_220); +if (lean_obj_tag(x_242) == 0) +{ +lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; +lean_dec(x_240); +lean_dec(x_1); +x_243 = l_Lean_Parser_mergeOrElseErrors(x_241, x_232, x_226); +lean_dec(x_226); +x_244 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_245 = l_Lean_Parser_ParserState_mkNode(x_243, x_244, x_221); +x_246 = l_Lean_Parser_mergeOrElseErrors(x_245, x_213, x_210); +lean_dec(x_210); +return x_246; +} +else +{ +lean_object* x_247; lean_object* x_248; uint8_t x_249; +x_247 = lean_ctor_get(x_242, 0); +lean_inc(x_247); lean_dec(x_242); -if (x_243 == 0) +x_248 = lean_ctor_get(x_241, 1); +lean_inc(x_248); +x_249 = lean_nat_dec_eq(x_248, x_226); +lean_dec(x_248); +if (x_249 == 0) { -lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; -lean_dec(x_241); -lean_dec(x_234); +lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; +lean_dec(x_247); +lean_dec(x_240); lean_dec(x_1); -x_244 = l_Lean_Parser_mergeOrElseErrors(x_235, x_226, x_220); -lean_dec(x_220); -x_245 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_246 = l_Lean_Parser_ParserState_mkNode(x_244, x_245, x_215); -x_247 = l_Lean_Parser_mergeOrElseErrors(x_246, x_210, x_207); -lean_dec(x_207); -return x_247; +x_250 = l_Lean_Parser_mergeOrElseErrors(x_241, x_232, x_226); +lean_dec(x_226); +x_251 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_252 = l_Lean_Parser_ParserState_mkNode(x_250, x_251, x_221); +x_253 = l_Lean_Parser_mergeOrElseErrors(x_252, x_213, x_210); +lean_dec(x_210); +return x_253; } else { -lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; -lean_inc(x_220); -x_248 = l_Lean_Parser_ParserState_restore(x_235, x_234, x_220); -lean_dec(x_234); -x_249 = lean_ctor_get(x_248, 0); -lean_inc(x_249); -x_250 = lean_array_get_size(x_249); -lean_dec(x_249); +lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; +lean_inc(x_226); +x_254 = l_Lean_Parser_ParserState_restore(x_241, x_240, x_226); +lean_dec(x_240); +x_255 = lean_ctor_get(x_254, 0); +lean_inc(x_255); +x_256 = lean_array_get_size(x_255); +lean_dec(x_255); lean_inc(x_1); -x_251 = l_Lean_Parser_Command_theorem___elambda__1(x_1, x_248); -x_252 = lean_ctor_get(x_251, 3); -lean_inc(x_252); -if (lean_obj_tag(x_252) == 0) -{ -lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; -lean_dec(x_250); -lean_dec(x_1); -x_253 = l_Lean_Parser_mergeOrElseErrors(x_251, x_241, x_220); -x_254 = l_Lean_Parser_mergeOrElseErrors(x_253, x_226, x_220); -lean_dec(x_220); -x_255 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_256 = l_Lean_Parser_ParserState_mkNode(x_254, x_255, x_215); -x_257 = l_Lean_Parser_mergeOrElseErrors(x_256, x_210, x_207); -lean_dec(x_207); -return x_257; -} -else -{ -lean_object* x_258; lean_object* x_259; uint8_t x_260; -x_258 = lean_ctor_get(x_252, 0); +x_257 = l_Lean_Parser_Command_theorem___elambda__1(x_1, x_254); +x_258 = lean_ctor_get(x_257, 3); lean_inc(x_258); -lean_dec(x_252); -x_259 = lean_ctor_get(x_251, 1); -lean_inc(x_259); -x_260 = lean_nat_dec_eq(x_259, x_220); -lean_dec(x_259); -if (x_260 == 0) +if (lean_obj_tag(x_258) == 0) { -lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; +lean_object* x_259; lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; +lean_dec(x_256); +lean_dec(x_1); +x_259 = l_Lean_Parser_mergeOrElseErrors(x_257, x_247, x_226); +x_260 = l_Lean_Parser_mergeOrElseErrors(x_259, x_232, x_226); +lean_dec(x_226); +x_261 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_262 = l_Lean_Parser_ParserState_mkNode(x_260, x_261, x_221); +x_263 = l_Lean_Parser_mergeOrElseErrors(x_262, x_213, x_210); +lean_dec(x_210); +return x_263; +} +else +{ +lean_object* x_264; lean_object* x_265; uint8_t x_266; +x_264 = lean_ctor_get(x_258, 0); +lean_inc(x_264); lean_dec(x_258); -lean_dec(x_250); +x_265 = lean_ctor_get(x_257, 1); +lean_inc(x_265); +x_266 = lean_nat_dec_eq(x_265, x_226); +lean_dec(x_265); +if (x_266 == 0) +{ +lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; +lean_dec(x_264); +lean_dec(x_256); lean_dec(x_1); -x_261 = l_Lean_Parser_mergeOrElseErrors(x_251, x_241, x_220); -x_262 = l_Lean_Parser_mergeOrElseErrors(x_261, x_226, x_220); -lean_dec(x_220); -x_263 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_264 = l_Lean_Parser_ParserState_mkNode(x_262, x_263, x_215); -x_265 = l_Lean_Parser_mergeOrElseErrors(x_264, x_210, x_207); -lean_dec(x_207); -return x_265; +x_267 = l_Lean_Parser_mergeOrElseErrors(x_257, x_247, x_226); +x_268 = l_Lean_Parser_mergeOrElseErrors(x_267, x_232, x_226); +lean_dec(x_226); +x_269 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_270 = l_Lean_Parser_ParserState_mkNode(x_268, x_269, x_221); +x_271 = l_Lean_Parser_mergeOrElseErrors(x_270, x_213, x_210); +lean_dec(x_210); +return x_271; } else { -lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; -lean_inc(x_220); -x_266 = l_Lean_Parser_ParserState_restore(x_251, x_250, x_220); -lean_dec(x_250); -x_267 = lean_ctor_get(x_266, 0); -lean_inc(x_267); -x_268 = lean_array_get_size(x_267); -lean_dec(x_267); +lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; +lean_inc(x_226); +x_272 = l_Lean_Parser_ParserState_restore(x_257, x_256, x_226); +lean_dec(x_256); +x_273 = lean_ctor_get(x_272, 0); +lean_inc(x_273); +x_274 = lean_array_get_size(x_273); +lean_dec(x_273); lean_inc(x_1); -x_269 = l_Lean_Parser_Command_constant___elambda__1(x_1, x_266); -x_270 = lean_ctor_get(x_269, 3); -lean_inc(x_270); -if (lean_obj_tag(x_270) == 0) +x_275 = l_Lean_Parser_Command_constant___elambda__1(x_1, x_272); +x_276 = lean_ctor_get(x_275, 3); +lean_inc(x_276); +if (lean_obj_tag(x_276) == 0) { -lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; -lean_dec(x_268); +lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; +lean_dec(x_274); lean_dec(x_1); -x_271 = l_Lean_Parser_mergeOrElseErrors(x_269, x_258, x_220); -x_272 = l_Lean_Parser_mergeOrElseErrors(x_271, x_241, x_220); -x_273 = l_Lean_Parser_mergeOrElseErrors(x_272, x_226, x_220); -lean_dec(x_220); -x_274 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_275 = l_Lean_Parser_ParserState_mkNode(x_273, x_274, x_215); -x_276 = l_Lean_Parser_mergeOrElseErrors(x_275, x_210, x_207); -lean_dec(x_207); -return x_276; +x_277 = l_Lean_Parser_mergeOrElseErrors(x_275, x_264, x_226); +x_278 = l_Lean_Parser_mergeOrElseErrors(x_277, x_247, x_226); +x_279 = l_Lean_Parser_mergeOrElseErrors(x_278, x_232, x_226); +lean_dec(x_226); +x_280 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_281 = l_Lean_Parser_ParserState_mkNode(x_279, x_280, x_221); +x_282 = l_Lean_Parser_mergeOrElseErrors(x_281, x_213, x_210); +lean_dec(x_210); +return x_282; } else { -lean_object* x_277; lean_object* x_278; uint8_t x_279; -x_277 = lean_ctor_get(x_270, 0); -lean_inc(x_277); -lean_dec(x_270); -x_278 = lean_ctor_get(x_269, 1); -lean_inc(x_278); -x_279 = lean_nat_dec_eq(x_278, x_220); -lean_dec(x_278); -if (x_279 == 0) +lean_object* x_283; lean_object* x_284; uint8_t x_285; +x_283 = lean_ctor_get(x_276, 0); +lean_inc(x_283); +lean_dec(x_276); +x_284 = lean_ctor_get(x_275, 1); +lean_inc(x_284); +x_285 = lean_nat_dec_eq(x_284, x_226); +lean_dec(x_284); +if (x_285 == 0) { -lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; -lean_dec(x_277); -lean_dec(x_268); +lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; +lean_dec(x_283); +lean_dec(x_274); lean_dec(x_1); -x_280 = l_Lean_Parser_mergeOrElseErrors(x_269, x_258, x_220); -x_281 = l_Lean_Parser_mergeOrElseErrors(x_280, x_241, x_220); -x_282 = l_Lean_Parser_mergeOrElseErrors(x_281, x_226, x_220); -lean_dec(x_220); -x_283 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_284 = l_Lean_Parser_ParserState_mkNode(x_282, x_283, x_215); -x_285 = l_Lean_Parser_mergeOrElseErrors(x_284, x_210, x_207); -lean_dec(x_207); -return x_285; +x_286 = l_Lean_Parser_mergeOrElseErrors(x_275, x_264, x_226); +x_287 = l_Lean_Parser_mergeOrElseErrors(x_286, x_247, x_226); +x_288 = l_Lean_Parser_mergeOrElseErrors(x_287, x_232, x_226); +lean_dec(x_226); +x_289 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_290 = l_Lean_Parser_ParserState_mkNode(x_288, x_289, x_221); +x_291 = l_Lean_Parser_mergeOrElseErrors(x_290, x_213, x_210); +lean_dec(x_210); +return x_291; } else { -lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; -lean_inc(x_220); -x_286 = l_Lean_Parser_ParserState_restore(x_269, x_268, x_220); -lean_dec(x_268); -x_287 = lean_ctor_get(x_286, 0); -lean_inc(x_287); -x_288 = lean_array_get_size(x_287); -lean_dec(x_287); +lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; +lean_inc(x_226); +x_292 = l_Lean_Parser_ParserState_restore(x_275, x_274, x_226); +lean_dec(x_274); +x_293 = lean_ctor_get(x_292, 0); +lean_inc(x_293); +x_294 = lean_array_get_size(x_293); +lean_dec(x_293); lean_inc(x_1); -x_289 = l_Lean_Parser_Command_instance___elambda__1(x_1, x_286); -x_290 = lean_ctor_get(x_289, 3); -lean_inc(x_290); -if (lean_obj_tag(x_290) == 0) +x_295 = l_Lean_Parser_Command_instance___elambda__1(x_1, x_292); +x_296 = lean_ctor_get(x_295, 3); +lean_inc(x_296); +if (lean_obj_tag(x_296) == 0) { -lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; -lean_dec(x_288); +lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; +lean_dec(x_294); lean_dec(x_1); -x_291 = l_Lean_Parser_mergeOrElseErrors(x_289, x_277, x_220); -x_292 = l_Lean_Parser_mergeOrElseErrors(x_291, x_258, x_220); -x_293 = l_Lean_Parser_mergeOrElseErrors(x_292, x_241, x_220); -x_294 = l_Lean_Parser_mergeOrElseErrors(x_293, x_226, x_220); -lean_dec(x_220); -x_295 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_296 = l_Lean_Parser_ParserState_mkNode(x_294, x_295, x_215); -x_297 = l_Lean_Parser_mergeOrElseErrors(x_296, x_210, x_207); -lean_dec(x_207); -return x_297; +x_297 = l_Lean_Parser_mergeOrElseErrors(x_295, x_283, x_226); +x_298 = l_Lean_Parser_mergeOrElseErrors(x_297, x_264, x_226); +x_299 = l_Lean_Parser_mergeOrElseErrors(x_298, x_247, x_226); +x_300 = l_Lean_Parser_mergeOrElseErrors(x_299, x_232, x_226); +lean_dec(x_226); +x_301 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_302 = l_Lean_Parser_ParserState_mkNode(x_300, x_301, x_221); +x_303 = l_Lean_Parser_mergeOrElseErrors(x_302, x_213, x_210); +lean_dec(x_210); +return x_303; } else { -lean_object* x_298; lean_object* x_299; uint8_t x_300; -x_298 = lean_ctor_get(x_290, 0); -lean_inc(x_298); -lean_dec(x_290); -x_299 = lean_ctor_get(x_289, 1); -lean_inc(x_299); -x_300 = lean_nat_dec_eq(x_299, x_220); -lean_dec(x_299); -if (x_300 == 0) +lean_object* x_304; lean_object* x_305; uint8_t x_306; +x_304 = lean_ctor_get(x_296, 0); +lean_inc(x_304); +lean_dec(x_296); +x_305 = lean_ctor_get(x_295, 1); +lean_inc(x_305); +x_306 = lean_nat_dec_eq(x_305, x_226); +lean_dec(x_305); +if (x_306 == 0) { -lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; -lean_dec(x_298); -lean_dec(x_288); +lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; +lean_dec(x_304); +lean_dec(x_294); lean_dec(x_1); -x_301 = l_Lean_Parser_mergeOrElseErrors(x_289, x_277, x_220); -x_302 = l_Lean_Parser_mergeOrElseErrors(x_301, x_258, x_220); -x_303 = l_Lean_Parser_mergeOrElseErrors(x_302, x_241, x_220); -x_304 = l_Lean_Parser_mergeOrElseErrors(x_303, x_226, x_220); -lean_dec(x_220); -x_305 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_306 = l_Lean_Parser_ParserState_mkNode(x_304, x_305, x_215); -x_307 = l_Lean_Parser_mergeOrElseErrors(x_306, x_210, x_207); -lean_dec(x_207); -return x_307; +x_307 = l_Lean_Parser_mergeOrElseErrors(x_295, x_283, x_226); +x_308 = l_Lean_Parser_mergeOrElseErrors(x_307, x_264, x_226); +x_309 = l_Lean_Parser_mergeOrElseErrors(x_308, x_247, x_226); +x_310 = l_Lean_Parser_mergeOrElseErrors(x_309, x_232, x_226); +lean_dec(x_226); +x_311 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_312 = l_Lean_Parser_ParserState_mkNode(x_310, x_311, x_221); +x_313 = l_Lean_Parser_mergeOrElseErrors(x_312, x_213, x_210); +lean_dec(x_210); +return x_313; } else { -lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; -lean_inc(x_220); -x_308 = l_Lean_Parser_ParserState_restore(x_289, x_288, x_220); -lean_dec(x_288); -x_309 = lean_ctor_get(x_308, 0); -lean_inc(x_309); -x_310 = lean_array_get_size(x_309); -lean_dec(x_309); +lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; +lean_inc(x_226); +x_314 = l_Lean_Parser_ParserState_restore(x_295, x_294, x_226); +lean_dec(x_294); +x_315 = lean_ctor_get(x_314, 0); +lean_inc(x_315); +x_316 = lean_array_get_size(x_315); +lean_dec(x_315); lean_inc(x_1); -x_311 = l_Lean_Parser_Command_axiom___elambda__1(x_1, x_308); -x_312 = lean_ctor_get(x_311, 3); -lean_inc(x_312); -if (lean_obj_tag(x_312) == 0) +x_317 = l_Lean_Parser_Command_axiom___elambda__1(x_1, x_314); +x_318 = lean_ctor_get(x_317, 3); +lean_inc(x_318); +if (lean_obj_tag(x_318) == 0) { -lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; -lean_dec(x_310); +lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; +lean_dec(x_316); lean_dec(x_1); -x_313 = l_Lean_Parser_mergeOrElseErrors(x_311, x_298, x_220); -x_314 = l_Lean_Parser_mergeOrElseErrors(x_313, x_277, x_220); -x_315 = l_Lean_Parser_mergeOrElseErrors(x_314, x_258, x_220); -x_316 = l_Lean_Parser_mergeOrElseErrors(x_315, x_241, x_220); -x_317 = l_Lean_Parser_mergeOrElseErrors(x_316, x_226, x_220); -lean_dec(x_220); -x_318 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_319 = l_Lean_Parser_ParserState_mkNode(x_317, x_318, x_215); -x_320 = l_Lean_Parser_mergeOrElseErrors(x_319, x_210, x_207); -lean_dec(x_207); -return x_320; +x_319 = l_Lean_Parser_mergeOrElseErrors(x_317, x_304, x_226); +x_320 = l_Lean_Parser_mergeOrElseErrors(x_319, x_283, x_226); +x_321 = l_Lean_Parser_mergeOrElseErrors(x_320, x_264, x_226); +x_322 = l_Lean_Parser_mergeOrElseErrors(x_321, x_247, x_226); +x_323 = l_Lean_Parser_mergeOrElseErrors(x_322, x_232, x_226); +lean_dec(x_226); +x_324 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_325 = l_Lean_Parser_ParserState_mkNode(x_323, x_324, x_221); +x_326 = l_Lean_Parser_mergeOrElseErrors(x_325, x_213, x_210); +lean_dec(x_210); +return x_326; } else { -lean_object* x_321; lean_object* x_322; uint8_t x_323; -x_321 = lean_ctor_get(x_312, 0); -lean_inc(x_321); -lean_dec(x_312); -x_322 = lean_ctor_get(x_311, 1); -lean_inc(x_322); -x_323 = lean_nat_dec_eq(x_322, x_220); -lean_dec(x_322); -if (x_323 == 0) +lean_object* x_327; lean_object* x_328; uint8_t x_329; +x_327 = lean_ctor_get(x_318, 0); +lean_inc(x_327); +lean_dec(x_318); +x_328 = lean_ctor_get(x_317, 1); +lean_inc(x_328); +x_329 = lean_nat_dec_eq(x_328, x_226); +lean_dec(x_328); +if (x_329 == 0) { -lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; -lean_dec(x_321); -lean_dec(x_310); +lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; +lean_dec(x_327); +lean_dec(x_316); lean_dec(x_1); -x_324 = l_Lean_Parser_mergeOrElseErrors(x_311, x_298, x_220); -x_325 = l_Lean_Parser_mergeOrElseErrors(x_324, x_277, x_220); -x_326 = l_Lean_Parser_mergeOrElseErrors(x_325, x_258, x_220); -x_327 = l_Lean_Parser_mergeOrElseErrors(x_326, x_241, x_220); -x_328 = l_Lean_Parser_mergeOrElseErrors(x_327, x_226, x_220); -lean_dec(x_220); -x_329 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_330 = l_Lean_Parser_ParserState_mkNode(x_328, x_329, x_215); -x_331 = l_Lean_Parser_mergeOrElseErrors(x_330, x_210, x_207); -lean_dec(x_207); -return x_331; +x_330 = l_Lean_Parser_mergeOrElseErrors(x_317, x_304, x_226); +x_331 = l_Lean_Parser_mergeOrElseErrors(x_330, x_283, x_226); +x_332 = l_Lean_Parser_mergeOrElseErrors(x_331, x_264, x_226); +x_333 = l_Lean_Parser_mergeOrElseErrors(x_332, x_247, x_226); +x_334 = l_Lean_Parser_mergeOrElseErrors(x_333, x_232, x_226); +lean_dec(x_226); +x_335 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_336 = l_Lean_Parser_ParserState_mkNode(x_334, x_335, x_221); +x_337 = l_Lean_Parser_mergeOrElseErrors(x_336, x_213, x_210); +lean_dec(x_210); +return x_337; } else { -lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; -lean_inc(x_220); -x_332 = l_Lean_Parser_ParserState_restore(x_311, x_310, x_220); -lean_dec(x_310); -x_333 = lean_ctor_get(x_332, 0); -lean_inc(x_333); -x_334 = lean_array_get_size(x_333); -lean_dec(x_333); +lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; +lean_inc(x_226); +x_338 = l_Lean_Parser_ParserState_restore(x_317, x_316, x_226); +lean_dec(x_316); +x_339 = lean_ctor_get(x_338, 0); +lean_inc(x_339); +x_340 = lean_array_get_size(x_339); +lean_dec(x_339); lean_inc(x_1); -x_335 = l_Lean_Parser_Command_example___elambda__1(x_1, x_332); -x_336 = lean_ctor_get(x_335, 3); -lean_inc(x_336); -if (lean_obj_tag(x_336) == 0) +x_341 = l_Lean_Parser_Command_example___elambda__1(x_1, x_338); +x_342 = lean_ctor_get(x_341, 3); +lean_inc(x_342); +if (lean_obj_tag(x_342) == 0) { -lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; -lean_dec(x_334); +lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; +lean_dec(x_340); lean_dec(x_1); -x_337 = l_Lean_Parser_mergeOrElseErrors(x_335, x_321, x_220); -x_338 = l_Lean_Parser_mergeOrElseErrors(x_337, x_298, x_220); -x_339 = l_Lean_Parser_mergeOrElseErrors(x_338, x_277, x_220); -x_340 = l_Lean_Parser_mergeOrElseErrors(x_339, x_258, x_220); -x_341 = l_Lean_Parser_mergeOrElseErrors(x_340, x_241, x_220); -x_342 = l_Lean_Parser_mergeOrElseErrors(x_341, x_226, x_220); -lean_dec(x_220); -x_343 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_344 = l_Lean_Parser_ParserState_mkNode(x_342, x_343, x_215); -x_345 = l_Lean_Parser_mergeOrElseErrors(x_344, x_210, x_207); -lean_dec(x_207); -return x_345; +x_343 = l_Lean_Parser_mergeOrElseErrors(x_341, x_327, x_226); +x_344 = l_Lean_Parser_mergeOrElseErrors(x_343, x_304, x_226); +x_345 = l_Lean_Parser_mergeOrElseErrors(x_344, x_283, x_226); +x_346 = l_Lean_Parser_mergeOrElseErrors(x_345, x_264, x_226); +x_347 = l_Lean_Parser_mergeOrElseErrors(x_346, x_247, x_226); +x_348 = l_Lean_Parser_mergeOrElseErrors(x_347, x_232, x_226); +lean_dec(x_226); +x_349 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_350 = l_Lean_Parser_ParserState_mkNode(x_348, x_349, x_221); +x_351 = l_Lean_Parser_mergeOrElseErrors(x_350, x_213, x_210); +lean_dec(x_210); +return x_351; } else { -lean_object* x_346; lean_object* x_347; uint8_t x_348; -x_346 = lean_ctor_get(x_336, 0); -lean_inc(x_346); -lean_dec(x_336); -x_347 = lean_ctor_get(x_335, 1); -lean_inc(x_347); -x_348 = lean_nat_dec_eq(x_347, x_220); -lean_dec(x_347); -if (x_348 == 0) +lean_object* x_352; lean_object* x_353; uint8_t x_354; +x_352 = lean_ctor_get(x_342, 0); +lean_inc(x_352); +lean_dec(x_342); +x_353 = lean_ctor_get(x_341, 1); +lean_inc(x_353); +x_354 = lean_nat_dec_eq(x_353, x_226); +lean_dec(x_353); +if (x_354 == 0) { -lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; -lean_dec(x_346); -lean_dec(x_334); +lean_object* x_355; lean_object* x_356; lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; lean_object* x_363; +lean_dec(x_352); +lean_dec(x_340); lean_dec(x_1); -x_349 = l_Lean_Parser_mergeOrElseErrors(x_335, x_321, x_220); -x_350 = l_Lean_Parser_mergeOrElseErrors(x_349, x_298, x_220); -x_351 = l_Lean_Parser_mergeOrElseErrors(x_350, x_277, x_220); -x_352 = l_Lean_Parser_mergeOrElseErrors(x_351, x_258, x_220); -x_353 = l_Lean_Parser_mergeOrElseErrors(x_352, x_241, x_220); -x_354 = l_Lean_Parser_mergeOrElseErrors(x_353, x_226, x_220); -lean_dec(x_220); -x_355 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_356 = l_Lean_Parser_ParserState_mkNode(x_354, x_355, x_215); -x_357 = l_Lean_Parser_mergeOrElseErrors(x_356, x_210, x_207); -lean_dec(x_207); -return x_357; +x_355 = l_Lean_Parser_mergeOrElseErrors(x_341, x_327, x_226); +x_356 = l_Lean_Parser_mergeOrElseErrors(x_355, x_304, x_226); +x_357 = l_Lean_Parser_mergeOrElseErrors(x_356, x_283, x_226); +x_358 = l_Lean_Parser_mergeOrElseErrors(x_357, x_264, x_226); +x_359 = l_Lean_Parser_mergeOrElseErrors(x_358, x_247, x_226); +x_360 = l_Lean_Parser_mergeOrElseErrors(x_359, x_232, x_226); +lean_dec(x_226); +x_361 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_362 = l_Lean_Parser_ParserState_mkNode(x_360, x_361, x_221); +x_363 = l_Lean_Parser_mergeOrElseErrors(x_362, x_213, x_210); +lean_dec(x_210); +return x_363; } else { -lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; -lean_inc(x_220); -x_358 = l_Lean_Parser_ParserState_restore(x_335, x_334, x_220); -lean_dec(x_334); -x_359 = lean_ctor_get(x_358, 0); -lean_inc(x_359); -x_360 = lean_array_get_size(x_359); -lean_dec(x_359); +lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; +lean_inc(x_226); +x_364 = l_Lean_Parser_ParserState_restore(x_341, x_340, x_226); +lean_dec(x_340); +x_365 = lean_ctor_get(x_364, 0); +lean_inc(x_365); +x_366 = lean_array_get_size(x_365); +lean_dec(x_365); lean_inc(x_1); -x_361 = l_Lean_Parser_Command_inductive___elambda__1(x_1, x_358); -x_362 = lean_ctor_get(x_361, 3); -lean_inc(x_362); -if (lean_obj_tag(x_362) == 0) +x_367 = l_Lean_Parser_Command_inductive___elambda__1(x_1, x_364); +x_368 = lean_ctor_get(x_367, 3); +lean_inc(x_368); +if (lean_obj_tag(x_368) == 0) { -lean_object* x_363; lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; -lean_dec(x_360); +lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_object* x_376; lean_object* x_377; lean_object* x_378; +lean_dec(x_366); lean_dec(x_1); -x_363 = l_Lean_Parser_mergeOrElseErrors(x_361, x_346, x_220); -x_364 = l_Lean_Parser_mergeOrElseErrors(x_363, x_321, x_220); -x_365 = l_Lean_Parser_mergeOrElseErrors(x_364, x_298, x_220); -x_366 = l_Lean_Parser_mergeOrElseErrors(x_365, x_277, x_220); -x_367 = l_Lean_Parser_mergeOrElseErrors(x_366, x_258, x_220); -x_368 = l_Lean_Parser_mergeOrElseErrors(x_367, x_241, x_220); -x_369 = l_Lean_Parser_mergeOrElseErrors(x_368, x_226, x_220); -lean_dec(x_220); -x_370 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_371 = l_Lean_Parser_ParserState_mkNode(x_369, x_370, x_215); -x_372 = l_Lean_Parser_mergeOrElseErrors(x_371, x_210, x_207); -lean_dec(x_207); -return x_372; +x_369 = l_Lean_Parser_mergeOrElseErrors(x_367, x_352, x_226); +x_370 = l_Lean_Parser_mergeOrElseErrors(x_369, x_327, x_226); +x_371 = l_Lean_Parser_mergeOrElseErrors(x_370, x_304, x_226); +x_372 = l_Lean_Parser_mergeOrElseErrors(x_371, x_283, x_226); +x_373 = l_Lean_Parser_mergeOrElseErrors(x_372, x_264, x_226); +x_374 = l_Lean_Parser_mergeOrElseErrors(x_373, x_247, x_226); +x_375 = l_Lean_Parser_mergeOrElseErrors(x_374, x_232, x_226); +lean_dec(x_226); +x_376 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_377 = l_Lean_Parser_ParserState_mkNode(x_375, x_376, x_221); +x_378 = l_Lean_Parser_mergeOrElseErrors(x_377, x_213, x_210); +lean_dec(x_210); +return x_378; } else { -lean_object* x_373; lean_object* x_374; uint8_t x_375; -x_373 = lean_ctor_get(x_362, 0); -lean_inc(x_373); -lean_dec(x_362); -x_374 = lean_ctor_get(x_361, 1); -lean_inc(x_374); -x_375 = lean_nat_dec_eq(x_374, x_220); -lean_dec(x_374); -if (x_375 == 0) +lean_object* x_379; lean_object* x_380; uint8_t x_381; +x_379 = lean_ctor_get(x_368, 0); +lean_inc(x_379); +lean_dec(x_368); +x_380 = lean_ctor_get(x_367, 1); +lean_inc(x_380); +x_381 = lean_nat_dec_eq(x_380, x_226); +lean_dec(x_380); +if (x_381 == 0) { -lean_object* x_376; lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; -lean_dec(x_373); -lean_dec(x_360); +lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; lean_object* x_391; +lean_dec(x_379); +lean_dec(x_366); lean_dec(x_1); -x_376 = l_Lean_Parser_mergeOrElseErrors(x_361, x_346, x_220); -x_377 = l_Lean_Parser_mergeOrElseErrors(x_376, x_321, x_220); -x_378 = l_Lean_Parser_mergeOrElseErrors(x_377, x_298, x_220); -x_379 = l_Lean_Parser_mergeOrElseErrors(x_378, x_277, x_220); -x_380 = l_Lean_Parser_mergeOrElseErrors(x_379, x_258, x_220); -x_381 = l_Lean_Parser_mergeOrElseErrors(x_380, x_241, x_220); -x_382 = l_Lean_Parser_mergeOrElseErrors(x_381, x_226, x_220); -lean_dec(x_220); -x_383 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_384 = l_Lean_Parser_ParserState_mkNode(x_382, x_383, x_215); -x_385 = l_Lean_Parser_mergeOrElseErrors(x_384, x_210, x_207); -lean_dec(x_207); -return x_385; +x_382 = l_Lean_Parser_mergeOrElseErrors(x_367, x_352, x_226); +x_383 = l_Lean_Parser_mergeOrElseErrors(x_382, x_327, x_226); +x_384 = l_Lean_Parser_mergeOrElseErrors(x_383, x_304, x_226); +x_385 = l_Lean_Parser_mergeOrElseErrors(x_384, x_283, x_226); +x_386 = l_Lean_Parser_mergeOrElseErrors(x_385, x_264, x_226); +x_387 = l_Lean_Parser_mergeOrElseErrors(x_386, x_247, x_226); +x_388 = l_Lean_Parser_mergeOrElseErrors(x_387, x_232, x_226); +lean_dec(x_226); +x_389 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_390 = l_Lean_Parser_ParserState_mkNode(x_388, x_389, x_221); +x_391 = l_Lean_Parser_mergeOrElseErrors(x_390, x_213, x_210); +lean_dec(x_210); +return x_391; } else { -lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; -lean_inc(x_220); -x_386 = l_Lean_Parser_ParserState_restore(x_361, x_360, x_220); -lean_dec(x_360); -x_387 = lean_ctor_get(x_386, 0); -lean_inc(x_387); -x_388 = lean_array_get_size(x_387); -lean_dec(x_387); +lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; +lean_inc(x_226); +x_392 = l_Lean_Parser_ParserState_restore(x_367, x_366, x_226); +lean_dec(x_366); +x_393 = lean_ctor_get(x_392, 0); +lean_inc(x_393); +x_394 = lean_array_get_size(x_393); +lean_dec(x_393); lean_inc(x_1); -x_389 = l_Lean_Parser_Command_classInductive___elambda__1(x_1, x_386); -x_390 = lean_ctor_get(x_389, 3); -lean_inc(x_390); -if (lean_obj_tag(x_390) == 0) +x_395 = l_Lean_Parser_Command_classInductive___elambda__1(x_1, x_392); +x_396 = lean_ctor_get(x_395, 3); +lean_inc(x_396); +if (lean_obj_tag(x_396) == 0) { -lean_object* x_391; lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; -lean_dec(x_388); +lean_object* x_397; lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; lean_object* x_402; lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; lean_object* x_407; +lean_dec(x_394); lean_dec(x_1); -x_391 = l_Lean_Parser_mergeOrElseErrors(x_389, x_373, x_220); -x_392 = l_Lean_Parser_mergeOrElseErrors(x_391, x_346, x_220); -x_393 = l_Lean_Parser_mergeOrElseErrors(x_392, x_321, x_220); -x_394 = l_Lean_Parser_mergeOrElseErrors(x_393, x_298, x_220); -x_395 = l_Lean_Parser_mergeOrElseErrors(x_394, x_277, x_220); -x_396 = l_Lean_Parser_mergeOrElseErrors(x_395, x_258, x_220); -x_397 = l_Lean_Parser_mergeOrElseErrors(x_396, x_241, x_220); -x_398 = l_Lean_Parser_mergeOrElseErrors(x_397, x_226, x_220); -lean_dec(x_220); -x_399 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_400 = l_Lean_Parser_ParserState_mkNode(x_398, x_399, x_215); -x_401 = l_Lean_Parser_mergeOrElseErrors(x_400, x_210, x_207); -lean_dec(x_207); -return x_401; +x_397 = l_Lean_Parser_mergeOrElseErrors(x_395, x_379, x_226); +x_398 = l_Lean_Parser_mergeOrElseErrors(x_397, x_352, x_226); +x_399 = l_Lean_Parser_mergeOrElseErrors(x_398, x_327, x_226); +x_400 = l_Lean_Parser_mergeOrElseErrors(x_399, x_304, x_226); +x_401 = l_Lean_Parser_mergeOrElseErrors(x_400, x_283, x_226); +x_402 = l_Lean_Parser_mergeOrElseErrors(x_401, x_264, x_226); +x_403 = l_Lean_Parser_mergeOrElseErrors(x_402, x_247, x_226); +x_404 = l_Lean_Parser_mergeOrElseErrors(x_403, x_232, x_226); +lean_dec(x_226); +x_405 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_406 = l_Lean_Parser_ParserState_mkNode(x_404, x_405, x_221); +x_407 = l_Lean_Parser_mergeOrElseErrors(x_406, x_213, x_210); +lean_dec(x_210); +return x_407; } else { -lean_object* x_402; lean_object* x_403; uint8_t x_404; -x_402 = lean_ctor_get(x_390, 0); -lean_inc(x_402); -lean_dec(x_390); -x_403 = lean_ctor_get(x_389, 1); -lean_inc(x_403); -x_404 = lean_nat_dec_eq(x_403, x_220); -lean_dec(x_403); -if (x_404 == 0) +lean_object* x_408; lean_object* x_409; uint8_t x_410; +x_408 = lean_ctor_get(x_396, 0); +lean_inc(x_408); +lean_dec(x_396); +x_409 = lean_ctor_get(x_395, 1); +lean_inc(x_409); +x_410 = lean_nat_dec_eq(x_409, x_226); +lean_dec(x_409); +if (x_410 == 0) { -lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; lean_object* x_413; lean_object* x_414; lean_object* x_415; -lean_dec(x_402); -lean_dec(x_388); +lean_object* x_411; lean_object* x_412; lean_object* x_413; lean_object* x_414; lean_object* x_415; lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; lean_object* x_421; +lean_dec(x_408); +lean_dec(x_394); lean_dec(x_1); -x_405 = l_Lean_Parser_mergeOrElseErrors(x_389, x_373, x_220); -x_406 = l_Lean_Parser_mergeOrElseErrors(x_405, x_346, x_220); -x_407 = l_Lean_Parser_mergeOrElseErrors(x_406, x_321, x_220); -x_408 = l_Lean_Parser_mergeOrElseErrors(x_407, x_298, x_220); -x_409 = l_Lean_Parser_mergeOrElseErrors(x_408, x_277, x_220); -x_410 = l_Lean_Parser_mergeOrElseErrors(x_409, x_258, x_220); -x_411 = l_Lean_Parser_mergeOrElseErrors(x_410, x_241, x_220); -x_412 = l_Lean_Parser_mergeOrElseErrors(x_411, x_226, x_220); -lean_dec(x_220); -x_413 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_414 = l_Lean_Parser_ParserState_mkNode(x_412, x_413, x_215); -x_415 = l_Lean_Parser_mergeOrElseErrors(x_414, x_210, x_207); -lean_dec(x_207); -return x_415; +x_411 = l_Lean_Parser_mergeOrElseErrors(x_395, x_379, x_226); +x_412 = l_Lean_Parser_mergeOrElseErrors(x_411, x_352, x_226); +x_413 = l_Lean_Parser_mergeOrElseErrors(x_412, x_327, x_226); +x_414 = l_Lean_Parser_mergeOrElseErrors(x_413, x_304, x_226); +x_415 = l_Lean_Parser_mergeOrElseErrors(x_414, x_283, x_226); +x_416 = l_Lean_Parser_mergeOrElseErrors(x_415, x_264, x_226); +x_417 = l_Lean_Parser_mergeOrElseErrors(x_416, x_247, x_226); +x_418 = l_Lean_Parser_mergeOrElseErrors(x_417, x_232, x_226); +lean_dec(x_226); +x_419 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_420 = l_Lean_Parser_ParserState_mkNode(x_418, x_419, x_221); +x_421 = l_Lean_Parser_mergeOrElseErrors(x_420, x_213, x_210); +lean_dec(x_210); +return x_421; } else { -lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; -lean_inc(x_220); -x_416 = l_Lean_Parser_ParserState_restore(x_389, x_388, x_220); -lean_dec(x_388); -x_417 = l_Lean_Parser_Command_structure___elambda__1(x_1, x_416); -x_418 = l_Lean_Parser_mergeOrElseErrors(x_417, x_402, x_220); -x_419 = l_Lean_Parser_mergeOrElseErrors(x_418, x_373, x_220); -x_420 = l_Lean_Parser_mergeOrElseErrors(x_419, x_346, x_220); -x_421 = l_Lean_Parser_mergeOrElseErrors(x_420, x_321, x_220); -x_422 = l_Lean_Parser_mergeOrElseErrors(x_421, x_298, x_220); -x_423 = l_Lean_Parser_mergeOrElseErrors(x_422, x_277, x_220); -x_424 = l_Lean_Parser_mergeOrElseErrors(x_423, x_258, x_220); -x_425 = l_Lean_Parser_mergeOrElseErrors(x_424, x_241, x_220); -x_426 = l_Lean_Parser_mergeOrElseErrors(x_425, x_226, x_220); -lean_dec(x_220); -x_427 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_428 = l_Lean_Parser_ParserState_mkNode(x_426, x_427, x_215); -x_429 = l_Lean_Parser_mergeOrElseErrors(x_428, x_210, x_207); -lean_dec(x_207); -return x_429; +lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; lean_object* x_430; lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; +lean_inc(x_226); +x_422 = l_Lean_Parser_ParserState_restore(x_395, x_394, x_226); +lean_dec(x_394); +x_423 = l_Lean_Parser_Command_structure___elambda__1(x_1, x_422); +x_424 = l_Lean_Parser_mergeOrElseErrors(x_423, x_408, x_226); +x_425 = l_Lean_Parser_mergeOrElseErrors(x_424, x_379, x_226); +x_426 = l_Lean_Parser_mergeOrElseErrors(x_425, x_352, x_226); +x_427 = l_Lean_Parser_mergeOrElseErrors(x_426, x_327, x_226); +x_428 = l_Lean_Parser_mergeOrElseErrors(x_427, x_304, x_226); +x_429 = l_Lean_Parser_mergeOrElseErrors(x_428, x_283, x_226); +x_430 = l_Lean_Parser_mergeOrElseErrors(x_429, x_264, x_226); +x_431 = l_Lean_Parser_mergeOrElseErrors(x_430, x_247, x_226); +x_432 = l_Lean_Parser_mergeOrElseErrors(x_431, x_232, x_226); +lean_dec(x_226); +x_433 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_434 = l_Lean_Parser_ParserState_mkNode(x_432, x_433, x_221); +x_435 = l_Lean_Parser_mergeOrElseErrors(x_434, x_213, x_210); +lean_dec(x_210); +return x_435; } } } @@ -21318,14 +22771,24 @@ return x_429; } else { -lean_object* x_430; lean_object* x_431; lean_object* x_432; -lean_dec(x_217); +lean_object* x_436; lean_object* x_437; lean_object* x_438; +lean_dec(x_223); lean_dec(x_1); -x_430 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; -x_431 = l_Lean_Parser_ParserState_mkNode(x_216, x_430, x_215); -x_432 = l_Lean_Parser_mergeOrElseErrors(x_431, x_210, x_207); -lean_dec(x_207); -return x_432; +x_436 = l_Lean_Parser_Command_declaration___elambda__1___closed__2; +x_437 = l_Lean_Parser_ParserState_mkNode(x_222, x_436, x_221); +x_438 = l_Lean_Parser_mergeOrElseErrors(x_437, x_213, x_210); +lean_dec(x_210); +return x_438; +} +} +else +{ +lean_object* x_439; +lean_dec(x_219); +lean_dec(x_1); +x_439 = l_Lean_Parser_mergeOrElseErrors(x_218, x_213, x_210); +lean_dec(x_210); +return x_439; } } } @@ -21467,16 +22930,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_declaration___closed__12() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_declaration___closed__11; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_declaration___closed__13() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declaration___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_declaration___closed__11; +x_3 = l_Lean_Parser_Command_declaration___closed__12; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_declaration___closed__13() { +lean_object* _init_l_Lean_Parser_Command_declaration___closed__14() { _start: { lean_object* x_1; @@ -21484,12 +22957,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declaration___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_declaration___closed__14() { +lean_object* _init_l_Lean_Parser_Command_declaration___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declaration___closed__12; -x_2 = l_Lean_Parser_Command_declaration___closed__13; +x_1 = l_Lean_Parser_Command_declaration___closed__13; +x_2 = l_Lean_Parser_Command_declaration___closed__14; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -21500,7 +22973,7 @@ lean_object* _init_l_Lean_Parser_Command_declaration() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_declaration___closed__14; +x_1 = l_Lean_Parser_Command_declaration___closed__15; return x_1; } } @@ -21616,316 +23089,347 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_33 = lean_ctor_get(x_2, 1); -lean_inc(x_33); -lean_inc(x_1); -x_34 = l_Lean_Parser_tokenFn(x_1, x_2); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_36; lean_object* x_37; -x_36 = lean_ctor_get(x_34, 0); -lean_inc(x_36); -x_37 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_36); -lean_dec(x_36); -if (lean_obj_tag(x_37) == 2) -{ -lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_38 = lean_ctor_get(x_37, 1); -lean_inc(x_38); -lean_dec(x_37); -x_39 = l_Lean_Parser_Command_section___elambda__1___closed__6; -x_40 = lean_string_dec_eq(x_38, x_39); -lean_dec(x_38); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; -x_41 = l_Lean_Parser_Command_section___elambda__1___closed__9; -x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_41, x_33); -x_8 = x_42; -goto block_32; -} -else -{ -lean_dec(x_33); -x_8 = x_34; -goto block_32; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_37); -x_43 = l_Lean_Parser_Command_section___elambda__1___closed__9; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_43, x_33); -x_8 = x_44; -goto block_32; -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_35); -x_45 = l_Lean_Parser_Command_section___elambda__1___closed__9; -x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_45, x_33); -x_8 = x_46; -goto block_32; -} -block_32: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); -x_17 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; uint8_t x_20; -lean_dec(x_14); -x_19 = lean_ctor_get(x_13, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_12); -lean_dec(x_19); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_12); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_13, x_21, x_11); -x_23 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -x_28 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_30 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_8, x_30, x_7); -return x_31; -} -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_2, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_2, 1); -lean_inc(x_49); +x_36 = lean_ctor_get(x_7, 1); +lean_inc(x_36); lean_inc(x_1); -x_50 = lean_apply_2(x_4, x_1, x_2); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +x_37 = l_Lean_Parser_tokenFn(x_1, x_7); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) { -lean_dec(x_49); -lean_dec(x_48); -lean_dec(x_1); -return x_50; +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_37, 0); +lean_inc(x_39); +x_40 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_39); +lean_dec(x_39); +if (lean_obj_tag(x_40) == 2) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +lean_dec(x_40); +x_42 = l_Lean_Parser_Command_section___elambda__1___closed__6; +x_43 = lean_string_dec_eq(x_41, x_42); +lean_dec(x_41); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_44, x_36); +x_11 = x_45; +goto block_35; } else { -lean_object* x_52; lean_object* x_53; uint8_t x_54; -x_52 = lean_ctor_get(x_51, 0); +lean_dec(x_36); +x_11 = x_37; +goto block_35; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_40); +x_46 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_46, x_36); +x_11 = x_47; +goto block_35; +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_38); +x_48 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_48, x_36); +x_11 = x_49; +goto block_35; +} +block_35: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; uint8_t x_23; +lean_dec(x_17); +x_22 = lean_ctor_get(x_16, 1); +lean_inc(x_22); +x_23 = lean_nat_dec_eq(x_22, x_15); +lean_dec(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_15); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_16, x_24, x_14); +x_26 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_28 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_14); +x_31 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_12); +lean_dec(x_1); +x_33 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_11, x_33, x_10); +return x_34; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_2, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_2, 1); lean_inc(x_52); -lean_dec(x_51); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -x_54 = lean_nat_dec_eq(x_53, x_49); -lean_dec(x_53); -if (x_54 == 0) +lean_inc(x_1); +x_53 = lean_apply_2(x_4, x_1, x_2); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { lean_dec(x_52); -lean_dec(x_49); -lean_dec(x_48); +lean_dec(x_51); lean_dec(x_1); -return x_50; +return x_53; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_87; lean_object* x_88; -lean_inc(x_49); -x_55 = l_Lean_Parser_ParserState_restore(x_50, x_48, x_49); -lean_dec(x_48); -x_56 = lean_ctor_get(x_55, 0); +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); lean_inc(x_56); -x_57 = lean_array_get_size(x_56); +x_57 = lean_nat_dec_eq(x_56, x_52); lean_dec(x_56); +if (x_57 == 0) +{ +lean_dec(x_55); +lean_dec(x_52); +lean_dec(x_51); +lean_dec(x_1); +return x_53; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_inc(x_52); +x_58 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +lean_dec(x_51); +x_59 = lean_unsigned_to_nat(1024u); +x_60 = l_Lean_Parser_checkPrecFn(x_59, x_1, x_58); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = lean_array_get_size(x_62); +lean_dec(x_62); +x_93 = lean_ctor_get(x_60, 1); +lean_inc(x_93); lean_inc(x_1); -x_87 = l_Lean_Parser_tokenFn(x_1, x_55); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; -x_89 = lean_ctor_get(x_87, 0); -lean_inc(x_89); -x_90 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_89); -lean_dec(x_89); -if (lean_obj_tag(x_90) == 2) -{ -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 1); -lean_inc(x_91); -lean_dec(x_90); -x_92 = l_Lean_Parser_Command_section___elambda__1___closed__6; -x_93 = lean_string_dec_eq(x_91, x_92); -lean_dec(x_91); -if (x_93 == 0) -{ -lean_object* x_94; lean_object* x_95; -x_94 = l_Lean_Parser_Command_section___elambda__1___closed__9; -lean_inc(x_49); -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_94, x_49); -x_58 = x_95; -goto block_86; -} -else -{ -x_58 = x_87; -goto block_86; -} -} -else +x_94 = l_Lean_Parser_tokenFn(x_1, x_60); +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) { lean_object* x_96; lean_object* x_97; -lean_dec(x_90); -x_96 = l_Lean_Parser_Command_section___elambda__1___closed__9; -lean_inc(x_49); -x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_96, x_49); -x_58 = x_97; -goto block_86; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +x_97 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_96); +lean_dec(x_96); +if (lean_obj_tag(x_97) == 2) +{ +lean_object* x_98; lean_object* x_99; uint8_t x_100; +x_98 = lean_ctor_get(x_97, 1); +lean_inc(x_98); +lean_dec(x_97); +x_99 = l_Lean_Parser_Command_section___elambda__1___closed__6; +x_100 = lean_string_dec_eq(x_98, x_99); +lean_dec(x_98); +if (x_100 == 0) +{ +lean_object* x_101; lean_object* x_102; +x_101 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_101, x_93); +x_64 = x_102; +goto block_92; +} +else +{ +lean_dec(x_93); +x_64 = x_94; +goto block_92; } } else { -lean_object* x_98; lean_object* x_99; -lean_dec(x_88); -x_98 = l_Lean_Parser_Command_section___elambda__1___closed__9; -lean_inc(x_49); -x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_98, x_49); -x_58 = x_99; -goto block_86; +lean_object* x_103; lean_object* x_104; +lean_dec(x_97); +x_103 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_103, x_93); +x_64 = x_104; +goto block_92; } -block_86: -{ -lean_object* x_59; -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); -lean_dec(x_60); -x_62 = lean_ctor_get(x_58, 1); -lean_inc(x_62); -x_63 = l_Lean_Parser_ident___elambda__1(x_1, x_58); -x_64 = lean_ctor_get(x_63, 3); -lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_62); -x_65 = l_Lean_nullKind; -x_66 = l_Lean_Parser_ParserState_mkNode(x_63, x_65, x_61); -x_67 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_57); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_52, x_49); -lean_dec(x_49); -return x_69; } else { -lean_object* x_70; uint8_t x_71; -lean_dec(x_64); -x_70 = lean_ctor_get(x_63, 1); +lean_object* x_105; lean_object* x_106; +lean_dec(x_95); +x_105 = l_Lean_Parser_Command_section___elambda__1___closed__9; +x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_105, x_93); +x_64 = x_106; +goto block_92; +} +block_92: +{ +lean_object* x_65; +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_66 = lean_ctor_get(x_64, 0); +lean_inc(x_66); +x_67 = lean_array_get_size(x_66); +lean_dec(x_66); +x_68 = lean_ctor_get(x_64, 1); +lean_inc(x_68); +x_69 = l_Lean_Parser_ident___elambda__1(x_1, x_64); +x_70 = lean_ctor_get(x_69, 3); lean_inc(x_70); -x_71 = lean_nat_dec_eq(x_70, x_62); -lean_dec(x_70); -if (x_71 == 0) +if (lean_obj_tag(x_70) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_62); -x_72 = l_Lean_nullKind; -x_73 = l_Lean_Parser_ParserState_mkNode(x_63, x_72, x_61); -x_74 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_75 = l_Lean_Parser_ParserState_mkNode(x_73, x_74, x_57); -x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_52, x_49); -lean_dec(x_49); -return x_76; +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_dec(x_68); +x_71 = l_Lean_nullKind; +x_72 = l_Lean_Parser_ParserState_mkNode(x_69, x_71, x_67); +x_73 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_73, x_63); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_55, x_52); +lean_dec(x_52); +return x_75; } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_77 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); +lean_object* x_76; uint8_t x_77; +lean_dec(x_70); +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +x_77 = lean_nat_dec_eq(x_76, x_68); +lean_dec(x_76); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_dec(x_68); x_78 = l_Lean_nullKind; -x_79 = l_Lean_Parser_ParserState_mkNode(x_77, x_78, x_61); +x_79 = l_Lean_Parser_ParserState_mkNode(x_69, x_78, x_67); x_80 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_57); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_52, x_49); -lean_dec(x_49); +x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_63); +x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_55, x_52); +lean_dec(x_52); return x_82; } +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_83 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); +x_84 = l_Lean_nullKind; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_67); +x_86 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_63); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_55, x_52); +lean_dec(x_52); +return x_88; +} } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_59); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_65); lean_dec(x_1); -x_83 = l_Lean_Parser_Command_section___elambda__1___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_58, x_83, x_57); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_52, x_49); -lean_dec(x_49); -return x_85; +x_89 = l_Lean_Parser_Command_section___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_64, x_89, x_63); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_55, x_52); +lean_dec(x_52); +return x_91; } } } +else +{ +lean_object* x_107; +lean_dec(x_61); +lean_dec(x_1); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_60, x_55, x_52); +lean_dec(x_52); +return x_107; +} +} } } } @@ -21973,16 +23477,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_section___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_section___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_section___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_section___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_section___closed__4; +x_3 = l_Lean_Parser_Command_section___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_section___closed__6() { +lean_object* _init_l_Lean_Parser_Command_section___closed__7() { _start: { lean_object* x_1; @@ -21990,12 +23504,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_section___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_section___closed__7() { +lean_object* _init_l_Lean_Parser_Command_section___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_section___closed__5; -x_2 = l_Lean_Parser_Command_section___closed__6; +x_1 = l_Lean_Parser_Command_section___closed__6; +x_2 = l_Lean_Parser_Command_section___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -22006,7 +23520,7 @@ lean_object* _init_l_Lean_Parser_Command_section() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_section___closed__7; +x_1 = l_Lean_Parser_Command_section___closed__8; return x_1; } } @@ -22122,224 +23636,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Command_namespace___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Command_namespace___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Command_namespace___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Command_namespace___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_ident___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Command_namespace___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_ident___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_Command_namespace___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -22378,16 +23923,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_namespace___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_namespace___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_namespace___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_namespace___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_namespace___closed__3; +x_3 = l_Lean_Parser_Command_namespace___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_namespace___closed__5() { +lean_object* _init_l_Lean_Parser_Command_namespace___closed__6() { _start: { lean_object* x_1; @@ -22395,12 +23950,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_namespace___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_namespace___closed__6() { +lean_object* _init_l_Lean_Parser_Command_namespace___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_namespace___closed__4; -x_2 = l_Lean_Parser_Command_namespace___closed__5; +x_1 = l_Lean_Parser_Command_namespace___closed__5; +x_2 = l_Lean_Parser_Command_namespace___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -22411,7 +23966,7 @@ lean_object* _init_l_Lean_Parser_Command_namespace() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_namespace___closed__6; +x_1 = l_Lean_Parser_Command_namespace___closed__7; return x_1; } } @@ -22519,316 +24074,347 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_33 = lean_ctor_get(x_2, 1); -lean_inc(x_33); -lean_inc(x_1); -x_34 = l_Lean_Parser_tokenFn(x_1, x_2); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_36; lean_object* x_37; -x_36 = lean_ctor_get(x_34, 0); -lean_inc(x_36); -x_37 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_36); -lean_dec(x_36); -if (lean_obj_tag(x_37) == 2) -{ -lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_38 = lean_ctor_get(x_37, 1); -lean_inc(x_38); -lean_dec(x_37); -x_39 = l_Lean_Parser_Command_end___elambda__1___closed__5; -x_40 = lean_string_dec_eq(x_38, x_39); -lean_dec(x_38); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; -x_41 = l_Lean_Parser_Command_end___elambda__1___closed__8; -x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_41, x_33); -x_8 = x_42; -goto block_32; -} -else -{ -lean_dec(x_33); -x_8 = x_34; -goto block_32; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_37); -x_43 = l_Lean_Parser_Command_end___elambda__1___closed__8; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_43, x_33); -x_8 = x_44; -goto block_32; -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_35); -x_45 = l_Lean_Parser_Command_end___elambda__1___closed__8; -x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_34, x_45, x_33); -x_8 = x_46; -goto block_32; -} -block_32: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); -x_17 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; uint8_t x_20; -lean_dec(x_14); -x_19 = lean_ctor_get(x_13, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_12); -lean_dec(x_19); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_12); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_13, x_21, x_11); -x_23 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -x_28 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_30 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkNode(x_8, x_30, x_7); -return x_31; -} -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_2, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_2, 1); -lean_inc(x_49); +x_36 = lean_ctor_get(x_7, 1); +lean_inc(x_36); lean_inc(x_1); -x_50 = lean_apply_2(x_4, x_1, x_2); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +x_37 = l_Lean_Parser_tokenFn(x_1, x_7); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) { -lean_dec(x_49); -lean_dec(x_48); -lean_dec(x_1); -return x_50; +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_37, 0); +lean_inc(x_39); +x_40 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_39); +lean_dec(x_39); +if (lean_obj_tag(x_40) == 2) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +lean_dec(x_40); +x_42 = l_Lean_Parser_Command_end___elambda__1___closed__5; +x_43 = lean_string_dec_eq(x_41, x_42); +lean_dec(x_41); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_44, x_36); +x_11 = x_45; +goto block_35; } else { -lean_object* x_52; lean_object* x_53; uint8_t x_54; -x_52 = lean_ctor_get(x_51, 0); +lean_dec(x_36); +x_11 = x_37; +goto block_35; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_40); +x_46 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_46, x_36); +x_11 = x_47; +goto block_35; +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_38); +x_48 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_48, x_36); +x_11 = x_49; +goto block_35; +} +block_35: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; uint8_t x_23; +lean_dec(x_17); +x_22 = lean_ctor_get(x_16, 1); +lean_inc(x_22); +x_23 = lean_nat_dec_eq(x_22, x_15); +lean_dec(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_15); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_16, x_24, x_14); +x_26 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_28 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_29 = l_Lean_nullKind; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_14); +x_31 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_12); +lean_dec(x_1); +x_33 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_11, x_33, x_10); +return x_34; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_2, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_2, 1); lean_inc(x_52); -lean_dec(x_51); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -x_54 = lean_nat_dec_eq(x_53, x_49); -lean_dec(x_53); -if (x_54 == 0) +lean_inc(x_1); +x_53 = lean_apply_2(x_4, x_1, x_2); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { lean_dec(x_52); -lean_dec(x_49); -lean_dec(x_48); +lean_dec(x_51); lean_dec(x_1); -return x_50; +return x_53; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_87; lean_object* x_88; -lean_inc(x_49); -x_55 = l_Lean_Parser_ParserState_restore(x_50, x_48, x_49); -lean_dec(x_48); -x_56 = lean_ctor_get(x_55, 0); +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); lean_inc(x_56); -x_57 = lean_array_get_size(x_56); +x_57 = lean_nat_dec_eq(x_56, x_52); lean_dec(x_56); +if (x_57 == 0) +{ +lean_dec(x_55); +lean_dec(x_52); +lean_dec(x_51); +lean_dec(x_1); +return x_53; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_inc(x_52); +x_58 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +lean_dec(x_51); +x_59 = lean_unsigned_to_nat(1024u); +x_60 = l_Lean_Parser_checkPrecFn(x_59, x_1, x_58); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = lean_array_get_size(x_62); +lean_dec(x_62); +x_93 = lean_ctor_get(x_60, 1); +lean_inc(x_93); lean_inc(x_1); -x_87 = l_Lean_Parser_tokenFn(x_1, x_55); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; -x_89 = lean_ctor_get(x_87, 0); -lean_inc(x_89); -x_90 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_89); -lean_dec(x_89); -if (lean_obj_tag(x_90) == 2) -{ -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 1); -lean_inc(x_91); -lean_dec(x_90); -x_92 = l_Lean_Parser_Command_end___elambda__1___closed__5; -x_93 = lean_string_dec_eq(x_91, x_92); -lean_dec(x_91); -if (x_93 == 0) -{ -lean_object* x_94; lean_object* x_95; -x_94 = l_Lean_Parser_Command_end___elambda__1___closed__8; -lean_inc(x_49); -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_94, x_49); -x_58 = x_95; -goto block_86; -} -else -{ -x_58 = x_87; -goto block_86; -} -} -else +x_94 = l_Lean_Parser_tokenFn(x_1, x_60); +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) { lean_object* x_96; lean_object* x_97; -lean_dec(x_90); -x_96 = l_Lean_Parser_Command_end___elambda__1___closed__8; -lean_inc(x_49); -x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_96, x_49); -x_58 = x_97; -goto block_86; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +x_97 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_96); +lean_dec(x_96); +if (lean_obj_tag(x_97) == 2) +{ +lean_object* x_98; lean_object* x_99; uint8_t x_100; +x_98 = lean_ctor_get(x_97, 1); +lean_inc(x_98); +lean_dec(x_97); +x_99 = l_Lean_Parser_Command_end___elambda__1___closed__5; +x_100 = lean_string_dec_eq(x_98, x_99); +lean_dec(x_98); +if (x_100 == 0) +{ +lean_object* x_101; lean_object* x_102; +x_101 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_101, x_93); +x_64 = x_102; +goto block_92; +} +else +{ +lean_dec(x_93); +x_64 = x_94; +goto block_92; } } else { -lean_object* x_98; lean_object* x_99; -lean_dec(x_88); -x_98 = l_Lean_Parser_Command_end___elambda__1___closed__8; -lean_inc(x_49); -x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_98, x_49); -x_58 = x_99; -goto block_86; +lean_object* x_103; lean_object* x_104; +lean_dec(x_97); +x_103 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_103, x_93); +x_64 = x_104; +goto block_92; } -block_86: -{ -lean_object* x_59; -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); -lean_dec(x_60); -x_62 = lean_ctor_get(x_58, 1); -lean_inc(x_62); -x_63 = l_Lean_Parser_ident___elambda__1(x_1, x_58); -x_64 = lean_ctor_get(x_63, 3); -lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_62); -x_65 = l_Lean_nullKind; -x_66 = l_Lean_Parser_ParserState_mkNode(x_63, x_65, x_61); -x_67 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_57); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_52, x_49); -lean_dec(x_49); -return x_69; } else { -lean_object* x_70; uint8_t x_71; -lean_dec(x_64); -x_70 = lean_ctor_get(x_63, 1); +lean_object* x_105; lean_object* x_106; +lean_dec(x_95); +x_105 = l_Lean_Parser_Command_end___elambda__1___closed__8; +x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_105, x_93); +x_64 = x_106; +goto block_92; +} +block_92: +{ +lean_object* x_65; +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_66 = lean_ctor_get(x_64, 0); +lean_inc(x_66); +x_67 = lean_array_get_size(x_66); +lean_dec(x_66); +x_68 = lean_ctor_get(x_64, 1); +lean_inc(x_68); +x_69 = l_Lean_Parser_ident___elambda__1(x_1, x_64); +x_70 = lean_ctor_get(x_69, 3); lean_inc(x_70); -x_71 = lean_nat_dec_eq(x_70, x_62); -lean_dec(x_70); -if (x_71 == 0) +if (lean_obj_tag(x_70) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_62); -x_72 = l_Lean_nullKind; -x_73 = l_Lean_Parser_ParserState_mkNode(x_63, x_72, x_61); -x_74 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_75 = l_Lean_Parser_ParserState_mkNode(x_73, x_74, x_57); -x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_52, x_49); -lean_dec(x_49); -return x_76; +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_dec(x_68); +x_71 = l_Lean_nullKind; +x_72 = l_Lean_Parser_ParserState_mkNode(x_69, x_71, x_67); +x_73 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_73, x_63); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_55, x_52); +lean_dec(x_52); +return x_75; } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_77 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); +lean_object* x_76; uint8_t x_77; +lean_dec(x_70); +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +x_77 = lean_nat_dec_eq(x_76, x_68); +lean_dec(x_76); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_dec(x_68); x_78 = l_Lean_nullKind; -x_79 = l_Lean_Parser_ParserState_mkNode(x_77, x_78, x_61); +x_79 = l_Lean_Parser_ParserState_mkNode(x_69, x_78, x_67); x_80 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_57); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_52, x_49); -lean_dec(x_49); +x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_63); +x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_55, x_52); +lean_dec(x_52); return x_82; } +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_83 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); +x_84 = l_Lean_nullKind; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_67); +x_86 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_63); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_55, x_52); +lean_dec(x_52); +return x_88; +} } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_59); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_65); lean_dec(x_1); -x_83 = l_Lean_Parser_Command_end___elambda__1___closed__1; -x_84 = l_Lean_Parser_ParserState_mkNode(x_58, x_83, x_57); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_52, x_49); -lean_dec(x_49); -return x_85; +x_89 = l_Lean_Parser_Command_end___elambda__1___closed__1; +x_90 = l_Lean_Parser_ParserState_mkNode(x_64, x_89, x_63); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_55, x_52); +lean_dec(x_52); +return x_91; } } } +else +{ +lean_object* x_107; +lean_dec(x_61); +lean_dec(x_1); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_60, x_55, x_52); +lean_dec(x_52); +return x_107; +} +} } } } @@ -22865,16 +24451,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_end___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_end___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_end___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_end___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_end___closed__3; +x_3 = l_Lean_Parser_Command_end___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_end___closed__5() { +lean_object* _init_l_Lean_Parser_Command_end___closed__6() { _start: { lean_object* x_1; @@ -22882,12 +24478,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_end___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Command_end___closed__6() { +lean_object* _init_l_Lean_Parser_Command_end___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_end___closed__4; -x_2 = l_Lean_Parser_Command_end___closed__5; +x_1 = l_Lean_Parser_Command_end___closed__5; +x_2 = l_Lean_Parser_Command_end___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -22898,7 +24494,7 @@ lean_object* _init_l_Lean_Parser_Command_end() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_end___closed__6; +x_1 = l_Lean_Parser_Command_end___closed__7; return x_1; } } @@ -23017,228 +24613,261 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Command_variable___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_10 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_10 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_10 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_10 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_11; -x_11 = lean_ctor_get(x_10, 3); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_apply_2(x_4, x_1, x_10); -x_13 = l_Lean_Parser_Command_variable___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_9); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_12 = lean_array_get_size(x_11); lean_dec(x_11); -lean_dec(x_4); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_variable___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_10, x_15, x_9); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_9, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_6, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_9); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_4); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Command_variable___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_13 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_13 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_13 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_13 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_apply_2(x_4, x_1, x_13); +x_16 = l_Lean_Parser_Command_variable___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_12); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_14); +lean_dec(x_4); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_variable___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_13, x_18, x_12); +return x_19; +} +} +} +else +{ +lean_dec(x_10); +lean_dec(x_4); +lean_dec(x_1); +return x_9; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_6, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_4); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_53; lean_object* x_54; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_4); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_59 = lean_ctor_get(x_45, 1); +lean_inc(x_59); lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_40); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l_Lean_Parser_Command_variable___elambda__1___closed__6; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -lean_inc(x_34); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_34); -x_43 = x_61; -goto block_52; -} -else -{ -x_43 = x_53; -goto block_52; -} -} -else +x_60 = l_Lean_Parser_tokenFn(x_1, x_45); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_34); -x_43 = x_63; -goto block_52; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_62); +if (lean_obj_tag(x_63) == 2) +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = l_Lean_Parser_Command_variable___elambda__1___closed__6; +x_66 = lean_string_dec_eq(x_64, x_65); +lean_dec(x_64); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; +x_67 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); +x_49 = x_68; +goto block_58; +} +else +{ +lean_dec(x_59); +x_49 = x_60; +goto block_58; } } else { -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l_Lean_Parser_Command_variable___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_34); -x_43 = x_65; -goto block_52; +lean_object* x_69; lean_object* x_70; +lean_dec(x_63); +x_69 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); +x_49 = x_70; +goto block_58; } -block_52: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_45 = lean_apply_2(x_4, x_1, x_43); -x_46 = l_Lean_Parser_Command_variable___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_42); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_37, x_34); -lean_dec(x_34); -return x_48; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_44); +lean_object* x_71; lean_object* x_72; +lean_dec(x_61); +x_71 = l_Lean_Parser_Command_variable___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); +x_49 = x_72; +goto block_58; +} +block_58: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_51 = lean_apply_2(x_4, x_1, x_49); +x_52 = l_Lean_Parser_Command_variable___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_48); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_40, x_37); +lean_dec(x_37); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_50); lean_dec(x_4); lean_dec(x_1); -x_49 = l_Lean_Parser_Command_variable___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_43, x_49, x_42); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_37, x_34); -lean_dec(x_34); -return x_51; +x_55 = l_Lean_Parser_Command_variable___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_49, x_55, x_48); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_40, x_37); +lean_dec(x_37); +return x_57; } } } +else +{ +lean_object* x_73; +lean_dec(x_46); +lean_dec(x_4); +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_73; +} +} } } } @@ -23277,16 +24906,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_variable___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_variable___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_variable___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_variable___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_variable___closed__3; +x_3 = l_Lean_Parser_Command_variable___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_variable___closed__5() { +lean_object* _init_l_Lean_Parser_Command_variable___closed__6() { _start: { lean_object* x_1; @@ -23294,12 +24933,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_variable___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_variable___closed__6() { +lean_object* _init_l_Lean_Parser_Command_variable___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_variable___closed__4; -x_2 = l_Lean_Parser_Command_variable___closed__5; +x_1 = l_Lean_Parser_Command_variable___closed__5; +x_2 = l_Lean_Parser_Command_variable___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -23310,7 +24949,7 @@ lean_object* _init_l_Lean_Parser_Command_variable() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_variable___closed__6; +x_1 = l_Lean_Parser_Command_variable___closed__7; return x_1; } } @@ -23429,284 +25068,317 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_28 = lean_ctor_get(x_2, 1); -lean_inc(x_28); -lean_inc(x_1); -x_29 = l_Lean_Parser_tokenFn(x_1, x_2); -x_30 = lean_ctor_get(x_29, 3); -lean_inc(x_30); -if (lean_obj_tag(x_30) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_29, 0); -lean_inc(x_31); -x_32 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_31); -lean_dec(x_31); -if (lean_obj_tag(x_32) == 2) -{ -lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_33 = lean_ctor_get(x_32, 1); -lean_inc(x_33); -lean_dec(x_32); -x_34 = l_Lean_Parser_Command_variables___elambda__1___closed__6; -x_35 = lean_string_dec_eq(x_33, x_34); -lean_dec(x_33); -if (x_35 == 0) -{ -lean_object* x_36; lean_object* x_37; -x_36 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_36, x_28); -x_10 = x_37; -goto block_27; -} -else -{ -lean_dec(x_28); -x_10 = x_29; -goto block_27; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_32); -x_38 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_38, x_28); -x_10 = x_39; -goto block_27; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_30); -x_40 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_29, x_40, x_28); -x_10 = x_41; -goto block_27; -} -block_27: -{ -lean_object* x_11; -x_11 = lean_ctor_get(x_10, 3); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); +x_31 = lean_ctor_get(x_9, 1); +lean_inc(x_31); +lean_inc(x_1); +x_32 = l_Lean_Parser_tokenFn(x_1, x_9); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_34); +lean_dec(x_34); +if (lean_obj_tag(x_35) == 2) +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = l_Lean_Parser_Command_variables___elambda__1___closed__6; +x_38 = lean_string_dec_eq(x_36, x_37); +lean_dec(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +x_39 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_39, x_31); +x_13 = x_40; +goto block_30; +} +else +{ +lean_dec(x_31); +x_13 = x_32; +goto block_30; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_35); +x_41 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_41, x_31); +x_13 = x_42; +goto block_30; +} +} +else +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_33); +x_43 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_43, x_31); +x_13 = x_44; +goto block_30; +} +block_30: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); lean_inc(x_4); lean_inc(x_1); -x_14 = lean_apply_2(x_4, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_17 = lean_apply_2(x_4, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = l_Lean_Parser_manyAux___main(x_4, x_1, x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_13); -x_19 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_9); -return x_20; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = l_Lean_Parser_manyAux___main(x_4, x_1, x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_12); +return x_23; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_15); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_18); lean_dec(x_4); lean_dec(x_1); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_9); -return x_24; +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_12); +return x_27; } } else { -lean_object* x_25; lean_object* x_26; -lean_dec(x_11); +lean_object* x_28; lean_object* x_29; +lean_dec(x_14); lean_dec(x_4); lean_dec(x_1); -x_25 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_10, x_25, x_9); -return x_26; +x_28 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_13, x_28, x_12); +return x_29; } } } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_42 = lean_ctor_get(x_2, 0); -lean_inc(x_42); -x_43 = lean_array_get_size(x_42); -lean_dec(x_42); -x_44 = lean_ctor_get(x_2, 1); -lean_inc(x_44); -lean_inc(x_1); -x_45 = lean_apply_2(x_6, x_1, x_2); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_dec(x_44); -lean_dec(x_43); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_45; +return x_9; +} } else { -lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_47 = lean_ctor_get(x_46, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_2, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_2, 1); lean_inc(x_47); -lean_dec(x_46); -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -x_49 = lean_nat_dec_eq(x_48, x_44); -lean_dec(x_48); -if (x_49 == 0) +lean_inc(x_1); +x_48 = lean_apply_2(x_6, x_1, x_2); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { lean_dec(x_47); -lean_dec(x_44); -lean_dec(x_43); +lean_dec(x_46); lean_dec(x_4); lean_dec(x_1); -return x_45; +return x_48; } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_74; lean_object* x_75; -lean_inc(x_44); -x_50 = l_Lean_Parser_ParserState_restore(x_45, x_43, x_44); -lean_dec(x_43); -x_51 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +lean_dec(x_49); +x_51 = lean_ctor_get(x_48, 1); lean_inc(x_51); -x_52 = lean_array_get_size(x_51); +x_52 = lean_nat_dec_eq(x_51, x_47); lean_dec(x_51); +if (x_52 == 0) +{ +lean_dec(x_50); +lean_dec(x_47); +lean_dec(x_46); +lean_dec(x_4); +lean_dec(x_1); +return x_48; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +lean_inc(x_47); +x_53 = l_Lean_Parser_ParserState_restore(x_48, x_46, x_47); +lean_dec(x_46); +x_54 = lean_unsigned_to_nat(1024u); +x_55 = l_Lean_Parser_checkPrecFn(x_54, x_1, x_53); +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_80 = lean_ctor_get(x_55, 1); +lean_inc(x_80); lean_inc(x_1); -x_74 = l_Lean_Parser_tokenFn(x_1, x_50); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = lean_ctor_get(x_74, 0); -lean_inc(x_76); -x_77 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_76); -lean_dec(x_76); -if (lean_obj_tag(x_77) == 2) -{ -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -lean_dec(x_77); -x_79 = l_Lean_Parser_Command_variables___elambda__1___closed__6; -x_80 = lean_string_dec_eq(x_78, x_79); -lean_dec(x_78); -if (x_80 == 0) -{ -lean_object* x_81; lean_object* x_82; -x_81 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -lean_inc(x_44); -x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_81, x_44); -x_53 = x_82; -goto block_73; -} -else -{ -x_53 = x_74; -goto block_73; -} -} -else +x_81 = l_Lean_Parser_tokenFn(x_1, x_55); +x_82 = lean_ctor_get(x_81, 3); +lean_inc(x_82); +if (lean_obj_tag(x_82) == 0) { lean_object* x_83; lean_object* x_84; -lean_dec(x_77); -x_83 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -lean_inc(x_44); -x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_83, x_44); -x_53 = x_84; -goto block_73; +x_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_83); +lean_dec(x_83); +if (lean_obj_tag(x_84) == 2) +{ +lean_object* x_85; lean_object* x_86; uint8_t x_87; +x_85 = lean_ctor_get(x_84, 1); +lean_inc(x_85); +lean_dec(x_84); +x_86 = l_Lean_Parser_Command_variables___elambda__1___closed__6; +x_87 = lean_string_dec_eq(x_85, x_86); +lean_dec(x_85); +if (x_87 == 0) +{ +lean_object* x_88; lean_object* x_89; +x_88 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_88, x_80); +x_59 = x_89; +goto block_79; +} +else +{ +lean_dec(x_80); +x_59 = x_81; +goto block_79; } } else { -lean_object* x_85; lean_object* x_86; -lean_dec(x_75); -x_85 = l_Lean_Parser_Command_variables___elambda__1___closed__9; -lean_inc(x_44); -x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_85, x_44); -x_53 = x_86; -goto block_73; +lean_object* x_90; lean_object* x_91; +lean_dec(x_84); +x_90 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_90, x_80); +x_59 = x_91; +goto block_79; } -block_73: +} +else { -lean_object* x_54; -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) +lean_object* x_92; lean_object* x_93; +lean_dec(x_82); +x_92 = l_Lean_Parser_Command_variables___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_92, x_80); +x_59 = x_93; +goto block_79; +} +block_79: { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = lean_array_get_size(x_55); -lean_dec(x_55); +lean_object* x_60; +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = lean_ctor_get(x_59, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); lean_inc(x_4); lean_inc(x_1); -x_57 = lean_apply_2(x_4, x_1, x_53); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) +x_63 = lean_apply_2(x_4, x_1, x_59); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_59 = l_Lean_Parser_manyAux___main(x_4, x_1, x_57); -x_60 = l_Lean_nullKind; -x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_56); -x_62 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_52); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_47, x_44); -lean_dec(x_44); -return x_64; +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_65 = l_Lean_Parser_manyAux___main(x_4, x_1, x_63); +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_62); +x_68 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_67, x_68, x_58); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_50, x_47); +lean_dec(x_47); +return x_70; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_58); +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_dec(x_64); lean_dec(x_4); lean_dec(x_1); -x_65 = l_Lean_nullKind; -x_66 = l_Lean_Parser_ParserState_mkNode(x_57, x_65, x_56); -x_67 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_52); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_47, x_44); -lean_dec(x_44); -return x_69; +x_71 = l_Lean_nullKind; +x_72 = l_Lean_Parser_ParserState_mkNode(x_63, x_71, x_62); +x_73 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_73, x_58); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_50, x_47); +lean_dec(x_47); +return x_75; } } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_dec(x_54); +lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_dec(x_60); lean_dec(x_4); lean_dec(x_1); -x_70 = l_Lean_Parser_Command_variables___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_53, x_70, x_52); -x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_47, x_44); -lean_dec(x_44); -return x_72; +x_76 = l_Lean_Parser_Command_variables___elambda__1___closed__2; +x_77 = l_Lean_Parser_ParserState_mkNode(x_59, x_76, x_58); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_50, x_47); +lean_dec(x_47); +return x_78; } } } +else +{ +lean_object* x_94; +lean_dec(x_56); +lean_dec(x_4); +lean_dec(x_1); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_55, x_50, x_47); +lean_dec(x_47); +return x_94; +} +} } } } @@ -23745,16 +25417,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_variables___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_variables___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_variables___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_variables___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_variables___closed__3; +x_3 = l_Lean_Parser_Command_variables___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_variables___closed__5() { +lean_object* _init_l_Lean_Parser_Command_variables___closed__6() { _start: { lean_object* x_1; @@ -23762,12 +25444,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_variables___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_variables___closed__6() { +lean_object* _init_l_Lean_Parser_Command_variables___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_variables___closed__4; -x_2 = l_Lean_Parser_Command_variables___closed__5; +x_1 = l_Lean_Parser_Command_variables___closed__5; +x_2 = l_Lean_Parser_Command_variables___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -23778,7 +25460,7 @@ lean_object* _init_l_Lean_Parser_Command_variables() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_variables___closed__6; +x_1 = l_Lean_Parser_Command_variables___closed__7; return x_1; } } @@ -23894,224 +25576,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Command_universe___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Command_universe___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_universe___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Command_universe___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Command_universe___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_universe___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Command_universe___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Command_universe___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Command_universe___elambda__1___closed__9; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_ident___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_Command_universe___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Command_universe___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_ident___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Command_universe___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_Command_universe___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_Command_universe___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -24150,16 +25863,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_universe___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_universe___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_universe___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_universe___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_universe___closed__3; +x_3 = l_Lean_Parser_Command_universe___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_universe___closed__5() { +lean_object* _init_l_Lean_Parser_Command_universe___closed__6() { _start: { lean_object* x_1; @@ -24167,12 +25890,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_universe___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_universe___closed__6() { +lean_object* _init_l_Lean_Parser_Command_universe___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_universe___closed__4; -x_2 = l_Lean_Parser_Command_universe___closed__5; +x_1 = l_Lean_Parser_Command_universe___closed__5; +x_2 = l_Lean_Parser_Command_universe___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -24183,7 +25906,7 @@ lean_object* _init_l_Lean_Parser_Command_universe() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_universe___closed__6; +x_1 = l_Lean_Parser_Command_universe___closed__7; return x_1; } } @@ -24299,276 +26022,307 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_26 = lean_ctor_get(x_2, 1); -lean_inc(x_26); -lean_inc(x_1); -x_27 = l_Lean_Parser_tokenFn(x_1, x_2); -x_28 = lean_ctor_get(x_27, 3); -lean_inc(x_28); -if (lean_obj_tag(x_28) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_27, 0); -lean_inc(x_29); -x_30 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_29); -lean_dec(x_29); -if (lean_obj_tag(x_30) == 2) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = l_Lean_Parser_Command_universes___elambda__1___closed__6; -x_33 = lean_string_dec_eq(x_31, x_32); -lean_dec(x_31); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; -x_34 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_34, x_26); -x_8 = x_35; -goto block_25; -} -else -{ -lean_dec(x_26); -x_8 = x_27; -goto block_25; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_30); -x_36 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_36, x_26); -x_8 = x_37; -goto block_25; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_28); -x_38 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_38, x_26); -x_8 = x_39; -goto block_25; -} -block_25: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -lean_inc(x_1); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_11); -x_17 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_nullKind; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -x_21 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_23 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_8, x_23, x_7); -return x_24; -} -} -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_40 = lean_ctor_get(x_2, 0); -lean_inc(x_40); -x_41 = lean_array_get_size(x_40); -lean_dec(x_40); -x_42 = lean_ctor_get(x_2, 1); -lean_inc(x_42); +x_29 = lean_ctor_get(x_7, 1); +lean_inc(x_29); lean_inc(x_1); -x_43 = lean_apply_2(x_4, x_1, x_2); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) +x_30 = l_Lean_Parser_tokenFn(x_1, x_7); +x_31 = lean_ctor_get(x_30, 3); +lean_inc(x_31); +if (lean_obj_tag(x_31) == 0) { -lean_dec(x_42); -lean_dec(x_41); -lean_dec(x_1); -return x_43; +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_30, 0); +lean_inc(x_32); +x_33 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_32); +lean_dec(x_32); +if (lean_obj_tag(x_33) == 2) +{ +lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +lean_dec(x_33); +x_35 = l_Lean_Parser_Command_universes___elambda__1___closed__6; +x_36 = lean_string_dec_eq(x_34, x_35); +lean_dec(x_34); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_37, x_29); +x_11 = x_38; +goto block_28; } else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 0); +lean_dec(x_29); +x_11 = x_30; +goto block_28; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_33); +x_39 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_39, x_29); +x_11 = x_40; +goto block_28; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_31); +x_41 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_41, x_29); +x_11 = x_42; +goto block_28; +} +block_28: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +lean_inc(x_1); +x_15 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_14); +x_20 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_16); +lean_dec(x_1); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_15, x_22, x_14); +x_24 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_12); +lean_dec(x_1); +x_26 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_11, x_26, x_10); +return x_27; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = lean_ctor_get(x_2, 0); +lean_inc(x_43); +x_44 = lean_array_get_size(x_43); +lean_dec(x_43); +x_45 = lean_ctor_get(x_2, 1); lean_inc(x_45); -lean_dec(x_44); -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_42); -lean_dec(x_46); -if (x_47 == 0) +lean_inc(x_1); +x_46 = lean_apply_2(x_4, x_1, x_2); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) { lean_dec(x_45); -lean_dec(x_42); -lean_dec(x_41); +lean_dec(x_44); lean_dec(x_1); -return x_43; +return x_46; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_72; lean_object* x_73; -lean_inc(x_42); -x_48 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); -lean_dec(x_41); -x_49 = lean_ctor_get(x_48, 0); +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +lean_dec(x_47); +x_49 = lean_ctor_get(x_46, 1); lean_inc(x_49); -x_50 = lean_array_get_size(x_49); +x_50 = lean_nat_dec_eq(x_49, x_45); lean_dec(x_49); +if (x_50 == 0) +{ +lean_dec(x_48); +lean_dec(x_45); +lean_dec(x_44); +lean_dec(x_1); +return x_46; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_inc(x_45); +x_51 = l_Lean_Parser_ParserState_restore(x_46, x_44, x_45); +lean_dec(x_44); +x_52 = lean_unsigned_to_nat(1024u); +x_53 = l_Lean_Parser_checkPrecFn(x_52, x_1, x_51); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = lean_array_get_size(x_55); +lean_dec(x_55); +x_78 = lean_ctor_get(x_53, 1); +lean_inc(x_78); lean_inc(x_1); -x_72 = l_Lean_Parser_tokenFn(x_1, x_48); -x_73 = lean_ctor_get(x_72, 3); -lean_inc(x_73); -if (lean_obj_tag(x_73) == 0) -{ -lean_object* x_74; lean_object* x_75; -x_74 = lean_ctor_get(x_72, 0); -lean_inc(x_74); -x_75 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_74); -lean_dec(x_74); -if (lean_obj_tag(x_75) == 2) -{ -lean_object* x_76; lean_object* x_77; uint8_t x_78; -x_76 = lean_ctor_get(x_75, 1); -lean_inc(x_76); -lean_dec(x_75); -x_77 = l_Lean_Parser_Command_universes___elambda__1___closed__6; -x_78 = lean_string_dec_eq(x_76, x_77); -lean_dec(x_76); -if (x_78 == 0) -{ -lean_object* x_79; lean_object* x_80; -x_79 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -lean_inc(x_42); -x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_79, x_42); -x_51 = x_80; -goto block_71; -} -else -{ -x_51 = x_72; -goto block_71; -} -} -else +x_79 = l_Lean_Parser_tokenFn(x_1, x_53); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { lean_object* x_81; lean_object* x_82; -lean_dec(x_75); -x_81 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -lean_inc(x_42); -x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_81, x_42); -x_51 = x_82; -goto block_71; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); +lean_dec(x_81); +if (lean_obj_tag(x_82) == 2) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_83 = lean_ctor_get(x_82, 1); +lean_inc(x_83); +lean_dec(x_82); +x_84 = l_Lean_Parser_Command_universes___elambda__1___closed__6; +x_85 = lean_string_dec_eq(x_83, x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; +x_86 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); +x_57 = x_87; +goto block_77; +} +else +{ +lean_dec(x_78); +x_57 = x_79; +goto block_77; } } else { -lean_object* x_83; lean_object* x_84; -lean_dec(x_73); -x_83 = l_Lean_Parser_Command_universes___elambda__1___closed__9; -lean_inc(x_42); -x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_83, x_42); -x_51 = x_84; -goto block_71; +lean_object* x_88; lean_object* x_89; +lean_dec(x_82); +x_88 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_88, x_78); +x_57 = x_89; +goto block_77; } -block_71: +} +else { -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) +lean_object* x_90; lean_object* x_91; +lean_dec(x_80); +x_90 = l_Lean_Parser_Command_universes___elambda__1___closed__9; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_90, x_78); +x_57 = x_91; +goto block_77; +} +block_77: { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = lean_array_get_size(x_53); -lean_dec(x_53); +lean_object* x_58; +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = lean_array_get_size(x_59); +lean_dec(x_59); lean_inc(x_1); -x_55 = l_Lean_Parser_ident___elambda__1(x_1, x_51); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) +x_61 = l_Lean_Parser_ident___elambda__1(x_1, x_57); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_57 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_55); -x_58 = l_Lean_nullKind; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_54); -x_60 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_50); -x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_45, x_42); -lean_dec(x_42); -return x_62; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_63 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_61); +x_64 = l_Lean_nullKind; +x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_60); +x_66 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_56); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_48, x_45); +lean_dec(x_45); +return x_68; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_56); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_62); lean_dec(x_1); -x_63 = l_Lean_nullKind; -x_64 = l_Lean_Parser_ParserState_mkNode(x_55, x_63, x_54); -x_65 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_50); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_45, x_42); -lean_dec(x_42); -return x_67; +x_69 = l_Lean_nullKind; +x_70 = l_Lean_Parser_ParserState_mkNode(x_61, x_69, x_60); +x_71 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_70, x_71, x_56); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_48, x_45); +lean_dec(x_45); +return x_73; } } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_52); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_dec(x_58); lean_dec(x_1); -x_68 = l_Lean_Parser_Command_universes___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_51, x_68, x_50); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_45, x_42); -lean_dec(x_42); -return x_70; +x_74 = l_Lean_Parser_Command_universes___elambda__1___closed__2; +x_75 = l_Lean_Parser_ParserState_mkNode(x_57, x_74, x_56); +x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_48, x_45); +lean_dec(x_45); +return x_76; } } } +else +{ +lean_object* x_92; +lean_dec(x_54); +lean_dec(x_1); +x_92 = l_Lean_Parser_mergeOrElseErrors(x_53, x_48, x_45); +lean_dec(x_45); +return x_92; +} +} } } } @@ -24607,16 +26361,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_universes___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_universes___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_universes___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_universes___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_universes___closed__3; +x_3 = l_Lean_Parser_Command_universes___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_universes___closed__5() { +lean_object* _init_l_Lean_Parser_Command_universes___closed__6() { _start: { lean_object* x_1; @@ -24624,12 +26388,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_universes___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_universes___closed__6() { +lean_object* _init_l_Lean_Parser_Command_universes___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_universes___closed__4; -x_2 = l_Lean_Parser_Command_universes___closed__5; +x_1 = l_Lean_Parser_Command_universes___closed__5; +x_2 = l_Lean_Parser_Command_universes___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -24640,7 +26404,7 @@ lean_object* _init_l_Lean_Parser_Command_universes() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_universes___closed__6; +x_1 = l_Lean_Parser_Command_universes___closed__7; return x_1; } } @@ -24756,228 +26520,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Command_check___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Command_check___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Command_check___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Command_check___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Command_check___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_check___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Command_check___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Command_check___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_check___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Command_check___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Command_check___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Command_check___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Command_check___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Command_check___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Command_check___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Command_check___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Command_check___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Command_check___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Command_check___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -25016,16 +26811,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_check___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_check___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_check___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_check___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_check___closed__3; +x_3 = l_Lean_Parser_Command_check___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_check___closed__5() { +lean_object* _init_l_Lean_Parser_Command_check___closed__6() { _start: { lean_object* x_1; @@ -25033,12 +26838,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_check___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_check___closed__6() { +lean_object* _init_l_Lean_Parser_Command_check___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_check___closed__4; -x_2 = l_Lean_Parser_Command_check___closed__5; +x_1 = l_Lean_Parser_Command_check___closed__5; +x_2 = l_Lean_Parser_Command_check___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -25049,7 +26854,7 @@ lean_object* _init_l_Lean_Parser_Command_check() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_check___closed__6; +x_1 = l_Lean_Parser_Command_check___closed__7; return x_1; } } @@ -25165,228 +26970,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Command_check__failure___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Command_check__failure___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Command_check__failure___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Command_check__failure___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Command_check__failure___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Command_check__failure___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -25425,16 +27261,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_check__failure___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_check__failure___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_check__failure___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_check__failure___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_check__failure___closed__3; +x_3 = l_Lean_Parser_Command_check__failure___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_check__failure___closed__5() { +lean_object* _init_l_Lean_Parser_Command_check__failure___closed__6() { _start: { lean_object* x_1; @@ -25442,12 +27288,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_check__failure___elambda_ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_check__failure___closed__6() { +lean_object* _init_l_Lean_Parser_Command_check__failure___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_check__failure___closed__4; -x_2 = l_Lean_Parser_Command_check__failure___closed__5; +x_1 = l_Lean_Parser_Command_check__failure___closed__5; +x_2 = l_Lean_Parser_Command_check__failure___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -25458,7 +27304,7 @@ lean_object* _init_l_Lean_Parser_Command_check__failure() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_check__failure___closed__6; +x_1 = l_Lean_Parser_Command_check__failure___closed__7; return x_1; } } @@ -25574,228 +27420,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Command_synth___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Command_synth___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_synth___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Command_synth___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Command_synth___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_synth___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Command_synth___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Command_synth___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Command_synth___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Command_synth___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Command_synth___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Command_synth___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Command_synth___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Command_synth___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -25834,16 +27711,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_synth___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_synth___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_synth___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_synth___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_synth___closed__3; +x_3 = l_Lean_Parser_Command_synth___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_synth___closed__5() { +lean_object* _init_l_Lean_Parser_Command_synth___closed__6() { _start: { lean_object* x_1; @@ -25851,12 +27738,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_synth___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_synth___closed__6() { +lean_object* _init_l_Lean_Parser_Command_synth___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_synth___closed__4; -x_2 = l_Lean_Parser_Command_synth___closed__5; +x_1 = l_Lean_Parser_Command_synth___closed__5; +x_2 = l_Lean_Parser_Command_synth___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -25867,7 +27754,7 @@ lean_object* _init_l_Lean_Parser_Command_synth() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_synth___closed__6; +x_1 = l_Lean_Parser_Command_synth___closed__7; return x_1; } } @@ -25983,188 +27870,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_exit___elambda__1___closed__6; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_exit___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_exit___elambda__1___closed__6; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_exit___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_exit___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_exit___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_exit___elambda__1___closed__9; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_exit___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -26193,16 +28111,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_exit___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_exit___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_exit___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_exit___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_exit___closed__2; +x_3 = l_Lean_Parser_Command_exit___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_exit___closed__4() { +lean_object* _init_l_Lean_Parser_Command_exit___closed__5() { _start: { lean_object* x_1; @@ -26210,12 +28138,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_exit___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_exit___closed__5() { +lean_object* _init_l_Lean_Parser_Command_exit___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_exit___closed__3; -x_2 = l_Lean_Parser_Command_exit___closed__4; +x_1 = l_Lean_Parser_Command_exit___closed__4; +x_2 = l_Lean_Parser_Command_exit___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -26226,7 +28154,7 @@ lean_object* _init_l_Lean_Parser_Command_exit() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_exit___closed__5; +x_1 = l_Lean_Parser_Command_exit___closed__6; return x_1; } } @@ -26342,224 +28270,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_ident___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_ident___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -26598,16 +28557,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_resolve__name___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_resolve__name___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_resolve__name___closed__3; +x_3 = l_Lean_Parser_Command_resolve__name___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__5() { +lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__6() { _start: { lean_object* x_1; @@ -26615,12 +28584,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_resolve__name___elambda__ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__6() { +lean_object* _init_l_Lean_Parser_Command_resolve__name___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_resolve__name___closed__4; -x_2 = l_Lean_Parser_Command_resolve__name___closed__5; +x_1 = l_Lean_Parser_Command_resolve__name___closed__5; +x_2 = l_Lean_Parser_Command_resolve__name___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -26631,7 +28600,7 @@ lean_object* _init_l_Lean_Parser_Command_resolve__name() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_resolve__name___closed__6; +x_1 = l_Lean_Parser_Command_resolve__name___closed__7; return x_1; } } @@ -26739,188 +28708,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_init__quot___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_init__quot___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_init__quot___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_init__quot___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_init__quot___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_init__quot___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -26949,16 +28949,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_init__quot___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_init__quot___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_init__quot___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_init__quot___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_init__quot___closed__2; +x_3 = l_Lean_Parser_Command_init__quot___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_init__quot___closed__4() { +lean_object* _init_l_Lean_Parser_Command_init__quot___closed__5() { _start: { lean_object* x_1; @@ -26966,12 +28976,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_init__quot___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_init__quot___closed__5() { +lean_object* _init_l_Lean_Parser_Command_init__quot___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_init__quot___closed__3; -x_2 = l_Lean_Parser_Command_init__quot___closed__4; +x_1 = l_Lean_Parser_Command_init__quot___closed__4; +x_2 = l_Lean_Parser_Command_init__quot___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -26982,7 +28992,7 @@ lean_object* _init_l_Lean_Parser_Command_init__quot() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_init__quot___closed__5; +x_1 = l_Lean_Parser_Command_init__quot___closed__6; return x_1; } } @@ -27156,582 +29166,574 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_70 = lean_ctor_get(x_2, 1); -lean_inc(x_70); -lean_inc(x_1); -x_71 = l_Lean_Parser_tokenFn(x_1, x_2); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_73; lean_object* x_74; -x_73 = lean_ctor_get(x_71, 0); -lean_inc(x_73); -x_74 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_73); -lean_dec(x_73); -if (lean_obj_tag(x_74) == 2) -{ -lean_object* x_75; lean_object* x_76; uint8_t x_77; -x_75 = lean_ctor_get(x_74, 1); -lean_inc(x_75); -lean_dec(x_74); -x_76 = l_Lean_Parser_Command_set__option___elambda__1___closed__6; -x_77 = lean_string_dec_eq(x_75, x_76); -lean_dec(x_75); -if (x_77 == 0) -{ -lean_object* x_78; lean_object* x_79; -x_78 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_78, x_70); -x_8 = x_79; -goto block_69; -} -else -{ -lean_dec(x_70); -x_8 = x_71; -goto block_69; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_74); -x_80 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_80, x_70); -x_8 = x_81; -goto block_69; -} -} -else -{ -lean_object* x_82; lean_object* x_83; -lean_dec(x_72); -x_82 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_82, x_70); -x_8 = x_83; -goto block_69; -} -block_69: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_10, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_Command_set__option___elambda__1___closed__7; -x_16 = l_Lean_Parser_Command_set__option___elambda__1___closed__10; -lean_inc(x_1); -x_17 = l_Lean_Parser_nonReservedSymbolFnAux(x_15, x_16, x_1, x_10); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_17, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_18, 0); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_ctor_get(x_17, 1); -lean_inc(x_22); -x_23 = lean_nat_dec_eq(x_22, x_14); -lean_dec(x_22); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_21); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_1); -x_24 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_7); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_inc(x_14); -x_26 = l_Lean_Parser_ParserState_restore(x_17, x_13, x_14); -lean_dec(x_13); -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = l_Lean_Parser_Command_set__option___elambda__1___closed__8; -x_30 = l_Lean_Parser_Command_set__option___elambda__1___closed__12; -lean_inc(x_1); -x_31 = l_Lean_Parser_nonReservedSymbolFnAux(x_29, x_30, x_1, x_26); -x_32 = lean_ctor_get(x_31, 3); -lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_28); -lean_dec(x_1); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_31, x_21, x_14); -lean_dec(x_14); -x_34 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); -return x_35; -} -else -{ -lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_36 = lean_ctor_get(x_32, 0); -lean_inc(x_36); -lean_dec(x_32); -x_37 = lean_ctor_get(x_31, 1); -lean_inc(x_37); -x_38 = lean_nat_dec_eq(x_37, x_14); -lean_dec(x_37); -if (x_38 == 0) -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_dec(x_36); -lean_dec(x_28); -lean_dec(x_1); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_31, x_21, x_14); -lean_dec(x_14); -x_40 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_7); -return x_41; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_14); -x_42 = l_Lean_Parser_ParserState_restore(x_31, x_28, x_14); -lean_dec(x_28); -x_43 = lean_ctor_get(x_42, 0); -lean_inc(x_43); -x_44 = lean_array_get_size(x_43); -lean_dec(x_43); -lean_inc(x_1); -x_45 = l_Lean_Parser_strLit___elambda__1(x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_44); -lean_dec(x_1); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_45, x_36, x_14); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_21, x_14); -lean_dec(x_14); -x_49 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_7); -return x_50; -} -else -{ -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_46, 0); -lean_inc(x_51); -lean_dec(x_46); -x_52 = lean_ctor_get(x_45, 1); -lean_inc(x_52); -x_53 = lean_nat_dec_eq(x_52, x_14); -lean_dec(x_52); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_51); -lean_dec(x_44); -lean_dec(x_1); -x_54 = l_Lean_Parser_mergeOrElseErrors(x_45, x_36, x_14); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_21, x_14); -lean_dec(x_14); -x_56 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_7); -return x_57; -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_inc(x_14); -x_58 = l_Lean_Parser_ParserState_restore(x_45, x_44, x_14); -lean_dec(x_44); -x_59 = l_Lean_Parser_numLit___elambda__1(x_1, x_58); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_51, x_14); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_36, x_14); -x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_21, x_14); -lean_dec(x_14); -x_63 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_7); -return x_64; -} -} -} -} -} -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_11); -lean_dec(x_1); -x_65 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_10, x_65, x_7); -return x_66; -} -} -else -{ -lean_object* x_67; lean_object* x_68; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_67 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_8, x_67, x_7); -return x_68; -} -} -} -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = lean_ctor_get(x_2, 0); -lean_inc(x_84); -x_85 = lean_array_get_size(x_84); -lean_dec(x_84); -x_86 = lean_ctor_get(x_2, 1); -lean_inc(x_86); +x_73 = lean_ctor_get(x_7, 1); +lean_inc(x_73); lean_inc(x_1); -x_87 = lean_apply_2(x_4, x_1, x_2); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) +x_74 = l_Lean_Parser_tokenFn(x_1, x_7); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_dec(x_86); -lean_dec(x_85); -lean_dec(x_1); -return x_87; +lean_object* x_76; lean_object* x_77; +x_76 = lean_ctor_get(x_74, 0); +lean_inc(x_76); +x_77 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_76); +lean_dec(x_76); +if (lean_obj_tag(x_77) == 2) +{ +lean_object* x_78; lean_object* x_79; uint8_t x_80; +x_78 = lean_ctor_get(x_77, 1); +lean_inc(x_78); +lean_dec(x_77); +x_79 = l_Lean_Parser_Command_set__option___elambda__1___closed__6; +x_80 = lean_string_dec_eq(x_78, x_79); +lean_dec(x_78); +if (x_80 == 0) +{ +lean_object* x_81; lean_object* x_82; +x_81 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_81, x_73); +x_11 = x_82; +goto block_72; } else { -lean_object* x_89; lean_object* x_90; uint8_t x_91; -x_89 = lean_ctor_get(x_88, 0); +lean_dec(x_73); +x_11 = x_74; +goto block_72; +} +} +else +{ +lean_object* x_83; lean_object* x_84; +lean_dec(x_77); +x_83 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_83, x_73); +x_11 = x_84; +goto block_72; +} +} +else +{ +lean_object* x_85; lean_object* x_86; +lean_dec(x_75); +x_85 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_85, x_73); +x_11 = x_86; +goto block_72; +} +block_72: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_18 = l_Lean_Parser_Command_set__option___elambda__1___closed__7; +x_19 = l_Lean_Parser_Command_set__option___elambda__1___closed__10; +lean_inc(x_1); +x_20 = l_Lean_Parser_nonReservedSymbolFnAux(x_18, x_19, x_1, x_13); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_20, x_22, x_10); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_21, 0); +lean_inc(x_24); +lean_dec(x_21); +x_25 = lean_ctor_get(x_20, 1); +lean_inc(x_25); +x_26 = lean_nat_dec_eq(x_25, x_17); +lean_dec(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_24); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_1); +x_27 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_20, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_inc(x_17); +x_29 = l_Lean_Parser_ParserState_restore(x_20, x_16, x_17); +lean_dec(x_16); +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +x_32 = l_Lean_Parser_Command_set__option___elambda__1___closed__8; +x_33 = l_Lean_Parser_Command_set__option___elambda__1___closed__12; +lean_inc(x_1); +x_34 = l_Lean_Parser_nonReservedSymbolFnAux(x_32, x_33, x_1, x_29); +x_35 = lean_ctor_get(x_34, 3); +lean_inc(x_35); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_34, x_24, x_17); +lean_dec(x_17); +x_37 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +else +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_35, 0); +lean_inc(x_39); +lean_dec(x_35); +x_40 = lean_ctor_get(x_34, 1); +lean_inc(x_40); +x_41 = lean_nat_dec_eq(x_40, x_17); +lean_dec(x_40); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_39); +lean_dec(x_31); +lean_dec(x_1); +x_42 = l_Lean_Parser_mergeOrElseErrors(x_34, x_24, x_17); +lean_dec(x_17); +x_43 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_10); +return x_44; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_inc(x_17); +x_45 = l_Lean_Parser_ParserState_restore(x_34, x_31, x_17); +lean_dec(x_31); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +x_47 = lean_array_get_size(x_46); +lean_dec(x_46); +lean_inc(x_1); +x_48 = l_Lean_Parser_strLit___elambda__1(x_1, x_45); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_47); +lean_dec(x_1); +x_50 = l_Lean_Parser_mergeOrElseErrors(x_48, x_39, x_17); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_24, x_17); +lean_dec(x_17); +x_52 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_10); +return x_53; +} +else +{ +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_49, 0); +lean_inc(x_54); +lean_dec(x_49); +x_55 = lean_ctor_get(x_48, 1); +lean_inc(x_55); +x_56 = lean_nat_dec_eq(x_55, x_17); +lean_dec(x_55); +if (x_56 == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_dec(x_54); +lean_dec(x_47); +lean_dec(x_1); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_48, x_39, x_17); +x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_24, x_17); +lean_dec(x_17); +x_59 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_10); +return x_60; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_17); +x_61 = l_Lean_Parser_ParserState_restore(x_48, x_47, x_17); +lean_dec(x_47); +x_62 = l_Lean_Parser_numLit___elambda__1(x_1, x_61); +x_63 = l_Lean_Parser_mergeOrElseErrors(x_62, x_54, x_17); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_17); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_24, x_17); +lean_dec(x_17); +x_66 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_10); +return x_67; +} +} +} +} +} +} +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_14); +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_13, x_68, x_10); +return x_69; +} +} +else +{ +lean_object* x_70; lean_object* x_71; +lean_dec(x_12); +lean_dec(x_1); +x_70 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_11, x_70, x_10); +return x_71; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_87 = lean_ctor_get(x_2, 0); +lean_inc(x_87); +x_88 = lean_array_get_size(x_87); +lean_dec(x_87); +x_89 = lean_ctor_get(x_2, 1); lean_inc(x_89); -lean_dec(x_88); -x_90 = lean_ctor_get(x_87, 1); -lean_inc(x_90); -x_91 = lean_nat_dec_eq(x_90, x_86); -lean_dec(x_90); -if (x_91 == 0) +lean_inc(x_1); +x_90 = lean_apply_2(x_4, x_1, x_2); +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) { lean_dec(x_89); -lean_dec(x_86); -lean_dec(x_85); +lean_dec(x_88); lean_dec(x_1); -return x_87; +return x_90; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_166; lean_object* x_167; -lean_inc(x_86); -x_92 = l_Lean_Parser_ParserState_restore(x_87, x_85, x_86); -lean_dec(x_85); -x_93 = lean_ctor_get(x_92, 0); +lean_object* x_92; lean_object* x_93; uint8_t x_94; +x_92 = lean_ctor_get(x_91, 0); +lean_inc(x_92); +lean_dec(x_91); +x_93 = lean_ctor_get(x_90, 1); lean_inc(x_93); -x_94 = lean_array_get_size(x_93); +x_94 = lean_nat_dec_eq(x_93, x_89); lean_dec(x_93); -lean_inc(x_1); -x_166 = l_Lean_Parser_tokenFn(x_1, x_92); -x_167 = lean_ctor_get(x_166, 3); -lean_inc(x_167); -if (lean_obj_tag(x_167) == 0) +if (x_94 == 0) { -lean_object* x_168; lean_object* x_169; -x_168 = lean_ctor_get(x_166, 0); -lean_inc(x_168); -x_169 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_168); -lean_dec(x_168); -if (lean_obj_tag(x_169) == 2) -{ -lean_object* x_170; lean_object* x_171; uint8_t x_172; -x_170 = lean_ctor_get(x_169, 1); -lean_inc(x_170); -lean_dec(x_169); -x_171 = l_Lean_Parser_Command_set__option___elambda__1___closed__6; -x_172 = lean_string_dec_eq(x_170, x_171); -lean_dec(x_170); -if (x_172 == 0) -{ -lean_object* x_173; lean_object* x_174; -x_173 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -lean_inc(x_86); -x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_173, x_86); -x_95 = x_174; -goto block_165; +lean_dec(x_92); +lean_dec(x_89); +lean_dec(x_88); +lean_dec(x_1); +return x_90; } else { -x_95 = x_166; -goto block_165; -} -} -else -{ -lean_object* x_175; lean_object* x_176; -lean_dec(x_169); -x_175 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -lean_inc(x_86); -x_176 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_175, x_86); -x_95 = x_176; -goto block_165; -} -} -else -{ -lean_object* x_177; lean_object* x_178; -lean_dec(x_167); -x_177 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; -lean_inc(x_86); -x_178 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_177, x_86); -x_95 = x_178; -goto block_165; -} -block_165: -{ -lean_object* x_96; -x_96 = lean_ctor_get(x_95, 3); -lean_inc(x_96); -if (lean_obj_tag(x_96) == 0) -{ -lean_object* x_97; lean_object* x_98; -lean_inc(x_1); -x_97 = l_Lean_Parser_ident___elambda__1(x_1, x_95); +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_inc(x_89); +x_95 = l_Lean_Parser_ParserState_restore(x_90, x_88, x_89); +lean_dec(x_88); +x_96 = lean_unsigned_to_nat(1024u); +x_97 = l_Lean_Parser_checkPrecFn(x_96, x_1, x_95); x_98 = lean_ctor_get(x_97, 3); lean_inc(x_98); if (lean_obj_tag(x_98) == 0) { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_172; lean_object* x_173; lean_object* x_174; x_99 = lean_ctor_get(x_97, 0); lean_inc(x_99); x_100 = lean_array_get_size(x_99); lean_dec(x_99); -x_101 = lean_ctor_get(x_97, 1); -lean_inc(x_101); -x_102 = l_Lean_Parser_Command_set__option___elambda__1___closed__7; -x_103 = l_Lean_Parser_Command_set__option___elambda__1___closed__10; +x_172 = lean_ctor_get(x_97, 1); +lean_inc(x_172); lean_inc(x_1); -x_104 = l_Lean_Parser_nonReservedSymbolFnAux(x_102, x_103, x_1, x_97); -x_105 = lean_ctor_get(x_104, 3); -lean_inc(x_105); -if (lean_obj_tag(x_105) == 0) +x_173 = l_Lean_Parser_tokenFn(x_1, x_97); +x_174 = lean_ctor_get(x_173, 3); +lean_inc(x_174); +if (lean_obj_tag(x_174) == 0) { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_101); -lean_dec(x_100); -lean_dec(x_1); -x_106 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_104, x_106, x_94); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_89, x_86); -lean_dec(x_86); -return x_108; +lean_object* x_175; lean_object* x_176; +x_175 = lean_ctor_get(x_173, 0); +lean_inc(x_175); +x_176 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_175); +lean_dec(x_175); +if (lean_obj_tag(x_176) == 2) +{ +lean_object* x_177; lean_object* x_178; uint8_t x_179; +x_177 = lean_ctor_get(x_176, 1); +lean_inc(x_177); +lean_dec(x_176); +x_178 = l_Lean_Parser_Command_set__option___elambda__1___closed__6; +x_179 = lean_string_dec_eq(x_177, x_178); +lean_dec(x_177); +if (x_179 == 0) +{ +lean_object* x_180; lean_object* x_181; +x_180 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_181 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_180, x_172); +x_101 = x_181; +goto block_171; } else { -lean_object* x_109; lean_object* x_110; uint8_t x_111; -x_109 = lean_ctor_get(x_105, 0); -lean_inc(x_109); +lean_dec(x_172); +x_101 = x_173; +goto block_171; +} +} +else +{ +lean_object* x_182; lean_object* x_183; +lean_dec(x_176); +x_182 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_182, x_172); +x_101 = x_183; +goto block_171; +} +} +else +{ +lean_object* x_184; lean_object* x_185; +lean_dec(x_174); +x_184 = l_Lean_Parser_Command_set__option___elambda__1___closed__15; +x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_173, x_184, x_172); +x_101 = x_185; +goto block_171; +} +block_171: +{ +lean_object* x_102; +x_102 = lean_ctor_get(x_101, 3); +lean_inc(x_102); +if (lean_obj_tag(x_102) == 0) +{ +lean_object* x_103; lean_object* x_104; +lean_inc(x_1); +x_103 = l_Lean_Parser_ident___elambda__1(x_1, x_101); +x_104 = lean_ctor_get(x_103, 3); +lean_inc(x_104); +if (lean_obj_tag(x_104) == 0) +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_105 = lean_ctor_get(x_103, 0); +lean_inc(x_105); +x_106 = lean_array_get_size(x_105); lean_dec(x_105); -x_110 = lean_ctor_get(x_104, 1); -lean_inc(x_110); -x_111 = lean_nat_dec_eq(x_110, x_101); -lean_dec(x_110); -if (x_111 == 0) +x_107 = lean_ctor_get(x_103, 1); +lean_inc(x_107); +x_108 = l_Lean_Parser_Command_set__option___elambda__1___closed__7; +x_109 = l_Lean_Parser_Command_set__option___elambda__1___closed__10; +lean_inc(x_1); +x_110 = l_Lean_Parser_nonReservedSymbolFnAux(x_108, x_109, x_1, x_103); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_109); -lean_dec(x_101); -lean_dec(x_100); +lean_dec(x_107); +lean_dec(x_106); lean_dec(x_1); x_112 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_104, x_112, x_94); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_89, x_86); -lean_dec(x_86); +x_113 = l_Lean_Parser_ParserState_mkNode(x_110, x_112, x_100); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_92, x_89); +lean_dec(x_89); return x_114; } else { -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -lean_inc(x_101); -x_115 = l_Lean_Parser_ParserState_restore(x_104, x_100, x_101); -lean_dec(x_100); -x_116 = lean_ctor_get(x_115, 0); +lean_object* x_115; lean_object* x_116; uint8_t x_117; +x_115 = lean_ctor_get(x_111, 0); +lean_inc(x_115); +lean_dec(x_111); +x_116 = lean_ctor_get(x_110, 1); lean_inc(x_116); -x_117 = lean_array_get_size(x_116); +x_117 = lean_nat_dec_eq(x_116, x_107); lean_dec(x_116); -x_118 = l_Lean_Parser_Command_set__option___elambda__1___closed__8; -x_119 = l_Lean_Parser_Command_set__option___elambda__1___closed__12; -lean_inc(x_1); -x_120 = l_Lean_Parser_nonReservedSymbolFnAux(x_118, x_119, x_1, x_115); -x_121 = lean_ctor_get(x_120, 3); -lean_inc(x_121); -if (lean_obj_tag(x_121) == 0) +if (x_117 == 0) { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_dec(x_117); +lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_115); +lean_dec(x_107); +lean_dec(x_106); lean_dec(x_1); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_120, x_109, x_101); -lean_dec(x_101); -x_123 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_94); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_89, x_86); -lean_dec(x_86); -return x_125; +x_118 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_110, x_118, x_100); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_92, x_89); +lean_dec(x_89); +return x_120; } else { -lean_object* x_126; lean_object* x_127; uint8_t x_128; -x_126 = lean_ctor_get(x_121, 0); -lean_inc(x_126); -lean_dec(x_121); -x_127 = lean_ctor_get(x_120, 1); +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_inc(x_107); +x_121 = l_Lean_Parser_ParserState_restore(x_110, x_106, x_107); +lean_dec(x_106); +x_122 = lean_ctor_get(x_121, 0); +lean_inc(x_122); +x_123 = lean_array_get_size(x_122); +lean_dec(x_122); +x_124 = l_Lean_Parser_Command_set__option___elambda__1___closed__8; +x_125 = l_Lean_Parser_Command_set__option___elambda__1___closed__12; +lean_inc(x_1); +x_126 = l_Lean_Parser_nonReservedSymbolFnAux(x_124, x_125, x_1, x_121); +x_127 = lean_ctor_get(x_126, 3); lean_inc(x_127); -x_128 = lean_nat_dec_eq(x_127, x_101); +if (lean_obj_tag(x_127) == 0) +{ +lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; +lean_dec(x_123); +lean_dec(x_1); +x_128 = l_Lean_Parser_mergeOrElseErrors(x_126, x_115, x_107); +lean_dec(x_107); +x_129 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_130 = l_Lean_Parser_ParserState_mkNode(x_128, x_129, x_100); +x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_92, x_89); +lean_dec(x_89); +return x_131; +} +else +{ +lean_object* x_132; lean_object* x_133; uint8_t x_134; +x_132 = lean_ctor_get(x_127, 0); +lean_inc(x_132); lean_dec(x_127); -if (x_128 == 0) +x_133 = lean_ctor_get(x_126, 1); +lean_inc(x_133); +x_134 = lean_nat_dec_eq(x_133, x_107); +lean_dec(x_133); +if (x_134 == 0) { -lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -lean_dec(x_126); -lean_dec(x_117); +lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_132); +lean_dec(x_123); lean_dec(x_1); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_120, x_109, x_101); -lean_dec(x_101); -x_130 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_94); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_89, x_86); -lean_dec(x_86); -return x_132; +x_135 = l_Lean_Parser_mergeOrElseErrors(x_126, x_115, x_107); +lean_dec(x_107); +x_136 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_100); +x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_92, x_89); +lean_dec(x_89); +return x_138; } else { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; -lean_inc(x_101); -x_133 = l_Lean_Parser_ParserState_restore(x_120, x_117, x_101); -lean_dec(x_117); -x_134 = lean_ctor_get(x_133, 0); -lean_inc(x_134); -x_135 = lean_array_get_size(x_134); -lean_dec(x_134); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +lean_inc(x_107); +x_139 = l_Lean_Parser_ParserState_restore(x_126, x_123, x_107); +lean_dec(x_123); +x_140 = lean_ctor_get(x_139, 0); +lean_inc(x_140); +x_141 = lean_array_get_size(x_140); +lean_dec(x_140); lean_inc(x_1); -x_136 = l_Lean_Parser_strLit___elambda__1(x_1, x_133); -x_137 = lean_ctor_get(x_136, 3); -lean_inc(x_137); -if (lean_obj_tag(x_137) == 0) -{ -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_135); -lean_dec(x_1); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_136, x_126, x_101); -x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_109, x_101); -lean_dec(x_101); -x_140 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_141 = l_Lean_Parser_ParserState_mkNode(x_139, x_140, x_94); -x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_89, x_86); -lean_dec(x_86); -return x_142; -} -else -{ -lean_object* x_143; lean_object* x_144; uint8_t x_145; -x_143 = lean_ctor_get(x_137, 0); +x_142 = l_Lean_Parser_strLit___elambda__1(x_1, x_139); +x_143 = lean_ctor_get(x_142, 3); lean_inc(x_143); -lean_dec(x_137); -x_144 = lean_ctor_get(x_136, 1); -lean_inc(x_144); -x_145 = lean_nat_dec_eq(x_144, x_101); -lean_dec(x_144); -if (x_145 == 0) +if (lean_obj_tag(x_143) == 0) { -lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; +lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_141); +lean_dec(x_1); +x_144 = l_Lean_Parser_mergeOrElseErrors(x_142, x_132, x_107); +x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_115, x_107); +lean_dec(x_107); +x_146 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_100); +x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_92, x_89); +lean_dec(x_89); +return x_148; +} +else +{ +lean_object* x_149; lean_object* x_150; uint8_t x_151; +x_149 = lean_ctor_get(x_143, 0); +lean_inc(x_149); lean_dec(x_143); -lean_dec(x_135); +x_150 = lean_ctor_get(x_142, 1); +lean_inc(x_150); +x_151 = lean_nat_dec_eq(x_150, x_107); +lean_dec(x_150); +if (x_151 == 0) +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; +lean_dec(x_149); +lean_dec(x_141); lean_dec(x_1); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_136, x_126, x_101); -x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_109, x_101); -lean_dec(x_101); -x_148 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_94); -x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_89, x_86); -lean_dec(x_86); -return x_150; +x_152 = l_Lean_Parser_mergeOrElseErrors(x_142, x_132, x_107); +x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_115, x_107); +lean_dec(x_107); +x_154 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_155 = l_Lean_Parser_ParserState_mkNode(x_153, x_154, x_100); +x_156 = l_Lean_Parser_mergeOrElseErrors(x_155, x_92, x_89); +lean_dec(x_89); +return x_156; } else { -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; -lean_inc(x_101); -x_151 = l_Lean_Parser_ParserState_restore(x_136, x_135, x_101); -lean_dec(x_135); -x_152 = l_Lean_Parser_numLit___elambda__1(x_1, x_151); -x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_143, x_101); -x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_126, x_101); -x_155 = l_Lean_Parser_mergeOrElseErrors(x_154, x_109, x_101); -lean_dec(x_101); -x_156 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_157 = l_Lean_Parser_ParserState_mkNode(x_155, x_156, x_94); -x_158 = l_Lean_Parser_mergeOrElseErrors(x_157, x_89, x_86); -lean_dec(x_86); -return x_158; -} -} -} -} -} -} -} -else -{ -lean_object* x_159; lean_object* x_160; lean_object* x_161; -lean_dec(x_98); -lean_dec(x_1); -x_159 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_160 = l_Lean_Parser_ParserState_mkNode(x_97, x_159, x_94); -x_161 = l_Lean_Parser_mergeOrElseErrors(x_160, x_89, x_86); -lean_dec(x_86); -return x_161; -} -} -else -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; -lean_dec(x_96); -lean_dec(x_1); +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +lean_inc(x_107); +x_157 = l_Lean_Parser_ParserState_restore(x_142, x_141, x_107); +lean_dec(x_141); +x_158 = l_Lean_Parser_numLit___elambda__1(x_1, x_157); +x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_149, x_107); +x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_132, x_107); +x_161 = l_Lean_Parser_mergeOrElseErrors(x_160, x_115, x_107); +lean_dec(x_107); x_162 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; -x_163 = l_Lean_Parser_ParserState_mkNode(x_95, x_162, x_94); -x_164 = l_Lean_Parser_mergeOrElseErrors(x_163, x_89, x_86); -lean_dec(x_86); +x_163 = l_Lean_Parser_ParserState_mkNode(x_161, x_162, x_100); +x_164 = l_Lean_Parser_mergeOrElseErrors(x_163, x_92, x_89); +lean_dec(x_89); return x_164; } } @@ -27740,6 +29742,45 @@ return x_164; } } } +else +{ +lean_object* x_165; lean_object* x_166; lean_object* x_167; +lean_dec(x_104); +lean_dec(x_1); +x_165 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_166 = l_Lean_Parser_ParserState_mkNode(x_103, x_165, x_100); +x_167 = l_Lean_Parser_mergeOrElseErrors(x_166, x_92, x_89); +lean_dec(x_89); +return x_167; +} +} +else +{ +lean_object* x_168; lean_object* x_169; lean_object* x_170; +lean_dec(x_102); +lean_dec(x_1); +x_168 = l_Lean_Parser_Command_set__option___elambda__1___closed__2; +x_169 = l_Lean_Parser_ParserState_mkNode(x_101, x_168, x_100); +x_170 = l_Lean_Parser_mergeOrElseErrors(x_169, x_92, x_89); +lean_dec(x_89); +return x_170; +} +} +} +else +{ +lean_object* x_186; +lean_dec(x_98); +lean_dec(x_1); +x_186 = l_Lean_Parser_mergeOrElseErrors(x_97, x_92, x_89); +lean_dec(x_89); +return x_186; +} +} +} +} +} +} lean_object* _init_l_Lean_Parser_Command_set__option___closed__1() { _start: { @@ -27824,16 +29865,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_set__option___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_set__option___closed__8; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_set__option___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_set__option___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_set__option___closed__8; +x_3 = l_Lean_Parser_Command_set__option___closed__9; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_set__option___closed__10() { +lean_object* _init_l_Lean_Parser_Command_set__option___closed__11() { _start: { lean_object* x_1; @@ -27841,12 +29892,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_set__option___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_set__option___closed__11() { +lean_object* _init_l_Lean_Parser_Command_set__option___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_set__option___closed__9; -x_2 = l_Lean_Parser_Command_set__option___closed__10; +x_1 = l_Lean_Parser_Command_set__option___closed__10; +x_2 = l_Lean_Parser_Command_set__option___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -27857,7 +29908,7 @@ lean_object* _init_l_Lean_Parser_Command_set__option() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_set__option___closed__11; +x_1 = l_Lean_Parser_Command_set__option___closed__12; return x_1; } } @@ -28022,861 +30073,895 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_26; lean_object* x_50; lean_object* x_69; lean_object* x_88; lean_object* x_89; lean_object* x_101; lean_object* x_102; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_88 = lean_ctor_get(x_2, 1); -lean_inc(x_88); -lean_inc(x_1); -x_101 = l_Lean_Parser_tokenFn(x_1, x_2); -x_102 = lean_ctor_get(x_101, 3); -lean_inc(x_102); -if (lean_obj_tag(x_102) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_103; lean_object* x_104; -x_103 = lean_ctor_get(x_101, 0); -lean_inc(x_103); -x_104 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_103); -lean_dec(x_103); -if (lean_obj_tag(x_104) == 2) -{ -lean_object* x_105; lean_object* x_106; uint8_t x_107; -x_105 = lean_ctor_get(x_104, 1); -lean_inc(x_105); -lean_dec(x_104); -x_106 = l_Lean_Parser_Command_attribute___elambda__1___closed__6; -x_107 = lean_string_dec_eq(x_105, x_106); -lean_dec(x_105); -if (x_107 == 0) -{ -lean_object* x_108; lean_object* x_109; -x_108 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_88); -x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_108, x_88); -x_89 = x_109; -goto block_100; -} -else -{ -x_89 = x_101; -goto block_100; -} -} -else -{ -lean_object* x_110; lean_object* x_111; -lean_dec(x_104); -x_110 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_88); -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_110, x_88); -x_89 = x_111; -goto block_100; -} -} -else -{ -lean_object* x_112; lean_object* x_113; -lean_dec(x_102); -x_112 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_88); -x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_112, x_88); -x_89 = x_113; -goto block_100; -} -block_25: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_29; lean_object* x_53; lean_object* x_72; lean_object* x_91; lean_object* x_92; lean_object* x_104; lean_object* x_105; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -lean_inc(x_1); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_11); -x_17 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_nullKind; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -x_21 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_23 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_8, x_23, x_7); -return x_24; -} -} -block_49: -{ -lean_object* x_27; -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) -{ -uint8_t x_28; lean_object* x_29; lean_object* x_30; -x_28 = 0; +x_91 = lean_ctor_get(x_7, 1); +lean_inc(x_91); lean_inc(x_1); -x_29 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_28, x_28, x_1, x_26); +x_104 = l_Lean_Parser_tokenFn(x_1, x_7); +x_105 = lean_ctor_get(x_104, 3); +lean_inc(x_105); +if (lean_obj_tag(x_105) == 0) +{ +lean_object* x_106; lean_object* x_107; +x_106 = lean_ctor_get(x_104, 0); +lean_inc(x_106); +x_107 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_106); +lean_dec(x_106); +if (lean_obj_tag(x_107) == 2) +{ +lean_object* x_108; lean_object* x_109; uint8_t x_110; +x_108 = lean_ctor_get(x_107, 1); +lean_inc(x_108); +lean_dec(x_107); +x_109 = l_Lean_Parser_Command_attribute___elambda__1___closed__6; +x_110 = lean_string_dec_eq(x_108, x_109); +lean_dec(x_108); +if (x_110 == 0) +{ +lean_object* x_111; lean_object* x_112; +x_111 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_91); +x_112 = l_Lean_Parser_ParserState_mkErrorsAt(x_104, x_111, x_91); +x_92 = x_112; +goto block_103; +} +else +{ +x_92 = x_104; +goto block_103; +} +} +else +{ +lean_object* x_113; lean_object* x_114; +lean_dec(x_107); +x_113 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_91); +x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_104, x_113, x_91); +x_92 = x_114; +goto block_103; +} +} +else +{ +lean_object* x_115; lean_object* x_116; +lean_dec(x_105); +x_115 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_91); +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_104, x_115, x_91); +x_92 = x_116; +goto block_103; +} +block_28: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +lean_inc(x_1); +x_15 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_14); +x_20 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_16); +lean_dec(x_1); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_15, x_22, x_14); +x_24 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_12); +lean_dec(x_1); +x_26 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_11, x_26, x_10); +return x_27; +} +} +block_52: +{ +lean_object* x_30; x_30 = lean_ctor_get(x_29, 3); lean_inc(x_30); if (lean_obj_tag(x_30) == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 1); -lean_inc(x_31); +uint8_t x_31; lean_object* x_32; lean_object* x_33; +x_31 = 0; lean_inc(x_1); -x_32 = l_Lean_Parser_tokenFn(x_1, x_29); +x_32 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_31, x_31, x_1, x_29); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { -lean_object* x_34; lean_object* x_35; -x_34 = lean_ctor_get(x_32, 0); +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); -x_35 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_34); -lean_dec(x_34); -if (lean_obj_tag(x_35) == 2) -{ -lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_1); +x_35 = l_Lean_Parser_tokenFn(x_1, x_32); +x_36 = lean_ctor_get(x_35, 3); lean_inc(x_36); -lean_dec(x_35); -x_37 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_38 = lean_string_dec_eq(x_36, x_37); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_11 = x_43; +goto block_28; +} +else +{ +lean_dec(x_34); +x_11 = x_35; +goto block_28; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_11 = x_45; +goto block_28; +} +} +else +{ +lean_object* x_46; lean_object* x_47; lean_dec(x_36); -if (x_38 == 0) -{ -lean_object* x_39; lean_object* x_40; -x_39 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_39, x_31); -x_8 = x_40; -goto block_25; -} -else -{ -lean_dec(x_31); -x_8 = x_32; -goto block_25; +x_46 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_11 = x_47; +goto block_28; } } else { -lean_object* x_41; lean_object* x_42; -lean_dec(x_35); -x_41 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_41, x_31); -x_8 = x_42; -goto block_25; -} -} -else -{ -lean_object* x_43; lean_object* x_44; +lean_object* x_48; lean_object* x_49; lean_dec(x_33); -x_43 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_32, x_43, x_31); -x_8 = x_44; -goto block_25; +lean_dec(x_1); +x_48 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_32, x_48, x_10); +return x_49; } } else { -lean_object* x_45; lean_object* x_46; +lean_object* x_50; lean_object* x_51; lean_dec(x_30); lean_dec(x_1); -x_45 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_29, x_45, x_7); -return x_46; +x_50 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_29, x_50, x_10); +return x_51; } } -else +block_71: { -lean_object* x_47; lean_object* x_48; -lean_dec(x_27); -lean_dec(x_1); -x_47 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_26, x_47, x_7); -return x_48; -} -} -block_68: -{ -lean_object* x_51; -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_52 = lean_ctor_get(x_50, 1); -lean_inc(x_52); -lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_50); +lean_object* x_54; x_54 = lean_ctor_get(x_53, 3); lean_inc(x_54); if (lean_obj_tag(x_54) == 0) { -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_53, 1); lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_52); -x_26 = x_61; -goto block_49; -} -else -{ -lean_dec(x_52); -x_26 = x_53; -goto block_49; -} -} -else -{ -lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_52); -x_26 = x_63; -goto block_49; -} -} -else -{ -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_52); -x_26 = x_65; -goto block_49; -} -} -else -{ -lean_object* x_66; lean_object* x_67; -lean_dec(x_51); -lean_dec(x_1); -x_66 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_67 = l_Lean_Parser_ParserState_mkNode(x_50, x_66, x_7); -return x_67; -} -} -block_87: -{ -lean_object* x_70; -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_69, 1); -lean_inc(x_71); lean_inc(x_1); -x_72 = l_Lean_Parser_tokenFn(x_1, x_69); +x_56 = l_Lean_Parser_tokenFn(x_1, x_53); +x_57 = lean_ctor_get(x_56, 3); +lean_inc(x_57); +if (lean_obj_tag(x_57) == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = lean_ctor_get(x_56, 0); +lean_inc(x_58); +x_59 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_58); +lean_dec(x_58); +if (lean_obj_tag(x_59) == 2) +{ +lean_object* x_60; lean_object* x_61; uint8_t x_62; +x_60 = lean_ctor_get(x_59, 1); +lean_inc(x_60); +lean_dec(x_59); +x_61 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_62 = lean_string_dec_eq(x_60, x_61); +lean_dec(x_60); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; +x_63 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_63, x_55); +x_29 = x_64; +goto block_52; +} +else +{ +lean_dec(x_55); +x_29 = x_56; +goto block_52; +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_59); +x_65 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_65, x_55); +x_29 = x_66; +goto block_52; +} +} +else +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_57); +x_67 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_67, x_55); +x_29 = x_68; +goto block_52; +} +} +else +{ +lean_object* x_69; lean_object* x_70; +lean_dec(x_54); +lean_dec(x_1); +x_69 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_70 = l_Lean_Parser_ParserState_mkNode(x_53, x_69, x_10); +return x_70; +} +} +block_90: +{ +lean_object* x_73; x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; -x_74 = lean_ctor_get(x_72, 0); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_72, 1); lean_inc(x_74); -x_75 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_74); -lean_dec(x_74); -if (lean_obj_tag(x_75) == 2) -{ -lean_object* x_76; lean_object* x_77; uint8_t x_78; -x_76 = lean_ctor_get(x_75, 1); -lean_inc(x_76); -lean_dec(x_75); -x_77 = l_Lean_Parser_Command_attribute___elambda__1___closed__8; -x_78 = lean_string_dec_eq(x_76, x_77); -lean_dec(x_76); -if (x_78 == 0) -{ -lean_object* x_79; lean_object* x_80; -x_79 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_79, x_71); -x_50 = x_80; -goto block_68; -} -else -{ -lean_dec(x_71); -x_50 = x_72; -goto block_68; -} -} -else -{ -lean_object* x_81; lean_object* x_82; -lean_dec(x_75); -x_81 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_81, x_71); -x_50 = x_82; -goto block_68; -} -} -else -{ -lean_object* x_83; lean_object* x_84; -lean_dec(x_73); -x_83 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_83, x_71); -x_50 = x_84; -goto block_68; -} -} -else -{ -lean_object* x_85; lean_object* x_86; -lean_dec(x_70); -lean_dec(x_1); -x_85 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_69, x_85, x_7); -return x_86; -} -} -block_100: -{ -lean_object* x_90; -x_90 = lean_ctor_get(x_89, 3); -lean_inc(x_90); -if (lean_obj_tag(x_90) == 0) -{ -lean_object* x_91; lean_object* x_92; -lean_dec(x_88); -x_91 = l_Lean_nullKind; -lean_inc(x_7); -x_92 = l_Lean_Parser_ParserState_mkNode(x_89, x_91, x_7); -x_69 = x_92; -goto block_87; -} -else -{ -lean_object* x_93; uint8_t x_94; -lean_dec(x_90); -x_93 = lean_ctor_get(x_89, 1); -lean_inc(x_93); -x_94 = lean_nat_dec_eq(x_93, x_88); -lean_dec(x_93); -if (x_94 == 0) -{ -lean_object* x_95; lean_object* x_96; -lean_dec(x_88); -x_95 = l_Lean_nullKind; -lean_inc(x_7); -x_96 = l_Lean_Parser_ParserState_mkNode(x_89, x_95, x_7); -x_69 = x_96; -goto block_87; -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_97 = l_Lean_Parser_ParserState_restore(x_89, x_7, x_88); -x_98 = l_Lean_nullKind; -lean_inc(x_7); -x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_7); -x_69 = x_99; -goto block_87; -} -} -} -} -else -{ -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; -x_114 = lean_ctor_get(x_2, 0); -lean_inc(x_114); -x_115 = lean_array_get_size(x_114); -lean_dec(x_114); -x_116 = lean_ctor_get(x_2, 1); -lean_inc(x_116); lean_inc(x_1); -x_117 = lean_apply_2(x_4, x_1, x_2); -x_118 = lean_ctor_get(x_117, 3); -lean_inc(x_118); -if (lean_obj_tag(x_118) == 0) +x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) { -lean_dec(x_116); -lean_dec(x_115); -lean_dec(x_1); -return x_117; +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); +lean_inc(x_79); +lean_dec(x_78); +x_80 = l_Lean_Parser_Command_attribute___elambda__1___closed__8; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; +x_82 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_53 = x_83; +goto block_71; } else { -lean_object* x_119; lean_object* x_120; uint8_t x_121; -x_119 = lean_ctor_get(x_118, 0); +lean_dec(x_74); +x_53 = x_75; +goto block_71; +} +} +else +{ +lean_object* x_84; lean_object* x_85; +lean_dec(x_78); +x_84 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_84, x_74); +x_53 = x_85; +goto block_71; +} +} +else +{ +lean_object* x_86; lean_object* x_87; +lean_dec(x_76); +x_86 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_86, x_74); +x_53 = x_87; +goto block_71; +} +} +else +{ +lean_object* x_88; lean_object* x_89; +lean_dec(x_73); +lean_dec(x_1); +x_88 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_89 = l_Lean_Parser_ParserState_mkNode(x_72, x_88, x_10); +return x_89; +} +} +block_103: +{ +lean_object* x_93; +x_93 = lean_ctor_get(x_92, 3); +lean_inc(x_93); +if (lean_obj_tag(x_93) == 0) +{ +lean_object* x_94; lean_object* x_95; +lean_dec(x_91); +x_94 = l_Lean_nullKind; +lean_inc(x_10); +x_95 = l_Lean_Parser_ParserState_mkNode(x_92, x_94, x_10); +x_72 = x_95; +goto block_90; +} +else +{ +lean_object* x_96; uint8_t x_97; +lean_dec(x_93); +x_96 = lean_ctor_get(x_92, 1); +lean_inc(x_96); +x_97 = lean_nat_dec_eq(x_96, x_91); +lean_dec(x_96); +if (x_97 == 0) +{ +lean_object* x_98; lean_object* x_99; +lean_dec(x_91); +x_98 = l_Lean_nullKind; +lean_inc(x_10); +x_99 = l_Lean_Parser_ParserState_mkNode(x_92, x_98, x_10); +x_72 = x_99; +goto block_90; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_100 = l_Lean_Parser_ParserState_restore(x_92, x_10, x_91); +x_101 = l_Lean_nullKind; +lean_inc(x_10); +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_10); +x_72 = x_102; +goto block_90; +} +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_117 = lean_ctor_get(x_2, 0); +lean_inc(x_117); +x_118 = lean_array_get_size(x_117); +lean_dec(x_117); +x_119 = lean_ctor_get(x_2, 1); lean_inc(x_119); -lean_dec(x_118); -x_120 = lean_ctor_get(x_117, 1); -lean_inc(x_120); -x_121 = lean_nat_dec_eq(x_120, x_116); -lean_dec(x_120); -if (x_121 == 0) +lean_inc(x_1); +x_120 = lean_apply_2(x_4, x_1, x_2); +x_121 = lean_ctor_get(x_120, 3); +lean_inc(x_121); +if (lean_obj_tag(x_121) == 0) { lean_dec(x_119); -lean_dec(x_116); -lean_dec(x_115); +lean_dec(x_118); lean_dec(x_1); -return x_117; +return x_120; } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_146; lean_object* x_172; lean_object* x_192; lean_object* x_212; lean_object* x_224; lean_object* x_225; -lean_inc(x_116); -x_122 = l_Lean_Parser_ParserState_restore(x_117, x_115, x_116); -lean_dec(x_115); -x_123 = lean_ctor_get(x_122, 0); +lean_object* x_122; lean_object* x_123; uint8_t x_124; +x_122 = lean_ctor_get(x_121, 0); +lean_inc(x_122); +lean_dec(x_121); +x_123 = lean_ctor_get(x_120, 1); lean_inc(x_123); -x_124 = lean_array_get_size(x_123); +x_124 = lean_nat_dec_eq(x_123, x_119); lean_dec(x_123); +if (x_124 == 0) +{ +lean_dec(x_122); +lean_dec(x_119); +lean_dec(x_118); +lean_dec(x_1); +return x_120; +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_inc(x_119); +x_125 = l_Lean_Parser_ParserState_restore(x_120, x_118, x_119); +lean_dec(x_118); +x_126 = lean_unsigned_to_nat(1024u); +x_127 = l_Lean_Parser_checkPrecFn(x_126, x_1, x_125); +x_128 = lean_ctor_get(x_127, 3); +lean_inc(x_128); +if (lean_obj_tag(x_128) == 0) +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_152; lean_object* x_178; lean_object* x_198; lean_object* x_218; lean_object* x_219; lean_object* x_231; lean_object* x_232; +x_129 = lean_ctor_get(x_127, 0); +lean_inc(x_129); +x_130 = lean_array_get_size(x_129); +lean_dec(x_129); +x_218 = lean_ctor_get(x_127, 1); +lean_inc(x_218); lean_inc(x_1); -x_224 = l_Lean_Parser_tokenFn(x_1, x_122); -x_225 = lean_ctor_get(x_224, 3); -lean_inc(x_225); -if (lean_obj_tag(x_225) == 0) -{ -lean_object* x_226; lean_object* x_227; -x_226 = lean_ctor_get(x_224, 0); -lean_inc(x_226); -x_227 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_226); -lean_dec(x_226); -if (lean_obj_tag(x_227) == 2) -{ -lean_object* x_228; lean_object* x_229; uint8_t x_230; -x_228 = lean_ctor_get(x_227, 1); -lean_inc(x_228); -lean_dec(x_227); -x_229 = l_Lean_Parser_Command_attribute___elambda__1___closed__6; -x_230 = lean_string_dec_eq(x_228, x_229); -lean_dec(x_228); -if (x_230 == 0) -{ -lean_object* x_231; lean_object* x_232; -x_231 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_116); -x_232 = l_Lean_Parser_ParserState_mkErrorsAt(x_224, x_231, x_116); -x_212 = x_232; -goto block_223; -} -else -{ -x_212 = x_224; -goto block_223; -} -} -else +x_231 = l_Lean_Parser_tokenFn(x_1, x_127); +x_232 = lean_ctor_get(x_231, 3); +lean_inc(x_232); +if (lean_obj_tag(x_232) == 0) { lean_object* x_233; lean_object* x_234; -lean_dec(x_227); -x_233 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_116); -x_234 = l_Lean_Parser_ParserState_mkErrorsAt(x_224, x_233, x_116); -x_212 = x_234; -goto block_223; +x_233 = lean_ctor_get(x_231, 0); +lean_inc(x_233); +x_234 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_233); +lean_dec(x_233); +if (lean_obj_tag(x_234) == 2) +{ +lean_object* x_235; lean_object* x_236; uint8_t x_237; +x_235 = lean_ctor_get(x_234, 1); +lean_inc(x_235); +lean_dec(x_234); +x_236 = l_Lean_Parser_Command_attribute___elambda__1___closed__6; +x_237 = lean_string_dec_eq(x_235, x_236); +lean_dec(x_235); +if (x_237 == 0) +{ +lean_object* x_238; lean_object* x_239; +x_238 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_218); +x_239 = l_Lean_Parser_ParserState_mkErrorsAt(x_231, x_238, x_218); +x_219 = x_239; +goto block_230; +} +else +{ +x_219 = x_231; +goto block_230; } } else { -lean_object* x_235; lean_object* x_236; -lean_dec(x_225); -x_235 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; -lean_inc(x_116); -x_236 = l_Lean_Parser_ParserState_mkErrorsAt(x_224, x_235, x_116); -x_212 = x_236; -goto block_223; +lean_object* x_240; lean_object* x_241; +lean_dec(x_234); +x_240 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_218); +x_241 = l_Lean_Parser_ParserState_mkErrorsAt(x_231, x_240, x_218); +x_219 = x_241; +goto block_230; } -block_145: +} +else { -lean_object* x_126; -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_242; lean_object* x_243; +lean_dec(x_232); +x_242 = l_Lean_Parser_Command_attribute___elambda__1___closed__14; +lean_inc(x_218); +x_243 = l_Lean_Parser_ParserState_mkErrorsAt(x_231, x_242, x_218); +x_219 = x_243; +goto block_230; +} +block_151: { -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_127 = lean_ctor_get(x_125, 0); -lean_inc(x_127); -x_128 = lean_array_get_size(x_127); -lean_dec(x_127); +lean_object* x_132; +x_132 = lean_ctor_get(x_131, 3); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 0) +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_133 = lean_ctor_get(x_131, 0); +lean_inc(x_133); +x_134 = lean_array_get_size(x_133); +lean_dec(x_133); lean_inc(x_1); -x_129 = l_Lean_Parser_ident___elambda__1(x_1, x_125); -x_130 = lean_ctor_get(x_129, 3); -lean_inc(x_130); -if (lean_obj_tag(x_130) == 0) +x_135 = l_Lean_Parser_ident___elambda__1(x_1, x_131); +x_136 = lean_ctor_get(x_135, 3); +lean_inc(x_136); +if (lean_obj_tag(x_136) == 0) { -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; -x_131 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_129); -x_132 = l_Lean_nullKind; -x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_128); -x_134 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_124); -x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_119, x_116); -lean_dec(x_116); -return x_136; +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_137 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_135); +x_138 = l_Lean_nullKind; +x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_134); +x_140 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_141 = l_Lean_Parser_ParserState_mkNode(x_139, x_140, x_130); +x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_122, x_119); +lean_dec(x_119); +return x_142; } else { -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; -lean_dec(x_130); +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_dec(x_136); lean_dec(x_1); -x_137 = l_Lean_nullKind; -x_138 = l_Lean_Parser_ParserState_mkNode(x_129, x_137, x_128); -x_139 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_140 = l_Lean_Parser_ParserState_mkNode(x_138, x_139, x_124); -x_141 = l_Lean_Parser_mergeOrElseErrors(x_140, x_119, x_116); -lean_dec(x_116); -return x_141; +x_143 = l_Lean_nullKind; +x_144 = l_Lean_Parser_ParserState_mkNode(x_135, x_143, x_134); +x_145 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_146 = l_Lean_Parser_ParserState_mkNode(x_144, x_145, x_130); +x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_122, x_119); +lean_dec(x_119); +return x_147; } } else { -lean_object* x_142; lean_object* x_143; lean_object* x_144; -lean_dec(x_126); +lean_object* x_148; lean_object* x_149; lean_object* x_150; +lean_dec(x_132); lean_dec(x_1); -x_142 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_143 = l_Lean_Parser_ParserState_mkNode(x_125, x_142, x_124); -x_144 = l_Lean_Parser_mergeOrElseErrors(x_143, x_119, x_116); -lean_dec(x_116); -return x_144; +x_148 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_149 = l_Lean_Parser_ParserState_mkNode(x_131, x_148, x_130); +x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_122, x_119); +lean_dec(x_119); +return x_150; } } -block_171: +block_177: { -lean_object* x_147; -x_147 = lean_ctor_get(x_146, 3); -lean_inc(x_147); -if (lean_obj_tag(x_147) == 0) -{ -uint8_t x_148; lean_object* x_149; lean_object* x_150; -x_148 = 0; -lean_inc(x_1); -x_149 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_148, x_148, x_1, x_146); -x_150 = lean_ctor_get(x_149, 3); -lean_inc(x_150); -if (lean_obj_tag(x_150) == 0) -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; -x_151 = lean_ctor_get(x_149, 1); -lean_inc(x_151); -lean_inc(x_1); -x_152 = l_Lean_Parser_tokenFn(x_1, x_149); +lean_object* x_153; x_153 = lean_ctor_get(x_152, 3); lean_inc(x_153); if (lean_obj_tag(x_153) == 0) { -lean_object* x_154; lean_object* x_155; -x_154 = lean_ctor_get(x_152, 0); -lean_inc(x_154); -x_155 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_154); -lean_dec(x_154); -if (lean_obj_tag(x_155) == 2) -{ -lean_object* x_156; lean_object* x_157; uint8_t x_158; -x_156 = lean_ctor_get(x_155, 1); +uint8_t x_154; lean_object* x_155; lean_object* x_156; +x_154 = 0; +lean_inc(x_1); +x_155 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_attributes___elambda__1___spec__1(x_154, x_154, x_1, x_152); +x_156 = lean_ctor_get(x_155, 3); lean_inc(x_156); -lean_dec(x_155); -x_157 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_158 = lean_string_dec_eq(x_156, x_157); +if (lean_obj_tag(x_156) == 0) +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; +x_157 = lean_ctor_get(x_155, 1); +lean_inc(x_157); +lean_inc(x_1); +x_158 = l_Lean_Parser_tokenFn(x_1, x_155); +x_159 = lean_ctor_get(x_158, 3); +lean_inc(x_159); +if (lean_obj_tag(x_159) == 0) +{ +lean_object* x_160; lean_object* x_161; +x_160 = lean_ctor_get(x_158, 0); +lean_inc(x_160); +x_161 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_160); +lean_dec(x_160); +if (lean_obj_tag(x_161) == 2) +{ +lean_object* x_162; lean_object* x_163; uint8_t x_164; +x_162 = lean_ctor_get(x_161, 1); +lean_inc(x_162); +lean_dec(x_161); +x_163 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_164 = lean_string_dec_eq(x_162, x_163); +lean_dec(x_162); +if (x_164 == 0) +{ +lean_object* x_165; lean_object* x_166; +x_165 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_165, x_157); +x_131 = x_166; +goto block_151; +} +else +{ +lean_dec(x_157); +x_131 = x_158; +goto block_151; +} +} +else +{ +lean_object* x_167; lean_object* x_168; +lean_dec(x_161); +x_167 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_167, x_157); +x_131 = x_168; +goto block_151; +} +} +else +{ +lean_object* x_169; lean_object* x_170; +lean_dec(x_159); +x_169 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_169, x_157); +x_131 = x_170; +goto block_151; +} +} +else +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_dec(x_156); -if (x_158 == 0) -{ -lean_object* x_159; lean_object* x_160; -x_159 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_160 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_159, x_151); -x_125 = x_160; -goto block_145; -} -else -{ -lean_dec(x_151); -x_125 = x_152; -goto block_145; -} -} -else -{ -lean_object* x_161; lean_object* x_162; -lean_dec(x_155); -x_161 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_162 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_161, x_151); -x_125 = x_162; -goto block_145; -} -} -else -{ -lean_object* x_163; lean_object* x_164; -lean_dec(x_153); -x_163 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_164 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_163, x_151); -x_125 = x_164; -goto block_145; -} -} -else -{ -lean_object* x_165; lean_object* x_166; lean_object* x_167; -lean_dec(x_150); lean_dec(x_1); -x_165 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_166 = l_Lean_Parser_ParserState_mkNode(x_149, x_165, x_124); -x_167 = l_Lean_Parser_mergeOrElseErrors(x_166, x_119, x_116); -lean_dec(x_116); -return x_167; +x_171 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_172 = l_Lean_Parser_ParserState_mkNode(x_155, x_171, x_130); +x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_122, x_119); +lean_dec(x_119); +return x_173; } } else { -lean_object* x_168; lean_object* x_169; lean_object* x_170; -lean_dec(x_147); -lean_dec(x_1); -x_168 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_169 = l_Lean_Parser_ParserState_mkNode(x_146, x_168, x_124); -x_170 = l_Lean_Parser_mergeOrElseErrors(x_169, x_119, x_116); -lean_dec(x_116); -return x_170; -} -} -block_191: -{ -lean_object* x_173; -x_173 = lean_ctor_get(x_172, 3); -lean_inc(x_173); -if (lean_obj_tag(x_173) == 0) -{ lean_object* x_174; lean_object* x_175; lean_object* x_176; -x_174 = lean_ctor_get(x_172, 1); -lean_inc(x_174); -lean_inc(x_1); -x_175 = l_Lean_Parser_tokenFn(x_1, x_172); -x_176 = lean_ctor_get(x_175, 3); -lean_inc(x_176); -if (lean_obj_tag(x_176) == 0) -{ -lean_object* x_177; lean_object* x_178; -x_177 = lean_ctor_get(x_175, 0); -lean_inc(x_177); -x_178 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_177); -lean_dec(x_177); -if (lean_obj_tag(x_178) == 2) -{ -lean_object* x_179; lean_object* x_180; uint8_t x_181; -x_179 = lean_ctor_get(x_178, 1); -lean_inc(x_179); -lean_dec(x_178); -x_180 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_181 = lean_string_dec_eq(x_179, x_180); -lean_dec(x_179); -if (x_181 == 0) -{ -lean_object* x_182; lean_object* x_183; -x_182 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_182, x_174); -x_146 = x_183; -goto block_171; -} -else -{ -lean_dec(x_174); -x_146 = x_175; -goto block_171; -} -} -else -{ -lean_object* x_184; lean_object* x_185; -lean_dec(x_178); -x_184 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_184, x_174); -x_146 = x_185; -goto block_171; -} -} -else -{ -lean_object* x_186; lean_object* x_187; -lean_dec(x_176); -x_186 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_187 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_186, x_174); -x_146 = x_187; -goto block_171; -} -} -else -{ -lean_object* x_188; lean_object* x_189; lean_object* x_190; -lean_dec(x_173); +lean_dec(x_153); lean_dec(x_1); -x_188 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_189 = l_Lean_Parser_ParserState_mkNode(x_172, x_188, x_124); -x_190 = l_Lean_Parser_mergeOrElseErrors(x_189, x_119, x_116); -lean_dec(x_116); -return x_190; +x_174 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_175 = l_Lean_Parser_ParserState_mkNode(x_152, x_174, x_130); +x_176 = l_Lean_Parser_mergeOrElseErrors(x_175, x_122, x_119); +lean_dec(x_119); +return x_176; } } -block_211: +block_197: { -lean_object* x_193; -x_193 = lean_ctor_get(x_192, 3); -lean_inc(x_193); -if (lean_obj_tag(x_193) == 0) +lean_object* x_179; +x_179 = lean_ctor_get(x_178, 3); +lean_inc(x_179); +if (lean_obj_tag(x_179) == 0) +{ +lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_180 = lean_ctor_get(x_178, 1); +lean_inc(x_180); +lean_inc(x_1); +x_181 = l_Lean_Parser_tokenFn(x_1, x_178); +x_182 = lean_ctor_get(x_181, 3); +lean_inc(x_182); +if (lean_obj_tag(x_182) == 0) +{ +lean_object* x_183; lean_object* x_184; +x_183 = lean_ctor_get(x_181, 0); +lean_inc(x_183); +x_184 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_183); +lean_dec(x_183); +if (lean_obj_tag(x_184) == 2) +{ +lean_object* x_185; lean_object* x_186; uint8_t x_187; +x_185 = lean_ctor_get(x_184, 1); +lean_inc(x_185); +lean_dec(x_184); +x_186 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_187 = lean_string_dec_eq(x_185, x_186); +lean_dec(x_185); +if (x_187 == 0) +{ +lean_object* x_188; lean_object* x_189; +x_188 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_189 = l_Lean_Parser_ParserState_mkErrorsAt(x_181, x_188, x_180); +x_152 = x_189; +goto block_177; +} +else +{ +lean_dec(x_180); +x_152 = x_181; +goto block_177; +} +} +else +{ +lean_object* x_190; lean_object* x_191; +lean_dec(x_184); +x_190 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_191 = l_Lean_Parser_ParserState_mkErrorsAt(x_181, x_190, x_180); +x_152 = x_191; +goto block_177; +} +} +else +{ +lean_object* x_192; lean_object* x_193; +lean_dec(x_182); +x_192 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_193 = l_Lean_Parser_ParserState_mkErrorsAt(x_181, x_192, x_180); +x_152 = x_193; +goto block_177; +} +} +else { lean_object* x_194; lean_object* x_195; lean_object* x_196; -x_194 = lean_ctor_get(x_192, 1); -lean_inc(x_194); -lean_inc(x_1); -x_195 = l_Lean_Parser_tokenFn(x_1, x_192); -x_196 = lean_ctor_get(x_195, 3); -lean_inc(x_196); -if (lean_obj_tag(x_196) == 0) -{ -lean_object* x_197; lean_object* x_198; -x_197 = lean_ctor_get(x_195, 0); -lean_inc(x_197); -x_198 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_197); -lean_dec(x_197); -if (lean_obj_tag(x_198) == 2) -{ -lean_object* x_199; lean_object* x_200; uint8_t x_201; -x_199 = lean_ctor_get(x_198, 1); -lean_inc(x_199); -lean_dec(x_198); -x_200 = l_Lean_Parser_Command_attribute___elambda__1___closed__8; -x_201 = lean_string_dec_eq(x_199, x_200); -lean_dec(x_199); -if (x_201 == 0) -{ -lean_object* x_202; lean_object* x_203; -x_202 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_203 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_202, x_194); -x_172 = x_203; -goto block_191; -} -else -{ -lean_dec(x_194); -x_172 = x_195; -goto block_191; -} -} -else -{ -lean_object* x_204; lean_object* x_205; -lean_dec(x_198); -x_204 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_205 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_204, x_194); -x_172 = x_205; -goto block_191; -} -} -else -{ -lean_object* x_206; lean_object* x_207; -lean_dec(x_196); -x_206 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; -x_207 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_206, x_194); -x_172 = x_207; -goto block_191; -} -} -else -{ -lean_object* x_208; lean_object* x_209; lean_object* x_210; -lean_dec(x_193); +lean_dec(x_179); lean_dec(x_1); -x_208 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; -x_209 = l_Lean_Parser_ParserState_mkNode(x_192, x_208, x_124); -x_210 = l_Lean_Parser_mergeOrElseErrors(x_209, x_119, x_116); -lean_dec(x_116); -return x_210; +x_194 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_195 = l_Lean_Parser_ParserState_mkNode(x_178, x_194, x_130); +x_196 = l_Lean_Parser_mergeOrElseErrors(x_195, x_122, x_119); +lean_dec(x_119); +return x_196; } } -block_223: +block_217: { -lean_object* x_213; -x_213 = lean_ctor_get(x_212, 3); -lean_inc(x_213); -if (lean_obj_tag(x_213) == 0) +lean_object* x_199; +x_199 = lean_ctor_get(x_198, 3); +lean_inc(x_199); +if (lean_obj_tag(x_199) == 0) { -lean_object* x_214; lean_object* x_215; -x_214 = l_Lean_nullKind; -lean_inc(x_124); -x_215 = l_Lean_Parser_ParserState_mkNode(x_212, x_214, x_124); -x_192 = x_215; -goto block_211; +lean_object* x_200; lean_object* x_201; lean_object* x_202; +x_200 = lean_ctor_get(x_198, 1); +lean_inc(x_200); +lean_inc(x_1); +x_201 = l_Lean_Parser_tokenFn(x_1, x_198); +x_202 = lean_ctor_get(x_201, 3); +lean_inc(x_202); +if (lean_obj_tag(x_202) == 0) +{ +lean_object* x_203; lean_object* x_204; +x_203 = lean_ctor_get(x_201, 0); +lean_inc(x_203); +x_204 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_203); +lean_dec(x_203); +if (lean_obj_tag(x_204) == 2) +{ +lean_object* x_205; lean_object* x_206; uint8_t x_207; +x_205 = lean_ctor_get(x_204, 1); +lean_inc(x_205); +lean_dec(x_204); +x_206 = l_Lean_Parser_Command_attribute___elambda__1___closed__8; +x_207 = lean_string_dec_eq(x_205, x_206); +lean_dec(x_205); +if (x_207 == 0) +{ +lean_object* x_208; lean_object* x_209; +x_208 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_209 = l_Lean_Parser_ParserState_mkErrorsAt(x_201, x_208, x_200); +x_178 = x_209; +goto block_197; } else { -lean_object* x_216; uint8_t x_217; -lean_dec(x_213); -x_216 = lean_ctor_get(x_212, 1); -lean_inc(x_216); -x_217 = lean_nat_dec_eq(x_216, x_116); -lean_dec(x_216); -if (x_217 == 0) -{ -lean_object* x_218; lean_object* x_219; -x_218 = l_Lean_nullKind; -lean_inc(x_124); -x_219 = l_Lean_Parser_ParserState_mkNode(x_212, x_218, x_124); -x_192 = x_219; -goto block_211; +lean_dec(x_200); +x_178 = x_201; +goto block_197; +} } else { -lean_object* x_220; lean_object* x_221; lean_object* x_222; -lean_inc(x_116); -x_220 = l_Lean_Parser_ParserState_restore(x_212, x_124, x_116); +lean_object* x_210; lean_object* x_211; +lean_dec(x_204); +x_210 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_211 = l_Lean_Parser_ParserState_mkErrorsAt(x_201, x_210, x_200); +x_178 = x_211; +goto block_197; +} +} +else +{ +lean_object* x_212; lean_object* x_213; +lean_dec(x_202); +x_212 = l_Lean_Parser_Command_attribute___elambda__1___closed__11; +x_213 = l_Lean_Parser_ParserState_mkErrorsAt(x_201, x_212, x_200); +x_178 = x_213; +goto block_197; +} +} +else +{ +lean_object* x_214; lean_object* x_215; lean_object* x_216; +lean_dec(x_199); +lean_dec(x_1); +x_214 = l_Lean_Parser_Command_attribute___elambda__1___closed__2; +x_215 = l_Lean_Parser_ParserState_mkNode(x_198, x_214, x_130); +x_216 = l_Lean_Parser_mergeOrElseErrors(x_215, x_122, x_119); +lean_dec(x_119); +return x_216; +} +} +block_230: +{ +lean_object* x_220; +x_220 = lean_ctor_get(x_219, 3); +lean_inc(x_220); +if (lean_obj_tag(x_220) == 0) +{ +lean_object* x_221; lean_object* x_222; +lean_dec(x_218); x_221 = l_Lean_nullKind; -lean_inc(x_124); -x_222 = l_Lean_Parser_ParserState_mkNode(x_220, x_221, x_124); -x_192 = x_222; -goto block_211; +lean_inc(x_130); +x_222 = l_Lean_Parser_ParserState_mkNode(x_219, x_221, x_130); +x_198 = x_222; +goto block_217; +} +else +{ +lean_object* x_223; uint8_t x_224; +lean_dec(x_220); +x_223 = lean_ctor_get(x_219, 1); +lean_inc(x_223); +x_224 = lean_nat_dec_eq(x_223, x_218); +lean_dec(x_223); +if (x_224 == 0) +{ +lean_object* x_225; lean_object* x_226; +lean_dec(x_218); +x_225 = l_Lean_nullKind; +lean_inc(x_130); +x_226 = l_Lean_Parser_ParserState_mkNode(x_219, x_225, x_130); +x_198 = x_226; +goto block_217; +} +else +{ +lean_object* x_227; lean_object* x_228; lean_object* x_229; +x_227 = l_Lean_Parser_ParserState_restore(x_219, x_130, x_218); +x_228 = l_Lean_nullKind; +lean_inc(x_130); +x_229 = l_Lean_Parser_ParserState_mkNode(x_227, x_228, x_130); +x_198 = x_229; +goto block_217; } } } } +else +{ +lean_object* x_244; +lean_dec(x_128); +lean_dec(x_1); +x_244 = l_Lean_Parser_mergeOrElseErrors(x_127, x_122, x_119); +lean_dec(x_119); +return x_244; +} +} } } } @@ -28973,16 +31058,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_attribute___closed__10() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_attribute___closed__9; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_attribute___closed__11() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_attribute___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_attribute___closed__9; +x_3 = l_Lean_Parser_Command_attribute___closed__10; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_attribute___closed__11() { +lean_object* _init_l_Lean_Parser_Command_attribute___closed__12() { _start: { lean_object* x_1; @@ -28990,12 +31085,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_attribute___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_attribute___closed__12() { +lean_object* _init_l_Lean_Parser_Command_attribute___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_attribute___closed__10; -x_2 = l_Lean_Parser_Command_attribute___closed__11; +x_1 = l_Lean_Parser_Command_attribute___closed__11; +x_2 = l_Lean_Parser_Command_attribute___closed__12; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -29006,7 +31101,7 @@ lean_object* _init_l_Lean_Parser_Command_attribute() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_attribute___closed__12; +x_1 = l_Lean_Parser_Command_attribute___closed__13; return x_1; } } @@ -29122,624 +31217,655 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_35; lean_object* x_49; lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_72 = lean_ctor_get(x_2, 1); -lean_inc(x_72); -lean_inc(x_1); -x_73 = l_Lean_Parser_tokenFn(x_1, x_2); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_73, 0); -lean_inc(x_75); -x_76 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_75); -lean_dec(x_75); -if (lean_obj_tag(x_76) == 2) -{ -lean_object* x_77; lean_object* x_78; uint8_t x_79; -x_77 = lean_ctor_get(x_76, 1); -lean_inc(x_77); -lean_dec(x_76); -x_78 = l_Lean_Parser_Command_export___elambda__1___closed__6; -x_79 = lean_string_dec_eq(x_77, x_78); -lean_dec(x_77); -if (x_79 == 0) -{ -lean_object* x_80; lean_object* x_81; -x_80 = l_Lean_Parser_Command_export___elambda__1___closed__9; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_80, x_72); -x_49 = x_81; -goto block_71; -} -else -{ -lean_dec(x_72); -x_49 = x_73; -goto block_71; -} -} -else -{ -lean_object* x_82; lean_object* x_83; -lean_dec(x_76); -x_82 = l_Lean_Parser_Command_export___elambda__1___closed__9; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_82, x_72); -x_49 = x_83; -goto block_71; -} -} -else -{ -lean_object* x_84; lean_object* x_85; -lean_dec(x_74); -x_84 = l_Lean_Parser_Command_export___elambda__1___closed__9; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_84, x_72); -x_49 = x_85; -goto block_71; -} -block_34: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_52; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_75 = lean_ctor_get(x_7, 1); +lean_inc(x_75); +lean_inc(x_1); +x_76 = l_Lean_Parser_tokenFn(x_1, x_7); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -x_11 = l_Lean_Parser_tokenFn(x_1, x_8); +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 2) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Parser_Command_export___elambda__1___closed__6; +x_82 = lean_string_dec_eq(x_80, x_81); +lean_dec(x_80); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; +x_83 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); +x_52 = x_84; +goto block_74; +} +else +{ +lean_dec(x_75); +x_52 = x_76; +goto block_74; +} +} +else +{ +lean_object* x_85; lean_object* x_86; +lean_dec(x_79); +x_85 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); +x_52 = x_86; +goto block_74; +} +} +else +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_77); +x_87 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); +x_52 = x_88; +goto block_74; +} +block_37: +{ +lean_object* x_12; x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_17 = lean_string_dec_eq(x_15, x_16); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_dec(x_15); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -x_20 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_22 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_11, x_22, x_7); -return x_23; +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; } } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_24, x_10); -x_26 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_35; lean_object* x_36; lean_dec(x_12); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_28, x_10); -x_30 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_9); lean_dec(x_1); -x_32 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_8, x_32, x_7); -return x_33; +x_35 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; } } -block_48: +block_51: { -lean_object* x_36; -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_37 = lean_ctor_get(x_35, 0); -lean_inc(x_37); -x_38 = lean_array_get_size(x_37); -lean_dec(x_37); -lean_inc(x_1); -x_39 = l_Lean_Parser_ident___elambda__1(x_1, x_35); -x_40 = lean_ctor_get(x_39, 3); +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_40 = lean_ctor_get(x_38, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_inc(x_1); -x_41 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_39); -x_42 = l_Lean_nullKind; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_38); -x_8 = x_43; -goto block_34; -} -else -{ -lean_object* x_44; lean_object* x_45; +x_41 = lean_array_get_size(x_40); lean_dec(x_40); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_39, x_44, x_38); -x_8 = x_45; -goto block_34; +lean_inc(x_1); +x_42 = l_Lean_Parser_ident___elambda__1(x_1, x_38); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_1); +x_44 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_42); +x_45 = l_Lean_nullKind; +x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_41); +x_11 = x_46; +goto block_37; +} +else +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_43); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_42, x_47, x_41); +x_11 = x_48; +goto block_37; } } else { -lean_object* x_46; lean_object* x_47; -lean_dec(x_36); +lean_object* x_49; lean_object* x_50; +lean_dec(x_39); lean_dec(x_1); -x_46 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_35, x_46, x_7); -return x_47; +x_49 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_38, x_49, x_10); +return x_50; } } -block_71: +block_74: { -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_ident___elambda__1(x_1, x_49); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_51, 1); +lean_object* x_53; +x_53 = lean_ctor_get(x_52, 3); lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_inc(x_1); -x_54 = l_Lean_Parser_tokenFn(x_1, x_51); +x_54 = l_Lean_Parser_ident___elambda__1(x_1, x_52); x_55 = lean_ctor_get(x_54, 3); lean_inc(x_55); if (lean_obj_tag(x_55) == 0) { -lean_object* x_56; lean_object* x_57; -x_56 = lean_ctor_get(x_54, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_54, 1); lean_inc(x_56); -x_57 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_56); -lean_dec(x_56); -if (lean_obj_tag(x_57) == 2) -{ -lean_object* x_58; lean_object* x_59; uint8_t x_60; -x_58 = lean_ctor_get(x_57, 1); -lean_inc(x_58); -lean_dec(x_57); -x_59 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_60 = lean_string_dec_eq(x_58, x_59); -lean_dec(x_58); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; -x_61 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_61, x_53); -x_35 = x_62; -goto block_48; -} -else -{ -lean_dec(x_53); -x_35 = x_54; -goto block_48; -} -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_57); -x_63 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_63, x_53); -x_35 = x_64; -goto block_48; -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_55); -x_65 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_65, x_53); -x_35 = x_66; -goto block_48; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_52); -lean_dec(x_1); -x_67 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_51, x_67, x_7); -return x_68; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_50); -lean_dec(x_1); -x_69 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_70 = l_Lean_Parser_ParserState_mkNode(x_49, x_69, x_7); -return x_70; -} -} -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = lean_ctor_get(x_2, 0); -lean_inc(x_86); -x_87 = lean_array_get_size(x_86); -lean_dec(x_86); -x_88 = lean_ctor_get(x_2, 1); -lean_inc(x_88); lean_inc(x_1); -x_89 = lean_apply_2(x_4, x_1, x_2); -x_90 = lean_ctor_get(x_89, 3); -lean_inc(x_90); -if (lean_obj_tag(x_90) == 0) +x_57 = l_Lean_Parser_tokenFn(x_1, x_54); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) { -lean_dec(x_88); -lean_dec(x_87); -lean_dec(x_1); -return x_89; +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_59); +lean_dec(x_59); +if (lean_obj_tag(x_60) == 2) +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 1); +lean_inc(x_61); +lean_dec(x_60); +x_62 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_63 = lean_string_dec_eq(x_61, x_62); +lean_dec(x_61); +if (x_63 == 0) +{ +lean_object* x_64; lean_object* x_65; +x_64 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_56); +x_38 = x_65; +goto block_51; } else { -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 0); +lean_dec(x_56); +x_38 = x_57; +goto block_51; +} +} +else +{ +lean_object* x_66; lean_object* x_67; +lean_dec(x_60); +x_66 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_66, x_56); +x_38 = x_67; +goto block_51; +} +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_58); +x_68 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_68, x_56); +x_38 = x_69; +goto block_51; +} +} +else +{ +lean_object* x_70; lean_object* x_71; +lean_dec(x_55); +lean_dec(x_1); +x_70 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_54, x_70, x_10); +return x_71; +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_53); +lean_dec(x_1); +x_72 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_73 = l_Lean_Parser_ParserState_mkNode(x_52, x_72, x_10); +return x_73; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_89 = lean_ctor_get(x_2, 0); +lean_inc(x_89); +x_90 = lean_array_get_size(x_89); +lean_dec(x_89); +x_91 = lean_ctor_get(x_2, 1); lean_inc(x_91); -lean_dec(x_90); -x_92 = lean_ctor_get(x_89, 1); -lean_inc(x_92); -x_93 = lean_nat_dec_eq(x_92, x_88); -lean_dec(x_92); -if (x_93 == 0) +lean_inc(x_1); +x_92 = lean_apply_2(x_4, x_1, x_2); +x_93 = lean_ctor_get(x_92, 3); +lean_inc(x_93); +if (lean_obj_tag(x_93) == 0) { lean_dec(x_91); -lean_dec(x_88); -lean_dec(x_87); +lean_dec(x_90); lean_dec(x_1); -return x_89; +return x_92; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_129; lean_object* x_144; lean_object* x_169; lean_object* x_170; -lean_inc(x_88); -x_94 = l_Lean_Parser_ParserState_restore(x_89, x_87, x_88); -lean_dec(x_87); -x_95 = lean_ctor_get(x_94, 0); +lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +lean_dec(x_93); +x_95 = lean_ctor_get(x_92, 1); lean_inc(x_95); -x_96 = lean_array_get_size(x_95); +x_96 = lean_nat_dec_eq(x_95, x_91); lean_dec(x_95); +if (x_96 == 0) +{ +lean_dec(x_94); +lean_dec(x_91); +lean_dec(x_90); +lean_dec(x_1); +return x_92; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_inc(x_91); +x_97 = l_Lean_Parser_ParserState_restore(x_92, x_90, x_91); +lean_dec(x_90); +x_98 = lean_unsigned_to_nat(1024u); +x_99 = l_Lean_Parser_checkPrecFn(x_98, x_1, x_97); +x_100 = lean_ctor_get(x_99, 3); +lean_inc(x_100); +if (lean_obj_tag(x_100) == 0) +{ +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_135; lean_object* x_150; lean_object* x_175; lean_object* x_176; lean_object* x_177; +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +x_102 = lean_array_get_size(x_101); +lean_dec(x_101); +x_175 = lean_ctor_get(x_99, 1); +lean_inc(x_175); lean_inc(x_1); -x_169 = l_Lean_Parser_tokenFn(x_1, x_94); -x_170 = lean_ctor_get(x_169, 3); -lean_inc(x_170); -if (lean_obj_tag(x_170) == 0) -{ -lean_object* x_171; lean_object* x_172; -x_171 = lean_ctor_get(x_169, 0); -lean_inc(x_171); -x_172 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_171); -lean_dec(x_171); -if (lean_obj_tag(x_172) == 2) -{ -lean_object* x_173; lean_object* x_174; uint8_t x_175; -x_173 = lean_ctor_get(x_172, 1); -lean_inc(x_173); -lean_dec(x_172); -x_174 = l_Lean_Parser_Command_export___elambda__1___closed__6; -x_175 = lean_string_dec_eq(x_173, x_174); -lean_dec(x_173); -if (x_175 == 0) -{ -lean_object* x_176; lean_object* x_177; -x_176 = l_Lean_Parser_Command_export___elambda__1___closed__9; -lean_inc(x_88); -x_177 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_176, x_88); -x_144 = x_177; -goto block_168; -} -else -{ -x_144 = x_169; -goto block_168; -} -} -else +x_176 = l_Lean_Parser_tokenFn(x_1, x_99); +x_177 = lean_ctor_get(x_176, 3); +lean_inc(x_177); +if (lean_obj_tag(x_177) == 0) { lean_object* x_178; lean_object* x_179; -lean_dec(x_172); -x_178 = l_Lean_Parser_Command_export___elambda__1___closed__9; -lean_inc(x_88); -x_179 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_178, x_88); -x_144 = x_179; -goto block_168; +x_178 = lean_ctor_get(x_176, 0); +lean_inc(x_178); +x_179 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_178); +lean_dec(x_178); +if (lean_obj_tag(x_179) == 2) +{ +lean_object* x_180; lean_object* x_181; uint8_t x_182; +x_180 = lean_ctor_get(x_179, 1); +lean_inc(x_180); +lean_dec(x_179); +x_181 = l_Lean_Parser_Command_export___elambda__1___closed__6; +x_182 = lean_string_dec_eq(x_180, x_181); +lean_dec(x_180); +if (x_182 == 0) +{ +lean_object* x_183; lean_object* x_184; +x_183 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_184 = l_Lean_Parser_ParserState_mkErrorsAt(x_176, x_183, x_175); +x_150 = x_184; +goto block_174; +} +else +{ +lean_dec(x_175); +x_150 = x_176; +goto block_174; } } else { -lean_object* x_180; lean_object* x_181; -lean_dec(x_170); -x_180 = l_Lean_Parser_Command_export___elambda__1___closed__9; -lean_inc(x_88); -x_181 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_180, x_88); -x_144 = x_181; -goto block_168; +lean_object* x_185; lean_object* x_186; +lean_dec(x_179); +x_185 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_186 = l_Lean_Parser_ParserState_mkErrorsAt(x_176, x_185, x_175); +x_150 = x_186; +goto block_174; } -block_128: +} +else { -lean_object* x_98; -x_98 = lean_ctor_get(x_97, 3); -lean_inc(x_98); -if (lean_obj_tag(x_98) == 0) +lean_object* x_187; lean_object* x_188; +lean_dec(x_177); +x_187 = l_Lean_Parser_Command_export___elambda__1___closed__9; +x_188 = l_Lean_Parser_ParserState_mkErrorsAt(x_176, x_187, x_175); +x_150 = x_188; +goto block_174; +} +block_134: { -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_97, 1); -lean_inc(x_99); -x_100 = l_Lean_Parser_tokenFn(x_1, x_97); -x_101 = lean_ctor_get(x_100, 3); -lean_inc(x_101); -if (lean_obj_tag(x_101) == 0) -{ -lean_object* x_102; lean_object* x_103; -x_102 = lean_ctor_get(x_100, 0); -lean_inc(x_102); -x_103 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_102); -lean_dec(x_102); -if (lean_obj_tag(x_103) == 2) -{ -lean_object* x_104; lean_object* x_105; uint8_t x_106; -x_104 = lean_ctor_get(x_103, 1); +lean_object* x_104; +x_104 = lean_ctor_get(x_103, 3); lean_inc(x_104); -lean_dec(x_103); -x_105 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_106 = lean_string_dec_eq(x_104, x_105); +if (lean_obj_tag(x_104) == 0) +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_105 = lean_ctor_get(x_103, 1); +lean_inc(x_105); +x_106 = l_Lean_Parser_tokenFn(x_1, x_103); +x_107 = lean_ctor_get(x_106, 3); +lean_inc(x_107); +if (lean_obj_tag(x_107) == 0) +{ +lean_object* x_108; lean_object* x_109; +x_108 = lean_ctor_get(x_106, 0); +lean_inc(x_108); +x_109 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_108); +lean_dec(x_108); +if (lean_obj_tag(x_109) == 2) +{ +lean_object* x_110; lean_object* x_111; uint8_t x_112; +x_110 = lean_ctor_get(x_109, 1); +lean_inc(x_110); +lean_dec(x_109); +x_111 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_112 = lean_string_dec_eq(x_110, x_111); +lean_dec(x_110); +if (x_112 == 0) +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_113 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_113, x_105); +x_115 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_102); +x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_94, x_91); +lean_dec(x_91); +return x_117; +} +else +{ +lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_105); +x_118 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_106, x_118, x_102); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_94, x_91); +lean_dec(x_91); +return x_120; +} +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +lean_dec(x_109); +x_121 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_121, x_105); +x_123 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_102); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_94, x_91); +lean_dec(x_91); +return x_125; +} +} +else +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; +lean_dec(x_107); +x_126 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_127 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_126, x_105); +x_128 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_129 = l_Lean_Parser_ParserState_mkNode(x_127, x_128, x_102); +x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_94, x_91); +lean_dec(x_91); +return x_130; +} +} +else +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_dec(x_104); -if (x_106 == 0) -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_107 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_107, x_99); -x_109 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_96); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_91, x_88); -lean_dec(x_88); -return x_111; -} -else -{ -lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_99); -x_112 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_100, x_112, x_96); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_91, x_88); -lean_dec(x_88); -return x_114; -} -} -else -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; -lean_dec(x_103); -x_115 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_115, x_99); -x_117 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_118 = l_Lean_Parser_ParserState_mkNode(x_116, x_117, x_96); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_91, x_88); -lean_dec(x_88); -return x_119; -} -} -else -{ -lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -lean_dec(x_101); -x_120 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_121 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_120, x_99); -x_122 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_123 = l_Lean_Parser_ParserState_mkNode(x_121, x_122, x_96); -x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_91, x_88); -lean_dec(x_88); -return x_124; -} -} -else -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; -lean_dec(x_98); lean_dec(x_1); -x_125 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_126 = l_Lean_Parser_ParserState_mkNode(x_97, x_125, x_96); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_91, x_88); -lean_dec(x_88); -return x_127; +x_131 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_132 = l_Lean_Parser_ParserState_mkNode(x_103, x_131, x_102); +x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_94, x_91); +lean_dec(x_91); +return x_133; } } -block_143: +block_149: { -lean_object* x_130; -x_130 = lean_ctor_get(x_129, 3); -lean_inc(x_130); -if (lean_obj_tag(x_130) == 0) +lean_object* x_136; +x_136 = lean_ctor_get(x_135, 3); +lean_inc(x_136); +if (lean_obj_tag(x_136) == 0) { -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; -x_131 = lean_ctor_get(x_129, 0); -lean_inc(x_131); -x_132 = lean_array_get_size(x_131); -lean_dec(x_131); +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +x_137 = lean_ctor_get(x_135, 0); +lean_inc(x_137); +x_138 = lean_array_get_size(x_137); +lean_dec(x_137); lean_inc(x_1); -x_133 = l_Lean_Parser_ident___elambda__1(x_1, x_129); -x_134 = lean_ctor_get(x_133, 3); -lean_inc(x_134); -if (lean_obj_tag(x_134) == 0) +x_139 = l_Lean_Parser_ident___elambda__1(x_1, x_135); +x_140 = lean_ctor_get(x_139, 3); +lean_inc(x_140); +if (lean_obj_tag(x_140) == 0) { -lean_object* x_135; lean_object* x_136; lean_object* x_137; +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_inc(x_1); -x_135 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_133); -x_136 = l_Lean_nullKind; -x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_132); -x_97 = x_137; -goto block_128; +x_141 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_139); +x_142 = l_Lean_nullKind; +x_143 = l_Lean_Parser_ParserState_mkNode(x_141, x_142, x_138); +x_103 = x_143; +goto block_134; } else { -lean_object* x_138; lean_object* x_139; -lean_dec(x_134); -x_138 = l_Lean_nullKind; -x_139 = l_Lean_Parser_ParserState_mkNode(x_133, x_138, x_132); -x_97 = x_139; -goto block_128; +lean_object* x_144; lean_object* x_145; +lean_dec(x_140); +x_144 = l_Lean_nullKind; +x_145 = l_Lean_Parser_ParserState_mkNode(x_139, x_144, x_138); +x_103 = x_145; +goto block_134; } } else { -lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_130); +lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_136); lean_dec(x_1); -x_140 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_141 = l_Lean_Parser_ParserState_mkNode(x_129, x_140, x_96); -x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_91, x_88); -lean_dec(x_88); -return x_142; +x_146 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_147 = l_Lean_Parser_ParserState_mkNode(x_135, x_146, x_102); +x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_94, x_91); +lean_dec(x_91); +return x_148; } } -block_168: +block_174: { -lean_object* x_145; -x_145 = lean_ctor_get(x_144, 3); -lean_inc(x_145); -if (lean_obj_tag(x_145) == 0) -{ -lean_object* x_146; lean_object* x_147; -lean_inc(x_1); -x_146 = l_Lean_Parser_ident___elambda__1(x_1, x_144); -x_147 = lean_ctor_get(x_146, 3); -lean_inc(x_147); -if (lean_obj_tag(x_147) == 0) -{ -lean_object* x_148; lean_object* x_149; lean_object* x_150; -x_148 = lean_ctor_get(x_146, 1); -lean_inc(x_148); -lean_inc(x_1); -x_149 = l_Lean_Parser_tokenFn(x_1, x_146); -x_150 = lean_ctor_get(x_149, 3); -lean_inc(x_150); -if (lean_obj_tag(x_150) == 0) -{ -lean_object* x_151; lean_object* x_152; -x_151 = lean_ctor_get(x_149, 0); +lean_object* x_151; +x_151 = lean_ctor_get(x_150, 3); lean_inc(x_151); -x_152 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_151); -lean_dec(x_151); -if (lean_obj_tag(x_152) == 2) +if (lean_obj_tag(x_151) == 0) { -lean_object* x_153; lean_object* x_154; uint8_t x_155; -x_153 = lean_ctor_get(x_152, 1); +lean_object* x_152; lean_object* x_153; +lean_inc(x_1); +x_152 = l_Lean_Parser_ident___elambda__1(x_1, x_150); +x_153 = lean_ctor_get(x_152, 3); lean_inc(x_153); -lean_dec(x_152); -x_154 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_155 = lean_string_dec_eq(x_153, x_154); +if (lean_obj_tag(x_153) == 0) +{ +lean_object* x_154; lean_object* x_155; lean_object* x_156; +x_154 = lean_ctor_get(x_152, 1); +lean_inc(x_154); +lean_inc(x_1); +x_155 = l_Lean_Parser_tokenFn(x_1, x_152); +x_156 = lean_ctor_get(x_155, 3); +lean_inc(x_156); +if (lean_obj_tag(x_156) == 0) +{ +lean_object* x_157; lean_object* x_158; +x_157 = lean_ctor_get(x_155, 0); +lean_inc(x_157); +x_158 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_157); +lean_dec(x_157); +if (lean_obj_tag(x_158) == 2) +{ +lean_object* x_159; lean_object* x_160; uint8_t x_161; +x_159 = lean_ctor_get(x_158, 1); +lean_inc(x_159); +lean_dec(x_158); +x_160 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_161 = lean_string_dec_eq(x_159, x_160); +lean_dec(x_159); +if (x_161 == 0) +{ +lean_object* x_162; lean_object* x_163; +x_162 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_162, x_154); +x_135 = x_163; +goto block_149; +} +else +{ +lean_dec(x_154); +x_135 = x_155; +goto block_149; +} +} +else +{ +lean_object* x_164; lean_object* x_165; +lean_dec(x_158); +x_164 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_165 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_164, x_154); +x_135 = x_165; +goto block_149; +} +} +else +{ +lean_object* x_166; lean_object* x_167; +lean_dec(x_156); +x_166 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_167 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_166, x_154); +x_135 = x_167; +goto block_149; +} +} +else +{ +lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_dec(x_153); -if (x_155 == 0) -{ -lean_object* x_156; lean_object* x_157; -x_156 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_156, x_148); -x_129 = x_157; -goto block_143; -} -else -{ -lean_dec(x_148); -x_129 = x_149; -goto block_143; -} -} -else -{ -lean_object* x_158; lean_object* x_159; -lean_dec(x_152); -x_158 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_158, x_148); -x_129 = x_159; -goto block_143; -} -} -else -{ -lean_object* x_160; lean_object* x_161; -lean_dec(x_150); -x_160 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_160, x_148); -x_129 = x_161; -goto block_143; -} -} -else -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; -lean_dec(x_147); lean_dec(x_1); -x_162 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_163 = l_Lean_Parser_ParserState_mkNode(x_146, x_162, x_96); -x_164 = l_Lean_Parser_mergeOrElseErrors(x_163, x_91, x_88); -lean_dec(x_88); -return x_164; +x_168 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_169 = l_Lean_Parser_ParserState_mkNode(x_152, x_168, x_102); +x_170 = l_Lean_Parser_mergeOrElseErrors(x_169, x_94, x_91); +lean_dec(x_91); +return x_170; } } else { -lean_object* x_165; lean_object* x_166; lean_object* x_167; -lean_dec(x_145); +lean_object* x_171; lean_object* x_172; lean_object* x_173; +lean_dec(x_151); lean_dec(x_1); -x_165 = l_Lean_Parser_Command_export___elambda__1___closed__2; -x_166 = l_Lean_Parser_ParserState_mkNode(x_144, x_165, x_96); -x_167 = l_Lean_Parser_mergeOrElseErrors(x_166, x_91, x_88); -lean_dec(x_88); -return x_167; +x_171 = l_Lean_Parser_Command_export___elambda__1___closed__2; +x_172 = l_Lean_Parser_ParserState_mkNode(x_150, x_171, x_102); +x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_94, x_91); +lean_dec(x_91); +return x_173; } } } +else +{ +lean_object* x_189; +lean_dec(x_100); +lean_dec(x_1); +x_189 = l_Lean_Parser_mergeOrElseErrors(x_99, x_94, x_91); +lean_dec(x_91); +return x_189; +} +} } } } @@ -29810,16 +31936,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_export___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_export___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_export___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_export___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_export___closed__6; +x_3 = l_Lean_Parser_Command_export___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_export___closed__8() { +lean_object* _init_l_Lean_Parser_Command_export___closed__9() { _start: { lean_object* x_1; @@ -29827,12 +31963,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_export___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_export___closed__9() { +lean_object* _init_l_Lean_Parser_Command_export___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_export___closed__7; -x_2 = l_Lean_Parser_Command_export___closed__8; +x_1 = l_Lean_Parser_Command_export___closed__8; +x_2 = l_Lean_Parser_Command_export___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -29843,7 +31979,7 @@ lean_object* _init_l_Lean_Parser_Command_export() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_export___closed__9; +x_1 = l_Lean_Parser_Command_export___closed__10; return x_1; } } @@ -29959,460 +32095,475 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_34; lean_object* x_35; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_34 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_37; lean_object* x_38; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_37 = l_Lean_Parser_tokenFn(x_1, x_34); +x_37 = l_Lean_Parser_ident___elambda__1(x_1, x_7); x_38 = lean_ctor_get(x_37, 3); lean_inc(x_38); if (lean_obj_tag(x_38) == 0) { -lean_object* x_39; lean_object* x_40; -x_39 = lean_ctor_get(x_37, 0); +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_37, 1); lean_inc(x_39); -x_40 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_39); -lean_dec(x_39); -if (lean_obj_tag(x_40) == 2) -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_1); +x_40 = l_Lean_Parser_tokenFn(x_1, x_37); +x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); -lean_dec(x_40); -x_42 = l_Lean_Parser_Command_openHiding___elambda__1___closed__6; -x_43 = lean_string_dec_eq(x_41, x_42); -lean_dec(x_41); -if (x_43 == 0) +if (lean_obj_tag(x_41) == 0) { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_44, x_36); -x_46 = lean_ctor_get(x_45, 0); -lean_inc(x_46); -x_47 = lean_ctor_get(x_45, 2); -lean_inc(x_47); -x_48 = lean_ctor_get(x_45, 3); -lean_inc(x_48); -x_9 = x_45; -x_10 = x_46; -x_11 = x_47; -x_12 = x_48; -goto block_33; -} -else +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_42); +lean_dec(x_42); +if (lean_obj_tag(x_43) == 2) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_36); -x_49 = lean_ctor_get(x_37, 0); +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = l_Lean_Parser_Command_openHiding___elambda__1___closed__6; +x_46 = lean_string_dec_eq(x_44, x_45); +lean_dec(x_44); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_47 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_47, x_39); +x_49 = lean_ctor_get(x_48, 0); lean_inc(x_49); -x_50 = lean_ctor_get(x_37, 2); +x_50 = lean_ctor_get(x_48, 2); lean_inc(x_50); -x_51 = lean_ctor_get(x_37, 3); +x_51 = lean_ctor_get(x_48, 3); lean_inc(x_51); -x_9 = x_37; -x_10 = x_49; -x_11 = x_50; -x_12 = x_51; -goto block_33; -} +x_12 = x_48; +x_13 = x_49; +x_14 = x_50; +x_15 = x_51; +goto block_36; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_40); -x_52 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_52, x_36); -x_54 = lean_ctor_get(x_53, 0); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_39); +x_52 = lean_ctor_get(x_40, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_40, 2); +lean_inc(x_53); +x_54 = lean_ctor_get(x_40, 3); lean_inc(x_54); -x_55 = lean_ctor_get(x_53, 2); -lean_inc(x_55); -x_56 = lean_ctor_get(x_53, 3); -lean_inc(x_56); -x_9 = x_53; -x_10 = x_54; -x_11 = x_55; -x_12 = x_56; -goto block_33; +x_12 = x_40; +x_13 = x_52; +x_14 = x_53; +x_15 = x_54; +goto block_36; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_38); -x_57 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_37, x_57, x_36); -x_59 = lean_ctor_get(x_58, 0); +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_43); +x_55 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_55, x_39); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 2); +lean_inc(x_58); +x_59 = lean_ctor_get(x_56, 3); lean_inc(x_59); -x_60 = lean_ctor_get(x_58, 2); -lean_inc(x_60); -x_61 = lean_ctor_get(x_58, 3); -lean_inc(x_61); -x_9 = x_58; -x_10 = x_59; -x_11 = x_60; -x_12 = x_61; -goto block_33; +x_12 = x_56; +x_13 = x_57; +x_14 = x_58; +x_15 = x_59; +goto block_36; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_35); -x_62 = lean_ctor_get(x_34, 0); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_41); +x_60 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_60, x_39); +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -x_63 = lean_ctor_get(x_34, 2); +x_63 = lean_ctor_get(x_61, 2); lean_inc(x_63); -x_64 = lean_ctor_get(x_34, 3); +x_64 = lean_ctor_get(x_61, 3); lean_inc(x_64); -x_9 = x_34; -x_10 = x_62; -x_11 = x_63; -x_12 = x_64; -goto block_33; -} -block_33: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = lean_ctor_get(x_9, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_9, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -lean_inc(x_1); -x_16 = l_Lean_Parser_ident___elambda__1(x_1, x_9); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_18 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_16); -x_19 = l_Lean_nullKind; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_15); -x_21 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_8); -return x_22; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_17); -lean_dec(x_1); -x_23 = l_Lean_nullKind; -x_24 = l_Lean_Parser_ParserState_mkNode(x_16, x_23, x_15); -x_25 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_8); -return x_26; +x_12 = x_61; +x_13 = x_62; +x_14 = x_63; +x_15 = x_64; +goto block_36; } } else { -lean_object* x_27; lean_object* x_28; -lean_dec(x_13); -lean_dec(x_1); -x_27 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_9, x_27, x_8); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_9); -lean_dec(x_1); -x_29 = l_Array_shrink___main___rarg(x_10, x_8); -x_30 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_7); -lean_ctor_set(x_30, 2, x_11); -lean_ctor_set(x_30, 3, x_12); -x_31 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_8); -return x_32; -} -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_65 = lean_ctor_get(x_2, 0); +lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_38); +x_65 = lean_ctor_get(x_37, 0); lean_inc(x_65); -x_66 = lean_ctor_get(x_2, 1); +x_66 = lean_ctor_get(x_37, 2); lean_inc(x_66); -x_67 = lean_array_get_size(x_65); -lean_dec(x_65); -lean_inc(x_2); -lean_inc(x_1); -x_68 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_69 = x_2; -} else { - lean_dec_ref(x_2); - x_69 = lean_box(0); +x_67 = lean_ctor_get(x_37, 3); +lean_inc(x_67); +x_12 = x_37; +x_13 = x_65; +x_14 = x_66; +x_15 = x_67; +goto block_36; } -x_70 = lean_ctor_get(x_68, 3); +block_36: +{ +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_10); +x_16 = lean_ctor_get(x_12, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +lean_inc(x_1); +x_19 = l_Lean_Parser_ident___elambda__1(x_1, x_12); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_21 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_19); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_18); +x_24 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_1); +x_26 = l_Lean_nullKind; +x_27 = l_Lean_Parser_ParserState_mkNode(x_19, x_26, x_18); +x_28 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_16); +lean_dec(x_1); +x_30 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_12, x_30, x_11); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_12); +lean_dec(x_1); +x_32 = l_Array_shrink___main___rarg(x_13, x_11); +x_33 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_10); +lean_ctor_set(x_33, 2, x_14); +lean_ctor_set(x_33, 3, x_15); +x_34 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); +return x_35; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_68 = lean_ctor_get(x_2, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_70 = lean_ctor_get(x_2, 1); lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_dec(x_69); -lean_dec(x_67); -lean_dec(x_66); -lean_dec(x_1); -return x_68; -} -else -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_68, 1); +lean_inc(x_1); +x_71 = lean_apply_2(x_4, x_1, x_2); +x_72 = lean_ctor_get(x_71, 3); lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_66); +if (lean_obj_tag(x_72) == 0) +{ +lean_dec(x_70); +lean_dec(x_69); +lean_dec(x_1); +return x_71; +} +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); lean_dec(x_72); -if (x_73 == 0) +x_74 = lean_ctor_get(x_71, 1); +lean_inc(x_74); +x_75 = lean_nat_dec_eq(x_74, x_70); +lean_dec(x_74); +if (x_75 == 0) { -lean_dec(x_71); +lean_dec(x_73); +lean_dec(x_70); lean_dec(x_69); -lean_dec(x_67); -lean_dec(x_66); lean_dec(x_1); -return x_68; +return x_71; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_106; lean_object* x_107; -lean_inc(x_66); -x_74 = l_Lean_Parser_ParserState_restore(x_68, x_67, x_66); -lean_dec(x_67); -x_75 = lean_ctor_get(x_74, 0); -lean_inc(x_75); -x_76 = lean_array_get_size(x_75); -lean_dec(x_75); -lean_inc(x_1); -x_106 = l_Lean_Parser_ident___elambda__1(x_1, x_74); -x_107 = lean_ctor_get(x_106, 3); -lean_inc(x_107); -if (lean_obj_tag(x_107) == 0) -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; -x_108 = lean_ctor_get(x_106, 1); -lean_inc(x_108); -lean_inc(x_1); -x_109 = l_Lean_Parser_tokenFn(x_1, x_106); -x_110 = lean_ctor_get(x_109, 3); -lean_inc(x_110); -if (lean_obj_tag(x_110) == 0) -{ -lean_object* x_111; lean_object* x_112; -x_111 = lean_ctor_get(x_109, 0); -lean_inc(x_111); -x_112 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_111); -lean_dec(x_111); -if (lean_obj_tag(x_112) == 2) -{ -lean_object* x_113; lean_object* x_114; uint8_t x_115; -x_113 = lean_ctor_get(x_112, 1); -lean_inc(x_113); -lean_dec(x_112); -x_114 = l_Lean_Parser_Command_openHiding___elambda__1___closed__6; -x_115 = lean_string_dec_eq(x_113, x_114); -lean_dec(x_113); -if (x_115 == 0) -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_116 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_116, x_108); -x_118 = lean_ctor_get(x_117, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_117, 2); -lean_inc(x_119); -x_120 = lean_ctor_get(x_117, 3); -lean_inc(x_120); -x_77 = x_117; -x_78 = x_118; -x_79 = x_119; -x_80 = x_120; -goto block_105; -} -else -{ -lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_108); -x_121 = lean_ctor_get(x_109, 0); -lean_inc(x_121); -x_122 = lean_ctor_get(x_109, 2); -lean_inc(x_122); -x_123 = lean_ctor_get(x_109, 3); -lean_inc(x_123); -x_77 = x_109; -x_78 = x_121; -x_79 = x_122; -x_80 = x_123; -goto block_105; -} -} -else -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; -lean_dec(x_112); -x_124 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_125 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_124, x_108); -x_126 = lean_ctor_get(x_125, 0); -lean_inc(x_126); -x_127 = lean_ctor_get(x_125, 2); -lean_inc(x_127); -x_128 = lean_ctor_get(x_125, 3); -lean_inc(x_128); -x_77 = x_125; -x_78 = x_126; -x_79 = x_127; -x_80 = x_128; -goto block_105; -} -} -else -{ -lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; -lean_dec(x_110); -x_129 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; -x_130 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_129, x_108); -x_131 = lean_ctor_get(x_130, 0); -lean_inc(x_131); -x_132 = lean_ctor_get(x_130, 2); -lean_inc(x_132); -x_133 = lean_ctor_get(x_130, 3); -lean_inc(x_133); -x_77 = x_130; -x_78 = x_131; -x_79 = x_132; -x_80 = x_133; -goto block_105; -} -} -else -{ -lean_object* x_134; lean_object* x_135; lean_object* x_136; -lean_dec(x_107); -x_134 = lean_ctor_get(x_106, 0); -lean_inc(x_134); -x_135 = lean_ctor_get(x_106, 2); -lean_inc(x_135); -x_136 = lean_ctor_get(x_106, 3); -lean_inc(x_136); -x_77 = x_106; -x_78 = x_134; -x_79 = x_135; -x_80 = x_136; -goto block_105; -} -block_105: -{ -if (lean_obj_tag(x_80) == 0) -{ -lean_object* x_81; -lean_dec(x_79); -lean_dec(x_78); +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_inc(x_70); +x_76 = l_Lean_Parser_ParserState_restore(x_71, x_69, x_70); lean_dec(x_69); -x_81 = lean_ctor_get(x_77, 3); +x_77 = lean_unsigned_to_nat(1024u); +x_78 = l_Lean_Parser_checkPrecFn(x_77, x_1, x_76); +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_112; lean_object* x_113; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_82 = lean_ctor_get(x_77, 0); -lean_inc(x_82); -x_83 = lean_array_get_size(x_82); -lean_dec(x_82); +x_82 = lean_array_get_size(x_80); +lean_dec(x_80); lean_inc(x_1); -x_84 = l_Lean_Parser_ident___elambda__1(x_1, x_77); -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +x_112 = l_Lean_Parser_ident___elambda__1(x_1, x_78); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_86 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_84); -x_87 = l_Lean_nullKind; -x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_87, x_83); -x_89 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_76); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_71, x_66); -lean_dec(x_66); -return x_91; +lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_114 = lean_ctor_get(x_112, 1); +lean_inc(x_114); +lean_inc(x_1); +x_115 = l_Lean_Parser_tokenFn(x_1, x_112); +x_116 = lean_ctor_get(x_115, 3); +lean_inc(x_116); +if (lean_obj_tag(x_116) == 0) +{ +lean_object* x_117; lean_object* x_118; +x_117 = lean_ctor_get(x_115, 0); +lean_inc(x_117); +x_118 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_117); +lean_dec(x_117); +if (lean_obj_tag(x_118) == 2) +{ +lean_object* x_119; lean_object* x_120; uint8_t x_121; +x_119 = lean_ctor_get(x_118, 1); +lean_inc(x_119); +lean_dec(x_118); +x_120 = l_Lean_Parser_Command_openHiding___elambda__1___closed__6; +x_121 = lean_string_dec_eq(x_119, x_120); +lean_dec(x_119); +if (x_121 == 0) +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_122 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_123 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_122, x_114); +x_124 = lean_ctor_get(x_123, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_123, 2); +lean_inc(x_125); +x_126 = lean_ctor_get(x_123, 3); +lean_inc(x_126); +x_83 = x_123; +x_84 = x_124; +x_85 = x_125; +x_86 = x_126; +goto block_111; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_114); +x_127 = lean_ctor_get(x_115, 0); +lean_inc(x_127); +x_128 = lean_ctor_get(x_115, 2); +lean_inc(x_128); +x_129 = lean_ctor_get(x_115, 3); +lean_inc(x_129); +x_83 = x_115; +x_84 = x_127; +x_85 = x_128; +x_86 = x_129; +goto block_111; +} +} +else +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_dec(x_118); +x_130 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_130, x_114); +x_132 = lean_ctor_get(x_131, 0); +lean_inc(x_132); +x_133 = lean_ctor_get(x_131, 2); +lean_inc(x_133); +x_134 = lean_ctor_get(x_131, 3); +lean_inc(x_134); +x_83 = x_131; +x_84 = x_132; +x_85 = x_133; +x_86 = x_134; +goto block_111; +} +} +else +{ +lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; +lean_dec(x_116); +x_135 = l_Lean_Parser_Command_openHiding___elambda__1___closed__9; +x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_115, x_135, x_114); +x_137 = lean_ctor_get(x_136, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_136, 2); +lean_inc(x_138); +x_139 = lean_ctor_get(x_136, 3); +lean_inc(x_139); +x_83 = x_136; +x_84 = x_137; +x_85 = x_138; +x_86 = x_139; +goto block_111; +} +} +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; +lean_dec(x_113); +x_140 = lean_ctor_get(x_112, 0); +lean_inc(x_140); +x_141 = lean_ctor_get(x_112, 2); +lean_inc(x_141); +x_142 = lean_ctor_get(x_112, 3); +lean_inc(x_142); +x_83 = x_112; +x_84 = x_140; +x_85 = x_141; +x_86 = x_142; +goto block_111; +} +block_111: +{ +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_dec(x_85); -lean_dec(x_1); -x_92 = l_Lean_nullKind; -x_93 = l_Lean_Parser_ParserState_mkNode(x_84, x_92, x_83); -x_94 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_76); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_71, x_66); -lean_dec(x_66); -return x_96; -} -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_84); lean_dec(x_81); +x_87 = lean_ctor_get(x_83, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_88 = lean_ctor_get(x_83, 0); +lean_inc(x_88); +x_89 = lean_array_get_size(x_88); +lean_dec(x_88); +lean_inc(x_1); +x_90 = l_Lean_Parser_ident___elambda__1(x_1, x_83); +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_92 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_90); +x_93 = l_Lean_nullKind; +x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_89); +x_95 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_82); +x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_73, x_70); +lean_dec(x_70); +return x_97; +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_dec(x_91); lean_dec(x_1); -x_97 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_98 = l_Lean_Parser_ParserState_mkNode(x_77, x_97, x_76); -x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_71, x_66); -lean_dec(x_66); -return x_99; +x_98 = l_Lean_nullKind; +x_99 = l_Lean_Parser_ParserState_mkNode(x_90, x_98, x_89); +x_100 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_82); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_73, x_70); +lean_dec(x_70); +return x_102; } } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_77); +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_87); lean_dec(x_1); -x_100 = l_Array_shrink___main___rarg(x_78, x_76); -lean_inc(x_66); -if (lean_is_scalar(x_69)) { - x_101 = lean_alloc_ctor(0, 4, 0); -} else { - x_101 = x_69; +x_103 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_83, x_103, x_82); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_73, x_70); +lean_dec(x_70); +return x_105; } -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_66); -lean_ctor_set(x_101, 2, x_79); -lean_ctor_set(x_101, 3, x_80); -x_102 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_76); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_71, x_66); -lean_dec(x_66); -return x_104; } +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_dec(x_83); +lean_dec(x_1); +x_106 = l_Array_shrink___main___rarg(x_84, x_82); +x_107 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_107, 0, x_106); +lean_ctor_set(x_107, 1, x_81); +lean_ctor_set(x_107, 2, x_85); +lean_ctor_set(x_107, 3, x_86); +x_108 = l_Lean_Parser_Command_openHiding___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_107, x_108, x_82); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_73, x_70); +lean_dec(x_70); +return x_110; +} +} +} +else +{ +lean_object* x_143; +lean_dec(x_79); +lean_dec(x_1); +x_143 = l_Lean_Parser_mergeOrElseErrors(x_78, x_73, x_70); +lean_dec(x_70); +return x_143; } } } @@ -30465,16 +32616,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_openHiding___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_openHiding___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_openHiding___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_openHiding___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_openHiding___closed__4; +x_3 = l_Lean_Parser_Command_openHiding___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_openHiding___closed__6() { +lean_object* _init_l_Lean_Parser_Command_openHiding___closed__7() { _start: { lean_object* x_1; @@ -30482,12 +32643,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_openHiding___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_openHiding___closed__7() { +lean_object* _init_l_Lean_Parser_Command_openHiding___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_openHiding___closed__5; -x_2 = l_Lean_Parser_Command_openHiding___closed__6; +x_1 = l_Lean_Parser_Command_openHiding___closed__6; +x_2 = l_Lean_Parser_Command_openHiding___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -30498,7 +32659,7 @@ lean_object* _init_l_Lean_Parser_Command_openHiding() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_openHiding___closed__7; +x_1 = l_Lean_Parser_Command_openHiding___closed__8; return x_1; } } @@ -30639,149 +32800,180 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__6; -x_11 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__8; -x_12 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__13; -lean_inc(x_1); -x_13 = l_Lean_Parser_unicodeSymbolFnAux(x_10, x_11, x_12, x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = l_Lean_Parser_ident___elambda__1(x_1, x_13); -x_16 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_7); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_14); -lean_dec(x_1); -x_18 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_13, x_18, x_7); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_20 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_8, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_22 = lean_ctor_get(x_2, 0); -lean_inc(x_22); -x_23 = lean_array_get_size(x_22); -lean_dec(x_22); -x_24 = lean_ctor_get(x_2, 1); -lean_inc(x_24); lean_inc(x_1); -x_25 = lean_apply_2(x_4, x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_24); -lean_dec(x_23); -lean_dec(x_1); -return x_25; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__6; +x_14 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__8; +x_15 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__13; +lean_inc(x_1); +x_16 = l_Lean_Parser_unicodeSymbolFnAux(x_13, x_14, x_15, x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = l_Lean_Parser_ident___elambda__1(x_1, x_16); +x_19 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_10); +return x_20; } else { -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 0); +lean_object* x_21; lean_object* x_22; +lean_dec(x_17); +lean_dec(x_1); +x_21 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_16, x_21, x_10); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_12); +lean_dec(x_1); +x_23 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_11, x_23, x_10); +return x_24; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_25 = lean_ctor_get(x_2, 0); +lean_inc(x_25); +x_26 = lean_array_get_size(x_25); +lean_dec(x_25); +x_27 = lean_ctor_get(x_2, 1); lean_inc(x_27); -lean_dec(x_26); -x_28 = lean_ctor_get(x_25, 1); -lean_inc(x_28); -x_29 = lean_nat_dec_eq(x_28, x_24); -lean_dec(x_28); -if (x_29 == 0) +lean_inc(x_1); +x_28 = lean_apply_2(x_4, x_1, x_2); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { lean_dec(x_27); -lean_dec(x_24); -lean_dec(x_23); +lean_dec(x_26); lean_dec(x_1); -return x_25; +return x_28; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_inc(x_24); -x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); -lean_dec(x_23); -x_31 = lean_ctor_get(x_30, 0); +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +lean_dec(x_29); +x_31 = lean_ctor_get(x_28, 1); lean_inc(x_31); -x_32 = lean_array_get_size(x_31); +x_32 = lean_nat_dec_eq(x_31, x_27); lean_dec(x_31); -lean_inc(x_1); -x_33 = l_Lean_Parser_ident___elambda__1(x_1, x_30); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +if (x_32 == 0) { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__6; -x_36 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__8; -x_37 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__13; -lean_inc(x_1); -x_38 = l_Lean_Parser_unicodeSymbolFnAux(x_35, x_36, x_37, x_1, x_33); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = l_Lean_Parser_ident___elambda__1(x_1, x_38); -x_41 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_32); -x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_27, x_24); -lean_dec(x_24); -return x_43; +lean_dec(x_30); +lean_dec(x_27); +lean_dec(x_26); +lean_dec(x_1); +return x_28; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_dec(x_39); -lean_dec(x_1); -x_44 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_38, x_44, x_32); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_27, x_24); -lean_dec(x_24); -return x_46; -} -} -else +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_inc(x_27); +x_33 = l_Lean_Parser_ParserState_restore(x_28, x_26, x_27); +lean_dec(x_26); +x_34 = lean_unsigned_to_nat(1024u); +x_35 = l_Lean_Parser_checkPrecFn(x_34, x_1, x_33); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_34); -lean_dec(x_1); +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = lean_array_get_size(x_37); +lean_dec(x_37); +lean_inc(x_1); +x_39 = l_Lean_Parser_ident___elambda__1(x_1, x_35); +x_40 = lean_ctor_get(x_39, 3); +lean_inc(x_40); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__6; +x_42 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__8; +x_43 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__13; +lean_inc(x_1); +x_44 = l_Lean_Parser_unicodeSymbolFnAux(x_41, x_42, x_43, x_1, x_39); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_46 = l_Lean_Parser_ident___elambda__1(x_1, x_44); x_47 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_33, x_47, x_32); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_27, x_24); -lean_dec(x_24); +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_38); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_30, x_27); +lean_dec(x_27); return x_49; } +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_45); +lean_dec(x_1); +x_50 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_44, x_50, x_38); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_30, x_27); +lean_dec(x_27); +return x_52; +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_40); +lean_dec(x_1); +x_53 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_39, x_53, x_38); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_30, x_27); +lean_dec(x_27); +return x_55; +} +} +else +{ +lean_object* x_56; +lean_dec(x_36); +lean_dec(x_1); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_35, x_30, x_27); +lean_dec(x_27); +return x_56; +} } } } @@ -30834,16 +33026,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_openRenamingItem___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_openRenamingItem___closed__4; +x_3 = l_Lean_Parser_Command_openRenamingItem___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__6() { +lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__7() { _start: { lean_object* x_1; @@ -30851,12 +33053,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_openRenamingItem___elambd return x_1; } } -lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__7() { +lean_object* _init_l_Lean_Parser_Command_openRenamingItem___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_openRenamingItem___closed__5; -x_2 = l_Lean_Parser_Command_openRenamingItem___closed__6; +x_1 = l_Lean_Parser_Command_openRenamingItem___closed__6; +x_2 = l_Lean_Parser_Command_openRenamingItem___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -30867,7 +33069,7 @@ lean_object* _init_l_Lean_Parser_Command_openRenamingItem() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_openRenamingItem___closed__7; +x_1 = l_Lean_Parser_Command_openRenamingItem___closed__8; return x_1; } } @@ -31195,411 +33397,426 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_25; lean_object* x_26; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_25 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_25, 1); -lean_inc(x_27); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_28; lean_object* x_29; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_28 = l_Lean_Parser_tokenFn(x_1, x_25); +x_28 = l_Lean_Parser_ident___elambda__1(x_1, x_7); x_29 = lean_ctor_get(x_28, 3); lean_inc(x_29); if (lean_obj_tag(x_29) == 0) { -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_28, 0); +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_28, 1); lean_inc(x_30); -x_31 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_30); -lean_dec(x_30); -if (lean_obj_tag(x_31) == 2) -{ -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_1); +x_31 = l_Lean_Parser_tokenFn(x_1, x_28); +x_32 = lean_ctor_get(x_31, 3); lean_inc(x_32); -lean_dec(x_31); -x_33 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__6; -x_34 = lean_string_dec_eq(x_32, x_33); -lean_dec(x_32); -if (x_34 == 0) +if (lean_obj_tag(x_32) == 0) { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_ctor_get(x_36, 2); -lean_inc(x_38); -x_39 = lean_ctor_get(x_36, 3); -lean_inc(x_39); -x_9 = x_36; -x_10 = x_37; -x_11 = x_38; -x_12 = x_39; -goto block_24; -} -else +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_31, 0); +lean_inc(x_33); +x_34 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_33); +lean_dec(x_33); +if (lean_obj_tag(x_34) == 2) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_27); -x_40 = lean_ctor_get(x_28, 0); +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__6; +x_37 = lean_string_dec_eq(x_35, x_36); +lean_dec(x_35); +if (x_37 == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_38 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_31, x_38, x_30); +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -x_41 = lean_ctor_get(x_28, 2); +x_41 = lean_ctor_get(x_39, 2); lean_inc(x_41); -x_42 = lean_ctor_get(x_28, 3); +x_42 = lean_ctor_get(x_39, 3); lean_inc(x_42); -x_9 = x_28; -x_10 = x_40; -x_11 = x_41; -x_12 = x_42; -goto block_24; -} +x_12 = x_39; +x_13 = x_40; +x_14 = x_41; +x_15 = x_42; +goto block_27; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_31); -x_43 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_43, x_27); -x_45 = lean_ctor_get(x_44, 0); +lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_30); +x_43 = lean_ctor_get(x_31, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_31, 2); +lean_inc(x_44); +x_45 = lean_ctor_get(x_31, 3); lean_inc(x_45); -x_46 = lean_ctor_get(x_44, 2); -lean_inc(x_46); -x_47 = lean_ctor_get(x_44, 3); -lean_inc(x_47); -x_9 = x_44; -x_10 = x_45; -x_11 = x_46; -x_12 = x_47; -goto block_24; +x_12 = x_31; +x_13 = x_43; +x_14 = x_44; +x_15 = x_45; +goto block_27; } } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -lean_dec(x_29); -x_48 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_48, x_27); -x_50 = lean_ctor_get(x_49, 0); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_dec(x_34); +x_46 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_31, x_46, x_30); +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_47, 2); +lean_inc(x_49); +x_50 = lean_ctor_get(x_47, 3); lean_inc(x_50); -x_51 = lean_ctor_get(x_49, 2); -lean_inc(x_51); -x_52 = lean_ctor_get(x_49, 3); -lean_inc(x_52); -x_9 = x_49; -x_10 = x_50; -x_11 = x_51; -x_12 = x_52; -goto block_24; +x_12 = x_47; +x_13 = x_48; +x_14 = x_49; +x_15 = x_50; +goto block_27; } } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_26); -x_53 = lean_ctor_get(x_25, 0); +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_32); +x_51 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_31, x_51, x_30); +x_53 = lean_ctor_get(x_52, 0); lean_inc(x_53); -x_54 = lean_ctor_get(x_25, 2); +x_54 = lean_ctor_get(x_52, 2); lean_inc(x_54); -x_55 = lean_ctor_get(x_25, 3); +x_55 = lean_ctor_get(x_52, 3); lean_inc(x_55); -x_9 = x_25; -x_10 = x_53; -x_11 = x_54; -x_12 = x_55; -goto block_24; -} -block_24: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = lean_ctor_get(x_9, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = 0; -x_15 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_openRenaming___elambda__1___spec__1(x_14, x_14, x_1, x_9); -x_16 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_8); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_13); -lean_dec(x_1); -x_18 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_9, x_18, x_8); -return x_19; +x_12 = x_52; +x_13 = x_53; +x_14 = x_54; +x_15 = x_55; +goto block_27; } } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_9); -lean_dec(x_1); -x_20 = l_Array_shrink___main___rarg(x_10, x_8); -x_21 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_7); -lean_ctor_set(x_21, 2, x_11); -lean_ctor_set(x_21, 3, x_12); -x_22 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_8); -return x_23; -} -} -} -else -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_56 = lean_ctor_get(x_2, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; +lean_dec(x_29); +x_56 = lean_ctor_get(x_28, 0); lean_inc(x_56); -x_57 = lean_ctor_get(x_2, 1); +x_57 = lean_ctor_get(x_28, 2); lean_inc(x_57); -x_58 = lean_array_get_size(x_56); -lean_dec(x_56); -lean_inc(x_2); -lean_inc(x_1); -x_59 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_60 = x_2; -} else { - lean_dec_ref(x_2); - x_60 = lean_box(0); +x_58 = lean_ctor_get(x_28, 3); +lean_inc(x_58); +x_12 = x_28; +x_13 = x_56; +x_14 = x_57; +x_15 = x_58; +goto block_27; } -x_61 = lean_ctor_get(x_59, 3); +block_27: +{ +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_10); +x_16 = lean_ctor_get(x_12, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = 0; +x_18 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_openRenaming___elambda__1___spec__1(x_17, x_17, x_1, x_12); +x_19 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_11); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_16); +lean_dec(x_1); +x_21 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_12, x_21, x_11); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_12); +lean_dec(x_1); +x_23 = l_Array_shrink___main___rarg(x_13, x_11); +x_24 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_10); +lean_ctor_set(x_24, 2, x_14); +lean_ctor_set(x_24, 3, x_15); +x_25 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_11); +return x_26; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_59 = lean_ctor_get(x_2, 0); +lean_inc(x_59); +x_60 = lean_array_get_size(x_59); +lean_dec(x_59); +x_61 = lean_ctor_get(x_2, 1); lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_60); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_1); -return x_59; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); -lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_59, 1); +lean_inc(x_1); +x_62 = lean_apply_2(x_4, x_1, x_2); +x_63 = lean_ctor_get(x_62, 3); lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_57); +if (lean_obj_tag(x_63) == 0) +{ +lean_dec(x_61); +lean_dec(x_60); +lean_dec(x_1); +return x_62; +} +else +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 0); +lean_inc(x_64); lean_dec(x_63); -if (x_64 == 0) +x_65 = lean_ctor_get(x_62, 1); +lean_inc(x_65); +x_66 = lean_nat_dec_eq(x_65, x_61); +lean_dec(x_65); +if (x_66 == 0) { -lean_dec(x_62); +lean_dec(x_64); +lean_dec(x_61); lean_dec(x_60); -lean_dec(x_58); -lean_dec(x_57); lean_dec(x_1); -return x_59; +return x_62; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_87; lean_object* x_88; -lean_inc(x_57); -x_65 = l_Lean_Parser_ParserState_restore(x_59, x_58, x_57); -lean_dec(x_58); -x_66 = lean_ctor_get(x_65, 0); -lean_inc(x_66); -x_67 = lean_array_get_size(x_66); -lean_dec(x_66); -lean_inc(x_1); -x_87 = l_Lean_Parser_ident___elambda__1(x_1, x_65); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_87, 1); -lean_inc(x_89); -lean_inc(x_1); -x_90 = l_Lean_Parser_tokenFn(x_1, x_87); -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; -x_92 = lean_ctor_get(x_90, 0); -lean_inc(x_92); -x_93 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_92); -lean_dec(x_92); -if (lean_obj_tag(x_93) == 2) -{ -lean_object* x_94; lean_object* x_95; uint8_t x_96; -x_94 = lean_ctor_get(x_93, 1); -lean_inc(x_94); -lean_dec(x_93); -x_95 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__6; -x_96 = lean_string_dec_eq(x_94, x_95); -lean_dec(x_94); -if (x_96 == 0) -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_97 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_97, x_89); -x_99 = lean_ctor_get(x_98, 0); -lean_inc(x_99); -x_100 = lean_ctor_get(x_98, 2); -lean_inc(x_100); -x_101 = lean_ctor_get(x_98, 3); -lean_inc(x_101); -x_68 = x_98; -x_69 = x_99; -x_70 = x_100; -x_71 = x_101; -goto block_86; -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_89); -x_102 = lean_ctor_get(x_90, 0); -lean_inc(x_102); -x_103 = lean_ctor_get(x_90, 2); -lean_inc(x_103); -x_104 = lean_ctor_get(x_90, 3); -lean_inc(x_104); -x_68 = x_90; -x_69 = x_102; -x_70 = x_103; -x_71 = x_104; -goto block_86; -} -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_93); -x_105 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_105, x_89); -x_107 = lean_ctor_get(x_106, 0); -lean_inc(x_107); -x_108 = lean_ctor_get(x_106, 2); -lean_inc(x_108); -x_109 = lean_ctor_get(x_106, 3); -lean_inc(x_109); -x_68 = x_106; -x_69 = x_107; -x_70 = x_108; -x_71 = x_109; -goto block_86; -} -} -else -{ -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_91); -x_110 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_110, x_89); -x_112 = lean_ctor_get(x_111, 0); -lean_inc(x_112); -x_113 = lean_ctor_get(x_111, 2); -lean_inc(x_113); -x_114 = lean_ctor_get(x_111, 3); -lean_inc(x_114); -x_68 = x_111; -x_69 = x_112; -x_70 = x_113; -x_71 = x_114; -goto block_86; -} -} -else -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_88); -x_115 = lean_ctor_get(x_87, 0); -lean_inc(x_115); -x_116 = lean_ctor_get(x_87, 2); -lean_inc(x_116); -x_117 = lean_ctor_get(x_87, 3); -lean_inc(x_117); -x_68 = x_87; -x_69 = x_115; -x_70 = x_116; -x_71 = x_117; -goto block_86; -} -block_86: -{ -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; -lean_dec(x_70); -lean_dec(x_69); +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_inc(x_61); +x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); lean_dec(x_60); -x_72 = lean_ctor_get(x_68, 3); +x_68 = lean_unsigned_to_nat(1024u); +x_69 = l_Lean_Parser_checkPrecFn(x_68, x_1, x_67); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_93; lean_object* x_94; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_69, 1); lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) +x_73 = lean_array_get_size(x_71); +lean_dec(x_71); +lean_inc(x_1); +x_93 = l_Lean_Parser_ident___elambda__1(x_1, x_69); +x_94 = lean_ctor_get(x_93, 3); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) { -uint8_t x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_73 = 0; -x_74 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_openRenaming___elambda__1___spec__1(x_73, x_73, x_1, x_68); -x_75 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_67); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_62, x_57); -lean_dec(x_57); -return x_77; +lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); +lean_inc(x_1); +x_96 = l_Lean_Parser_tokenFn(x_1, x_93); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +x_99 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_98); +lean_dec(x_98); +if (lean_obj_tag(x_99) == 2) +{ +lean_object* x_100; lean_object* x_101; uint8_t x_102; +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +lean_dec(x_99); +x_101 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__6; +x_102 = lean_string_dec_eq(x_100, x_101); +lean_dec(x_100); +if (x_102 == 0) +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_103 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_96, x_103, x_95); +x_105 = lean_ctor_get(x_104, 0); +lean_inc(x_105); +x_106 = lean_ctor_get(x_104, 2); +lean_inc(x_106); +x_107 = lean_ctor_get(x_104, 3); +lean_inc(x_107); +x_74 = x_104; +x_75 = x_105; +x_76 = x_106; +x_77 = x_107; +goto block_92; } else { -lean_object* x_78; lean_object* x_79; lean_object* x_80; +lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_dec(x_95); +x_108 = lean_ctor_get(x_96, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_96, 2); +lean_inc(x_109); +x_110 = lean_ctor_get(x_96, 3); +lean_inc(x_110); +x_74 = x_96; +x_75 = x_108; +x_76 = x_109; +x_77 = x_110; +goto block_92; +} +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_99); +x_111 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_112 = l_Lean_Parser_ParserState_mkErrorsAt(x_96, x_111, x_95); +x_113 = lean_ctor_get(x_112, 0); +lean_inc(x_113); +x_114 = lean_ctor_get(x_112, 2); +lean_inc(x_114); +x_115 = lean_ctor_get(x_112, 3); +lean_inc(x_115); +x_74 = x_112; +x_75 = x_113; +x_76 = x_114; +x_77 = x_115; +goto block_92; +} +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_97); +x_116 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__9; +x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_96, x_116, x_95); +x_118 = lean_ctor_get(x_117, 0); +lean_inc(x_118); +x_119 = lean_ctor_get(x_117, 2); +lean_inc(x_119); +x_120 = lean_ctor_get(x_117, 3); +lean_inc(x_120); +x_74 = x_117; +x_75 = x_118; +x_76 = x_119; +x_77 = x_120; +goto block_92; +} +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_94); +x_121 = lean_ctor_get(x_93, 0); +lean_inc(x_121); +x_122 = lean_ctor_get(x_93, 2); +lean_inc(x_122); +x_123 = lean_ctor_get(x_93, 3); +lean_inc(x_123); +x_74 = x_93; +x_75 = x_121; +x_76 = x_122; +x_77 = x_123; +goto block_92; +} +block_92: +{ +if (lean_obj_tag(x_77) == 0) +{ +lean_object* x_78; +lean_dec(x_76); +lean_dec(x_75); lean_dec(x_72); +x_78 = lean_ctor_get(x_74, 3); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) +{ +uint8_t x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_79 = 0; +x_80 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Command_openRenaming___elambda__1___spec__1(x_79, x_79, x_1, x_74); +x_81 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_82 = l_Lean_Parser_ParserState_mkNode(x_80, x_81, x_73); +x_83 = l_Lean_Parser_mergeOrElseErrors(x_82, x_64, x_61); +lean_dec(x_61); +return x_83; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +lean_dec(x_78); lean_dec(x_1); -x_78 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_79 = l_Lean_Parser_ParserState_mkNode(x_68, x_78, x_67); -x_80 = l_Lean_Parser_mergeOrElseErrors(x_79, x_62, x_57); -lean_dec(x_57); -return x_80; +x_84 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_85 = l_Lean_Parser_ParserState_mkNode(x_74, x_84, x_73); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_64, x_61); +lean_dec(x_61); +return x_86; } } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_68); +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_74); lean_dec(x_1); -x_81 = l_Array_shrink___main___rarg(x_69, x_67); -lean_inc(x_57); -if (lean_is_scalar(x_60)) { - x_82 = lean_alloc_ctor(0, 4, 0); -} else { - x_82 = x_60; +x_87 = l_Array_shrink___main___rarg(x_75, x_73); +x_88 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_72); +lean_ctor_set(x_88, 2, x_76); +lean_ctor_set(x_88, 3, x_77); +x_89 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_73); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_64, x_61); +lean_dec(x_61); +return x_91; } -lean_ctor_set(x_82, 0, x_81); -lean_ctor_set(x_82, 1, x_57); -lean_ctor_set(x_82, 2, x_70); -lean_ctor_set(x_82, 3, x_71); -x_83 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_82, x_83, x_67); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_62, x_57); -lean_dec(x_57); -return x_85; } } +else +{ +lean_object* x_124; +lean_dec(x_70); +lean_dec(x_1); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_69, x_64, x_61); +lean_dec(x_61); +return x_124; +} } } } @@ -31661,16 +33878,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_openRenaming___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_openRenaming___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_openRenaming___closed__5; +x_3 = l_Lean_Parser_Command_openRenaming___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__7() { +lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__8() { _start: { lean_object* x_1; @@ -31678,12 +33905,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_openRenaming___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__8() { +lean_object* _init_l_Lean_Parser_Command_openRenaming___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_openRenaming___closed__6; -x_2 = l_Lean_Parser_Command_openRenaming___closed__7; +x_1 = l_Lean_Parser_Command_openRenaming___closed__7; +x_2 = l_Lean_Parser_Command_openRenaming___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -31694,7 +33921,7 @@ lean_object* _init_l_Lean_Parser_Command_openRenaming() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_openRenaming___closed__8; +x_1 = l_Lean_Parser_Command_openRenaming___closed__9; return x_1; } } @@ -31775,621 +34002,636 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_57; lean_object* x_58; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_57 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_57, 1); -lean_inc(x_59); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_60; lean_object* x_61; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_57); +x_60 = l_Lean_Parser_ident___elambda__1(x_1, x_7); x_61 = lean_ctor_get(x_60, 3); lean_inc(x_61); if (lean_obj_tag(x_61) == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_60, 1); lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); -lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_1); +x_63 = l_Lean_Parser_tokenFn(x_1, x_60); +x_64 = lean_ctor_get(x_63, 3); lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) +if (lean_obj_tag(x_64) == 0) { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_67 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); -x_69 = lean_ctor_get(x_68, 0); -lean_inc(x_69); -x_70 = lean_ctor_get(x_68, 2); -lean_inc(x_70); -x_71 = lean_ctor_get(x_68, 3); -lean_inc(x_71); -x_36 = x_68; -x_37 = x_69; -x_38 = x_70; -x_39 = x_71; -goto block_56; -} -else +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_63, 0); +lean_inc(x_65); +x_66 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_65); +lean_dec(x_65); +if (lean_obj_tag(x_66) == 2) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_dec(x_59); -x_72 = lean_ctor_get(x_60, 0); +lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_67 = lean_ctor_get(x_66, 1); +lean_inc(x_67); +lean_dec(x_66); +x_68 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_69 = lean_string_dec_eq(x_67, x_68); +lean_dec(x_67); +if (x_69 == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_70 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_70, x_62); +x_72 = lean_ctor_get(x_71, 0); lean_inc(x_72); -x_73 = lean_ctor_get(x_60, 2); +x_73 = lean_ctor_get(x_71, 2); lean_inc(x_73); -x_74 = lean_ctor_get(x_60, 3); +x_74 = lean_ctor_get(x_71, 3); lean_inc(x_74); -x_36 = x_60; -x_37 = x_72; -x_38 = x_73; -x_39 = x_74; -goto block_56; -} +x_39 = x_71; +x_40 = x_72; +x_41 = x_73; +x_42 = x_74; +goto block_59; } else { -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_dec(x_63); -x_75 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_75, x_59); -x_77 = lean_ctor_get(x_76, 0); +lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_62); +x_75 = lean_ctor_get(x_63, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_63, 2); +lean_inc(x_76); +x_77 = lean_ctor_get(x_63, 3); lean_inc(x_77); -x_78 = lean_ctor_get(x_76, 2); -lean_inc(x_78); -x_79 = lean_ctor_get(x_76, 3); -lean_inc(x_79); -x_36 = x_76; -x_37 = x_77; -x_38 = x_78; -x_39 = x_79; -goto block_56; +x_39 = x_63; +x_40 = x_75; +x_41 = x_76; +x_42 = x_77; +goto block_59; } } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -lean_dec(x_61); -x_80 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_80, x_59); -x_82 = lean_ctor_get(x_81, 0); +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_dec(x_66); +x_78 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_78, x_62); +x_80 = lean_ctor_get(x_79, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_79, 2); +lean_inc(x_81); +x_82 = lean_ctor_get(x_79, 3); lean_inc(x_82); -x_83 = lean_ctor_get(x_81, 2); -lean_inc(x_83); -x_84 = lean_ctor_get(x_81, 3); -lean_inc(x_84); -x_36 = x_81; -x_37 = x_82; -x_38 = x_83; -x_39 = x_84; -goto block_56; +x_39 = x_79; +x_40 = x_80; +x_41 = x_81; +x_42 = x_82; +goto block_59; } } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_58); -x_85 = lean_ctor_get(x_57, 0); +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_64); +x_83 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_83, x_62); +x_85 = lean_ctor_get(x_84, 0); lean_inc(x_85); -x_86 = lean_ctor_get(x_57, 2); +x_86 = lean_ctor_get(x_84, 2); lean_inc(x_86); -x_87 = lean_ctor_get(x_57, 3); +x_87 = lean_ctor_get(x_84, 3); lean_inc(x_87); -x_36 = x_57; -x_37 = x_85; -x_38 = x_86; -x_39 = x_87; -goto block_56; +x_39 = x_84; +x_40 = x_85; +x_41 = x_86; +x_42 = x_87; +goto block_59; } -block_35: +} +else { -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_dec(x_61); +x_88 = lean_ctor_get(x_60, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_60, 2); +lean_inc(x_89); +x_90 = lean_ctor_get(x_60, 3); +lean_inc(x_90); +x_39 = x_60; +x_40 = x_88; +x_41 = x_89; +x_42 = x_90; +goto block_59; +} +block_38: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_11 = lean_ctor_get(x_9, 1); -lean_inc(x_11); -x_12 = l_Lean_Parser_tokenFn(x_1, x_9); +lean_object* x_13; x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_12, 0); +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 1); lean_inc(x_14); -x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); -lean_dec(x_14); -if (lean_obj_tag(x_15) == 2) -{ -lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_16 = lean_ctor_get(x_15, 1); +x_15 = l_Lean_Parser_tokenFn(x_1, x_12); +x_16 = lean_ctor_get(x_15, 3); lean_inc(x_16); -lean_dec(x_15); -x_17 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_18 = lean_string_dec_eq(x_16, x_17); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); +lean_dec(x_17); +if (lean_obj_tag(x_18) == 2) +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_21 = lean_string_dec_eq(x_19, x_20); +lean_dec(x_19); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); +x_24 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_14); +x_26 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_11); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_18); +x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); +x_30 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_dec(x_16); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); -x_21 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_8); -return x_22; -} -else -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_11); -x_23 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_8); -return x_24; +x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); +x_34 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); +return x_35; } } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -x_25 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); -x_27 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_8); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_object* x_36; lean_object* x_37; lean_dec(x_13); -x_29 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); -x_31 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_8); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_10); lean_dec(x_1); -x_33 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_9, x_33, x_8); -return x_34; +x_36 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_11); +return x_37; } } -block_56: +block_59: { -if (lean_obj_tag(x_39) == 0) +if (lean_obj_tag(x_42) == 0) { -lean_object* x_40; -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_7); -x_40 = lean_ctor_get(x_36, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_41 = lean_ctor_get(x_36, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +lean_object* x_43; lean_dec(x_41); -lean_inc(x_1); -x_43 = l_Lean_Parser_ident___elambda__1(x_1, x_36); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_inc(x_1); -x_45 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_43); -x_46 = l_Lean_nullKind; -x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_42); -x_9 = x_47; -goto block_35; -} -else -{ -lean_object* x_48; lean_object* x_49; -lean_dec(x_44); -x_48 = l_Lean_nullKind; -x_49 = l_Lean_Parser_ParserState_mkNode(x_43, x_48, x_42); -x_9 = x_49; -goto block_35; -} -} -else -{ -lean_object* x_50; lean_object* x_51; lean_dec(x_40); -lean_dec(x_1); -x_50 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_36, x_50, x_8); -return x_51; -} -} -else +lean_dec(x_10); +x_43 = lean_ctor_get(x_39, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_36); -lean_dec(x_1); -x_52 = l_Array_shrink___main___rarg(x_37, x_8); -x_53 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_7); -lean_ctor_set(x_53, 2, x_38); -lean_ctor_set(x_53, 3, x_39); -x_54 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_8); -return x_55; -} -} -} -else -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_88 = lean_ctor_get(x_2, 0); -lean_inc(x_88); -x_89 = lean_ctor_get(x_2, 1); -lean_inc(x_89); -x_90 = lean_array_get_size(x_88); -lean_dec(x_88); -lean_inc(x_2); +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = lean_ctor_get(x_39, 0); +lean_inc(x_44); +x_45 = lean_array_get_size(x_44); +lean_dec(x_44); lean_inc(x_1); -x_91 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_92 = x_2; -} else { - lean_dec_ref(x_2); - x_92 = lean_box(0); +x_46 = l_Lean_Parser_ident___elambda__1(x_1, x_39); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_inc(x_1); +x_48 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_46); +x_49 = l_Lean_nullKind; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_45); +x_12 = x_50; +goto block_38; } -x_93 = lean_ctor_get(x_91, 3); +else +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_47); +x_51 = l_Lean_nullKind; +x_52 = l_Lean_Parser_ParserState_mkNode(x_46, x_51, x_45); +x_12 = x_52; +goto block_38; +} +} +else +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_43); +lean_dec(x_1); +x_53 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_39, x_53, x_11); +return x_54; +} +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +lean_dec(x_39); +lean_dec(x_1); +x_55 = l_Array_shrink___main___rarg(x_40, x_11); +x_56 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_56, 0, x_55); +lean_ctor_set(x_56, 1, x_10); +lean_ctor_set(x_56, 2, x_41); +lean_ctor_set(x_56, 3, x_42); +x_57 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_11); +return x_58; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_91 = lean_ctor_get(x_2, 0); +lean_inc(x_91); +x_92 = lean_array_get_size(x_91); +lean_dec(x_91); +x_93 = lean_ctor_get(x_2, 1); lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) -{ -lean_dec(x_92); -lean_dec(x_90); -lean_dec(x_89); -lean_dec(x_1); -return x_91; -} -else -{ -lean_object* x_94; lean_object* x_95; uint8_t x_96; -x_94 = lean_ctor_get(x_93, 0); -lean_inc(x_94); -lean_dec(x_93); -x_95 = lean_ctor_get(x_91, 1); +lean_inc(x_1); +x_94 = lean_apply_2(x_4, x_1, x_2); +x_95 = lean_ctor_get(x_94, 3); lean_inc(x_95); -x_96 = lean_nat_dec_eq(x_95, x_89); +if (lean_obj_tag(x_95) == 0) +{ +lean_dec(x_93); +lean_dec(x_92); +lean_dec(x_1); +return x_94; +} +else +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = lean_ctor_get(x_95, 0); +lean_inc(x_96); lean_dec(x_95); -if (x_96 == 0) +x_97 = lean_ctor_get(x_94, 1); +lean_inc(x_97); +x_98 = lean_nat_dec_eq(x_97, x_93); +lean_dec(x_97); +if (x_98 == 0) { -lean_dec(x_94); +lean_dec(x_96); +lean_dec(x_93); lean_dec(x_92); -lean_dec(x_90); -lean_dec(x_89); lean_dec(x_1); -return x_91; +return x_94; } else { -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_155; lean_object* x_156; -lean_inc(x_89); -x_97 = l_Lean_Parser_ParserState_restore(x_91, x_90, x_89); -lean_dec(x_90); -x_98 = lean_ctor_get(x_97, 0); -lean_inc(x_98); -x_99 = lean_array_get_size(x_98); -lean_dec(x_98); -lean_inc(x_1); -x_155 = l_Lean_Parser_ident___elambda__1(x_1, x_97); -x_156 = lean_ctor_get(x_155, 3); -lean_inc(x_156); -if (lean_obj_tag(x_156) == 0) -{ -lean_object* x_157; lean_object* x_158; lean_object* x_159; -x_157 = lean_ctor_get(x_155, 1); -lean_inc(x_157); -lean_inc(x_1); -x_158 = l_Lean_Parser_tokenFn(x_1, x_155); -x_159 = lean_ctor_get(x_158, 3); -lean_inc(x_159); -if (lean_obj_tag(x_159) == 0) -{ -lean_object* x_160; lean_object* x_161; -x_160 = lean_ctor_get(x_158, 0); -lean_inc(x_160); -x_161 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_160); -lean_dec(x_160); -if (lean_obj_tag(x_161) == 2) -{ -lean_object* x_162; lean_object* x_163; uint8_t x_164; -x_162 = lean_ctor_get(x_161, 1); -lean_inc(x_162); -lean_dec(x_161); -x_163 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_164 = lean_string_dec_eq(x_162, x_163); -lean_dec(x_162); -if (x_164 == 0) -{ -lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; -x_165 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_165, x_157); -x_167 = lean_ctor_get(x_166, 0); -lean_inc(x_167); -x_168 = lean_ctor_get(x_166, 2); -lean_inc(x_168); -x_169 = lean_ctor_get(x_166, 3); -lean_inc(x_169); -x_132 = x_166; -x_133 = x_167; -x_134 = x_168; -x_135 = x_169; -goto block_154; -} -else -{ -lean_object* x_170; lean_object* x_171; lean_object* x_172; -lean_dec(x_157); -x_170 = lean_ctor_get(x_158, 0); -lean_inc(x_170); -x_171 = lean_ctor_get(x_158, 2); -lean_inc(x_171); -x_172 = lean_ctor_get(x_158, 3); -lean_inc(x_172); -x_132 = x_158; -x_133 = x_170; -x_134 = x_171; -x_135 = x_172; -goto block_154; -} -} -else -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; -lean_dec(x_161); -x_173 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_173, x_157); -x_175 = lean_ctor_get(x_174, 0); -lean_inc(x_175); -x_176 = lean_ctor_get(x_174, 2); -lean_inc(x_176); -x_177 = lean_ctor_get(x_174, 3); -lean_inc(x_177); -x_132 = x_174; -x_133 = x_175; -x_134 = x_176; -x_135 = x_177; -goto block_154; -} -} -else -{ -lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; -lean_dec(x_159); -x_178 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_179 = l_Lean_Parser_ParserState_mkErrorsAt(x_158, x_178, x_157); -x_180 = lean_ctor_get(x_179, 0); -lean_inc(x_180); -x_181 = lean_ctor_get(x_179, 2); -lean_inc(x_181); -x_182 = lean_ctor_get(x_179, 3); -lean_inc(x_182); -x_132 = x_179; -x_133 = x_180; -x_134 = x_181; -x_135 = x_182; -goto block_154; -} -} -else -{ -lean_object* x_183; lean_object* x_184; lean_object* x_185; -lean_dec(x_156); -x_183 = lean_ctor_get(x_155, 0); -lean_inc(x_183); -x_184 = lean_ctor_get(x_155, 2); -lean_inc(x_184); -x_185 = lean_ctor_get(x_155, 3); -lean_inc(x_185); -x_132 = x_155; -x_133 = x_183; -x_134 = x_184; -x_135 = x_185; -goto block_154; -} -block_131: -{ -lean_object* x_101; -x_101 = lean_ctor_get(x_100, 3); -lean_inc(x_101); -if (lean_obj_tag(x_101) == 0) -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_102 = lean_ctor_get(x_100, 1); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_inc(x_93); +x_99 = l_Lean_Parser_ParserState_restore(x_94, x_92, x_93); +lean_dec(x_92); +x_100 = lean_unsigned_to_nat(1024u); +x_101 = l_Lean_Parser_checkPrecFn(x_100, x_1, x_99); +x_102 = lean_ctor_get(x_101, 3); lean_inc(x_102); -x_103 = l_Lean_Parser_tokenFn(x_1, x_100); -x_104 = lean_ctor_get(x_103, 3); +if (lean_obj_tag(x_102) == 0) +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_161; lean_object* x_162; +x_103 = lean_ctor_get(x_101, 0); +lean_inc(x_103); +x_104 = lean_ctor_get(x_101, 1); lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) +x_105 = lean_array_get_size(x_103); +lean_dec(x_103); +lean_inc(x_1); +x_161 = l_Lean_Parser_ident___elambda__1(x_1, x_101); +x_162 = lean_ctor_get(x_161, 3); +lean_inc(x_162); +if (lean_obj_tag(x_162) == 0) { -lean_object* x_105; lean_object* x_106; -x_105 = lean_ctor_get(x_103, 0); -lean_inc(x_105); -x_106 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_105); -lean_dec(x_105); -if (lean_obj_tag(x_106) == 2) +lean_object* x_163; lean_object* x_164; lean_object* x_165; +x_163 = lean_ctor_get(x_161, 1); +lean_inc(x_163); +lean_inc(x_1); +x_164 = l_Lean_Parser_tokenFn(x_1, x_161); +x_165 = lean_ctor_get(x_164, 3); +lean_inc(x_165); +if (lean_obj_tag(x_165) == 0) { -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = lean_ctor_get(x_106, 1); +lean_object* x_166; lean_object* x_167; +x_166 = lean_ctor_get(x_164, 0); +lean_inc(x_166); +x_167 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_166); +lean_dec(x_166); +if (lean_obj_tag(x_167) == 2) +{ +lean_object* x_168; lean_object* x_169; uint8_t x_170; +x_168 = lean_ctor_get(x_167, 1); +lean_inc(x_168); +lean_dec(x_167); +x_169 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_170 = lean_string_dec_eq(x_168, x_169); +lean_dec(x_168); +if (x_170 == 0) +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; +x_171 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_172 = l_Lean_Parser_ParserState_mkErrorsAt(x_164, x_171, x_163); +x_173 = lean_ctor_get(x_172, 0); +lean_inc(x_173); +x_174 = lean_ctor_get(x_172, 2); +lean_inc(x_174); +x_175 = lean_ctor_get(x_172, 3); +lean_inc(x_175); +x_138 = x_172; +x_139 = x_173; +x_140 = x_174; +x_141 = x_175; +goto block_160; +} +else +{ +lean_object* x_176; lean_object* x_177; lean_object* x_178; +lean_dec(x_163); +x_176 = lean_ctor_get(x_164, 0); +lean_inc(x_176); +x_177 = lean_ctor_get(x_164, 2); +lean_inc(x_177); +x_178 = lean_ctor_get(x_164, 3); +lean_inc(x_178); +x_138 = x_164; +x_139 = x_176; +x_140 = x_177; +x_141 = x_178; +goto block_160; +} +} +else +{ +lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; +lean_dec(x_167); +x_179 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_180 = l_Lean_Parser_ParserState_mkErrorsAt(x_164, x_179, x_163); +x_181 = lean_ctor_get(x_180, 0); +lean_inc(x_181); +x_182 = lean_ctor_get(x_180, 2); +lean_inc(x_182); +x_183 = lean_ctor_get(x_180, 3); +lean_inc(x_183); +x_138 = x_180; +x_139 = x_181; +x_140 = x_182; +x_141 = x_183; +goto block_160; +} +} +else +{ +lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; +lean_dec(x_165); +x_184 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_164, x_184, x_163); +x_186 = lean_ctor_get(x_185, 0); +lean_inc(x_186); +x_187 = lean_ctor_get(x_185, 2); +lean_inc(x_187); +x_188 = lean_ctor_get(x_185, 3); +lean_inc(x_188); +x_138 = x_185; +x_139 = x_186; +x_140 = x_187; +x_141 = x_188; +goto block_160; +} +} +else +{ +lean_object* x_189; lean_object* x_190; lean_object* x_191; +lean_dec(x_162); +x_189 = lean_ctor_get(x_161, 0); +lean_inc(x_189); +x_190 = lean_ctor_get(x_161, 2); +lean_inc(x_190); +x_191 = lean_ctor_get(x_161, 3); +lean_inc(x_191); +x_138 = x_161; +x_139 = x_189; +x_140 = x_190; +x_141 = x_191; +goto block_160; +} +block_137: +{ +lean_object* x_107; +x_107 = lean_ctor_get(x_106, 3); lean_inc(x_107); -lean_dec(x_106); -x_108 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_109 = lean_string_dec_eq(x_107, x_108); +if (lean_obj_tag(x_107) == 0) +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +x_109 = l_Lean_Parser_tokenFn(x_1, x_106); +x_110 = lean_ctor_get(x_109, 3); +lean_inc(x_110); +if (lean_obj_tag(x_110) == 0) +{ +lean_object* x_111; lean_object* x_112; +x_111 = lean_ctor_get(x_109, 0); +lean_inc(x_111); +x_112 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_111); +lean_dec(x_111); +if (lean_obj_tag(x_112) == 2) +{ +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = lean_ctor_get(x_112, 1); +lean_inc(x_113); +lean_dec(x_112); +x_114 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_115 = lean_string_dec_eq(x_113, x_114); +lean_dec(x_113); +if (x_115 == 0) +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_116 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_116, x_108); +x_118 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_105); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_96, x_93); +lean_dec(x_93); +return x_120; +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_108); +x_121 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_109, x_121, x_105); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_96, x_93); +lean_dec(x_93); +return x_123; +} +} +else +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_112); +x_124 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_125 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_124, x_108); +x_126 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_127 = l_Lean_Parser_ParserState_mkNode(x_125, x_126, x_105); +x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_96, x_93); +lean_dec(x_93); +return x_128; +} +} +else +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; +lean_dec(x_110); +x_129 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_130 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_129, x_108); +x_131 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_132 = l_Lean_Parser_ParserState_mkNode(x_130, x_131, x_105); +x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_96, x_93); +lean_dec(x_93); +return x_133; +} +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_dec(x_107); -if (x_109 == 0) -{ -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -x_110 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_110, x_102); -x_112 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_99); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_94, x_89); -lean_dec(x_89); -return x_114; -} -else -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_102); -x_115 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_116 = l_Lean_Parser_ParserState_mkNode(x_103, x_115, x_99); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_94, x_89); -lean_dec(x_89); -return x_117; -} -} -else -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_106); -x_118 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_119 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_118, x_102); -x_120 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_99); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_94, x_89); -lean_dec(x_89); -return x_122; -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; -lean_dec(x_104); -x_123 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_123, x_102); -x_125 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_99); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_94, x_89); -lean_dec(x_89); -return x_127; -} -} -else -{ -lean_object* x_128; lean_object* x_129; lean_object* x_130; -lean_dec(x_101); lean_dec(x_1); -x_128 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_129 = l_Lean_Parser_ParserState_mkNode(x_100, x_128, x_99); -x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_94, x_89); -lean_dec(x_89); -return x_130; +x_134 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_135 = l_Lean_Parser_ParserState_mkNode(x_106, x_134, x_105); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_96, x_93); +lean_dec(x_93); +return x_136; } } -block_154: +block_160: { -if (lean_obj_tag(x_135) == 0) +if (lean_obj_tag(x_141) == 0) { -lean_object* x_136; -lean_dec(x_134); -lean_dec(x_133); -lean_dec(x_92); -x_136 = lean_ctor_get(x_132, 3); -lean_inc(x_136); -if (lean_obj_tag(x_136) == 0) -{ -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; -x_137 = lean_ctor_get(x_132, 0); -lean_inc(x_137); -x_138 = lean_array_get_size(x_137); -lean_dec(x_137); -lean_inc(x_1); -x_139 = l_Lean_Parser_ident___elambda__1(x_1, x_132); -x_140 = lean_ctor_get(x_139, 3); -lean_inc(x_140); -if (lean_obj_tag(x_140) == 0) -{ -lean_object* x_141; lean_object* x_142; lean_object* x_143; -lean_inc(x_1); -x_141 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_139); -x_142 = l_Lean_nullKind; -x_143 = l_Lean_Parser_ParserState_mkNode(x_141, x_142, x_138); -x_100 = x_143; -goto block_131; -} -else -{ -lean_object* x_144; lean_object* x_145; +lean_object* x_142; lean_dec(x_140); -x_144 = l_Lean_nullKind; -x_145 = l_Lean_Parser_ParserState_mkNode(x_139, x_144, x_138); -x_100 = x_145; -goto block_131; +lean_dec(x_139); +lean_dec(x_104); +x_142 = lean_ctor_get(x_138, 3); +lean_inc(x_142); +if (lean_obj_tag(x_142) == 0) +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; +x_143 = lean_ctor_get(x_138, 0); +lean_inc(x_143); +x_144 = lean_array_get_size(x_143); +lean_dec(x_143); +lean_inc(x_1); +x_145 = l_Lean_Parser_ident___elambda__1(x_1, x_138); +x_146 = lean_ctor_get(x_145, 3); +lean_inc(x_146); +if (lean_obj_tag(x_146) == 0) +{ +lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_inc(x_1); +x_147 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_145); +x_148 = l_Lean_nullKind; +x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_144); +x_106 = x_149; +goto block_137; +} +else +{ +lean_object* x_150; lean_object* x_151; +lean_dec(x_146); +x_150 = l_Lean_nullKind; +x_151 = l_Lean_Parser_ParserState_mkNode(x_145, x_150, x_144); +x_106 = x_151; +goto block_137; } } else { -lean_object* x_146; lean_object* x_147; lean_object* x_148; -lean_dec(x_136); +lean_object* x_152; lean_object* x_153; lean_object* x_154; +lean_dec(x_142); lean_dec(x_1); -x_146 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_147 = l_Lean_Parser_ParserState_mkNode(x_132, x_146, x_99); -x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_94, x_89); -lean_dec(x_89); -return x_148; +x_152 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_153 = l_Lean_Parser_ParserState_mkNode(x_138, x_152, x_105); +x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_96, x_93); +lean_dec(x_93); +return x_154; } } else { -lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; -lean_dec(x_132); +lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; +lean_dec(x_138); lean_dec(x_1); -x_149 = l_Array_shrink___main___rarg(x_133, x_99); -lean_inc(x_89); -if (lean_is_scalar(x_92)) { - x_150 = lean_alloc_ctor(0, 4, 0); -} else { - x_150 = x_92; +x_155 = l_Array_shrink___main___rarg(x_139, x_105); +x_156 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_156, 0, x_155); +lean_ctor_set(x_156, 1, x_104); +lean_ctor_set(x_156, 2, x_140); +lean_ctor_set(x_156, 3, x_141); +x_157 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; +x_158 = l_Lean_Parser_ParserState_mkNode(x_156, x_157, x_105); +x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_96, x_93); +lean_dec(x_93); +return x_159; } -lean_ctor_set(x_150, 0, x_149); -lean_ctor_set(x_150, 1, x_89); -lean_ctor_set(x_150, 2, x_134); -lean_ctor_set(x_150, 3, x_135); -x_151 = l_Lean_Parser_Command_openOnly___elambda__1___closed__2; -x_152 = l_Lean_Parser_ParserState_mkNode(x_150, x_151, x_99); -x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_94, x_89); -lean_dec(x_89); -return x_153; } } +else +{ +lean_object* x_192; +lean_dec(x_102); +lean_dec(x_1); +x_192 = l_Lean_Parser_mergeOrElseErrors(x_101, x_96, x_93); +lean_dec(x_93); +return x_192; +} } } } @@ -32430,16 +34672,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_openOnly___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_openOnly___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_openOnly___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_openOnly___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_openOnly___closed__3; +x_3 = l_Lean_Parser_Command_openOnly___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_openOnly___closed__5() { +lean_object* _init_l_Lean_Parser_Command_openOnly___closed__6() { _start: { lean_object* x_1; @@ -32447,12 +34699,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_openOnly___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_openOnly___closed__6() { +lean_object* _init_l_Lean_Parser_Command_openOnly___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_openOnly___closed__4; -x_2 = l_Lean_Parser_Command_openOnly___closed__5; +x_1 = l_Lean_Parser_Command_openOnly___closed__5; +x_2 = l_Lean_Parser_Command_openOnly___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -32463,7 +34715,7 @@ lean_object* _init_l_Lean_Parser_Command_openOnly() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_openOnly___closed__6; +x_1 = l_Lean_Parser_Command_openOnly___closed__7; return x_1; } } @@ -32518,118 +34770,149 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_8); -x_11 = l_Lean_nullKind; -lean_inc(x_7); -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -x_13 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_nullKind; -lean_inc(x_7); -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -x_17 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_1); -return x_22; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_11); +x_14 = l_Lean_nullKind; +lean_inc(x_10); +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +x_16 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_nullKind; +lean_inc(x_10); +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +x_20 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -lean_inc(x_1); -x_30 = l_Lean_Parser_ident___elambda__1(x_1, x_27); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +if (x_29 == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_30); -x_33 = l_Lean_nullKind; -lean_inc(x_29); -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); -x_35 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_29); -x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_24, x_21); -lean_dec(x_21); -return x_37; +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_31); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +lean_inc(x_1); +x_36 = l_Lean_Parser_ident___elambda__1(x_1, x_32); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_structExplicitBinder___elambda__1___spec__1(x_1, x_36); +x_39 = l_Lean_nullKind; +lean_inc(x_35); +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_35); +x_41 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_35); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_27, x_24); +lean_dec(x_24); +return x_43; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_37); lean_dec(x_1); -x_38 = l_Lean_nullKind; -lean_inc(x_29); -x_39 = l_Lean_Parser_ParserState_mkNode(x_30, x_38, x_29); -x_40 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_44 = l_Lean_nullKind; +lean_inc(x_35); +x_45 = l_Lean_Parser_ParserState_mkNode(x_36, x_44, x_35); +x_46 = l_Lean_Parser_Command_openSimple___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; +lean_dec(x_33); +lean_dec(x_1); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -32651,16 +34934,26 @@ return x_4; lean_object* _init_l_Lean_Parser_Command_openSimple___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_openSimple___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_openSimple___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_openSimple___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_openSimple___closed__1; +x_3 = l_Lean_Parser_Command_openSimple___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_openSimple___closed__3() { +lean_object* _init_l_Lean_Parser_Command_openSimple___closed__4() { _start: { lean_object* x_1; @@ -32668,12 +34961,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_openSimple___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_openSimple___closed__4() { +lean_object* _init_l_Lean_Parser_Command_openSimple___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_openSimple___closed__2; -x_2 = l_Lean_Parser_Command_openSimple___closed__3; +x_1 = l_Lean_Parser_Command_openSimple___closed__3; +x_2 = l_Lean_Parser_Command_openSimple___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -32684,7 +34977,7 @@ lean_object* _init_l_Lean_Parser_Command_openSimple() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_openSimple___closed__4; +x_1 = l_Lean_Parser_Command_openSimple___closed__5; return x_1; } } @@ -32788,522 +35081,543 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_62 = lean_ctor_get(x_2, 1); -lean_inc(x_62); -lean_inc(x_1); -x_63 = l_Lean_Parser_tokenFn(x_1, x_2); -x_64 = lean_ctor_get(x_63, 3); -lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_65; lean_object* x_66; -x_65 = lean_ctor_get(x_63, 0); -lean_inc(x_65); -x_66 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_65); -lean_dec(x_65); -if (lean_obj_tag(x_66) == 2) -{ -lean_object* x_67; lean_object* x_68; uint8_t x_69; -x_67 = lean_ctor_get(x_66, 1); -lean_inc(x_67); -lean_dec(x_66); -x_68 = l_Lean_Parser_Command_open___elambda__1___closed__6; -x_69 = lean_string_dec_eq(x_67, x_68); -lean_dec(x_67); -if (x_69 == 0) -{ -lean_object* x_70; lean_object* x_71; -x_70 = l_Lean_Parser_Command_open___elambda__1___closed__9; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_70, x_62); -x_8 = x_71; -goto block_61; -} -else -{ -lean_dec(x_62); -x_8 = x_63; -goto block_61; -} -} -else -{ -lean_object* x_72; lean_object* x_73; -lean_dec(x_66); -x_72 = l_Lean_Parser_Command_open___elambda__1___closed__9; -x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_72, x_62); -x_8 = x_73; -goto block_61; -} -} -else -{ -lean_object* x_74; lean_object* x_75; -lean_dec(x_64); -x_74 = l_Lean_Parser_Command_open___elambda__1___closed__9; -x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_74, x_62); -x_8 = x_75; -goto block_61; -} -block_61: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -lean_inc(x_1); -x_13 = l_Lean_Parser_Command_openHiding___elambda__1(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_1); -x_15 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_14, 0); -lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_ctor_get(x_13, 1); -lean_inc(x_18); -x_19 = lean_nat_dec_eq(x_18, x_12); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; -lean_dec(x_17); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_1); -x_20 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_inc(x_12); -x_22 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -lean_dec(x_11); -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -lean_inc(x_1); -x_25 = l_Lean_Parser_Command_openRenaming___elambda__1(x_1, x_22); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_24); -lean_dec(x_1); -x_27 = l_Lean_Parser_mergeOrElseErrors(x_25, x_17, x_12); -lean_dec(x_12); -x_28 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_30 = lean_ctor_get(x_26, 0); -lean_inc(x_30); -lean_dec(x_26); -x_31 = lean_ctor_get(x_25, 1); -lean_inc(x_31); -x_32 = lean_nat_dec_eq(x_31, x_12); -lean_dec(x_31); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_30); -lean_dec(x_24); -lean_dec(x_1); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_25, x_17, x_12); -lean_dec(x_12); -x_34 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); -return x_35; -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_inc(x_12); -x_36 = l_Lean_Parser_ParserState_restore(x_25, x_24, x_12); -lean_dec(x_24); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_array_get_size(x_37); -lean_dec(x_37); -lean_inc(x_1); -x_39 = l_Lean_Parser_Command_openOnly___elambda__1(x_1, x_36); -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_38); -lean_dec(x_1); -x_41 = l_Lean_Parser_mergeOrElseErrors(x_39, x_30, x_12); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_17, x_12); -lean_dec(x_12); -x_43 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_7); -return x_44; -} -else -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_40, 0); -lean_inc(x_45); -lean_dec(x_40); -x_46 = lean_ctor_get(x_39, 1); -lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_12); -lean_dec(x_46); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_45); -lean_dec(x_38); -lean_dec(x_1); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_39, x_30, x_12); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_17, x_12); -lean_dec(x_12); -x_50 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_7); -return x_51; -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_inc(x_12); -x_52 = l_Lean_Parser_ParserState_restore(x_39, x_38, x_12); -lean_dec(x_38); -x_53 = l_Lean_Parser_Command_openSimple___elambda__1(x_1, x_52); -x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_45, x_12); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_30, x_12); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_17, x_12); -lean_dec(x_12); -x_57 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_7); -return x_58; -} -} -} -} -} -} -} -else -{ -lean_object* x_59; lean_object* x_60; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_59 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_8, x_59, x_7); -return x_60; -} -} -} -else -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_76 = lean_ctor_get(x_2, 0); -lean_inc(x_76); -x_77 = lean_array_get_size(x_76); -lean_dec(x_76); -x_78 = lean_ctor_get(x_2, 1); -lean_inc(x_78); +x_65 = lean_ctor_get(x_7, 1); +lean_inc(x_65); lean_inc(x_1); -x_79 = lean_apply_2(x_4, x_1, x_2); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +x_66 = l_Lean_Parser_tokenFn(x_1, x_7); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_dec(x_78); -lean_dec(x_77); -lean_dec(x_1); -return x_79; +lean_object* x_68; lean_object* x_69; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_68); +lean_dec(x_68); +if (lean_obj_tag(x_69) == 2) +{ +lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +lean_dec(x_69); +x_71 = l_Lean_Parser_Command_open___elambda__1___closed__6; +x_72 = lean_string_dec_eq(x_70, x_71); +lean_dec(x_70); +if (x_72 == 0) +{ +lean_object* x_73; lean_object* x_74; +x_73 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_73, x_65); +x_11 = x_74; +goto block_64; } else { -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 0); +lean_dec(x_65); +x_11 = x_66; +goto block_64; +} +} +else +{ +lean_object* x_75; lean_object* x_76; +lean_dec(x_69); +x_75 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_75, x_65); +x_11 = x_76; +goto block_64; +} +} +else +{ +lean_object* x_77; lean_object* x_78; +lean_dec(x_67); +x_77 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_77, x_65); +x_11 = x_78; +goto block_64; +} +block_64: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_Command_openHiding___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_1); +x_18 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 0); +lean_inc(x_20); +lean_dec(x_17); +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); +x_22 = lean_nat_dec_eq(x_21, x_15); +lean_dec(x_21); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_20); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_1); +x_23 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_16, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_inc(x_15); +x_25 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +lean_dec(x_14); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +lean_inc(x_1); +x_28 = l_Lean_Parser_Command_openRenaming___elambda__1(x_1, x_25); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_1); +x_30 = l_Lean_Parser_mergeOrElseErrors(x_28, x_20, x_15); +lean_dec(x_15); +x_31 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = lean_ctor_get(x_29, 0); +lean_inc(x_33); +lean_dec(x_29); +x_34 = lean_ctor_get(x_28, 1); +lean_inc(x_34); +x_35 = lean_nat_dec_eq(x_34, x_15); +lean_dec(x_34); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_33); +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_28, x_20, x_15); +lean_dec(x_15); +x_37 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_inc(x_15); +x_39 = l_Lean_Parser_ParserState_restore(x_28, x_27, x_15); +lean_dec(x_27); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +lean_inc(x_1); +x_42 = l_Lean_Parser_Command_openOnly___elambda__1(x_1, x_39); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_41); +lean_dec(x_1); +x_44 = l_Lean_Parser_mergeOrElseErrors(x_42, x_33, x_15); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_20, x_15); +lean_dec(x_15); +x_46 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +lean_dec(x_43); +x_49 = lean_ctor_get(x_42, 1); +lean_inc(x_49); +x_50 = lean_nat_dec_eq(x_49, x_15); +lean_dec(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_48); +lean_dec(x_41); +lean_dec(x_1); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_42, x_33, x_15); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_20, x_15); +lean_dec(x_15); +x_53 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_52, x_53, x_10); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_inc(x_15); +x_55 = l_Lean_Parser_ParserState_restore(x_42, x_41, x_15); +lean_dec(x_41); +x_56 = l_Lean_Parser_Command_openSimple___elambda__1(x_1, x_55); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_48, x_15); +x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_33, x_15); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_20, x_15); +lean_dec(x_15); +x_60 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_10); +return x_61; +} +} +} +} +} +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_12); +lean_dec(x_1); +x_62 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_63 = l_Lean_Parser_ParserState_mkNode(x_11, x_62, x_10); +return x_63; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_79 = lean_ctor_get(x_2, 0); +lean_inc(x_79); +x_80 = lean_array_get_size(x_79); +lean_dec(x_79); +x_81 = lean_ctor_get(x_2, 1); lean_inc(x_81); -lean_dec(x_80); -x_82 = lean_ctor_get(x_79, 1); -lean_inc(x_82); -x_83 = lean_nat_dec_eq(x_82, x_78); -lean_dec(x_82); -if (x_83 == 0) +lean_inc(x_1); +x_82 = lean_apply_2(x_4, x_1, x_2); +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) { lean_dec(x_81); -lean_dec(x_78); -lean_dec(x_77); +lean_dec(x_80); lean_dec(x_1); -return x_79; +return x_82; } else { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_149; lean_object* x_150; -lean_inc(x_78); -x_84 = l_Lean_Parser_ParserState_restore(x_79, x_77, x_78); -lean_dec(x_77); -x_85 = lean_ctor_get(x_84, 0); +lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +lean_dec(x_83); +x_85 = lean_ctor_get(x_82, 1); lean_inc(x_85); -x_86 = lean_array_get_size(x_85); +x_86 = lean_nat_dec_eq(x_85, x_81); lean_dec(x_85); +if (x_86 == 0) +{ +lean_dec(x_84); +lean_dec(x_81); +lean_dec(x_80); +lean_dec(x_1); +return x_82; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_inc(x_81); +x_87 = l_Lean_Parser_ParserState_restore(x_82, x_80, x_81); +lean_dec(x_80); +x_88 = lean_unsigned_to_nat(1024u); +x_89 = l_Lean_Parser_checkPrecFn(x_88, x_1, x_87); +x_90 = lean_ctor_get(x_89, 3); +lean_inc(x_90); +if (lean_obj_tag(x_90) == 0) +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_155; lean_object* x_156; lean_object* x_157; +x_91 = lean_ctor_get(x_89, 0); +lean_inc(x_91); +x_92 = lean_array_get_size(x_91); +lean_dec(x_91); +x_155 = lean_ctor_get(x_89, 1); +lean_inc(x_155); lean_inc(x_1); -x_149 = l_Lean_Parser_tokenFn(x_1, x_84); -x_150 = lean_ctor_get(x_149, 3); -lean_inc(x_150); -if (lean_obj_tag(x_150) == 0) -{ -lean_object* x_151; lean_object* x_152; -x_151 = lean_ctor_get(x_149, 0); -lean_inc(x_151); -x_152 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_151); -lean_dec(x_151); -if (lean_obj_tag(x_152) == 2) -{ -lean_object* x_153; lean_object* x_154; uint8_t x_155; -x_153 = lean_ctor_get(x_152, 1); -lean_inc(x_153); -lean_dec(x_152); -x_154 = l_Lean_Parser_Command_open___elambda__1___closed__6; -x_155 = lean_string_dec_eq(x_153, x_154); -lean_dec(x_153); -if (x_155 == 0) -{ -lean_object* x_156; lean_object* x_157; -x_156 = l_Lean_Parser_Command_open___elambda__1___closed__9; -lean_inc(x_78); -x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_156, x_78); -x_87 = x_157; -goto block_148; -} -else -{ -x_87 = x_149; -goto block_148; -} -} -else +x_156 = l_Lean_Parser_tokenFn(x_1, x_89); +x_157 = lean_ctor_get(x_156, 3); +lean_inc(x_157); +if (lean_obj_tag(x_157) == 0) { lean_object* x_158; lean_object* x_159; -lean_dec(x_152); -x_158 = l_Lean_Parser_Command_open___elambda__1___closed__9; -lean_inc(x_78); -x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_158, x_78); -x_87 = x_159; -goto block_148; +x_158 = lean_ctor_get(x_156, 0); +lean_inc(x_158); +x_159 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_158); +lean_dec(x_158); +if (lean_obj_tag(x_159) == 2) +{ +lean_object* x_160; lean_object* x_161; uint8_t x_162; +x_160 = lean_ctor_get(x_159, 1); +lean_inc(x_160); +lean_dec(x_159); +x_161 = l_Lean_Parser_Command_open___elambda__1___closed__6; +x_162 = lean_string_dec_eq(x_160, x_161); +lean_dec(x_160); +if (x_162 == 0) +{ +lean_object* x_163; lean_object* x_164; +x_163 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_164 = l_Lean_Parser_ParserState_mkErrorsAt(x_156, x_163, x_155); +x_93 = x_164; +goto block_154; +} +else +{ +lean_dec(x_155); +x_93 = x_156; +goto block_154; } } else { -lean_object* x_160; lean_object* x_161; -lean_dec(x_150); -x_160 = l_Lean_Parser_Command_open___elambda__1___closed__9; -lean_inc(x_78); -x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_160, x_78); -x_87 = x_161; -goto block_148; +lean_object* x_165; lean_object* x_166; +lean_dec(x_159); +x_165 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_156, x_165, x_155); +x_93 = x_166; +goto block_154; } -block_148: -{ -lean_object* x_88; -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_89 = lean_ctor_get(x_87, 0); -lean_inc(x_89); -x_90 = lean_array_get_size(x_89); -lean_dec(x_89); -x_91 = lean_ctor_get(x_87, 1); -lean_inc(x_91); -lean_inc(x_1); -x_92 = l_Lean_Parser_Command_openHiding___elambda__1(x_1, x_87); -x_93 = lean_ctor_get(x_92, 3); -lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_91); -lean_dec(x_90); -lean_dec(x_1); -x_94 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_92, x_94, x_86); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_81, x_78); -lean_dec(x_78); -return x_96; } else { -lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_97 = lean_ctor_get(x_93, 0); +lean_object* x_167; lean_object* x_168; +lean_dec(x_157); +x_167 = l_Lean_Parser_Command_open___elambda__1___closed__9; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_156, x_167, x_155); +x_93 = x_168; +goto block_154; +} +block_154: +{ +lean_object* x_94; +x_94 = lean_ctor_get(x_93, 3); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_95 = lean_ctor_get(x_93, 0); +lean_inc(x_95); +x_96 = lean_array_get_size(x_95); +lean_dec(x_95); +x_97 = lean_ctor_get(x_93, 1); lean_inc(x_97); -lean_dec(x_93); -x_98 = lean_ctor_get(x_92, 1); -lean_inc(x_98); -x_99 = lean_nat_dec_eq(x_98, x_91); -lean_dec(x_98); -if (x_99 == 0) +lean_inc(x_1); +x_98 = l_Lean_Parser_Command_openHiding___elambda__1(x_1, x_93); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_97); -lean_dec(x_91); -lean_dec(x_90); +lean_dec(x_96); lean_dec(x_1); x_100 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_101 = l_Lean_Parser_ParserState_mkNode(x_92, x_100, x_86); -x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_81, x_78); -lean_dec(x_78); +x_101 = l_Lean_Parser_ParserState_mkNode(x_98, x_100, x_92); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_84, x_81); +lean_dec(x_81); return x_102; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; -lean_inc(x_91); -x_103 = l_Lean_Parser_ParserState_restore(x_92, x_90, x_91); -lean_dec(x_90); -x_104 = lean_ctor_get(x_103, 0); +lean_object* x_103; lean_object* x_104; uint8_t x_105; +x_103 = lean_ctor_get(x_99, 0); +lean_inc(x_103); +lean_dec(x_99); +x_104 = lean_ctor_get(x_98, 1); lean_inc(x_104); -x_105 = lean_array_get_size(x_104); +x_105 = lean_nat_dec_eq(x_104, x_97); lean_dec(x_104); -lean_inc(x_1); -x_106 = l_Lean_Parser_Command_openRenaming___elambda__1(x_1, x_103); -x_107 = lean_ctor_get(x_106, 3); -lean_inc(x_107); -if (lean_obj_tag(x_107) == 0) +if (x_105 == 0) { -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_105); +lean_object* x_106; lean_object* x_107; lean_object* x_108; +lean_dec(x_103); +lean_dec(x_97); +lean_dec(x_96); lean_dec(x_1); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_106, x_97, x_91); -lean_dec(x_91); -x_109 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_86); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_81, x_78); -lean_dec(x_78); -return x_111; +x_106 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_98, x_106, x_92); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_84, x_81); +lean_dec(x_81); +return x_108; } else { -lean_object* x_112; lean_object* x_113; uint8_t x_114; -x_112 = lean_ctor_get(x_107, 0); -lean_inc(x_112); -lean_dec(x_107); -x_113 = lean_ctor_get(x_106, 1); +lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_inc(x_97); +x_109 = l_Lean_Parser_ParserState_restore(x_98, x_96, x_97); +lean_dec(x_96); +x_110 = lean_ctor_get(x_109, 0); +lean_inc(x_110); +x_111 = lean_array_get_size(x_110); +lean_dec(x_110); +lean_inc(x_1); +x_112 = l_Lean_Parser_Command_openRenaming___elambda__1(x_1, x_109); +x_113 = lean_ctor_get(x_112, 3); lean_inc(x_113); -x_114 = lean_nat_dec_eq(x_113, x_91); +if (lean_obj_tag(x_113) == 0) +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_111); +lean_dec(x_1); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_112, x_103, x_97); +lean_dec(x_97); +x_115 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_92); +x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_84, x_81); +lean_dec(x_81); +return x_117; +} +else +{ +lean_object* x_118; lean_object* x_119; uint8_t x_120; +x_118 = lean_ctor_get(x_113, 0); +lean_inc(x_118); lean_dec(x_113); -if (x_114 == 0) +x_119 = lean_ctor_get(x_112, 1); +lean_inc(x_119); +x_120 = lean_nat_dec_eq(x_119, x_97); +lean_dec(x_119); +if (x_120 == 0) { -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; -lean_dec(x_112); -lean_dec(x_105); +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; +lean_dec(x_118); +lean_dec(x_111); lean_dec(x_1); -x_115 = l_Lean_Parser_mergeOrElseErrors(x_106, x_97, x_91); -lean_dec(x_91); -x_116 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_86); -x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_81, x_78); -lean_dec(x_78); -return x_118; +x_121 = l_Lean_Parser_mergeOrElseErrors(x_112, x_103, x_97); +lean_dec(x_97); +x_122 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_123 = l_Lean_Parser_ParserState_mkNode(x_121, x_122, x_92); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_84, x_81); +lean_dec(x_81); +return x_124; } else { -lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_inc(x_91); -x_119 = l_Lean_Parser_ParserState_restore(x_106, x_105, x_91); -lean_dec(x_105); -x_120 = lean_ctor_get(x_119, 0); -lean_inc(x_120); -x_121 = lean_array_get_size(x_120); -lean_dec(x_120); +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_inc(x_97); +x_125 = l_Lean_Parser_ParserState_restore(x_112, x_111, x_97); +lean_dec(x_111); +x_126 = lean_ctor_get(x_125, 0); +lean_inc(x_126); +x_127 = lean_array_get_size(x_126); +lean_dec(x_126); lean_inc(x_1); -x_122 = l_Lean_Parser_Command_openOnly___elambda__1(x_1, x_119); -x_123 = lean_ctor_get(x_122, 3); -lean_inc(x_123); -if (lean_obj_tag(x_123) == 0) -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; -lean_dec(x_121); -lean_dec(x_1); -x_124 = l_Lean_Parser_mergeOrElseErrors(x_122, x_112, x_91); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_97, x_91); -lean_dec(x_91); -x_126 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_127 = l_Lean_Parser_ParserState_mkNode(x_125, x_126, x_86); -x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_81, x_78); -lean_dec(x_78); -return x_128; -} -else -{ -lean_object* x_129; lean_object* x_130; uint8_t x_131; -x_129 = lean_ctor_get(x_123, 0); +x_128 = l_Lean_Parser_Command_openOnly___elambda__1(x_1, x_125); +x_129 = lean_ctor_get(x_128, 3); lean_inc(x_129); -lean_dec(x_123); -x_130 = lean_ctor_get(x_122, 1); -lean_inc(x_130); -x_131 = lean_nat_dec_eq(x_130, x_91); -lean_dec(x_130); -if (x_131 == 0) +if (lean_obj_tag(x_129) == 0) { -lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_dec(x_127); +lean_dec(x_1); +x_130 = l_Lean_Parser_mergeOrElseErrors(x_128, x_118, x_97); +x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_103, x_97); +lean_dec(x_97); +x_132 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_92); +x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_84, x_81); +lean_dec(x_81); +return x_134; +} +else +{ +lean_object* x_135; lean_object* x_136; uint8_t x_137; +x_135 = lean_ctor_get(x_129, 0); +lean_inc(x_135); lean_dec(x_129); -lean_dec(x_121); +x_136 = lean_ctor_get(x_128, 1); +lean_inc(x_136); +x_137 = lean_nat_dec_eq(x_136, x_97); +lean_dec(x_136); +if (x_137 == 0) +{ +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +lean_dec(x_135); +lean_dec(x_127); lean_dec(x_1); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_122, x_112, x_91); -x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_97, x_91); -lean_dec(x_91); -x_134 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_86); -x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_81, x_78); -lean_dec(x_78); -return x_136; +x_138 = l_Lean_Parser_mergeOrElseErrors(x_128, x_118, x_97); +x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_103, x_97); +lean_dec(x_97); +x_140 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_141 = l_Lean_Parser_ParserState_mkNode(x_139, x_140, x_92); +x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_84, x_81); +lean_dec(x_81); +return x_142; } else { -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; -lean_inc(x_91); -x_137 = l_Lean_Parser_ParserState_restore(x_122, x_121, x_91); -lean_dec(x_121); -x_138 = l_Lean_Parser_Command_openSimple___elambda__1(x_1, x_137); -x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_129, x_91); -x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_112, x_91); -x_141 = l_Lean_Parser_mergeOrElseErrors(x_140, x_97, x_91); -lean_dec(x_91); -x_142 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_143 = l_Lean_Parser_ParserState_mkNode(x_141, x_142, x_86); -x_144 = l_Lean_Parser_mergeOrElseErrors(x_143, x_81, x_78); -lean_dec(x_78); -return x_144; +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; +lean_inc(x_97); +x_143 = l_Lean_Parser_ParserState_restore(x_128, x_127, x_97); +lean_dec(x_127); +x_144 = l_Lean_Parser_Command_openSimple___elambda__1(x_1, x_143); +x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_135, x_97); +x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_118, x_97); +x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_103, x_97); +lean_dec(x_97); +x_148 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_92); +x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_84, x_81); +lean_dec(x_81); +return x_150; } } } @@ -33313,17 +35627,27 @@ return x_144; } else { -lean_object* x_145; lean_object* x_146; lean_object* x_147; -lean_dec(x_88); +lean_object* x_151; lean_object* x_152; lean_object* x_153; +lean_dec(x_94); lean_dec(x_1); -x_145 = l_Lean_Parser_Command_open___elambda__1___closed__2; -x_146 = l_Lean_Parser_ParserState_mkNode(x_87, x_145, x_86); -x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_81, x_78); -lean_dec(x_78); -return x_147; +x_151 = l_Lean_Parser_Command_open___elambda__1___closed__2; +x_152 = l_Lean_Parser_ParserState_mkNode(x_93, x_151, x_92); +x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_84, x_81); +lean_dec(x_81); +return x_153; } } } +else +{ +lean_object* x_169; +lean_dec(x_90); +lean_dec(x_1); +x_169 = l_Lean_Parser_mergeOrElseErrors(x_89, x_84, x_81); +lean_dec(x_81); +return x_169; +} +} } } } @@ -33398,16 +35722,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_open___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_open___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_open___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_open___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_open___closed__6; +x_3 = l_Lean_Parser_Command_open___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_open___closed__8() { +lean_object* _init_l_Lean_Parser_Command_open___closed__9() { _start: { lean_object* x_1; @@ -33415,12 +35749,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_open___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Command_open___closed__9() { +lean_object* _init_l_Lean_Parser_Command_open___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_open___closed__7; -x_2 = l_Lean_Parser_Command_open___closed__8; +x_1 = l_Lean_Parser_Command_open___closed__8; +x_2 = l_Lean_Parser_Command_open___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -33431,7 +35765,7 @@ lean_object* _init_l_Lean_Parser_Command_open() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_open___closed__9; +x_1 = l_Lean_Parser_Command_open___closed__10; return x_1; } } @@ -33553,6 +35887,8 @@ l_Lean_Parser_Command_docComment___closed__5 = _init_l_Lean_Parser_Command_docCo lean_mark_persistent(l_Lean_Parser_Command_docComment___closed__5); l_Lean_Parser_Command_docComment___closed__6 = _init_l_Lean_Parser_Command_docComment___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_docComment___closed__6); +l_Lean_Parser_Command_docComment___closed__7 = _init_l_Lean_Parser_Command_docComment___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_docComment___closed__7); l_Lean_Parser_Command_docComment = _init_l_Lean_Parser_Command_docComment(); lean_mark_persistent(l_Lean_Parser_Command_docComment); l_Lean_Parser_Command_attrArg___closed__1 = _init_l_Lean_Parser_Command_attrArg___closed__1(); @@ -33585,6 +35921,8 @@ l_Lean_Parser_Command_attrInstance___closed__5 = _init_l_Lean_Parser_Command_att lean_mark_persistent(l_Lean_Parser_Command_attrInstance___closed__5); l_Lean_Parser_Command_attrInstance___closed__6 = _init_l_Lean_Parser_Command_attrInstance___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_attrInstance___closed__6); +l_Lean_Parser_Command_attrInstance___closed__7 = _init_l_Lean_Parser_Command_attrInstance___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_attrInstance___closed__7); l_Lean_Parser_Command_attrInstance = _init_l_Lean_Parser_Command_attrInstance(); lean_mark_persistent(l_Lean_Parser_Command_attrInstance); l_Lean_Parser_Command_attributes___elambda__1___closed__1 = _init_l_Lean_Parser_Command_attributes___elambda__1___closed__1(); @@ -33621,6 +35959,8 @@ l_Lean_Parser_Command_attributes___closed__7 = _init_l_Lean_Parser_Command_attri lean_mark_persistent(l_Lean_Parser_Command_attributes___closed__7); l_Lean_Parser_Command_attributes___closed__8 = _init_l_Lean_Parser_Command_attributes___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_attributes___closed__8); +l_Lean_Parser_Command_attributes___closed__9 = _init_l_Lean_Parser_Command_attributes___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_attributes___closed__9); l_Lean_Parser_Command_attributes = _init_l_Lean_Parser_Command_attributes(); lean_mark_persistent(l_Lean_Parser_Command_attributes); l_Lean_Parser_Command_private___elambda__1___closed__1 = _init_l_Lean_Parser_Command_private___elambda__1___closed__1(); @@ -33651,6 +35991,8 @@ l_Lean_Parser_Command_private___closed__4 = _init_l_Lean_Parser_Command_private_ lean_mark_persistent(l_Lean_Parser_Command_private___closed__4); l_Lean_Parser_Command_private___closed__5 = _init_l_Lean_Parser_Command_private___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_private___closed__5); +l_Lean_Parser_Command_private___closed__6 = _init_l_Lean_Parser_Command_private___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_private___closed__6); l_Lean_Parser_Command_private = _init_l_Lean_Parser_Command_private(); lean_mark_persistent(l_Lean_Parser_Command_private); l_Lean_Parser_Command_protected___elambda__1___closed__1 = _init_l_Lean_Parser_Command_protected___elambda__1___closed__1(); @@ -33681,6 +36023,8 @@ l_Lean_Parser_Command_protected___closed__4 = _init_l_Lean_Parser_Command_protec lean_mark_persistent(l_Lean_Parser_Command_protected___closed__4); l_Lean_Parser_Command_protected___closed__5 = _init_l_Lean_Parser_Command_protected___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_protected___closed__5); +l_Lean_Parser_Command_protected___closed__6 = _init_l_Lean_Parser_Command_protected___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_protected___closed__6); l_Lean_Parser_Command_protected = _init_l_Lean_Parser_Command_protected(); lean_mark_persistent(l_Lean_Parser_Command_protected); l_Lean_Parser_Command_visibility___closed__1 = _init_l_Lean_Parser_Command_visibility___closed__1(); @@ -33719,6 +36063,8 @@ l_Lean_Parser_Command_noncomputable___closed__4 = _init_l_Lean_Parser_Command_no lean_mark_persistent(l_Lean_Parser_Command_noncomputable___closed__4); l_Lean_Parser_Command_noncomputable___closed__5 = _init_l_Lean_Parser_Command_noncomputable___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_noncomputable___closed__5); +l_Lean_Parser_Command_noncomputable___closed__6 = _init_l_Lean_Parser_Command_noncomputable___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_noncomputable___closed__6); l_Lean_Parser_Command_noncomputable = _init_l_Lean_Parser_Command_noncomputable(); lean_mark_persistent(l_Lean_Parser_Command_noncomputable); l_Lean_Parser_Command_unsafe___elambda__1___closed__1 = _init_l_Lean_Parser_Command_unsafe___elambda__1___closed__1(); @@ -33749,6 +36095,8 @@ l_Lean_Parser_Command_unsafe___closed__4 = _init_l_Lean_Parser_Command_unsafe___ lean_mark_persistent(l_Lean_Parser_Command_unsafe___closed__4); l_Lean_Parser_Command_unsafe___closed__5 = _init_l_Lean_Parser_Command_unsafe___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_unsafe___closed__5); +l_Lean_Parser_Command_unsafe___closed__6 = _init_l_Lean_Parser_Command_unsafe___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_unsafe___closed__6); l_Lean_Parser_Command_unsafe = _init_l_Lean_Parser_Command_unsafe(); lean_mark_persistent(l_Lean_Parser_Command_unsafe); l_Lean_Parser_Command_partial___elambda__1___closed__1 = _init_l_Lean_Parser_Command_partial___elambda__1___closed__1(); @@ -33779,6 +36127,8 @@ l_Lean_Parser_Command_partial___closed__4 = _init_l_Lean_Parser_Command_partial_ lean_mark_persistent(l_Lean_Parser_Command_partial___closed__4); l_Lean_Parser_Command_partial___closed__5 = _init_l_Lean_Parser_Command_partial___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_partial___closed__5); +l_Lean_Parser_Command_partial___closed__6 = _init_l_Lean_Parser_Command_partial___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_partial___closed__6); l_Lean_Parser_Command_partial = _init_l_Lean_Parser_Command_partial(); lean_mark_persistent(l_Lean_Parser_Command_partial); l_Lean_Parser_Command_declModifiers___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declModifiers___elambda__1___closed__1(); @@ -33819,6 +36169,8 @@ l_Lean_Parser_Command_declModifiers___closed__14 = _init_l_Lean_Parser_Command_d lean_mark_persistent(l_Lean_Parser_Command_declModifiers___closed__14); l_Lean_Parser_Command_declModifiers___closed__15 = _init_l_Lean_Parser_Command_declModifiers___closed__15(); lean_mark_persistent(l_Lean_Parser_Command_declModifiers___closed__15); +l_Lean_Parser_Command_declModifiers___closed__16 = _init_l_Lean_Parser_Command_declModifiers___closed__16(); +lean_mark_persistent(l_Lean_Parser_Command_declModifiers___closed__16); l_Lean_Parser_Command_declModifiers = _init_l_Lean_Parser_Command_declModifiers(); lean_mark_persistent(l_Lean_Parser_Command_declModifiers); l_Lean_Parser_Command_declId___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declId___elambda__1___closed__1(); @@ -33847,6 +36199,8 @@ l_Lean_Parser_Command_declId___closed__8 = _init_l_Lean_Parser_Command_declId___ lean_mark_persistent(l_Lean_Parser_Command_declId___closed__8); l_Lean_Parser_Command_declId___closed__9 = _init_l_Lean_Parser_Command_declId___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_declId___closed__9); +l_Lean_Parser_Command_declId___closed__10 = _init_l_Lean_Parser_Command_declId___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_declId___closed__10); l_Lean_Parser_Command_declId = _init_l_Lean_Parser_Command_declId(); lean_mark_persistent(l_Lean_Parser_Command_declId); l_Lean_Parser_Command_declSig___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declSig___elambda__1___closed__1(); @@ -33867,6 +36221,8 @@ l_Lean_Parser_Command_declSig___closed__4 = _init_l_Lean_Parser_Command_declSig_ lean_mark_persistent(l_Lean_Parser_Command_declSig___closed__4); l_Lean_Parser_Command_declSig___closed__5 = _init_l_Lean_Parser_Command_declSig___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_declSig___closed__5); +l_Lean_Parser_Command_declSig___closed__6 = _init_l_Lean_Parser_Command_declSig___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_declSig___closed__6); l_Lean_Parser_Command_declSig = _init_l_Lean_Parser_Command_declSig(); lean_mark_persistent(l_Lean_Parser_Command_declSig); l_Lean_Parser_Command_optDeclSig___elambda__1___closed__1 = _init_l_Lean_Parser_Command_optDeclSig___elambda__1___closed__1(); @@ -33885,6 +36241,8 @@ l_Lean_Parser_Command_optDeclSig___closed__3 = _init_l_Lean_Parser_Command_optDe lean_mark_persistent(l_Lean_Parser_Command_optDeclSig___closed__3); l_Lean_Parser_Command_optDeclSig___closed__4 = _init_l_Lean_Parser_Command_optDeclSig___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_optDeclSig___closed__4); +l_Lean_Parser_Command_optDeclSig___closed__5 = _init_l_Lean_Parser_Command_optDeclSig___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_optDeclSig___closed__5); l_Lean_Parser_Command_optDeclSig = _init_l_Lean_Parser_Command_optDeclSig(); lean_mark_persistent(l_Lean_Parser_Command_optDeclSig); l_Lean_Parser_Command_declValSimple___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declValSimple___elambda__1___closed__1(); @@ -33903,6 +36261,8 @@ l_Lean_Parser_Command_declValSimple___closed__3 = _init_l_Lean_Parser_Command_de lean_mark_persistent(l_Lean_Parser_Command_declValSimple___closed__3); l_Lean_Parser_Command_declValSimple___closed__4 = _init_l_Lean_Parser_Command_declValSimple___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_declValSimple___closed__4); +l_Lean_Parser_Command_declValSimple___closed__5 = _init_l_Lean_Parser_Command_declValSimple___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_declValSimple___closed__5); l_Lean_Parser_Command_declValSimple = _init_l_Lean_Parser_Command_declValSimple(); lean_mark_persistent(l_Lean_Parser_Command_declValSimple); l_Lean_Parser_Command_declValEqns___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declValEqns___elambda__1___closed__1(); @@ -33921,6 +36281,8 @@ l_Lean_Parser_Command_declValEqns___closed__3 = _init_l_Lean_Parser_Command_decl lean_mark_persistent(l_Lean_Parser_Command_declValEqns___closed__3); l_Lean_Parser_Command_declValEqns___closed__4 = _init_l_Lean_Parser_Command_declValEqns___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_declValEqns___closed__4); +l_Lean_Parser_Command_declValEqns___closed__5 = _init_l_Lean_Parser_Command_declValEqns___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_declValEqns___closed__5); l_Lean_Parser_Command_declValEqns = _init_l_Lean_Parser_Command_declValEqns(); lean_mark_persistent(l_Lean_Parser_Command_declValEqns); l_Lean_Parser_Command_declVal___closed__1 = _init_l_Lean_Parser_Command_declVal___closed__1(); @@ -33965,6 +36327,8 @@ l_Lean_Parser_Command_abbrev___closed__7 = _init_l_Lean_Parser_Command_abbrev___ lean_mark_persistent(l_Lean_Parser_Command_abbrev___closed__7); l_Lean_Parser_Command_abbrev___closed__8 = _init_l_Lean_Parser_Command_abbrev___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_abbrev___closed__8); +l_Lean_Parser_Command_abbrev___closed__9 = _init_l_Lean_Parser_Command_abbrev___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_abbrev___closed__9); l_Lean_Parser_Command_abbrev = _init_l_Lean_Parser_Command_abbrev(); lean_mark_persistent(l_Lean_Parser_Command_abbrev); l_Lean_Parser_Command_def___elambda__1___closed__1 = _init_l_Lean_Parser_Command_def___elambda__1___closed__1(); @@ -33997,6 +36361,8 @@ l_Lean_Parser_Command_def___closed__5 = _init_l_Lean_Parser_Command_def___closed lean_mark_persistent(l_Lean_Parser_Command_def___closed__5); l_Lean_Parser_Command_def___closed__6 = _init_l_Lean_Parser_Command_def___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_def___closed__6); +l_Lean_Parser_Command_def___closed__7 = _init_l_Lean_Parser_Command_def___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_def___closed__7); l_Lean_Parser_Command_def = _init_l_Lean_Parser_Command_def(); lean_mark_persistent(l_Lean_Parser_Command_def); l_Lean_Parser_Command_theorem___elambda__1___closed__1 = _init_l_Lean_Parser_Command_theorem___elambda__1___closed__1(); @@ -34033,6 +36399,8 @@ l_Lean_Parser_Command_theorem___closed__7 = _init_l_Lean_Parser_Command_theorem_ lean_mark_persistent(l_Lean_Parser_Command_theorem___closed__7); l_Lean_Parser_Command_theorem___closed__8 = _init_l_Lean_Parser_Command_theorem___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_theorem___closed__8); +l_Lean_Parser_Command_theorem___closed__9 = _init_l_Lean_Parser_Command_theorem___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_theorem___closed__9); l_Lean_Parser_Command_theorem = _init_l_Lean_Parser_Command_theorem(); lean_mark_persistent(l_Lean_Parser_Command_theorem); l_Lean_Parser_Command_constant___elambda__1___closed__1 = _init_l_Lean_Parser_Command_constant___elambda__1___closed__1(); @@ -34071,6 +36439,8 @@ l_Lean_Parser_Command_constant___closed__8 = _init_l_Lean_Parser_Command_constan lean_mark_persistent(l_Lean_Parser_Command_constant___closed__8); l_Lean_Parser_Command_constant___closed__9 = _init_l_Lean_Parser_Command_constant___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_constant___closed__9); +l_Lean_Parser_Command_constant___closed__10 = _init_l_Lean_Parser_Command_constant___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_constant___closed__10); l_Lean_Parser_Command_constant = _init_l_Lean_Parser_Command_constant(); lean_mark_persistent(l_Lean_Parser_Command_constant); l_Lean_Parser_Command_instance___elambda__1___closed__1 = _init_l_Lean_Parser_Command_instance___elambda__1___closed__1(); @@ -34107,6 +36477,8 @@ l_Lean_Parser_Command_instance___closed__7 = _init_l_Lean_Parser_Command_instanc lean_mark_persistent(l_Lean_Parser_Command_instance___closed__7); l_Lean_Parser_Command_instance___closed__8 = _init_l_Lean_Parser_Command_instance___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_instance___closed__8); +l_Lean_Parser_Command_instance___closed__9 = _init_l_Lean_Parser_Command_instance___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_instance___closed__9); l_Lean_Parser_Command_instance = _init_l_Lean_Parser_Command_instance(); lean_mark_persistent(l_Lean_Parser_Command_instance); l_Lean_Parser_Command_axiom___elambda__1___closed__1 = _init_l_Lean_Parser_Command_axiom___elambda__1___closed__1(); @@ -34141,6 +36513,8 @@ l_Lean_Parser_Command_axiom___closed__6 = _init_l_Lean_Parser_Command_axiom___cl lean_mark_persistent(l_Lean_Parser_Command_axiom___closed__6); l_Lean_Parser_Command_axiom___closed__7 = _init_l_Lean_Parser_Command_axiom___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_axiom___closed__7); +l_Lean_Parser_Command_axiom___closed__8 = _init_l_Lean_Parser_Command_axiom___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_axiom___closed__8); l_Lean_Parser_Command_axiom = _init_l_Lean_Parser_Command_axiom(); lean_mark_persistent(l_Lean_Parser_Command_axiom); l_Lean_Parser_Command_example___elambda__1___closed__1 = _init_l_Lean_Parser_Command_example___elambda__1___closed__1(); @@ -34173,6 +36547,8 @@ l_Lean_Parser_Command_example___closed__5 = _init_l_Lean_Parser_Command_example_ lean_mark_persistent(l_Lean_Parser_Command_example___closed__5); l_Lean_Parser_Command_example___closed__6 = _init_l_Lean_Parser_Command_example___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_example___closed__6); +l_Lean_Parser_Command_example___closed__7 = _init_l_Lean_Parser_Command_example___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_example___closed__7); l_Lean_Parser_Command_example = _init_l_Lean_Parser_Command_example(); lean_mark_persistent(l_Lean_Parser_Command_example); l_Lean_Parser_Command_inferMod___elambda__1___closed__1 = _init_l_Lean_Parser_Command_inferMod___elambda__1___closed__1(); @@ -34193,6 +36569,8 @@ l_Lean_Parser_Command_inferMod___closed__4 = _init_l_Lean_Parser_Command_inferMo lean_mark_persistent(l_Lean_Parser_Command_inferMod___closed__4); l_Lean_Parser_Command_inferMod___closed__5 = _init_l_Lean_Parser_Command_inferMod___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_inferMod___closed__5); +l_Lean_Parser_Command_inferMod___closed__6 = _init_l_Lean_Parser_Command_inferMod___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_inferMod___closed__6); l_Lean_Parser_Command_inferMod = _init_l_Lean_Parser_Command_inferMod(); lean_mark_persistent(l_Lean_Parser_Command_inferMod); l_Lean_Parser_Command_introRule___elambda__1___closed__1 = _init_l_Lean_Parser_Command_introRule___elambda__1___closed__1(); @@ -34219,6 +36597,8 @@ l_Lean_Parser_Command_introRule___closed__7 = _init_l_Lean_Parser_Command_introR lean_mark_persistent(l_Lean_Parser_Command_introRule___closed__7); l_Lean_Parser_Command_introRule___closed__8 = _init_l_Lean_Parser_Command_introRule___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_introRule___closed__8); +l_Lean_Parser_Command_introRule___closed__9 = _init_l_Lean_Parser_Command_introRule___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_introRule___closed__9); l_Lean_Parser_Command_introRule = _init_l_Lean_Parser_Command_introRule(); lean_mark_persistent(l_Lean_Parser_Command_introRule); l_Lean_Parser_Command_inductive___elambda__1___closed__1 = _init_l_Lean_Parser_Command_inductive___elambda__1___closed__1(); @@ -34257,6 +36637,8 @@ l_Lean_Parser_Command_inductive___closed__8 = _init_l_Lean_Parser_Command_induct lean_mark_persistent(l_Lean_Parser_Command_inductive___closed__8); l_Lean_Parser_Command_inductive___closed__9 = _init_l_Lean_Parser_Command_inductive___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_inductive___closed__9); +l_Lean_Parser_Command_inductive___closed__10 = _init_l_Lean_Parser_Command_inductive___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_inductive___closed__10); l_Lean_Parser_Command_inductive = _init_l_Lean_Parser_Command_inductive(); lean_mark_persistent(l_Lean_Parser_Command_inductive); l_Lean_Parser_Command_classInductive___elambda__1___closed__1 = _init_l_Lean_Parser_Command_classInductive___elambda__1___closed__1(); @@ -34291,6 +36673,8 @@ l_Lean_Parser_Command_classInductive___closed__6 = _init_l_Lean_Parser_Command_c lean_mark_persistent(l_Lean_Parser_Command_classInductive___closed__6); l_Lean_Parser_Command_classInductive___closed__7 = _init_l_Lean_Parser_Command_classInductive___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_classInductive___closed__7); +l_Lean_Parser_Command_classInductive___closed__8 = _init_l_Lean_Parser_Command_classInductive___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_classInductive___closed__8); l_Lean_Parser_Command_classInductive = _init_l_Lean_Parser_Command_classInductive(); lean_mark_persistent(l_Lean_Parser_Command_classInductive); l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__1(); @@ -34323,6 +36707,8 @@ l_Lean_Parser_Command_structExplicitBinder___closed__10 = _init_l_Lean_Parser_Co lean_mark_persistent(l_Lean_Parser_Command_structExplicitBinder___closed__10); l_Lean_Parser_Command_structExplicitBinder___closed__11 = _init_l_Lean_Parser_Command_structExplicitBinder___closed__11(); lean_mark_persistent(l_Lean_Parser_Command_structExplicitBinder___closed__11); +l_Lean_Parser_Command_structExplicitBinder___closed__12 = _init_l_Lean_Parser_Command_structExplicitBinder___closed__12(); +lean_mark_persistent(l_Lean_Parser_Command_structExplicitBinder___closed__12); l_Lean_Parser_Command_structExplicitBinder = _init_l_Lean_Parser_Command_structExplicitBinder(); lean_mark_persistent(l_Lean_Parser_Command_structExplicitBinder); l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__1(); @@ -34349,6 +36735,8 @@ l_Lean_Parser_Command_structImplicitBinder___closed__7 = _init_l_Lean_Parser_Com lean_mark_persistent(l_Lean_Parser_Command_structImplicitBinder___closed__7); l_Lean_Parser_Command_structImplicitBinder___closed__8 = _init_l_Lean_Parser_Command_structImplicitBinder___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_structImplicitBinder___closed__8); +l_Lean_Parser_Command_structImplicitBinder___closed__9 = _init_l_Lean_Parser_Command_structImplicitBinder___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_structImplicitBinder___closed__9); l_Lean_Parser_Command_structImplicitBinder = _init_l_Lean_Parser_Command_structImplicitBinder(); lean_mark_persistent(l_Lean_Parser_Command_structImplicitBinder); l_Lean_Parser_Command_structInstBinder___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structInstBinder___elambda__1___closed__1(); @@ -34375,6 +36763,8 @@ l_Lean_Parser_Command_structInstBinder___closed__7 = _init_l_Lean_Parser_Command lean_mark_persistent(l_Lean_Parser_Command_structInstBinder___closed__7); l_Lean_Parser_Command_structInstBinder___closed__8 = _init_l_Lean_Parser_Command_structInstBinder___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_structInstBinder___closed__8); +l_Lean_Parser_Command_structInstBinder___closed__9 = _init_l_Lean_Parser_Command_structInstBinder___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_structInstBinder___closed__9); l_Lean_Parser_Command_structInstBinder = _init_l_Lean_Parser_Command_structInstBinder(); lean_mark_persistent(l_Lean_Parser_Command_structInstBinder); l_Lean_Parser_Command_structFields___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structFields___elambda__1___closed__1(); @@ -34399,6 +36789,8 @@ l_Lean_Parser_Command_structFields___closed__6 = _init_l_Lean_Parser_Command_str lean_mark_persistent(l_Lean_Parser_Command_structFields___closed__6); l_Lean_Parser_Command_structFields___closed__7 = _init_l_Lean_Parser_Command_structFields___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_structFields___closed__7); +l_Lean_Parser_Command_structFields___closed__8 = _init_l_Lean_Parser_Command_structFields___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_structFields___closed__8); l_Lean_Parser_Command_structFields = _init_l_Lean_Parser_Command_structFields(); lean_mark_persistent(l_Lean_Parser_Command_structFields); l_Lean_Parser_Command_structCtor___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structCtor___elambda__1___closed__1(); @@ -34431,6 +36823,8 @@ l_Lean_Parser_Command_structCtor___closed__6 = _init_l_Lean_Parser_Command_struc lean_mark_persistent(l_Lean_Parser_Command_structCtor___closed__6); l_Lean_Parser_Command_structCtor___closed__7 = _init_l_Lean_Parser_Command_structCtor___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_structCtor___closed__7); +l_Lean_Parser_Command_structCtor___closed__8 = _init_l_Lean_Parser_Command_structCtor___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_structCtor___closed__8); l_Lean_Parser_Command_structCtor = _init_l_Lean_Parser_Command_structCtor(); lean_mark_persistent(l_Lean_Parser_Command_structCtor); l_Lean_Parser_Command_structureTk___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structureTk___elambda__1___closed__1(); @@ -34461,6 +36855,8 @@ l_Lean_Parser_Command_structureTk___closed__4 = _init_l_Lean_Parser_Command_stru lean_mark_persistent(l_Lean_Parser_Command_structureTk___closed__4); l_Lean_Parser_Command_structureTk___closed__5 = _init_l_Lean_Parser_Command_structureTk___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_structureTk___closed__5); +l_Lean_Parser_Command_structureTk___closed__6 = _init_l_Lean_Parser_Command_structureTk___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_structureTk___closed__6); l_Lean_Parser_Command_structureTk = _init_l_Lean_Parser_Command_structureTk(); lean_mark_persistent(l_Lean_Parser_Command_structureTk); l_Lean_Parser_Command_classTk___elambda__1___closed__1 = _init_l_Lean_Parser_Command_classTk___elambda__1___closed__1(); @@ -34479,6 +36875,8 @@ l_Lean_Parser_Command_classTk___closed__3 = _init_l_Lean_Parser_Command_classTk_ lean_mark_persistent(l_Lean_Parser_Command_classTk___closed__3); l_Lean_Parser_Command_classTk___closed__4 = _init_l_Lean_Parser_Command_classTk___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_classTk___closed__4); +l_Lean_Parser_Command_classTk___closed__5 = _init_l_Lean_Parser_Command_classTk___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_classTk___closed__5); l_Lean_Parser_Command_classTk = _init_l_Lean_Parser_Command_classTk(); lean_mark_persistent(l_Lean_Parser_Command_classTk); l_Lean_Parser_Command_extends___elambda__1___closed__1 = _init_l_Lean_Parser_Command_extends___elambda__1___closed__1(); @@ -34511,6 +36909,8 @@ l_Lean_Parser_Command_extends___closed__5 = _init_l_Lean_Parser_Command_extends_ lean_mark_persistent(l_Lean_Parser_Command_extends___closed__5); l_Lean_Parser_Command_extends___closed__6 = _init_l_Lean_Parser_Command_extends___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_extends___closed__6); +l_Lean_Parser_Command_extends___closed__7 = _init_l_Lean_Parser_Command_extends___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_extends___closed__7); l_Lean_Parser_Command_extends = _init_l_Lean_Parser_Command_extends(); lean_mark_persistent(l_Lean_Parser_Command_extends); l_Lean_Parser_Command_structure___elambda__1___closed__1 = _init_l_Lean_Parser_Command_structure___elambda__1___closed__1(); @@ -34549,6 +36949,8 @@ l_Lean_Parser_Command_structure___closed__13 = _init_l_Lean_Parser_Command_struc lean_mark_persistent(l_Lean_Parser_Command_structure___closed__13); l_Lean_Parser_Command_structure___closed__14 = _init_l_Lean_Parser_Command_structure___closed__14(); lean_mark_persistent(l_Lean_Parser_Command_structure___closed__14); +l_Lean_Parser_Command_structure___closed__15 = _init_l_Lean_Parser_Command_structure___closed__15(); +lean_mark_persistent(l_Lean_Parser_Command_structure___closed__15); l_Lean_Parser_Command_structure = _init_l_Lean_Parser_Command_structure(); lean_mark_persistent(l_Lean_Parser_Command_structure); l_Lean_Parser_Command_declaration___elambda__1___closed__1 = _init_l_Lean_Parser_Command_declaration___elambda__1___closed__1(); @@ -34587,6 +36989,8 @@ l_Lean_Parser_Command_declaration___closed__13 = _init_l_Lean_Parser_Command_dec lean_mark_persistent(l_Lean_Parser_Command_declaration___closed__13); l_Lean_Parser_Command_declaration___closed__14 = _init_l_Lean_Parser_Command_declaration___closed__14(); lean_mark_persistent(l_Lean_Parser_Command_declaration___closed__14); +l_Lean_Parser_Command_declaration___closed__15 = _init_l_Lean_Parser_Command_declaration___closed__15(); +lean_mark_persistent(l_Lean_Parser_Command_declaration___closed__15); l_Lean_Parser_Command_declaration = _init_l_Lean_Parser_Command_declaration(); lean_mark_persistent(l_Lean_Parser_Command_declaration); res = l___regBuiltinParser_Lean_Parser_Command_declaration(lean_io_mk_world()); @@ -34624,6 +37028,8 @@ l_Lean_Parser_Command_section___closed__6 = _init_l_Lean_Parser_Command_section_ lean_mark_persistent(l_Lean_Parser_Command_section___closed__6); l_Lean_Parser_Command_section___closed__7 = _init_l_Lean_Parser_Command_section___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_section___closed__7); +l_Lean_Parser_Command_section___closed__8 = _init_l_Lean_Parser_Command_section___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_section___closed__8); l_Lean_Parser_Command_section = _init_l_Lean_Parser_Command_section(); lean_mark_persistent(l_Lean_Parser_Command_section); res = l___regBuiltinParser_Lean_Parser_Command_section(lean_io_mk_world()); @@ -34659,6 +37065,8 @@ l_Lean_Parser_Command_namespace___closed__5 = _init_l_Lean_Parser_Command_namesp lean_mark_persistent(l_Lean_Parser_Command_namespace___closed__5); l_Lean_Parser_Command_namespace___closed__6 = _init_l_Lean_Parser_Command_namespace___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_namespace___closed__6); +l_Lean_Parser_Command_namespace___closed__7 = _init_l_Lean_Parser_Command_namespace___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_namespace___closed__7); l_Lean_Parser_Command_namespace = _init_l_Lean_Parser_Command_namespace(); lean_mark_persistent(l_Lean_Parser_Command_namespace); res = l___regBuiltinParser_Lean_Parser_Command_namespace(lean_io_mk_world()); @@ -34692,6 +37100,8 @@ l_Lean_Parser_Command_end___closed__5 = _init_l_Lean_Parser_Command_end___closed lean_mark_persistent(l_Lean_Parser_Command_end___closed__5); l_Lean_Parser_Command_end___closed__6 = _init_l_Lean_Parser_Command_end___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_end___closed__6); +l_Lean_Parser_Command_end___closed__7 = _init_l_Lean_Parser_Command_end___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_end___closed__7); l_Lean_Parser_Command_end = _init_l_Lean_Parser_Command_end(); lean_mark_persistent(l_Lean_Parser_Command_end); res = l___regBuiltinParser_Lean_Parser_Command_end(lean_io_mk_world()); @@ -34727,6 +37137,8 @@ l_Lean_Parser_Command_variable___closed__5 = _init_l_Lean_Parser_Command_variabl lean_mark_persistent(l_Lean_Parser_Command_variable___closed__5); l_Lean_Parser_Command_variable___closed__6 = _init_l_Lean_Parser_Command_variable___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_variable___closed__6); +l_Lean_Parser_Command_variable___closed__7 = _init_l_Lean_Parser_Command_variable___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_variable___closed__7); l_Lean_Parser_Command_variable = _init_l_Lean_Parser_Command_variable(); lean_mark_persistent(l_Lean_Parser_Command_variable); res = l___regBuiltinParser_Lean_Parser_Command_variable(lean_io_mk_world()); @@ -34762,6 +37174,8 @@ l_Lean_Parser_Command_variables___closed__5 = _init_l_Lean_Parser_Command_variab lean_mark_persistent(l_Lean_Parser_Command_variables___closed__5); l_Lean_Parser_Command_variables___closed__6 = _init_l_Lean_Parser_Command_variables___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_variables___closed__6); +l_Lean_Parser_Command_variables___closed__7 = _init_l_Lean_Parser_Command_variables___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_variables___closed__7); l_Lean_Parser_Command_variables = _init_l_Lean_Parser_Command_variables(); lean_mark_persistent(l_Lean_Parser_Command_variables); res = l___regBuiltinParser_Lean_Parser_Command_variables(lean_io_mk_world()); @@ -34797,6 +37211,8 @@ l_Lean_Parser_Command_universe___closed__5 = _init_l_Lean_Parser_Command_univers lean_mark_persistent(l_Lean_Parser_Command_universe___closed__5); l_Lean_Parser_Command_universe___closed__6 = _init_l_Lean_Parser_Command_universe___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_universe___closed__6); +l_Lean_Parser_Command_universe___closed__7 = _init_l_Lean_Parser_Command_universe___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_universe___closed__7); l_Lean_Parser_Command_universe = _init_l_Lean_Parser_Command_universe(); lean_mark_persistent(l_Lean_Parser_Command_universe); res = l___regBuiltinParser_Lean_Parser_Command_universe(lean_io_mk_world()); @@ -34832,6 +37248,8 @@ l_Lean_Parser_Command_universes___closed__5 = _init_l_Lean_Parser_Command_univer lean_mark_persistent(l_Lean_Parser_Command_universes___closed__5); l_Lean_Parser_Command_universes___closed__6 = _init_l_Lean_Parser_Command_universes___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_universes___closed__6); +l_Lean_Parser_Command_universes___closed__7 = _init_l_Lean_Parser_Command_universes___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_universes___closed__7); l_Lean_Parser_Command_universes = _init_l_Lean_Parser_Command_universes(); lean_mark_persistent(l_Lean_Parser_Command_universes); res = l___regBuiltinParser_Lean_Parser_Command_universes(lean_io_mk_world()); @@ -34867,6 +37285,8 @@ l_Lean_Parser_Command_check___closed__5 = _init_l_Lean_Parser_Command_check___cl lean_mark_persistent(l_Lean_Parser_Command_check___closed__5); l_Lean_Parser_Command_check___closed__6 = _init_l_Lean_Parser_Command_check___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_check___closed__6); +l_Lean_Parser_Command_check___closed__7 = _init_l_Lean_Parser_Command_check___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_check___closed__7); l_Lean_Parser_Command_check = _init_l_Lean_Parser_Command_check(); lean_mark_persistent(l_Lean_Parser_Command_check); res = l___regBuiltinParser_Lean_Parser_Command_check(lean_io_mk_world()); @@ -34902,6 +37322,8 @@ l_Lean_Parser_Command_check__failure___closed__5 = _init_l_Lean_Parser_Command_c lean_mark_persistent(l_Lean_Parser_Command_check__failure___closed__5); l_Lean_Parser_Command_check__failure___closed__6 = _init_l_Lean_Parser_Command_check__failure___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_check__failure___closed__6); +l_Lean_Parser_Command_check__failure___closed__7 = _init_l_Lean_Parser_Command_check__failure___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_check__failure___closed__7); l_Lean_Parser_Command_check__failure = _init_l_Lean_Parser_Command_check__failure(); lean_mark_persistent(l_Lean_Parser_Command_check__failure); res = l___regBuiltinParser_Lean_Parser_Command_check__failure(lean_io_mk_world()); @@ -34937,6 +37359,8 @@ l_Lean_Parser_Command_synth___closed__5 = _init_l_Lean_Parser_Command_synth___cl lean_mark_persistent(l_Lean_Parser_Command_synth___closed__5); l_Lean_Parser_Command_synth___closed__6 = _init_l_Lean_Parser_Command_synth___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_synth___closed__6); +l_Lean_Parser_Command_synth___closed__7 = _init_l_Lean_Parser_Command_synth___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_synth___closed__7); l_Lean_Parser_Command_synth = _init_l_Lean_Parser_Command_synth(); lean_mark_persistent(l_Lean_Parser_Command_synth); res = l___regBuiltinParser_Lean_Parser_Command_synth(lean_io_mk_world()); @@ -34970,6 +37394,8 @@ l_Lean_Parser_Command_exit___closed__4 = _init_l_Lean_Parser_Command_exit___clos lean_mark_persistent(l_Lean_Parser_Command_exit___closed__4); l_Lean_Parser_Command_exit___closed__5 = _init_l_Lean_Parser_Command_exit___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_exit___closed__5); +l_Lean_Parser_Command_exit___closed__6 = _init_l_Lean_Parser_Command_exit___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_exit___closed__6); l_Lean_Parser_Command_exit = _init_l_Lean_Parser_Command_exit(); lean_mark_persistent(l_Lean_Parser_Command_exit); res = l___regBuiltinParser_Lean_Parser_Command_exit(lean_io_mk_world()); @@ -35005,6 +37431,8 @@ l_Lean_Parser_Command_resolve__name___closed__5 = _init_l_Lean_Parser_Command_re lean_mark_persistent(l_Lean_Parser_Command_resolve__name___closed__5); l_Lean_Parser_Command_resolve__name___closed__6 = _init_l_Lean_Parser_Command_resolve__name___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_resolve__name___closed__6); +l_Lean_Parser_Command_resolve__name___closed__7 = _init_l_Lean_Parser_Command_resolve__name___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_resolve__name___closed__7); l_Lean_Parser_Command_resolve__name = _init_l_Lean_Parser_Command_resolve__name(); lean_mark_persistent(l_Lean_Parser_Command_resolve__name); res = l___regBuiltinParser_Lean_Parser_Command_resolve__name(lean_io_mk_world()); @@ -35036,6 +37464,8 @@ l_Lean_Parser_Command_init__quot___closed__4 = _init_l_Lean_Parser_Command_init_ lean_mark_persistent(l_Lean_Parser_Command_init__quot___closed__4); l_Lean_Parser_Command_init__quot___closed__5 = _init_l_Lean_Parser_Command_init__quot___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_init__quot___closed__5); +l_Lean_Parser_Command_init__quot___closed__6 = _init_l_Lean_Parser_Command_init__quot___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_init__quot___closed__6); l_Lean_Parser_Command_init__quot = _init_l_Lean_Parser_Command_init__quot(); lean_mark_persistent(l_Lean_Parser_Command_init__quot); res = l___regBuiltinParser_Lean_Parser_Command_init__quot(lean_io_mk_world()); @@ -35093,6 +37523,8 @@ l_Lean_Parser_Command_set__option___closed__10 = _init_l_Lean_Parser_Command_set lean_mark_persistent(l_Lean_Parser_Command_set__option___closed__10); l_Lean_Parser_Command_set__option___closed__11 = _init_l_Lean_Parser_Command_set__option___closed__11(); lean_mark_persistent(l_Lean_Parser_Command_set__option___closed__11); +l_Lean_Parser_Command_set__option___closed__12 = _init_l_Lean_Parser_Command_set__option___closed__12(); +lean_mark_persistent(l_Lean_Parser_Command_set__option___closed__12); l_Lean_Parser_Command_set__option = _init_l_Lean_Parser_Command_set__option(); lean_mark_persistent(l_Lean_Parser_Command_set__option); res = l___regBuiltinParser_Lean_Parser_Command_set__option(lean_io_mk_world()); @@ -35150,6 +37582,8 @@ l_Lean_Parser_Command_attribute___closed__11 = _init_l_Lean_Parser_Command_attri lean_mark_persistent(l_Lean_Parser_Command_attribute___closed__11); l_Lean_Parser_Command_attribute___closed__12 = _init_l_Lean_Parser_Command_attribute___closed__12(); lean_mark_persistent(l_Lean_Parser_Command_attribute___closed__12); +l_Lean_Parser_Command_attribute___closed__13 = _init_l_Lean_Parser_Command_attribute___closed__13(); +lean_mark_persistent(l_Lean_Parser_Command_attribute___closed__13); l_Lean_Parser_Command_attribute = _init_l_Lean_Parser_Command_attribute(); lean_mark_persistent(l_Lean_Parser_Command_attribute); res = l___regBuiltinParser_Lean_Parser_Command_attribute(lean_io_mk_world()); @@ -35191,6 +37625,8 @@ l_Lean_Parser_Command_export___closed__8 = _init_l_Lean_Parser_Command_export___ lean_mark_persistent(l_Lean_Parser_Command_export___closed__8); l_Lean_Parser_Command_export___closed__9 = _init_l_Lean_Parser_Command_export___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_export___closed__9); +l_Lean_Parser_Command_export___closed__10 = _init_l_Lean_Parser_Command_export___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_export___closed__10); l_Lean_Parser_Command_export = _init_l_Lean_Parser_Command_export(); lean_mark_persistent(l_Lean_Parser_Command_export); res = l___regBuiltinParser_Lean_Parser_Command_export(lean_io_mk_world()); @@ -35228,6 +37664,8 @@ l_Lean_Parser_Command_openHiding___closed__6 = _init_l_Lean_Parser_Command_openH lean_mark_persistent(l_Lean_Parser_Command_openHiding___closed__6); l_Lean_Parser_Command_openHiding___closed__7 = _init_l_Lean_Parser_Command_openHiding___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_openHiding___closed__7); +l_Lean_Parser_Command_openHiding___closed__8 = _init_l_Lean_Parser_Command_openHiding___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_openHiding___closed__8); l_Lean_Parser_Command_openHiding = _init_l_Lean_Parser_Command_openHiding(); lean_mark_persistent(l_Lean_Parser_Command_openHiding); l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__1 = _init_l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__1(); @@ -35270,6 +37708,8 @@ l_Lean_Parser_Command_openRenamingItem___closed__6 = _init_l_Lean_Parser_Command lean_mark_persistent(l_Lean_Parser_Command_openRenamingItem___closed__6); l_Lean_Parser_Command_openRenamingItem___closed__7 = _init_l_Lean_Parser_Command_openRenamingItem___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_openRenamingItem___closed__7); +l_Lean_Parser_Command_openRenamingItem___closed__8 = _init_l_Lean_Parser_Command_openRenamingItem___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_openRenamingItem___closed__8); l_Lean_Parser_Command_openRenamingItem = _init_l_Lean_Parser_Command_openRenamingItem(); lean_mark_persistent(l_Lean_Parser_Command_openRenamingItem); l_Lean_Parser_Command_openRenaming___elambda__1___closed__1 = _init_l_Lean_Parser_Command_openRenaming___elambda__1___closed__1(); @@ -35306,6 +37746,8 @@ l_Lean_Parser_Command_openRenaming___closed__7 = _init_l_Lean_Parser_Command_ope lean_mark_persistent(l_Lean_Parser_Command_openRenaming___closed__7); l_Lean_Parser_Command_openRenaming___closed__8 = _init_l_Lean_Parser_Command_openRenaming___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_openRenaming___closed__8); +l_Lean_Parser_Command_openRenaming___closed__9 = _init_l_Lean_Parser_Command_openRenaming___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_openRenaming___closed__9); l_Lean_Parser_Command_openRenaming = _init_l_Lean_Parser_Command_openRenaming(); lean_mark_persistent(l_Lean_Parser_Command_openRenaming); l_Lean_Parser_Command_openOnly___elambda__1___closed__1 = _init_l_Lean_Parser_Command_openOnly___elambda__1___closed__1(); @@ -35328,6 +37770,8 @@ l_Lean_Parser_Command_openOnly___closed__5 = _init_l_Lean_Parser_Command_openOnl lean_mark_persistent(l_Lean_Parser_Command_openOnly___closed__5); l_Lean_Parser_Command_openOnly___closed__6 = _init_l_Lean_Parser_Command_openOnly___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_openOnly___closed__6); +l_Lean_Parser_Command_openOnly___closed__7 = _init_l_Lean_Parser_Command_openOnly___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_openOnly___closed__7); l_Lean_Parser_Command_openOnly = _init_l_Lean_Parser_Command_openOnly(); lean_mark_persistent(l_Lean_Parser_Command_openOnly); l_Lean_Parser_Command_openSimple___elambda__1___closed__1 = _init_l_Lean_Parser_Command_openSimple___elambda__1___closed__1(); @@ -35346,6 +37790,8 @@ l_Lean_Parser_Command_openSimple___closed__3 = _init_l_Lean_Parser_Command_openS lean_mark_persistent(l_Lean_Parser_Command_openSimple___closed__3); l_Lean_Parser_Command_openSimple___closed__4 = _init_l_Lean_Parser_Command_openSimple___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_openSimple___closed__4); +l_Lean_Parser_Command_openSimple___closed__5 = _init_l_Lean_Parser_Command_openSimple___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_openSimple___closed__5); l_Lean_Parser_Command_openSimple = _init_l_Lean_Parser_Command_openSimple(); lean_mark_persistent(l_Lean_Parser_Command_openSimple); l_Lean_Parser_Command_open___elambda__1___closed__1 = _init_l_Lean_Parser_Command_open___elambda__1___closed__1(); @@ -35384,6 +37830,8 @@ l_Lean_Parser_Command_open___closed__8 = _init_l_Lean_Parser_Command_open___clos lean_mark_persistent(l_Lean_Parser_Command_open___closed__8); l_Lean_Parser_Command_open___closed__9 = _init_l_Lean_Parser_Command_open___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_open___closed__9); +l_Lean_Parser_Command_open___closed__10 = _init_l_Lean_Parser_Command_open___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_open___closed__10); l_Lean_Parser_Command_open = _init_l_Lean_Parser_Command_open(); lean_mark_persistent(l_Lean_Parser_Command_open); res = l___regBuiltinParser_Lean_Parser_Command_open(lean_io_mk_world()); diff --git a/stage0/stdlib/Lean/Parser/Level.c b/stage0/stdlib/Lean/Parser/Level.c index 6c4a625942..6431840cad 100644 --- a/stage0/stdlib/Lean/Parser/Level.c +++ b/stage0/stdlib/Lean/Parser/Level.c @@ -62,7 +62,7 @@ lean_object* l_Lean_Parser_ParserState_mkErrorsAt(lean_object*, lean_object*, le lean_object* l_Lean_Parser_Level_imax___closed__3; lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__6; lean_object* l_Lean_Parser_Level_max___elambda__1___closed__2; -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; lean_object* l_Lean_Parser_Level_max___closed__3; lean_object* l_Lean_Parser_Level_max___elambda__1___closed__4; @@ -127,7 +127,6 @@ lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__3; lean_object* l_Lean_Parser_numLit___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Level_num___closed__5; lean_object* l_Lean_Parser_Level_hole___closed__6; -extern lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Level_max; lean_object* l_Lean_Parser_Level_num; @@ -301,413 +300,411 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_45 = lean_ctor_get(x_8, 1); -lean_inc(x_45); -lean_inc(x_1); -x_46 = l_Lean_Parser_tokenFn(x_1, x_8); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_46, 0); -lean_inc(x_48); -x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); -lean_dec(x_48); -if (lean_obj_tag(x_49) == 2) -{ -lean_object* x_50; lean_object* x_51; uint8_t x_52; -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_51 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_52 = lean_string_dec_eq(x_50, x_51); -lean_dec(x_50); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_45); -x_12 = x_54; -goto block_44; -} -else -{ -lean_dec(x_45); -x_12 = x_46; -goto block_44; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_49); -x_55 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_45); -x_12 = x_56; -goto block_44; -} -} -else -{ -lean_object* x_57; lean_object* x_58; -lean_dec(x_47); -x_57 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_45); -x_12 = x_58; -goto block_44; -} -block_44: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_15 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -x_19 = l_Lean_Parser_tokenFn(x_1, x_16); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_26 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_28 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_30 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_31 = l_Lean_Parser_ParserState_mkNode(x_19, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_22); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_32, x_18); -x_34 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_20); -x_36 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_36, x_18); -x_38 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_17); -lean_dec(x_1); -x_40 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_41 = l_Lean_Parser_ParserState_mkNode(x_16, x_40, x_11); -return x_41; -} -} -else -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_13); -lean_dec(x_1); -x_42 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_43 = l_Lean_Parser_ParserState_mkNode(x_12, x_42, x_11); -return x_43; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_44 = lean_ctor_get(x_7, 1); +lean_inc(x_44); +lean_inc(x_1); +x_45 = l_Lean_Parser_tokenFn(x_1, x_7); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 2) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_51 = lean_string_dec_eq(x_49, x_50); +lean_dec(x_49); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); +x_11 = x_53; +goto block_43; +} +else +{ +lean_dec(x_44); +x_11 = x_45; +goto block_43; } } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_59 = lean_ctor_get(x_2, 0); -lean_inc(x_59); -x_60 = lean_array_get_size(x_59); +lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +x_54 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); +x_11 = x_55; +goto block_43; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_46); +x_56 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); +x_11 = x_57; +goto block_43; +} +block_43: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); +x_27 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_29 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_21); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); +x_33 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_19); +x_35 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); +x_37 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_16); +lean_dec(x_1); +x_39 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_10); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_12); +lean_dec(x_1); +x_41 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_58 = lean_ctor_get(x_2, 0); +lean_inc(x_58); +x_59 = lean_array_get_size(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_2, 1); +lean_inc(x_60); +lean_inc(x_1); +x_61 = lean_apply_2(x_4, x_1, x_2); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) +{ +lean_dec(x_60); lean_dec(x_59); -x_61 = lean_ctor_get(x_2, 1); -lean_inc(x_61); -lean_inc(x_1); -x_62 = lean_apply_2(x_4, x_1, x_2); -x_63 = lean_ctor_get(x_62, 3); +lean_dec(x_1); +return x_61; +} +else +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_62, 0); lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) -{ -lean_dec(x_61); -lean_dec(x_60); -lean_dec(x_1); -return x_62; -} -else -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 0); +lean_dec(x_62); +x_64 = lean_ctor_get(x_61, 1); lean_inc(x_64); -lean_dec(x_63); -x_65 = lean_ctor_get(x_62, 1); -lean_inc(x_65); -x_66 = lean_nat_dec_eq(x_65, x_61); -lean_dec(x_65); -if (x_66 == 0) -{ +x_65 = lean_nat_dec_eq(x_64, x_60); lean_dec(x_64); -lean_dec(x_61); +if (x_65 == 0) +{ +lean_dec(x_63); lean_dec(x_60); +lean_dec(x_59); lean_dec(x_1); -return x_62; +return x_61; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -lean_inc(x_61); -x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); -lean_dec(x_60); -x_68 = l_Lean_Parser_appPrec; -x_69 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_70 = l_Lean_Parser_checkPrecFn(x_68, x_69, x_1, x_67); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_inc(x_60); +x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); +lean_dec(x_59); +x_67 = l_Lean_Parser_appPrec; +x_68 = l_Lean_Parser_checkPrecFn(x_67, x_1, x_66); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_72 = lean_ctor_get(x_70, 0); -lean_inc(x_72); -x_73 = lean_array_get_size(x_72); -lean_dec(x_72); -x_113 = lean_ctor_get(x_70, 1); -lean_inc(x_113); +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); +x_111 = lean_ctor_get(x_68, 1); +lean_inc(x_111); lean_inc(x_1); -x_114 = l_Lean_Parser_tokenFn(x_1, x_70); -x_115 = lean_ctor_get(x_114, 3); -lean_inc(x_115); -if (lean_obj_tag(x_115) == 0) +x_112 = l_Lean_Parser_tokenFn(x_1, x_68); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) { -lean_object* x_116; lean_object* x_117; -x_116 = lean_ctor_get(x_114, 0); +lean_object* x_114; lean_object* x_115; +x_114 = lean_ctor_get(x_112, 0); +lean_inc(x_114); +x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_114); +if (lean_obj_tag(x_115) == 2) +{ +lean_object* x_116; lean_object* x_117; uint8_t x_118; +x_116 = lean_ctor_get(x_115, 1); lean_inc(x_116); -x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); +lean_dec(x_115); +x_117 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_118 = lean_string_dec_eq(x_116, x_117); lean_dec(x_116); -if (lean_obj_tag(x_117) == 2) +if (x_118 == 0) { -lean_object* x_118; lean_object* x_119; uint8_t x_120; -x_118 = lean_ctor_get(x_117, 1); -lean_inc(x_118); -lean_dec(x_117); -x_119 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_120 = lean_string_dec_eq(x_118, x_119); -lean_dec(x_118); -if (x_120 == 0) +lean_object* x_119; lean_object* x_120; +x_119 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); +x_72 = x_120; +goto block_110; +} +else +{ +lean_dec(x_111); +x_72 = x_112; +goto block_110; +} +} +else { lean_object* x_121; lean_object* x_122; +lean_dec(x_115); x_121 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_113); -x_74 = x_122; -goto block_112; -} -else -{ -lean_dec(x_113); -x_74 = x_114; -goto block_112; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); +x_72 = x_122; +goto block_110; } } else { lean_object* x_123; lean_object* x_124; -lean_dec(x_117); +lean_dec(x_113); x_123 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_113); -x_74 = x_124; -goto block_112; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); +x_72 = x_124; +goto block_110; } -} -else +block_110: { -lean_object* x_125; lean_object* x_126; -lean_dec(x_115); -x_125 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_113); -x_74 = x_126; -goto block_112; -} -block_112: +lean_object* x_73; +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_75; -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_76 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_77 = lean_unsigned_to_nat(0u); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_74 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_75 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_78 = l_Lean_Parser_categoryParser___elambda__1(x_76, x_77, x_1, x_74); -x_79 = lean_ctor_get(x_78, 3); -lean_inc(x_79); -if (lean_obj_tag(x_79) == 0) +x_76 = l_Lean_Parser_categoryParser___elambda__1(x_74, x_75, x_1, x_72); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_78, 1); +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_76, 1); +lean_inc(x_78); +x_79 = l_Lean_Parser_tokenFn(x_1, x_76); +x_80 = lean_ctor_get(x_79, 3); lean_inc(x_80); -x_81 = l_Lean_Parser_tokenFn(x_1, x_78); -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) +if (lean_obj_tag(x_80) == 0) { -lean_object* x_83; lean_object* x_84; -x_83 = lean_ctor_get(x_81, 0); +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); +lean_dec(x_81); +if (lean_obj_tag(x_82) == 2) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_83 = lean_ctor_get(x_82, 1); lean_inc(x_83); -x_84 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_83); -lean_dec(x_83); -if (lean_obj_tag(x_84) == 2) -{ -lean_object* x_85; lean_object* x_86; uint8_t x_87; -x_85 = lean_ctor_get(x_84, 1); -lean_inc(x_85); -lean_dec(x_84); -x_86 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_87 = lean_string_dec_eq(x_85, x_86); -lean_dec(x_85); -if (x_87 == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_88 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_88, x_80); -x_90 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_73); -x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_64, x_61); -lean_dec(x_61); -return x_92; -} -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; -lean_dec(x_80); -x_93 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_94 = l_Lean_Parser_ParserState_mkNode(x_81, x_93, x_73); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_64, x_61); -lean_dec(x_61); -return x_95; -} -} -else -{ -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_84); -x_96 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_96, x_80); -x_98 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_73); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_64, x_61); -lean_dec(x_61); -return x_100; -} -} -else -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_82); -x_101 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_101, x_80); -x_103 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_73); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_64, x_61); -lean_dec(x_61); -return x_105; +x_84 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_85 = lean_string_dec_eq(x_83, x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_86 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); +x_88 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_71); +x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); +lean_dec(x_60); +return x_90; +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_78); +x_91 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_71); +x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); +lean_dec(x_60); +return x_93; } } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_79); -lean_dec(x_1); -x_106 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_107 = l_Lean_Parser_ParserState_mkNode(x_78, x_106, x_73); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_64, x_61); -lean_dec(x_61); -return x_108; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_82); +x_94 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); +x_96 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_71); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); +lean_dec(x_60); +return x_98; } } else { -lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_75); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_80); +x_99 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); +x_101 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_71); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); +lean_dec(x_60); +return x_103; +} +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_77); lean_dec(x_1); -x_109 = l_Lean_Parser_Level_paren___elambda__1___closed__4; -x_110 = l_Lean_Parser_ParserState_mkNode(x_74, x_109, x_73); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_64, x_61); -lean_dec(x_61); -return x_111; +x_104 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_71); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); +lean_dec(x_60); +return x_106; +} +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_73); +lean_dec(x_1); +x_107 = l_Lean_Parser_Level_paren___elambda__1___closed__4; +x_108 = l_Lean_Parser_ParserState_mkNode(x_72, x_107, x_71); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); +lean_dec(x_60); +return x_109; } } } else { -lean_object* x_127; -lean_dec(x_71); +lean_object* x_125; +lean_dec(x_69); lean_dec(x_1); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_70, x_64, x_61); -lean_dec(x_61); -return x_127; +x_125 = l_Lean_Parser_mergeOrElseErrors(x_68, x_63, x_60); +lean_dec(x_60); +return x_125; } } } @@ -962,197 +959,195 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_Level_max___elambda__1___closed__5; -x_13 = l_Lean_Parser_Level_max___elambda__1___closed__7; -lean_inc(x_1); -x_14 = l_Lean_Parser_nonReservedSymbolFnAux(x_12, x_13, x_1, x_8); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = lean_ctor_get(x_14, 0); -lean_inc(x_16); -x_17 = lean_array_get_size(x_16); -lean_dec(x_16); -x_18 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -lean_inc(x_1); -x_19 = l_Lean_Parser_categoryParser___elambda__1(x_18, x_6, x_1, x_14); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_21 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_19); -x_22 = l_Lean_nullKind; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_17); -x_24 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_20); -lean_dec(x_1); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_19, x_26, x_17); -x_28 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_15); -lean_dec(x_1); -x_30 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkNode(x_14, x_30, x_11); -return x_31; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_Level_max___elambda__1___closed__5; +x_12 = l_Lean_Parser_Level_max___elambda__1___closed__7; +lean_inc(x_1); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +lean_inc(x_1); +x_18 = l_Lean_Parser_categoryParser___elambda__1(x_17, x_6, x_1, x_13); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_20 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_18); +x_21 = l_Lean_nullKind; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_16); +x_23 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_19); lean_dec(x_1); -return x_8; +x_25 = l_Lean_nullKind; +x_26 = l_Lean_Parser_ParserState_mkNode(x_18, x_25, x_16); +x_27 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; } } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +lean_object* x_29; lean_object* x_30; +lean_dec(x_14); +lean_dec(x_1); +x_29 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_30 = l_Lean_Parser_ParserState_mkNode(x_13, x_29, x_10); +return x_30; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_31 = lean_ctor_get(x_2, 0); +lean_inc(x_31); +x_32 = lean_array_get_size(x_31); +lean_dec(x_31); +x_33 = lean_ctor_get(x_2, 1); +lean_inc(x_33); +lean_inc(x_1); +x_34 = lean_apply_2(x_4, x_1, x_2); +x_35 = lean_ctor_get(x_34, 3); +lean_inc(x_35); +if (lean_obj_tag(x_35) == 0) +{ +lean_dec(x_33); lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); -lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); +lean_dec(x_1); +return x_34; +} +else +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = lean_ctor_get(x_35, 0); lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) -{ -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; -} -else -{ -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_35); +x_37 = lean_ctor_get(x_34, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) -{ +x_38 = lean_nat_dec_eq(x_37, x_33); lean_dec(x_37); -lean_dec(x_34); +if (x_38 == 0) +{ +lean_dec(x_36); lean_dec(x_33); +lean_dec(x_32); lean_dec(x_1); -return x_35; +return x_34; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_inc(x_33); +x_39 = l_Lean_Parser_ParserState_restore(x_34, x_32, x_33); +lean_dec(x_32); +x_40 = l_Lean_Parser_appPrec; +x_41 = l_Lean_Parser_checkPrecFn(x_40, x_1, x_39); +x_42 = lean_ctor_get(x_41, 3); +lean_inc(x_42); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_43 = lean_ctor_get(x_41, 0); +lean_inc(x_43); +x_44 = lean_array_get_size(x_43); +lean_dec(x_43); +x_45 = l_Lean_Parser_Level_max___elambda__1___closed__5; +x_46 = l_Lean_Parser_Level_max___elambda__1___closed__7; +lean_inc(x_1); +x_47 = l_Lean_Parser_nonReservedSymbolFnAux(x_45, x_46, x_1, x_41); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_51 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +lean_inc(x_1); +x_52 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_40, x_1, x_47); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_54 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_52); +x_55 = l_Lean_nullKind; +x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_50); +x_57 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_44); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_36, x_33); lean_dec(x_33); -x_41 = l_Lean_Parser_appPrec; -x_42 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_43 = l_Lean_Parser_checkPrecFn(x_41, x_42, x_1, x_40); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = lean_ctor_get(x_43, 0); -lean_inc(x_45); -x_46 = lean_array_get_size(x_45); -lean_dec(x_45); -x_47 = l_Lean_Parser_Level_max___elambda__1___closed__5; -x_48 = l_Lean_Parser_Level_max___elambda__1___closed__7; -lean_inc(x_1); -x_49 = l_Lean_Parser_nonReservedSymbolFnAux(x_47, x_48, x_1, x_43); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_51 = lean_ctor_get(x_49, 0); -lean_inc(x_51); -x_52 = lean_array_get_size(x_51); -lean_dec(x_51); -x_53 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -lean_inc(x_1); -x_54 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_41, x_1, x_49); -x_55 = lean_ctor_get(x_54, 3); -lean_inc(x_55); -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_56 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_54); -x_57 = l_Lean_nullKind; -x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_52); -x_59 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_46); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_37, x_34); -lean_dec(x_34); -return x_61; +return x_59; } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_dec(x_55); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_53); lean_dec(x_1); -x_62 = l_Lean_nullKind; -x_63 = l_Lean_Parser_ParserState_mkNode(x_54, x_62, x_52); -x_64 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_46); -x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_37, x_34); -lean_dec(x_34); -return x_66; +x_60 = l_Lean_nullKind; +x_61 = l_Lean_Parser_ParserState_mkNode(x_52, x_60, x_50); +x_62 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_44); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_36, x_33); +lean_dec(x_33); +return x_64; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_50); +lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_48); lean_dec(x_1); -x_67 = l_Lean_Parser_Level_max___elambda__1___closed__1; -x_68 = l_Lean_Parser_ParserState_mkNode(x_49, x_67, x_46); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_37, x_34); -lean_dec(x_34); -return x_69; +x_65 = l_Lean_Parser_Level_max___elambda__1___closed__1; +x_66 = l_Lean_Parser_ParserState_mkNode(x_47, x_65, x_44); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_36, x_33); +lean_dec(x_33); +return x_67; } } else { -lean_object* x_70; -lean_dec(x_44); +lean_object* x_68; +lean_dec(x_42); lean_dec(x_1); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_43, x_37, x_34); -lean_dec(x_34); -return x_70; +x_68 = l_Lean_Parser_mergeOrElseErrors(x_41, x_36, x_33); +lean_dec(x_33); +return x_68; } } } @@ -1343,197 +1338,195 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_Level_imax___elambda__1___closed__5; -x_13 = l_Lean_Parser_Level_imax___elambda__1___closed__7; -lean_inc(x_1); -x_14 = l_Lean_Parser_nonReservedSymbolFnAux(x_12, x_13, x_1, x_8); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = lean_ctor_get(x_14, 0); -lean_inc(x_16); -x_17 = lean_array_get_size(x_16); -lean_dec(x_16); -x_18 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -lean_inc(x_1); -x_19 = l_Lean_Parser_categoryParser___elambda__1(x_18, x_6, x_1, x_14); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_21 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_19); -x_22 = l_Lean_nullKind; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_17); -x_24 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_20); -lean_dec(x_1); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_19, x_26, x_17); -x_28 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_15); -lean_dec(x_1); -x_30 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkNode(x_14, x_30, x_11); -return x_31; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_Level_imax___elambda__1___closed__5; +x_12 = l_Lean_Parser_Level_imax___elambda__1___closed__7; +lean_inc(x_1); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +lean_inc(x_1); +x_18 = l_Lean_Parser_categoryParser___elambda__1(x_17, x_6, x_1, x_13); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_20 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_18); +x_21 = l_Lean_nullKind; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_16); +x_23 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_19); lean_dec(x_1); -return x_8; +x_25 = l_Lean_nullKind; +x_26 = l_Lean_Parser_ParserState_mkNode(x_18, x_25, x_16); +x_27 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; } } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +lean_object* x_29; lean_object* x_30; +lean_dec(x_14); +lean_dec(x_1); +x_29 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_30 = l_Lean_Parser_ParserState_mkNode(x_13, x_29, x_10); +return x_30; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_31 = lean_ctor_get(x_2, 0); +lean_inc(x_31); +x_32 = lean_array_get_size(x_31); +lean_dec(x_31); +x_33 = lean_ctor_get(x_2, 1); +lean_inc(x_33); +lean_inc(x_1); +x_34 = lean_apply_2(x_4, x_1, x_2); +x_35 = lean_ctor_get(x_34, 3); +lean_inc(x_35); +if (lean_obj_tag(x_35) == 0) +{ +lean_dec(x_33); lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); -lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); +lean_dec(x_1); +return x_34; +} +else +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = lean_ctor_get(x_35, 0); lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) -{ -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; -} -else -{ -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_35); +x_37 = lean_ctor_get(x_34, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) -{ +x_38 = lean_nat_dec_eq(x_37, x_33); lean_dec(x_37); -lean_dec(x_34); +if (x_38 == 0) +{ +lean_dec(x_36); lean_dec(x_33); +lean_dec(x_32); lean_dec(x_1); -return x_35; +return x_34; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_inc(x_33); +x_39 = l_Lean_Parser_ParserState_restore(x_34, x_32, x_33); +lean_dec(x_32); +x_40 = l_Lean_Parser_appPrec; +x_41 = l_Lean_Parser_checkPrecFn(x_40, x_1, x_39); +x_42 = lean_ctor_get(x_41, 3); +lean_inc(x_42); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_43 = lean_ctor_get(x_41, 0); +lean_inc(x_43); +x_44 = lean_array_get_size(x_43); +lean_dec(x_43); +x_45 = l_Lean_Parser_Level_imax___elambda__1___closed__5; +x_46 = l_Lean_Parser_Level_imax___elambda__1___closed__7; +lean_inc(x_1); +x_47 = l_Lean_Parser_nonReservedSymbolFnAux(x_45, x_46, x_1, x_41); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_51 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +lean_inc(x_1); +x_52 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_40, x_1, x_47); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_54 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_52); +x_55 = l_Lean_nullKind; +x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_50); +x_57 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_44); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_36, x_33); lean_dec(x_33); -x_41 = l_Lean_Parser_appPrec; -x_42 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_43 = l_Lean_Parser_checkPrecFn(x_41, x_42, x_1, x_40); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = lean_ctor_get(x_43, 0); -lean_inc(x_45); -x_46 = lean_array_get_size(x_45); -lean_dec(x_45); -x_47 = l_Lean_Parser_Level_imax___elambda__1___closed__5; -x_48 = l_Lean_Parser_Level_imax___elambda__1___closed__7; -lean_inc(x_1); -x_49 = l_Lean_Parser_nonReservedSymbolFnAux(x_47, x_48, x_1, x_43); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_51 = lean_ctor_get(x_49, 0); -lean_inc(x_51); -x_52 = lean_array_get_size(x_51); -lean_dec(x_51); -x_53 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -lean_inc(x_1); -x_54 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_41, x_1, x_49); -x_55 = lean_ctor_get(x_54, 3); -lean_inc(x_55); -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_56 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Level_max___elambda__1___spec__1(x_1, x_54); -x_57 = l_Lean_nullKind; -x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_52); -x_59 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_46); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_37, x_34); -lean_dec(x_34); -return x_61; +return x_59; } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_dec(x_55); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_53); lean_dec(x_1); -x_62 = l_Lean_nullKind; -x_63 = l_Lean_Parser_ParserState_mkNode(x_54, x_62, x_52); -x_64 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_46); -x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_37, x_34); -lean_dec(x_34); -return x_66; +x_60 = l_Lean_nullKind; +x_61 = l_Lean_Parser_ParserState_mkNode(x_52, x_60, x_50); +x_62 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_44); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_36, x_33); +lean_dec(x_33); +return x_64; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_50); +lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_48); lean_dec(x_1); -x_67 = l_Lean_Parser_Level_imax___elambda__1___closed__1; -x_68 = l_Lean_Parser_ParserState_mkNode(x_49, x_67, x_46); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_37, x_34); -lean_dec(x_34); -return x_69; +x_65 = l_Lean_Parser_Level_imax___elambda__1___closed__1; +x_66 = l_Lean_Parser_ParserState_mkNode(x_47, x_65, x_44); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_36, x_33); +lean_dec(x_33); +return x_67; } } else { -lean_object* x_70; -lean_dec(x_44); +lean_object* x_68; +lean_dec(x_42); lean_dec(x_1); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_43, x_37, x_34); -lean_dec(x_34); -return x_70; +x_68 = l_Lean_Parser_mergeOrElseErrors(x_41, x_36, x_33); +lean_dec(x_33); +return x_68; } } } @@ -1718,221 +1711,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Level_hole___elambda__1___closed__4; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Level_hole___elambda__1___closed__4; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Level_hole___elambda__1___closed__4; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_Parser_Level_hole___elambda__1___closed__1; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Level_hole___elambda__1___closed__4; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Level_hole___elambda__1___closed__1; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -2063,103 +2054,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_numLit___elambda__1(x_1, x_8); -x_13 = l_Lean_Parser_Level_num___elambda__1___closed__1; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_numLit___elambda__1(x_1, x_7); +x_12 = l_Lean_Parser_Level_num___elambda__1___closed__1; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_numLit___elambda__1(x_1, x_26); -x_31 = l_Lean_Parser_Level_num___elambda__1___closed__1; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_numLit___elambda__1(x_1, x_24); +x_29 = l_Lean_Parser_Level_num___elambda__1___closed__1; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -2283,103 +2272,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_13 = l_Lean_Parser_Level_ident___elambda__1___closed__1; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = l_Lean_Parser_Level_ident___elambda__1___closed__1; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_ident___elambda__1(x_1, x_26); -x_31 = l_Lean_Parser_Level_ident___elambda__1___closed__1; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_ident___elambda__1(x_1, x_24); +x_29 = l_Lean_Parser_Level_ident___elambda__1___closed__1; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -2522,106 +2509,105 @@ return x_3; lean_object* l_Lean_Parser_Level_addLit___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(65u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_tokenFn(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_10, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_26, x_9); -x_13 = x_27; -goto block_20; -} -else -{ -lean_dec(x_9); -x_13 = x_10; -goto block_20; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_28, x_9); -x_13 = x_29; -goto block_20; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_11); -x_30 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_30, x_9); -x_13 = x_31; -goto block_20; -} -block_20: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = l_Lean_Parser_numLit___elambda__1(x_1, x_13); -x_16 = l_Lean_Parser_Level_addLit___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_12, x_8); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_14); -lean_dec(x_1); -x_18 = l_Lean_Parser_Level_addLit___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_18, x_12, x_8); -return x_19; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_9, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +x_25 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_25, x_8); +x_12 = x_26; +goto block_19; +} +else +{ +lean_dec(x_8); +x_12 = x_9; +goto block_19; +} +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_21); +x_27 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_27, x_8); +x_12 = x_28; +goto block_19; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_10); +x_29 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_29, x_8); +x_12 = x_30; +goto block_19; +} +block_19: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = l_Lean_Parser_numLit___elambda__1(x_1, x_12); +x_15 = l_Lean_Parser_Level_addLit___elambda__1___closed__2; +x_16 = l_Lean_Parser_ParserState_mkTrailingNode(x_14, x_15, x_11, x_7); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_17 = l_Lean_Parser_Level_addLit___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_17, x_11, x_7); +return x_18; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } diff --git a/stage0/stdlib/Lean/Parser/Module.c b/stage0/stdlib/Lean/Parser/Module.c index c8d4827a83..81047a4647 100644 --- a/stage0/stdlib/Lean/Parser/Module.c +++ b/stage0/stdlib/Lean/Parser/Module.c @@ -30,6 +30,7 @@ lean_object* l_Lean_Parser_ModuleParserState_inhabited___closed__1; lean_object* l_Lean_Parser_testModuleParser___closed__2; lean_object* l_Lean_Format_pretty(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; +lean_object* l_Lean_Parser_Module_import___closed__10; lean_object* l_Lean_Parser_Module_prelude; lean_object* l_Lean_Parser_Module_import___elambda__1___closed__12; extern lean_object* l_Array_empty___closed__1; @@ -67,6 +68,7 @@ lean_object* l_Lean_Parser_ParserState_mkErrorsAt(lean_object*, lean_object*, le lean_object* l_IO_FS_readFile___at_Lean_Parser_parseFile___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_Module_header___elambda__1___closed__4; lean_object* l_Lean_Parser_Module_import___elambda__1___closed__13; +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_Lean_Parser_Module_prelude___closed__4; lean_object* l___private_Lean_Parser_Module_2__mkEOI___closed__3; @@ -92,6 +94,7 @@ uint8_t l_Lean_Parser_tryAnti(lean_object*, lean_object*); lean_object* l_Lean_Parser_optionaInfo(lean_object*); lean_object* l_Lean_Syntax_updateLeading(lean_object*); lean_object* lean_io_realpath(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Module_header___closed__8; lean_object* l_Lean_Parser_testModuleParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_parseCommand___main(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_IO_print___at___private_Lean_Parser_Module_4__testModuleParserAux___main___spec__2(lean_object*, lean_object*); @@ -143,6 +146,7 @@ lean_object* l_Lean_Parser_Module_header___closed__7; lean_object* l_Lean_Parser_Module_import___closed__7; lean_object* l_Lean_Parser_symbolInfo(lean_object*); lean_object* l_IO_FS_Handle_getLine___at_Lean_Parser_parseFile___spec__3(lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_epsilonInfo; lean_object* l_Lean_Parser_Module_prelude___elambda__1___closed__6; lean_object* l_Lean_Parser_categoryParser___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Module_prelude___closed__2; @@ -183,6 +187,7 @@ lean_object* l_Lean_Parser_Module_prelude___elambda__1___closed__4; lean_object* l_Lean_Parser_Module_import___elambda__1___closed__6; lean_object* l___private_Lean_Parser_Module_4__testModuleParserAux___main(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_parseCommand(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Module_prelude___closed__6; lean_object* l_Lean_MessageLog_forM___at___private_Lean_Parser_Module_4__testModuleParserAux___main___spec__5(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Module_import___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_isEOI___boxed(lean_object*); @@ -301,188 +306,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Module_prelude___elambda__1___closed__7; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Module_prelude___elambda__1___closed__7; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Module_prelude___elambda__1___closed__7; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Module_prelude___elambda__1___closed__7; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Module_prelude___elambda__1___closed__10; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Module_prelude___elambda__1___closed__4; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -511,16 +547,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Module_prelude___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Module_prelude___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Module_prelude___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Module_prelude___elambda__1___closed__6; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Module_prelude___closed__2; +x_3 = l_Lean_Parser_Module_prelude___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Module_prelude___closed__4() { +lean_object* _init_l_Lean_Parser_Module_prelude___closed__5() { _start: { lean_object* x_1; @@ -528,12 +574,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Module_prelude___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Module_prelude___closed__5() { +lean_object* _init_l_Lean_Parser_Module_prelude___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Module_prelude___closed__3; -x_2 = l_Lean_Parser_Module_prelude___closed__4; +x_1 = l_Lean_Parser_Module_prelude___closed__4; +x_2 = l_Lean_Parser_Module_prelude___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -544,7 +590,7 @@ lean_object* _init_l_Lean_Parser_Module_prelude() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Module_prelude___closed__5; +x_1 = l_Lean_Parser_Module_prelude___closed__6; return x_1; } } @@ -697,227 +743,234 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_59 = lean_ctor_get(x_2, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_2); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); -lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); -lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Module_import___elambda__1___closed__6; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; -x_67 = l_Lean_Parser_Module_import___elambda__1___closed__14; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); -x_8 = x_68; -goto block_58; -} -else -{ -lean_dec(x_59); -x_8 = x_60; -goto block_58; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_63); -x_69 = l_Lean_Parser_Module_import___elambda__1___closed__14; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); -x_8 = x_70; -goto block_58; -} -} -else -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_61); -x_71 = l_Lean_Parser_Module_import___elambda__1___closed__14; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); -x_8 = x_72; -goto block_58; -} -block_58: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_43; lean_object* x_44; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_62 = lean_ctor_get(x_7, 1); +lean_inc(x_62); lean_inc(x_1); -x_43 = l_Lean_Parser_tokenFn(x_1, x_8); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) +x_63 = l_Lean_Parser_tokenFn(x_1, x_7); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) { -lean_object* x_45; lean_object* x_46; -x_45 = lean_ctor_get(x_43, 0); -lean_inc(x_45); -x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); -lean_dec(x_45); -if (lean_obj_tag(x_46) == 2) +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_63, 0); +lean_inc(x_65); +x_66 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_65); +lean_dec(x_65); +if (lean_obj_tag(x_66) == 2) { -lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_47 = lean_ctor_get(x_46, 1); +lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_67 = lean_ctor_get(x_66, 1); +lean_inc(x_67); +lean_dec(x_66); +x_68 = l_Lean_Parser_Module_import___elambda__1___closed__6; +x_69 = lean_string_dec_eq(x_67, x_68); +lean_dec(x_67); +if (x_69 == 0) +{ +lean_object* x_70; lean_object* x_71; +x_70 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_70, x_62); +x_11 = x_71; +goto block_61; +} +else +{ +lean_dec(x_62); +x_11 = x_63; +goto block_61; +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_66); +x_72 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_72, x_62); +x_11 = x_73; +goto block_61; +} +} +else +{ +lean_object* x_74; lean_object* x_75; +lean_dec(x_64); +x_74 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_74, x_62); +x_11 = x_75; +goto block_61; +} +block_61: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_46; lean_object* x_47; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_46 = l_Lean_Parser_tokenFn(x_1, x_11); +x_47 = lean_ctor_get(x_46, 3); lean_inc(x_47); -lean_dec(x_46); -x_48 = l_Lean_Parser_Module_import___elambda__1___closed__8; -x_49 = lean_string_dec_eq(x_47, x_48); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); +lean_dec(x_48); +if (lean_obj_tag(x_49) == 2) +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_Parser_Module_import___elambda__1___closed__8; +x_52 = lean_string_dec_eq(x_50, x_51); +lean_dec(x_50); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_15); +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_15); +x_16 = x_54; +goto block_45; +} +else +{ +x_16 = x_46; +goto block_45; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_49); +x_55 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_15); +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_15); +x_16 = x_56; +goto block_45; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_dec(x_47); -if (x_49 == 0) -{ -lean_object* x_50; lean_object* x_51; -x_50 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_12); -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_12); -x_13 = x_51; -goto block_42; +x_57 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_15); +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_15); +x_16 = x_58; +goto block_45; } -else +block_45: { -x_13 = x_43; -goto block_42; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_46); -x_52 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_12); -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_12); -x_13 = x_53; -goto block_42; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_44); -x_54 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_12); -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_12); -x_13 = x_55; -goto block_42; -} -block_42: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_12); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_13, x_15, x_11); +lean_object* x_17; x_17 = lean_ctor_get(x_16, 3); lean_inc(x_17); if (lean_obj_tag(x_17) == 0) { lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = l_Lean_Parser_ident___elambda__1(x_1, x_16); -x_19 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; +lean_dec(x_15); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = l_Lean_Parser_ident___elambda__1(x_1, x_19); +x_22 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_17); +lean_object* x_24; lean_object* x_25; +lean_dec(x_20); lean_dec(x_1); -x_21 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_16, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_19, x_24, x_10); +return x_25; } } else { -lean_object* x_23; uint8_t x_24; -lean_dec(x_14); -x_23 = lean_ctor_get(x_13, 1); -lean_inc(x_23); -x_24 = lean_nat_dec_eq(x_23, x_12); -lean_dec(x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_12); -x_25 = l_Lean_nullKind; -x_26 = l_Lean_Parser_ParserState_mkNode(x_13, x_25, x_11); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_26; uint8_t x_27; +lean_dec(x_17); +x_26 = lean_ctor_get(x_16, 1); +lean_inc(x_26); +x_27 = lean_nat_dec_eq(x_26, x_15); +lean_dec(x_26); +if (x_27 == 0) { lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = l_Lean_Parser_ident___elambda__1(x_1, x_26); -x_29 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_7); -return x_30; +lean_dec(x_15); +x_28 = l_Lean_nullKind; +x_29 = l_Lean_Parser_ParserState_mkNode(x_16, x_28, x_14); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = l_Lean_Parser_ident___elambda__1(x_1, x_29); +x_32 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; } else { -lean_object* x_31; lean_object* x_32; -lean_dec(x_27); +lean_object* x_34; lean_object* x_35; +lean_dec(x_30); lean_dec(x_1); -x_31 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_26, x_31, x_7); -return x_32; +x_34 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_29, x_34, x_10); +return x_35; } } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_33 = l_Lean_Parser_ParserState_restore(x_13, x_11, x_12); -x_34 = l_Lean_nullKind; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_36 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_37 = l_Lean_nullKind; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_14); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = l_Lean_Parser_ident___elambda__1(x_1, x_35); -x_38 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_7); -return x_39; +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = l_Lean_Parser_ident___elambda__1(x_1, x_38); +x_41 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_10); +return x_42; } else { -lean_object* x_40; lean_object* x_41; -lean_dec(x_36); +lean_object* x_43; lean_object* x_44; +lean_dec(x_39); lean_dec(x_1); -x_40 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_35, x_40, x_7); -return x_41; +x_43 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_38, x_43, x_10); +return x_44; } } } @@ -925,290 +978,304 @@ return x_41; } else { -lean_object* x_56; lean_object* x_57; -lean_dec(x_9); +lean_object* x_59; lean_object* x_60; +lean_dec(x_12); lean_dec(x_1); -x_56 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_8, x_56, x_7); -return x_57; +x_59 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_60 = l_Lean_Parser_ParserState_mkNode(x_11, x_59, x_10); +return x_60; } } } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_73 = lean_ctor_get(x_2, 0); -lean_inc(x_73); -x_74 = lean_array_get_size(x_73); -lean_dec(x_73); -x_75 = lean_ctor_get(x_2, 1); -lean_inc(x_75); -lean_inc(x_1); -x_76 = lean_apply_2(x_4, x_1, x_2); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) -{ -lean_dec(x_75); -lean_dec(x_74); +lean_dec(x_8); lean_dec(x_1); -return x_76; +return x_7; +} } else { -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_77, 0); +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_2, 0); +lean_inc(x_76); +x_77 = lean_array_get_size(x_76); +lean_dec(x_76); +x_78 = lean_ctor_get(x_2, 1); lean_inc(x_78); -lean_dec(x_77); -x_79 = lean_ctor_get(x_76, 1); -lean_inc(x_79); -x_80 = lean_nat_dec_eq(x_79, x_75); -lean_dec(x_79); -if (x_80 == 0) +lean_inc(x_1); +x_79 = lean_apply_2(x_4, x_1, x_2); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { lean_dec(x_78); -lean_dec(x_75); -lean_dec(x_74); +lean_dec(x_77); lean_dec(x_1); -return x_76; +return x_79; } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_142; lean_object* x_143; -lean_inc(x_75); -x_81 = l_Lean_Parser_ParserState_restore(x_76, x_74, x_75); -lean_dec(x_74); -x_82 = lean_ctor_get(x_81, 0); +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 0); +lean_inc(x_81); +lean_dec(x_80); +x_82 = lean_ctor_get(x_79, 1); lean_inc(x_82); -x_83 = lean_array_get_size(x_82); +x_83 = lean_nat_dec_eq(x_82, x_78); lean_dec(x_82); +if (x_83 == 0) +{ +lean_dec(x_81); +lean_dec(x_78); +lean_dec(x_77); +lean_dec(x_1); +return x_79; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_inc(x_78); +x_84 = l_Lean_Parser_ParserState_restore(x_79, x_77, x_78); +lean_dec(x_77); +x_85 = lean_unsigned_to_nat(1024u); +x_86 = l_Lean_Parser_checkPrecFn(x_85, x_1, x_84); +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_148; lean_object* x_149; lean_object* x_150; +x_88 = lean_ctor_get(x_86, 0); +lean_inc(x_88); +x_89 = lean_array_get_size(x_88); +lean_dec(x_88); +x_148 = lean_ctor_get(x_86, 1); +lean_inc(x_148); lean_inc(x_1); -x_142 = l_Lean_Parser_tokenFn(x_1, x_81); -x_143 = lean_ctor_get(x_142, 3); -lean_inc(x_143); -if (lean_obj_tag(x_143) == 0) -{ -lean_object* x_144; lean_object* x_145; -x_144 = lean_ctor_get(x_142, 0); -lean_inc(x_144); -x_145 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_144); -lean_dec(x_144); -if (lean_obj_tag(x_145) == 2) -{ -lean_object* x_146; lean_object* x_147; uint8_t x_148; -x_146 = lean_ctor_get(x_145, 1); -lean_inc(x_146); -lean_dec(x_145); -x_147 = l_Lean_Parser_Module_import___elambda__1___closed__6; -x_148 = lean_string_dec_eq(x_146, x_147); -lean_dec(x_146); -if (x_148 == 0) -{ -lean_object* x_149; lean_object* x_150; -x_149 = l_Lean_Parser_Module_import___elambda__1___closed__14; -lean_inc(x_75); -x_150 = l_Lean_Parser_ParserState_mkErrorsAt(x_142, x_149, x_75); -x_84 = x_150; -goto block_141; -} -else -{ -x_84 = x_142; -goto block_141; -} -} -else +x_149 = l_Lean_Parser_tokenFn(x_1, x_86); +x_150 = lean_ctor_get(x_149, 3); +lean_inc(x_150); +if (lean_obj_tag(x_150) == 0) { lean_object* x_151; lean_object* x_152; -lean_dec(x_145); -x_151 = l_Lean_Parser_Module_import___elambda__1___closed__14; -lean_inc(x_75); -x_152 = l_Lean_Parser_ParserState_mkErrorsAt(x_142, x_151, x_75); -x_84 = x_152; -goto block_141; +x_151 = lean_ctor_get(x_149, 0); +lean_inc(x_151); +x_152 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_151); +lean_dec(x_151); +if (lean_obj_tag(x_152) == 2) +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; +x_153 = lean_ctor_get(x_152, 1); +lean_inc(x_153); +lean_dec(x_152); +x_154 = l_Lean_Parser_Module_import___elambda__1___closed__6; +x_155 = lean_string_dec_eq(x_153, x_154); +lean_dec(x_153); +if (x_155 == 0) +{ +lean_object* x_156; lean_object* x_157; +x_156 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_156, x_148); +x_90 = x_157; +goto block_147; +} +else +{ +lean_dec(x_148); +x_90 = x_149; +goto block_147; } } else { -lean_object* x_153; lean_object* x_154; -lean_dec(x_143); -x_153 = l_Lean_Parser_Module_import___elambda__1___closed__14; -lean_inc(x_75); -x_154 = l_Lean_Parser_ParserState_mkErrorsAt(x_142, x_153, x_75); -x_84 = x_154; -goto block_141; +lean_object* x_158; lean_object* x_159; +lean_dec(x_152); +x_158 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_158, x_148); +x_90 = x_159; +goto block_147; } -block_141: +} +else { -lean_object* x_85; -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +lean_object* x_160; lean_object* x_161; +lean_dec(x_150); +x_160 = l_Lean_Parser_Module_import___elambda__1___closed__14; +x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_149, x_160, x_148); +x_90 = x_161; +goto block_147; +} +block_147: { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_125; lean_object* x_126; -x_86 = lean_ctor_get(x_84, 0); -lean_inc(x_86); -x_87 = lean_array_get_size(x_86); -lean_dec(x_86); -x_88 = lean_ctor_get(x_84, 1); -lean_inc(x_88); +lean_object* x_91; +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_131; lean_object* x_132; +x_92 = lean_ctor_get(x_90, 0); +lean_inc(x_92); +x_93 = lean_array_get_size(x_92); +lean_dec(x_92); +x_94 = lean_ctor_get(x_90, 1); +lean_inc(x_94); lean_inc(x_1); -x_125 = l_Lean_Parser_tokenFn(x_1, x_84); -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +x_131 = l_Lean_Parser_tokenFn(x_1, x_90); +x_132 = lean_ctor_get(x_131, 3); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 0) { -lean_object* x_127; lean_object* x_128; -x_127 = lean_ctor_get(x_125, 0); -lean_inc(x_127); -x_128 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_127); -lean_dec(x_127); -if (lean_obj_tag(x_128) == 2) +lean_object* x_133; lean_object* x_134; +x_133 = lean_ctor_get(x_131, 0); +lean_inc(x_133); +x_134 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_133); +lean_dec(x_133); +if (lean_obj_tag(x_134) == 2) { -lean_object* x_129; lean_object* x_130; uint8_t x_131; -x_129 = lean_ctor_get(x_128, 1); -lean_inc(x_129); -lean_dec(x_128); -x_130 = l_Lean_Parser_Module_import___elambda__1___closed__8; -x_131 = lean_string_dec_eq(x_129, x_130); -lean_dec(x_129); -if (x_131 == 0) +lean_object* x_135; lean_object* x_136; uint8_t x_137; +x_135 = lean_ctor_get(x_134, 1); +lean_inc(x_135); +lean_dec(x_134); +x_136 = l_Lean_Parser_Module_import___elambda__1___closed__8; +x_137 = lean_string_dec_eq(x_135, x_136); +lean_dec(x_135); +if (x_137 == 0) { -lean_object* x_132; lean_object* x_133; -x_132 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_88); -x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_132, x_88); -x_89 = x_133; -goto block_124; +lean_object* x_138; lean_object* x_139; +x_138 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_94); +x_139 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_138, x_94); +x_95 = x_139; +goto block_130; } else { -x_89 = x_125; -goto block_124; +x_95 = x_131; +goto block_130; } } else { -lean_object* x_134; lean_object* x_135; -lean_dec(x_128); -x_134 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_88); -x_135 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_134, x_88); -x_89 = x_135; -goto block_124; +lean_object* x_140; lean_object* x_141; +lean_dec(x_134); +x_140 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_94); +x_141 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_140, x_94); +x_95 = x_141; +goto block_130; } } else { -lean_object* x_136; lean_object* x_137; -lean_dec(x_126); -x_136 = l_Lean_Parser_Module_import___elambda__1___closed__11; -lean_inc(x_88); -x_137 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_136, x_88); -x_89 = x_137; -goto block_124; +lean_object* x_142; lean_object* x_143; +lean_dec(x_132); +x_142 = l_Lean_Parser_Module_import___elambda__1___closed__11; +lean_inc(x_94); +x_143 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_142, x_94); +x_95 = x_143; +goto block_130; } -block_124: +block_130: { -lean_object* x_90; -x_90 = lean_ctor_get(x_89, 3); -lean_inc(x_90); -if (lean_obj_tag(x_90) == 0) +lean_object* x_96; +x_96 = lean_ctor_get(x_95, 3); +lean_inc(x_96); +if (lean_obj_tag(x_96) == 0) { -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_88); -x_91 = l_Lean_nullKind; -x_92 = l_Lean_Parser_ParserState_mkNode(x_89, x_91, x_87); -x_93 = lean_ctor_get(x_92, 3); -lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) +lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_94); +x_97 = l_Lean_nullKind; +x_98 = l_Lean_Parser_ParserState_mkNode(x_95, x_97, x_93); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_94 = l_Lean_Parser_ident___elambda__1(x_1, x_92); -x_95 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_83); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_78, x_75); -lean_dec(x_75); -return x_97; +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_100 = l_Lean_Parser_ident___elambda__1(x_1, x_98); +x_101 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_89); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_81, x_78); +lean_dec(x_78); +return x_103; } else { -lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_93); +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_99); lean_dec(x_1); -x_98 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_99 = l_Lean_Parser_ParserState_mkNode(x_92, x_98, x_83); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_78, x_75); -lean_dec(x_75); -return x_100; +x_104 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_98, x_104, x_89); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_81, x_78); +lean_dec(x_78); +return x_106; } } else { -lean_object* x_101; uint8_t x_102; -lean_dec(x_90); -x_101 = lean_ctor_get(x_89, 1); -lean_inc(x_101); -x_102 = lean_nat_dec_eq(x_101, x_88); -lean_dec(x_101); -if (x_102 == 0) +lean_object* x_107; uint8_t x_108; +lean_dec(x_96); +x_107 = lean_ctor_get(x_95, 1); +lean_inc(x_107); +x_108 = lean_nat_dec_eq(x_107, x_94); +lean_dec(x_107); +if (x_108 == 0) { -lean_object* x_103; lean_object* x_104; lean_object* x_105; -lean_dec(x_88); -x_103 = l_Lean_nullKind; -x_104 = l_Lean_Parser_ParserState_mkNode(x_89, x_103, x_87); -x_105 = lean_ctor_get(x_104, 3); -lean_inc(x_105); -if (lean_obj_tag(x_105) == 0) +lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_dec(x_94); +x_109 = l_Lean_nullKind; +x_110 = l_Lean_Parser_ParserState_mkNode(x_95, x_109, x_93); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_106 = l_Lean_Parser_ident___elambda__1(x_1, x_104); -x_107 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_83); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_78, x_75); -lean_dec(x_75); -return x_109; +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_112 = l_Lean_Parser_ident___elambda__1(x_1, x_110); +x_113 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_114 = l_Lean_Parser_ParserState_mkNode(x_112, x_113, x_89); +x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_81, x_78); +lean_dec(x_78); +return x_115; } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_105); +lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_111); lean_dec(x_1); -x_110 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_104, x_110, x_83); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_78, x_75); -lean_dec(x_75); -return x_112; +x_116 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_117 = l_Lean_Parser_ParserState_mkNode(x_110, x_116, x_89); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_81, x_78); +lean_dec(x_78); +return x_118; } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = l_Lean_Parser_ParserState_restore(x_89, x_87, x_88); -x_114 = l_Lean_nullKind; -x_115 = l_Lean_Parser_ParserState_mkNode(x_113, x_114, x_87); -x_116 = lean_ctor_get(x_115, 3); -lean_inc(x_116); -if (lean_obj_tag(x_116) == 0) +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; +x_119 = l_Lean_Parser_ParserState_restore(x_95, x_93, x_94); +x_120 = l_Lean_nullKind; +x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_93); +x_122 = lean_ctor_get(x_121, 3); +lean_inc(x_122); +if (lean_obj_tag(x_122) == 0) { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_117 = l_Lean_Parser_ident___elambda__1(x_1, x_115); -x_118 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_83); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_78, x_75); -lean_dec(x_75); -return x_120; +lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_123 = l_Lean_Parser_ident___elambda__1(x_1, x_121); +x_124 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_125 = l_Lean_Parser_ParserState_mkNode(x_123, x_124, x_89); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_81, x_78); +lean_dec(x_78); +return x_126; } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_116); +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_122); lean_dec(x_1); -x_121 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_122 = l_Lean_Parser_ParserState_mkNode(x_115, x_121, x_83); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_78, x_75); -lean_dec(x_75); -return x_123; +x_127 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_121, x_127, x_89); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_81, x_78); +lean_dec(x_78); +return x_129; } } } @@ -1216,17 +1283,27 @@ return x_123; } else { -lean_object* x_138; lean_object* x_139; lean_object* x_140; -lean_dec(x_85); +lean_object* x_144; lean_object* x_145; lean_object* x_146; +lean_dec(x_91); lean_dec(x_1); -x_138 = l_Lean_Parser_Module_import___elambda__1___closed__2; -x_139 = l_Lean_Parser_ParserState_mkNode(x_84, x_138, x_83); -x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_78, x_75); -lean_dec(x_75); -return x_140; +x_144 = l_Lean_Parser_Module_import___elambda__1___closed__2; +x_145 = l_Lean_Parser_ParserState_mkNode(x_90, x_144, x_89); +x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_81, x_78); +lean_dec(x_78); +return x_146; } } } +else +{ +lean_object* x_162; +lean_dec(x_87); +lean_dec(x_1); +x_162 = l_Lean_Parser_mergeOrElseErrors(x_86, x_81, x_78); +lean_dec(x_78); +return x_162; +} +} } } } @@ -1293,16 +1370,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Module_import___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Module_import___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Module_import___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Module_import___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Module_import___closed__6; +x_3 = l_Lean_Parser_Module_import___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Module_import___closed__8() { +lean_object* _init_l_Lean_Parser_Module_import___closed__9() { _start: { lean_object* x_1; @@ -1310,12 +1397,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Module_import___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Module_import___closed__9() { +lean_object* _init_l_Lean_Parser_Module_import___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Module_import___closed__7; -x_2 = l_Lean_Parser_Module_import___closed__8; +x_1 = l_Lean_Parser_Module_import___closed__8; +x_2 = l_Lean_Parser_Module_import___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1326,7 +1413,7 @@ lean_object* _init_l_Lean_Parser_Module_import() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Module_import___closed__9; +x_1 = l_Lean_Parser_Module_import___closed__10; return x_1; } } @@ -1443,293 +1530,327 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -lean_inc(x_1); -x_9 = l_Lean_Parser_Module_prelude___elambda__1(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; -lean_dec(x_8); -x_11 = l_Lean_nullKind; -lean_inc(x_7); -x_12 = l_Lean_Parser_ParserState_mkNode(x_9, x_11, x_7); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +lean_inc(x_1); +x_12 = l_Lean_Parser_Module_prelude___elambda__1(x_1, x_7); x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_12); -x_17 = l_Lean_Parser_ParserState_mkNode(x_16, x_11, x_15); -x_18 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_11); +x_14 = l_Lean_nullKind; +lean_inc(x_10); +x_15 = l_Lean_Parser_ParserState_mkNode(x_12, x_14, x_10); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_15); +x_20 = l_Lean_Parser_ParserState_mkNode(x_19, x_14, x_18); +x_21 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; } else { -lean_object* x_20; lean_object* x_21; +lean_object* x_23; lean_object* x_24; +lean_dec(x_16); +lean_dec(x_1); +x_23 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_15, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; uint8_t x_26; lean_dec(x_13); +x_25 = lean_ctor_get(x_12, 1); +lean_inc(x_25); +x_26 = lean_nat_dec_eq(x_25, x_11); +lean_dec(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_11); +x_27 = l_Lean_nullKind; +lean_inc(x_10); +x_28 = l_Lean_Parser_ParserState_mkNode(x_12, x_27, x_10); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_28); +x_33 = l_Lean_Parser_ParserState_mkNode(x_32, x_27, x_31); +x_34 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_29); lean_dec(x_1); -x_20 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_12, x_20, x_7); -return x_21; +x_36 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_28, x_36, x_10); +return x_37; } } else { -lean_object* x_22; uint8_t x_23; -lean_dec(x_10); -x_22 = lean_ctor_get(x_9, 1); -lean_inc(x_22); -x_23 = lean_nat_dec_eq(x_22, x_8); -lean_dec(x_22); -if (x_23 == 0) +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = l_Lean_Parser_ParserState_restore(x_12, x_10, x_11); +x_39 = l_Lean_nullKind; +lean_inc(x_10); +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_10); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = lean_array_get_size(x_42); +lean_dec(x_42); +x_44 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_40); +x_45 = l_Lean_Parser_ParserState_mkNode(x_44, x_39, x_43); +x_46 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_41); +lean_dec(x_1); +x_48 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_40, x_48, x_10); +return x_49; +} +} +} +} +else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_dec(x_8); -x_24 = l_Lean_nullKind; -lean_inc(x_7); -x_25 = l_Lean_Parser_ParserState_mkNode(x_9, x_24, x_7); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_25); -x_30 = l_Lean_Parser_ParserState_mkNode(x_29, x_24, x_28); -x_31 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_7); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_26); lean_dec(x_1); -x_33 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_25, x_33, x_7); -return x_34; +return x_7; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_35 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); -x_36 = l_Lean_nullKind; -lean_inc(x_7); -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_7); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_39 = lean_ctor_get(x_37, 0); -lean_inc(x_39); -x_40 = lean_array_get_size(x_39); -lean_dec(x_39); -x_41 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_37); -x_42 = l_Lean_Parser_ParserState_mkNode(x_41, x_36, x_40); -x_43 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_7); -return x_44; -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_38); -lean_dec(x_1); -x_45 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_37, x_45, x_7); -return x_46; -} -} -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_2, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_2, 1); -lean_inc(x_49); -lean_inc(x_1); -x_50 = lean_apply_2(x_4, x_1, x_2); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) -{ -lean_dec(x_49); -lean_dec(x_48); -lean_dec(x_1); -return x_50; -} -else -{ -lean_object* x_52; lean_object* x_53; uint8_t x_54; -x_52 = lean_ctor_get(x_51, 0); +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_2, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_2, 1); lean_inc(x_52); -lean_dec(x_51); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -x_54 = lean_nat_dec_eq(x_53, x_49); -lean_dec(x_53); -if (x_54 == 0) +lean_inc(x_1); +x_53 = lean_apply_2(x_4, x_1, x_2); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { lean_dec(x_52); -lean_dec(x_49); -lean_dec(x_48); +lean_dec(x_51); lean_dec(x_1); -return x_50; +return x_53; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_inc(x_49); -x_55 = l_Lean_Parser_ParserState_restore(x_50, x_48, x_49); -lean_dec(x_48); -x_56 = lean_ctor_get(x_55, 0); +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); lean_inc(x_56); -x_57 = lean_array_get_size(x_56); +x_57 = lean_nat_dec_eq(x_56, x_52); lean_dec(x_56); -lean_inc(x_1); -x_58 = l_Lean_Parser_Module_prelude___elambda__1(x_1, x_55); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) +if (x_57 == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = l_Lean_nullKind; -lean_inc(x_57); -x_61 = l_Lean_Parser_ParserState_mkNode(x_58, x_60, x_57); -x_62 = lean_ctor_get(x_61, 3); +lean_dec(x_55); +lean_dec(x_52); +lean_dec(x_51); +lean_dec(x_1); +return x_53; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_inc(x_52); +x_58 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +lean_dec(x_51); +x_59 = lean_unsigned_to_nat(1024u); +x_60 = l_Lean_Parser_checkPrecFn(x_59, x_1, x_58); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_62 = lean_ctor_get(x_60, 0); lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = lean_array_get_size(x_63); -lean_dec(x_63); -x_65 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_61); -x_66 = l_Lean_Parser_ParserState_mkNode(x_65, x_60, x_64); -x_67 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_57); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_52, x_49); -lean_dec(x_49); -return x_69; -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_63 = lean_array_get_size(x_62); lean_dec(x_62); +x_64 = lean_ctor_get(x_60, 1); +lean_inc(x_64); +lean_inc(x_1); +x_65 = l_Lean_Parser_Module_prelude___elambda__1(x_1, x_60); +x_66 = lean_ctor_get(x_65, 3); +lean_inc(x_66); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_dec(x_64); +x_67 = l_Lean_nullKind; +lean_inc(x_63); +x_68 = l_Lean_Parser_ParserState_mkNode(x_65, x_67, x_63); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); +x_72 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_68); +x_73 = l_Lean_Parser_ParserState_mkNode(x_72, x_67, x_71); +x_74 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_75 = l_Lean_Parser_ParserState_mkNode(x_73, x_74, x_63); +x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_55, x_52); +lean_dec(x_52); +return x_76; +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_dec(x_69); lean_dec(x_1); -x_70 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_61, x_70, x_57); -x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_52, x_49); -lean_dec(x_49); -return x_72; +x_77 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_78 = l_Lean_Parser_ParserState_mkNode(x_68, x_77, x_63); +x_79 = l_Lean_Parser_mergeOrElseErrors(x_78, x_55, x_52); +lean_dec(x_52); +return x_79; } } else { -lean_object* x_73; uint8_t x_74; -lean_dec(x_59); -x_73 = lean_ctor_get(x_58, 1); -lean_inc(x_73); -x_74 = lean_nat_dec_eq(x_73, x_49); -lean_dec(x_73); -if (x_74 == 0) +lean_object* x_80; uint8_t x_81; +lean_dec(x_66); +x_80 = lean_ctor_get(x_65, 1); +lean_inc(x_80); +x_81 = lean_nat_dec_eq(x_80, x_64); +lean_dec(x_80); +if (x_81 == 0) { -lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_75 = l_Lean_nullKind; -lean_inc(x_57); -x_76 = l_Lean_Parser_ParserState_mkNode(x_58, x_75, x_57); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +lean_object* x_82; lean_object* x_83; lean_object* x_84; +lean_dec(x_64); +x_82 = l_Lean_nullKind; +lean_inc(x_63); +x_83 = l_Lean_Parser_ParserState_mkNode(x_65, x_82, x_63); +x_84 = lean_ctor_get(x_83, 3); +lean_inc(x_84); +if (lean_obj_tag(x_84) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_78 = lean_ctor_get(x_76, 0); -lean_inc(x_78); -x_79 = lean_array_get_size(x_78); -lean_dec(x_78); -x_80 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_76); -x_81 = l_Lean_Parser_ParserState_mkNode(x_80, x_75, x_79); -x_82 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_57); -x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_52, x_49); -lean_dec(x_49); -return x_84; +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_85 = lean_ctor_get(x_83, 0); +lean_inc(x_85); +x_86 = lean_array_get_size(x_85); +lean_dec(x_85); +x_87 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_83); +x_88 = l_Lean_Parser_ParserState_mkNode(x_87, x_82, x_86); +x_89 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_63); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_55, x_52); +lean_dec(x_52); +return x_91; } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_77); +lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_84); lean_dec(x_1); -x_85 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_76, x_85, x_57); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_52, x_49); -lean_dec(x_49); -return x_87; +x_92 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_83, x_92, x_63); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_55, x_52); +lean_dec(x_52); +return x_94; } } else { -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_inc(x_49); -x_88 = l_Lean_Parser_ParserState_restore(x_58, x_57, x_49); -x_89 = l_Lean_nullKind; -lean_inc(x_57); -x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_57); -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_95 = l_Lean_Parser_ParserState_restore(x_65, x_63, x_64); +x_96 = l_Lean_nullKind; +lean_inc(x_63); +x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_63); +x_98 = lean_ctor_get(x_97, 3); +lean_inc(x_98); +if (lean_obj_tag(x_98) == 0) { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_92 = lean_ctor_get(x_90, 0); -lean_inc(x_92); -x_93 = lean_array_get_size(x_92); -lean_dec(x_92); -x_94 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_90); -x_95 = l_Lean_Parser_ParserState_mkNode(x_94, x_89, x_93); -x_96 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_57); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_52, x_49); -lean_dec(x_49); -return x_98; +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_99 = lean_ctor_get(x_97, 0); +lean_inc(x_99); +x_100 = lean_array_get_size(x_99); +lean_dec(x_99); +x_101 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Module_header___elambda__1___spec__1(x_1, x_97); +x_102 = l_Lean_Parser_ParserState_mkNode(x_101, x_96, x_100); +x_103 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_63); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_55, x_52); +lean_dec(x_52); +return x_105; } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_91); +lean_object* x_106; lean_object* x_107; lean_object* x_108; +lean_dec(x_98); lean_dec(x_1); -x_99 = l_Lean_Parser_Module_header___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_90, x_99, x_57); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_52, x_49); -lean_dec(x_49); -return x_101; +x_106 = l_Lean_Parser_Module_header___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_97, x_106, x_63); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_55, x_52); +lean_dec(x_52); +return x_108; } } } } +else +{ +lean_object* x_109; +lean_dec(x_61); +lean_dec(x_1); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_60, x_55, x_52); +lean_dec(x_52); +return x_109; +} +} } } } @@ -1779,16 +1900,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Module_header___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Module_header___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Module_header___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Module_header___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Module_header___closed__4; +x_3 = l_Lean_Parser_Module_header___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Module_header___closed__6() { +lean_object* _init_l_Lean_Parser_Module_header___closed__7() { _start: { lean_object* x_1; @@ -1796,12 +1927,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Module_header___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Module_header___closed__7() { +lean_object* _init_l_Lean_Parser_Module_header___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Module_header___closed__5; -x_2 = l_Lean_Parser_Module_header___closed__6; +x_1 = l_Lean_Parser_Module_header___closed__6; +x_2 = l_Lean_Parser_Module_header___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1812,7 +1943,7 @@ lean_object* _init_l_Lean_Parser_Module_header() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Module_header___closed__7; +x_1 = l_Lean_Parser_Module_header___closed__8; return x_1; } } @@ -3682,6 +3813,8 @@ l_Lean_Parser_Module_prelude___closed__4 = _init_l_Lean_Parser_Module_prelude___ lean_mark_persistent(l_Lean_Parser_Module_prelude___closed__4); l_Lean_Parser_Module_prelude___closed__5 = _init_l_Lean_Parser_Module_prelude___closed__5(); lean_mark_persistent(l_Lean_Parser_Module_prelude___closed__5); +l_Lean_Parser_Module_prelude___closed__6 = _init_l_Lean_Parser_Module_prelude___closed__6(); +lean_mark_persistent(l_Lean_Parser_Module_prelude___closed__6); l_Lean_Parser_Module_prelude = _init_l_Lean_Parser_Module_prelude(); lean_mark_persistent(l_Lean_Parser_Module_prelude); l_Lean_Parser_Module_import___elambda__1___closed__1 = _init_l_Lean_Parser_Module_import___elambda__1___closed__1(); @@ -3730,6 +3863,8 @@ l_Lean_Parser_Module_import___closed__8 = _init_l_Lean_Parser_Module_import___cl lean_mark_persistent(l_Lean_Parser_Module_import___closed__8); l_Lean_Parser_Module_import___closed__9 = _init_l_Lean_Parser_Module_import___closed__9(); lean_mark_persistent(l_Lean_Parser_Module_import___closed__9); +l_Lean_Parser_Module_import___closed__10 = _init_l_Lean_Parser_Module_import___closed__10(); +lean_mark_persistent(l_Lean_Parser_Module_import___closed__10); l_Lean_Parser_Module_import = _init_l_Lean_Parser_Module_import(); lean_mark_persistent(l_Lean_Parser_Module_import); l_Lean_Parser_Module_header___elambda__1___closed__1 = _init_l_Lean_Parser_Module_header___elambda__1___closed__1(); @@ -3754,6 +3889,8 @@ l_Lean_Parser_Module_header___closed__6 = _init_l_Lean_Parser_Module_header___cl lean_mark_persistent(l_Lean_Parser_Module_header___closed__6); l_Lean_Parser_Module_header___closed__7 = _init_l_Lean_Parser_Module_header___closed__7(); lean_mark_persistent(l_Lean_Parser_Module_header___closed__7); +l_Lean_Parser_Module_header___closed__8 = _init_l_Lean_Parser_Module_header___closed__8(); +lean_mark_persistent(l_Lean_Parser_Module_header___closed__8); l_Lean_Parser_Module_header = _init_l_Lean_Parser_Module_header(); lean_mark_persistent(l_Lean_Parser_Module_header); l_Lean_Parser_Module_updateTokens___closed__1 = _init_l_Lean_Parser_Module_updateTokens___closed__1(); diff --git a/stage0/stdlib/Lean/Parser/Parser.c b/stage0/stdlib/Lean/Parser/Parser.c index 70a9e36bfc..2b7c81c914 100644 --- a/stage0/stdlib/Lean/Parser/Parser.c +++ b/stage0/stdlib/Lean/Parser/Parser.c @@ -18,21 +18,19 @@ lean_object* l_Lean_Parser_nonReservedSymbol___boxed(lean_object*, lean_object*) lean_object* l_List_reverse___rarg(lean_object*); lean_object* l_Lean_Parser_identEq(lean_object*); lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_decimalNumberFn___spec__1___boxed(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg(lean_object*); lean_object* l_Lean_Syntax_foldArgs___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__1(lean_object*); lean_object* l_Lean_Parser_categoryParserOfStack___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon; -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_declareLeadingBuiltinParser___closed__2; lean_object* l_Lean_Parser_builtinTokenTable; lean_object* l_Lean_Parser_finishCommentBlock(lean_object*, lean_object*, lean_object*); lean_object* lean_string_push(lean_object*, uint32_t); extern lean_object* l_Lean_Name_toString___closed__1; lean_object* l_Lean_Parser_charLit___closed__1; -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1(lean_object*, lean_object*); -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1___boxed(lean_object*, lean_object*); +uint8_t l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_andthenInfo___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_hashOrelse; lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__7___rarg(lean_object*, lean_object*, lean_object*); size_t l_USize_add(size_t, size_t); @@ -42,17 +40,16 @@ extern lean_object* l_Lean_fieldIdxKind; lean_object* l_PersistentHashMap_foldlM___at_Lean_Parser_getSyntaxNodeKinds___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Syntax_forArgsM___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_declareLeadingBuiltinParser___closed__1; -lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3___boxed(lean_object*, lean_object*); uint8_t l_RBNode_isRed___rarg(lean_object*); uint8_t l_Lean_Parser_checkTailWs(lean_object*); lean_object* l_Lean_Parser_mkParserExtension___closed__1; -lean_object* l___private_Lean_Parser_Parser_24__catNameToString(lean_object*); lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_hexNumberFn___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_identFn___closed__1; lean_object* l_Lean_Parser_try(lean_object*); lean_object* l_Lean_Parser_nodeWithAntiquot___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolInfo___elambda__1___boxed(lean_object*); lean_object* l_Lean_Parser_prattParser(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_23__catNameToString(lean_object*); lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); uint8_t l_PersistentHashMap_contains___at_Lean_Parser_isValidSyntaxNodeKind___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_leadingIdentAsSymbol___boxed(lean_object*, lean_object*); @@ -79,6 +76,7 @@ extern lean_object* l_Lean_nullKind; lean_object* l_Lean_Parser_mkParserExtension___closed__2; lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__3___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_strLitNoAntiquot; +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_octalNumberFn___closed__1; lean_object* l_Lean_Parser_many1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_many(lean_object*); @@ -91,11 +89,10 @@ lean_object* l_Lean_Parser_strAux___boxed(lean_object*, lean_object*, lean_objec lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_rawCh___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_List_repr___rarg___closed__1; extern uint32_t l_Lean_idBeginEscape; -lean_object* l___private_Lean_Parser_Parser_26__ParserAttribute_add___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3(lean_object*, lean_object*); lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_identFnAux___main___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_optionaInfo___elambda__2(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserFn_inhabited___rarg(lean_object*); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_binNumberFn___closed__1; lean_object* l_Lean_Parser_hexNumberFn___closed__1; lean_object* l_Lean_Syntax_foldSepRevArgs(lean_object*); @@ -108,24 +105,21 @@ lean_object* l_Lean_Parser_unicodeSymbolInfo___elambda__2(lean_object*, lean_obj lean_object* l_Lean_Syntax_foldSepArgs___rarg___boxed(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Name_quickLt(lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_23__ParserExtension_addImported(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_charLit; lean_object* l_Lean_Parser_hexNumberFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_trailingLoop___main(lean_object*, lean_object*, lean_object*); lean_object* l_PersistentHashMap_foldlM___at_Lean_Parser_getSyntaxNodeKinds___spec__1(lean_object*, lean_object*); extern size_t l_PersistentHashMap_insertAux___main___rarg___closed__2; -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2; lean_object* l_Array_foldSepBy___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_numLit___elambda__1___closed__1; lean_object* l_Lean_Parser_longestMatchFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_fieldIdx___closed__6; -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_registerBuiltinParserAttribute___closed__1; lean_object* l_Lean_Parser_nameLitNoAntiquot; +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon; lean_object* l_Lean_Parser_parserExtension___elambda__1___boxed(lean_object*); lean_object* l_Lean_Syntax_foldSepArgs___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nameLitNoAntiquot___closed__2; -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1; lean_object* l_Lean_Parser_mkParserExtension___closed__4; lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_decimalNumberFn___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Parser_Trie_matchPrefix___rarg(lean_object*, lean_object*, lean_object*); @@ -138,12 +132,13 @@ lean_object* l_Lean_Parser_hexNumberFn(lean_object*, lean_object*, lean_object*) lean_object* l_Array_foldSepBy___rarg___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_strLitFnAux(lean_object*, lean_object*, lean_object*); uint8_t l_List_elem___main___at_Lean_NameHashSet_insert___spec__2(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1(lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Parser_SyntaxNodeKindSet_insert___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_next(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Prod_HasRepr___rarg___closed__1; lean_object* l_Array_extract___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_setExpected___elambda__1___boxed(lean_object*); -lean_object* l___private_Lean_Parser_Parser_19__addTokenConfig(lean_object*, lean_object*); lean_object* l_Lean_Parser_addParser(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_PrattParsingTables_inhabited; lean_object* l_Lean_Parser_categoryParserFnRef; @@ -167,25 +162,30 @@ lean_object* l_Lean_Parser_builtinParserCategoriesRef; lean_object* lean_environment_find(lean_object*, lean_object*); lean_object* l_Lean_Parser_parserExtension; lean_object* l_Lean_Parser_unquotedSymbolFn___closed__1; +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3; lean_object* l_Lean_Parser_group(lean_object*); lean_object* l_Lean_Parser_nonReservedSymbolInfo___closed__2; lean_object* l_Lean_Parser_dollarSymbol___closed__1; -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; lean_object* l_Lean_Parser_ident; lean_object* l_Lean_Parser_parserExtension___closed__2; -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1; uint8_t l_Lean_Parser_isLitKind(lean_object*); lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_whitespace___main___spec__1(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addImported___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_binNumberFn___spec__1(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_fieldIdxKind___closed__1; lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__1; +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg(lean_object*); lean_object* l_Lean_Parser_withAntiquotFn(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_categoryParserOfStackFn___closed__2; lean_object* lean_io_mk_ref(lean_object*, lean_object*); lean_object* l_Lean_Parser_checkColGe(lean_object*, lean_object*); uint8_t l___private_Lean_Parser_Parser_4__isToken(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_25__ParserAttribute_add___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nonReservedSymbolFn(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_18__addTokenConfig(lean_object*, lean_object*); uint8_t l_Char_isDigit(uint32_t); +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkNode(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserState(lean_object*); lean_object* l_List_append___rarg(lean_object*, lean_object*); @@ -194,7 +194,6 @@ lean_object* l_Lean_Parser_categoryParserFnExtension___closed__2; lean_object* l_Lean_Parser_nameLitNoAntiquot___closed__1; lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_foldArgsM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Array_foldSepByM___spec__1(lean_object*, lean_object*); -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_many1Indent___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1(lean_object*, lean_object*); lean_object* lean_io_ref_get(lean_object*, lean_object*); @@ -202,8 +201,6 @@ lean_object* l_Lean_Parser_satisfyFn___boxed(lean_object*, lean_object*, lean_ob lean_object* l_Lean_Parser_declareBuiltinParser___closed__5; extern uint32_t l_Lean_idEndEscape; lean_object* l_Lean_Parser_mkAntiquot___closed__9; -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(lean_object*, lean_object*); -lean_object* l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__8; lean_object* l_RBNode_insert___at_Lean_Parser_TokenMap_insert___spec__5(lean_object*); lean_object* l_Lean_Parser_pushNone___elambda__1___boxed(lean_object*); @@ -218,19 +215,19 @@ lean_object* l_Lean_Parser_symbolNoWsFn___boxed(lean_object*, lean_object*, lean lean_object* l_Lean_Parser_ParserState_mkTrailingNode(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_finishCommentBlock___main___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbol___closed__2; +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__4; +lean_object* l___private_Lean_Parser_Parser_19__addTrailingParserAux(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkInputContext(lean_object*, lean_object*); lean_object* l_Lean_Parser_addBuiltinParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_addBuiltinParser(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); lean_object* l_Lean_Parser_rawCh___elambda__1(uint32_t, uint8_t, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1; extern lean_object* l_Lean_charLitKind___closed__1; lean_object* lean_string_append(lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolNoWsFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_tokenFn(lean_object*, lean_object*); -lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__7(lean_object*); lean_object* l_Lean_Parser_mkAtomicInfo(lean_object*); lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_binNumberFn___spec__1___boxed(lean_object*, lean_object*, lean_object*); @@ -245,15 +242,13 @@ uint8_t l_Char_isWhitespace(uint32_t); extern lean_object* l_String_splitAux___main___closed__1; lean_object* l_Lean_Parser_categoryParserFnImpl(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_withPosition(lean_object*); -lean_object* l___private_Lean_Parser_Parser_20__addTrailingParserAux(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__11; lean_object* l_Lean_Parser_charLitFnAux(lean_object*, lean_object*, lean_object*); extern lean_object* l_List_repr___rarg___closed__3; -lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbol___closed__1; lean_object* l_Lean_Parser_leadingParserAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Array_foldSepByM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_identFnAux___main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkNodeToken(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_tryAnti___boxed(lean_object*, lean_object*); @@ -264,6 +259,7 @@ lean_object* l_Lean_Parser_symbolInfo___elambda__1(lean_object*); lean_object* l_Lean_Parser_nonReservedSymbol(lean_object*, uint8_t); lean_object* l_Lean_Parser_symbolFnAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkNodeToken___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn___closed__1; lean_object* l_Lean_Parser_initCacheForInput___boxed(lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_forArgsM___spec__1(lean_object*); lean_object* l_Lean_Parser_symbolNoWs___boxed(lean_object*); @@ -301,7 +297,7 @@ lean_object* l_Lean_Parser_mkCategoryAntiquotParser(lean_object*, lean_object*, lean_object* l_Lean_Parser_fieldIdx___closed__4; lean_object* l_PersistentHashMap_foldlMAux___main___at_Lean_Parser_getSyntaxNodeKinds___spec__2(lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_forSepArgsM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ident___closed__1; lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_foldSepArgsM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_finishCommentBlock___main(lean_object*, lean_object*, lean_object*); @@ -329,6 +325,7 @@ lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; lean_object* l_Lean_Parser_declareTrailingBuiltinParser___closed__1; lean_object* l_Lean_Parser_mkParserExtension___lambda__1(lean_object*); lean_object* l_Lean_Parser_mkParserOfConstantUnsafe___closed__2; +lean_object* l_List_foldl___main___at___private_Lean_Parser_Parser_19__addTrailingParserAux___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_parserExtension___closed__5; lean_object* l_Array_iterateMAux___main___at_Lean_Parser_getSyntaxNodeKinds___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_numLit___closed__1; @@ -353,6 +350,8 @@ lean_object* l_Lean_Parser_mkAntiquot___closed__15; lean_object* l_Lean_Parser_decimalNumberFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_PrattParsingTables_inhabited___closed__1; lean_object* l_Lean_Parser_compileParserDescr___main___closed__3; +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_throwUnknownParserCategory___rarg___closed__1; lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_quotedSymbolFn___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn(lean_object*, lean_object*, lean_object*); @@ -375,6 +374,7 @@ lean_object* l_Lean_Parser_setExpected___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbol(lean_object*, lean_object*); lean_object* l_Lean_Parser_longestMatchFn___closed__1; lean_object* l_Lean_Parser_checkStackTopFn(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolInfo___elambda__1(lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Parser_getSyntaxNodeKinds___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); @@ -385,7 +385,6 @@ lean_object* l_Lean_Parser_mkTokenAndFixPos___closed__1; lean_object* l_Lean_Parser_mkParserAttributeImpl___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_whitespace___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserExtension___closed__6; -lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1; lean_object* l_Lean_Parser_mkTokenAndFixPos___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1(lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_forSepArgsM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -422,10 +421,8 @@ lean_object* l_Lean_Parser_dollarSymbol; lean_object* l_Lean_Parser_symbolFn___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_numLitKind; lean_object* l_EStateM_bind___rarg(lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addEntry(lean_object*, lean_object*); lean_object* l_PersistentHashMap_findAux___main___at_Lean_Parser_addLeadingParser___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolNoWsInfo___elambda__1___boxed(lean_object*); -lean_object* l___private_Lean_Parser_Parser_13__mkTrailingResult(lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbol; lean_object* l_Lean_Parser_numLitNoAntiquot___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -445,13 +442,14 @@ lean_object* l_Lean_Parser_mkParserOfConstantUnsafe___closed__1; lean_object* lean_array_swap(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_strLitKind; lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_forArgsM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addImported(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_finishCommentBlock___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_parserExtension___closed__6; lean_object* l_Lean_Parser_checkNoWsBefore___elambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_foldArgs(lean_object*); lean_object* l_Lean_Parser_nonReservedSymbolInfo___elambda__1(lean_object*); +lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_nodeInfo___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_merge(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserOfConstantUnsafe(lean_object*, lean_object*, lean_object*); @@ -464,7 +462,9 @@ lean_object* l_Array_findRevMAux___main___at___private_Lean_Parser_Parser_9__pic lean_object* l_Lean_Syntax_foldArgsM(lean_object*, lean_object*); lean_object* l_Array_shrink___main___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_numLitNoAntiquot___closed__2; +lean_object* l___private_Lean_Parser_Parser_16__ParserExtension_mkInitial(lean_object*); lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__2___rarg(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_11__mkResult(lean_object*, lean_object*); lean_object* l_Lean_Parser_withAntiquot(lean_object*, lean_object*); lean_object* l_Lean_Parser_antiquotNestedExpr___closed__8; lean_object* l_Lean_Parser_fieldIdx___closed__3; @@ -474,13 +474,14 @@ lean_object* l_Lean_Parser_ParserState_keepNewError(lean_object*, lean_object*); lean_object* l_Lean_Parser_antiquotExpr; lean_object* l_Lean_Parser_regTermParserAttribute___closed__1; lean_object* l_Lean_Parser_symbol(lean_object*); +lean_object* l___private_Lean_Parser_Parser_21__ParserExtension_addEntry(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserExtension___closed__8; lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_octalNumberFn___spec__2(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2; lean_object* l_Lean_Parser_symbolInfo___elambda__1___boxed(lean_object*); lean_object* l_Lean_Parser_whitespace___main(lean_object*, lean_object*); lean_object* l_Lean_Parser_nameLit___closed__3; lean_object* l_Lean_Syntax_foldArgsM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_17__ParserExtension_mkInitial(lean_object*); lean_object* l_Lean_Parser_numLitFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_parserExtension___closed__4; lean_object* l_Lean_Parser_identFnAux___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -488,8 +489,8 @@ lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Parser_tryAnti(lean_object*, lean_object*); extern lean_object* l_Lean_numLitKind___closed__1; lean_object* l_Lean_Parser_optionaInfo(lean_object*); -lean_object* l___private_Lean_Parser_Parser_12__mkResult(lean_object*, lean_object*); lean_object* l_Lean_Parser_FirstTokens_seq(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1; lean_object* l_Lean_Parser_peekToken(lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_toString___closed__4; lean_object* l_Lean_Parser_anyOfFn___main___closed__1; @@ -503,13 +504,13 @@ lean_object* l_Lean_Parser_nameLit; lean_object* l_Lean_Parser_binNumberFn(lean_object*, lean_object*, lean_object*); lean_object* l_List_lengthAux___main___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserOfConstant___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_charLitNoAntiquot___closed__3; lean_object* l_Lean_Parser_peekTokenAux(lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_HasBeq; +lean_object* l___private_Lean_Parser_Parser_15__addBuiltinParserCategory(lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_nonReservedSymbolInfo___closed__3; -lean_object* l___private_Lean_Parser_Parser_16__addBuiltinParserCategory(lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_parserExtension___elambda__4(lean_object*, lean_object*); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_Inhabited___closed__1; lean_object* l_Lean_Parser_throwUnknownParserCategory___rarg(lean_object*); lean_object* l_Lean_Parser_ParserState_shrinkStack(lean_object*, lean_object*); @@ -517,10 +518,12 @@ uint8_t l_Lean_Parser_checkTailNoWs(lean_object*); lean_object* l_Lean_Parser_checkTailWs___boxed(lean_object*); lean_object* l_Lean_Parser_charLitFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_trailingLoopStep(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1(lean_object*); lean_object* l_Lean_Parser_charLitNoAntiquot___closed__2; lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_foldArgsM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_longestMatchStep(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_addLeadingParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_12__mkTrailingResult(lean_object*, lean_object*); lean_object* l_Lean_Parser_setExpectedFn(lean_object*); lean_object* l_Lean_Parser_strLitFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserExtension___lambda__2___boxed(lean_object*); @@ -546,6 +549,7 @@ lean_object* l_Lean_Parser_checkWsBefore(lean_object*); lean_object* l_Lean_Parser_checkNoWsBeforeFn(lean_object*, lean_object*, lean_object*); uint8_t l_PersistentHashMap_containsAux___main___at_Lean_Parser_isValidSyntaxNodeKind___spec__2(lean_object*, size_t, lean_object*); lean_object* l_Lean_Parser_ParserState_setCache(lean_object*, lean_object*); +lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_strAux___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__10; lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_foldSepArgsM___spec__1(lean_object*, lean_object*); @@ -560,19 +564,19 @@ lean_object* l_Lean_Parser_nameLit___closed__2; lean_object* l_Lean_Parser_strLitNoAntiquot___closed__1; lean_object* l_Lean_Parser_sepByFn(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_fieldIdx___closed__2; +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1; lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_chFn___spec__1(uint32_t, lean_object*, lean_object*, lean_object*); extern lean_object* l_PersistentHashMap_insertAux___main___rarg___closed__3; +lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1; lean_object* l_Lean_Parser_rawCh___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_getNext___boxed(lean_object*, lean_object*); lean_object* l_IO_ofExcept___at_Lean_Parser_declareBuiltinParser___spec__1(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserAttributeImpl___closed__1; lean_object* l_Lean_Parser_termParser___closed__2; lean_object* lean_name_mk_string(lean_object*, lean_object*); extern lean_object* l_Lean_choiceKind; extern lean_object* l_List_repr___rarg___closed__2; extern lean_object* l_Lean_charLitKind; -lean_object* l___private_Lean_Parser_Parser_16__addBuiltinParserCategory___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_List_reprAux___main___rarg___closed__1; lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_hexNumberFn___spec__3___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_TokenMap_Inhabited(lean_object*); @@ -581,27 +585,29 @@ lean_object* l_Lean_Parser_categoryParserFnExtension___elambda__1___rarg___boxed lean_object* l_Lean_Parser_regTermParserAttribute___closed__2; lean_object* l_Lean_Parser_rawIdent; lean_object* l_Array_foldlStepMAux___main___at_Array_foldSepByM___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2; lean_object* l___private_Lean_Parser_Parser_9__pickNonNone___boxed(lean_object*); lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; lean_object* l_Lean_Parser_FirstTokens_merge(lean_object*, lean_object*); lean_object* l_Lean_Parser_strLit___elambda__1___closed__1; lean_object* l_Lean_Parser_pushNone___elambda__1___rarg(lean_object*); -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1; lean_object* lean_eval_const(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserAttributeImpl(lean_object*, lean_object*); lean_object* l_Lean_Parser_fieldIdx___closed__5; -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; lean_object* l_Lean_Parser_symbolInfo___elambda__2(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_15__addParserCategoryCore(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_hexNumberFn___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Parser_charLit___closed__2; lean_object* l_Lean_Parser_ParserFn_inhabited(lean_object*); lean_object* l_Lean_Parser_ParserExtensionState_inhabited; +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkEOIError___closed__1; uint8_t l_Lean_Parser_isIdCont(lean_object*, lean_object*); lean_object* l_Lean_Parser_mergeOrElseErrors___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1; lean_object* l_Lean_Parser_compileParserDescr(lean_object*, lean_object*); lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_quotedSymbolFn___spec__2___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_14__addParserCategoryCore(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_declareTrailingBuiltinParser(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nonReservedSymbolInfo___elambda__1___boxed(lean_object*); lean_object* l_Lean_Parser_setCategoryParserFnRef___closed__1; @@ -615,7 +621,6 @@ uint32_t lean_string_utf8_get(lean_object*, lean_object*); lean_object* l_Lean_Parser_declareBuiltinParser___closed__7; extern lean_object* l_Lean_Environment_evalConstCheck___rarg___closed__1; lean_object* l_Lean_Parser_parserExtension___elambda__2(lean_object*); -uint8_t l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2(lean_object*, size_t, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__13; extern lean_object* l_Lean_Options_empty; extern lean_object* l_IO_Error_Inhabited___closed__1; @@ -635,15 +640,15 @@ lean_object* l_Lean_Parser_registerBuiltinParserAttribute(lean_object*, lean_obj lean_object* l_Lean_Parser_charLitNoAntiquot___closed__1; lean_object* l_Array_qsortAux___main___at_Lean_Parser_Error_toString___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_categoryParserFnExtension___closed__3; -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2; lean_object* l_Lean_Parser_Parser_inhabited___lambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_checkTailNoWs___boxed(lean_object*); lean_object* l_Lean_Parser_takeUntilFn(lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolNoWsInfo(lean_object*); lean_object* l_Lean_Parser_epsilonInfo___elambda__1___boxed(lean_object*); +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerBuiltinAttribute(lean_object*, lean_object*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); +lean_object* l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAtomicInfo___elambda__1(lean_object*); lean_object* l_Lean_Parser_anyOfFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkEmptySubstringAt(lean_object*, lean_object*); @@ -655,9 +660,9 @@ lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_foldSepArgs___spec__1 lean_object* l_IO_Prim_Ref_get___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_longestMatchMkResult(lean_object*, lean_object*); size_t l_USize_mul(size_t, size_t); +lean_object* l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1; lean_object* l_Lean_FileMap_ofString(lean_object*); lean_object* l_Lean_Parser_whitespace(lean_object*, lean_object*); -lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_redLength___main___rarg(lean_object*); lean_object* l_Lean_Parser_rawCh(uint32_t, uint8_t); lean_object* l_Lean_Parser_getTokenTable(lean_object*); @@ -672,8 +677,6 @@ lean_object* l_Array_iterateMAux___main___at_Array_append___spec__1___rarg(lean_ lean_object* l_Lean_Parser_antiquotNestedExpr___closed__3; lean_object* l_Lean_Parser_sepBy1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_quotedSymbolKind; -lean_object* l___private_Lean_Parser_Parser_21__updateBuiltinTokens(lean_object*, lean_object*, lean_object*); -lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Trie_2__insertAux___main___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_strLit___closed__3; lean_object* l_Lean_Parser_mkParserExtension(lean_object*); @@ -683,6 +686,8 @@ lean_object* l_Lean_Parser_sepByFn___boxed(lean_object*, lean_object*, lean_obje lean_object* l_Lean_Parser_mkBuiltinTokenTable(lean_object*); lean_object* l_Lean_Parser_FirstTokens_toStr___closed__3; lean_object* l_Lean_Parser_manyAux(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_15__addBuiltinParserCategory___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_20__updateBuiltinTokens(lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__3(lean_object*); lean_object* l_Lean_Parser_addTrailingParser(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__7; @@ -696,6 +701,7 @@ lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_quotedSymbolFn___spec__1(u lean_object* l_Lean_Parser_trailingNodeFn(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_rawIdent___closed__2; lean_object* l_Lean_Parser_addBuiltinLeadingParser(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2(lean_object*, size_t, lean_object*); lean_object* l_Lean_Syntax_foldSepArgsM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserExtension___closed__7; lean_object* l_Lean_Parser_regBuiltinTermParserAttr___closed__1; @@ -730,13 +736,13 @@ lean_object* l_Lean_Parser_quotedCharFn___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1(lean_object*, lean_object*, uint8_t, uint8_t); lean_object* l_Lean_Parser_sepBy1Fn___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_mkAppStx___closed__3; -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder(lean_object*); uint8_t l_Array_anyRangeMAux___main___at_Lean_Parser_mkParserExtension___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l___private_Lean_Compiler_InitAttr_1__getIOTypeArg___closed__1; lean_object* l_Lean_Parser_dollarSymbol___elambda__1___closed__5; extern lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___rarg___closed__3; lean_object* l_Lean_Parser_noFirstTokenInfo___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_ident___elambda__1___closed__1; +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder(lean_object*); lean_object* l_Lean_Parser_declareLeadingBuiltinParser(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_appPrec; lean_object* l_Lean_Parser_checkColGeFn(lean_object*, lean_object*, lean_object*, lean_object*); @@ -745,7 +751,6 @@ lean_object* l_Lean_Parser_charLitFnAux___boxed(lean_object*, lean_object*, lean extern lean_object* l_Option_HasRepr___rarg___closed__3; lean_object* l_Lean_Parser_prattParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldSepByM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nodeWithAntiquot(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_quotedSymbolKind___closed__1; lean_object* l_Lean_Parser_mkParserExtension___closed__3; @@ -765,15 +770,17 @@ lean_object* l_Lean_Parser_unquotedSymbolFn(lean_object*, lean_object*); lean_object* l_String_intercalate(lean_object*, lean_object*); extern lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___rarg___closed__1; lean_object* l_Lean_Parser_numLit; +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3; lean_object* l_Lean_Parser_leadingParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_hexDigitFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkCategoryParserFnRef___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__16; -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1; lean_object* l_Lean_Parser_compileParserDescr___main___closed__2; lean_object* l_Lean_Parser_FirstTokens_HasToString___closed__1; lean_object* l_Lean_Parser_FirstTokens_HasToString; +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_numLit___elambda__1(lean_object*, lean_object*); lean_object* l_RBNode_find___main___at_Lean_Parser_TokenMap_insert___spec__1(lean_object*); lean_object* l_Lean_Parser_Error_toString(lean_object*); @@ -782,7 +789,6 @@ lean_object* l_Lean_Parser_symbolNoWsFnAux___boxed(lean_object*, lean_object*, l lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__2___rarg___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_many1Indent___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Array_foldSepBy___spec__1(lean_object*); -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1(lean_object*); lean_object* l_Lean_Parser_ParserState_keepNewError___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_registerSimplePersistentEnvExtension___rarg___lambda__4___closed__2; lean_object* l_Lean_Parser_ParserState_mkUnexpectedErrorAt(lean_object*, lean_object*, lean_object*); @@ -791,7 +797,6 @@ lean_object* l_Lean_Parser_mkAntiquot___closed__24; uint8_t l_Lean_Syntax_hasArgs(lean_object*); lean_object* l_PersistentHashMap_contains___at_Lean_Parser_isValidSyntaxNodeKind___spec__1___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_mkInitAttr___lambda__1___closed__1; -lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_tryFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_whitespace___main___boxed(lean_object*, lean_object*); @@ -813,7 +818,6 @@ lean_object* l_Lean_Syntax_getArgs(lean_object*); lean_object* l_Lean_Environment_addAndCompile(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_many1Indent___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); -lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_many1Indent___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Parser_Parser_1__expectedToString(lean_object*); lean_object* l_Lean_Parser_chFn___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -827,11 +831,11 @@ lean_object* l_Lean_Parser_runParserCategory(lean_object*, lean_object*, lean_ob lean_object* l_Array_iterateMAux___main___at_Lean_Parser_getSyntaxNodeKinds___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_addLeadingParser(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_setExpectedFn___boxed(lean_object*); -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3; lean_object* l_Array_findRevMAux___main___at___private_Lean_Parser_Parser_9__pickNonNone___spec__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbolFn___boxed(lean_object*, lean_object*); lean_object* l_Lean_Name_toExprAux___main(lean_object*); uint8_t l_PersistentHashMap_containsAtAux___main___at_Lean_Parser_isValidSyntaxNodeKind___spec__3(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2; lean_object* l_Lean_Parser_mkParserExtension___closed__5; lean_object* l_Lean_Parser_dollarSymbol___closed__3; lean_object* l_Lean_Parser_satisfySymbolFn(lean_object*, lean_object*, lean_object*, lean_object*); @@ -839,11 +843,9 @@ lean_object* l_Lean_Parser_symbolInfo(lean_object*); lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_binNumberFn___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbolFn___closed__1; lean_object* l_Lean_Parser_checkStackTop(lean_object*); -lean_object* l_List_foldl___main___at___private_Lean_Parser_Parser_20__addTrailingParserAux___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn(uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_octalNumberFn___spec__1___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l___private_Init_Util_1__mkPanicMessage___closed__2; -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_epsilonInfo; lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__6(lean_object*); lean_object* l_Lean_Parser_anyOfFn___main(lean_object*, lean_object*, lean_object*); @@ -864,17 +866,17 @@ lean_object* l_Lean_Parser_symbolNoWsInfo___closed__1; lean_object* l_Lean_Parser_pushNone___elambda__1(lean_object*); lean_object* lean_io_ref_reset(lean_object*, lean_object*); lean_object* l_Lean_Parser_FirstTokens_toStr___closed__2; +lean_object* l___private_Lean_Parser_Parser_25__ParserAttribute_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1; lean_object* lean_io_ref_swap(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_rawIdentNoAntiquot; lean_object* l_Lean_Parser_ParserState_replaceLongest(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_registerEnvExtensionUnsafe___rarg___closed__2; lean_object* l_Lean_Parser_ident___elambda__1___closed__2; -lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1; lean_object* l_Lean_Parser_fieldIdxFn___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserCategory_inhabited; lean_object* l_Lean_Parser_mkAntiquot___closed__19; lean_object* l_Lean_Parser_dollarSymbol___elambda__1(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_26__ParserAttribute_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolFn___closed__1; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_many1Indent___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_hexNumberFn___spec__2___boxed(lean_object*, lean_object*); @@ -904,7 +906,7 @@ lean_object* l_Lean_Parser_identNoAntiquot___closed__3; lean_object* l_Lean_Parser_epsilonInfo___closed__1; lean_object* lean_io_ref_set(lean_object*, lean_object*, lean_object*); lean_object* l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1___boxed(lean_object*, lean_object*); -lean_object* l_Lean_Parser_checkPrec(lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrec(lean_object*); extern lean_object* l_Lean_FileMap_Inhabited___closed__1; lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__1___rarg(lean_object*, lean_object*); extern lean_object* l_Lean_mkOptionalNode___closed__1; @@ -920,32 +922,26 @@ lean_object* l_Lean_Parser_charLitFn___closed__1; lean_object* l_Lean_Parser_dollarSymbol___elambda__1___closed__4; lean_object* l_Lean_Parser_compileParserDescr___main(lean_object*, lean_object*); lean_object* l_Lean_Parser_regBuiltinTermParserAttr(lean_object*); -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nodeFn(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_toList___rarg(lean_object*); lean_object* l_Lean_Parser_checkWsBeforeFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_optionalFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_nameLitFn___closed__1; -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_pop(lean_object*); lean_object* l_Lean_Parser_TokenMap_insert___rarg(lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1; -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2; lean_object* l_PersistentHashMap_containsAtAux___main___at_Lean_Parser_isValidSyntaxNodeKind___spec__3___boxed(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_isIdFirst(uint32_t); lean_object* l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1___boxed(lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); lean_object* l_Lean_PersistentEnvExtension_getState___rarg(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1; lean_object* l_Lean_Parser_ParserState_mkLongestNodeAlt(lean_object*, lean_object*); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserOfConstant(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhile1Fn(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_qsortAux___main___at_Lean_Parser_Error_toString___spec__2(lean_object*, lean_object*, lean_object*); lean_object* lean_io_initializing(lean_object*); lean_object* l___private_Lean_Parser_Parser_8__updateCache(lean_object*, lean_object*); extern lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___rarg___closed__2; -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2; lean_object* l_Lean_Parser_sepByInfo___elambda__2(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolInfo___closed__1; lean_object* l_Lean_Syntax_forSepArgsM___rarg(lean_object*, lean_object*, lean_object*); @@ -955,20 +951,23 @@ lean_object* l_Lean_Parser_nameLit___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__6; lean_object* l_Lean_Parser_rawIdent___closed__1; lean_object* l_Lean_Parser_parserExtension___elambda__1(lean_object*); +lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerEnvExtensionUnsafe___at_Lean_Parser_mkParserExtension___spec__3(lean_object*, lean_object*); lean_object* l_Lean_Parser_getSyntaxNodeKinds(lean_object*); lean_object* l_Lean_Parser_addBuiltinTrailingParser(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerEnvExtensionUnsafe___at_Lean_Parser_mkCategoryParserFnExtension___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_fieldIdx___closed__7; lean_object* l_Lean_Parser_mkAntiquot(lean_object*, lean_object*, uint8_t); +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1; lean_object* l_Lean_Parser_optionaInfo___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_addParser___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_leadingNode(lean_object*, lean_object*); lean_object* l___private_Lean_Parser_Parser_1__expectedToString___main___closed__1; +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_toErrorMsg(lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Parser_SyntaxNodeKindSet_insert___spec__4(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkStxLit(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_insert___at_Lean_Parser_TokenMap_insert___spec__2(lean_object*); lean_object* l_Lean_Parser_mkAtomicInfo___closed__1; lean_object* l_Lean_Parser_Error_toString___closed__3; @@ -984,15 +983,14 @@ lean_object* l_Lean_Parser_manyFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_next___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_mkOptionalNode___closed__2; lean_object* l_Lean_Parser_Parser_inhabited___lambda__1___boxed(lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1; lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_foldSepArgsM___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined(lean_object*); +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined(lean_object*); lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main(lean_object*, lean_object*, uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*); lean_object* l___private_Init_Data_Array_Basic_3__iterateRevMAux___main___at_Lean_Syntax_foldSepRevArgsM___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Info___elambda__2(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_epsilonInfo___elambda__2(lean_object*); lean_object* l_Lean_Parser_orelse(lean_object*, lean_object*); -lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2(lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_foldArgs___spec__1(lean_object*); uint8_t l_List_beq___main___at_Lean_Parser_Error_toString___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolFn(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1008,9 +1006,9 @@ lean_object* l_List_toArrayAux___main___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_dollarSymbol___elambda__1___closed__3; lean_object* l_Lean_Parser_andthen(lean_object*, lean_object*); lean_object* l_Lean_Parser_node(lean_object*, lean_object*); +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Syntax_forArgsM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_stringToParserCoe___boxed(lean_object*); -lean_object* l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2; lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__8; uint8_t l_List_isEmpty___rarg(lean_object*); @@ -1018,7 +1016,6 @@ lean_object* l_Lean_Parser_unicodeSymbolInfo(lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_mkAppN___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_identNoAntiquot; lean_object* l_Lean_Name_toStringWithSep___main(lean_object*, lean_object*); -lean_object* l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkCategoryParserFnRef(lean_object*); lean_object* l_Lean_Parser_ParserState_keepPrevError___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_strAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1032,7 +1029,6 @@ lean_object* l_Lean_Parser_mkTokenAndFixPos(lean_object*, lean_object*, lean_obj lean_object* l_Lean_Parser_mkAtomicInfo___elambda__1___boxed(lean_object*); lean_object* l_Lean_Parser_FirstTokens_toOptional(lean_object*); lean_object* l_Lean_Parser_checkWsBefore___elambda__1(lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1; lean_object* l_Lean_registerAttributeImplBuilder(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkUnexpectedError(lean_object*, lean_object*); uint8_t l_UInt32_decLe(uint32_t, uint32_t); @@ -1045,7 +1041,6 @@ lean_object* l_Lean_Parser_mkAtom(lean_object*, lean_object*); lean_object* l___private_Lean_Parser_Parser_4__isToken___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkEOIError(lean_object*); lean_object* l___private_Lean_Parser_Parser_6__nameLitAux___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3(lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolFnAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ident___closed__3; lean_object* l_Lean_Parser_indexed___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1060,9 +1055,7 @@ lean_object* l_Lean_Parser_checkWsBefore___elambda__1___boxed(lean_object*, lean lean_object* l_Lean_Parser_ParserFn_inhabited___rarg___boxed(lean_object*); extern lean_object* l_String_Inhabited; lean_object* l_List_eraseDups___at_Lean_Parser_addLeadingParser___spec__5(lean_object*); -lean_object* l___private_Lean_Parser_Parser_23__ParserExtension_addImported___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserOfConstantUnsafe___closed__3; -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3; lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__4(lean_object*); lean_object* l_List_toStringAux___main___at_Lean_Parser_FirstTokens_toStr___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_setExpected___elambda__1(lean_object*); @@ -1072,6 +1065,7 @@ lean_object* l_Lean_Parser_mkParserOfConstantUnsafe___closed__5; lean_object* l_Lean_Parser_quotedSymbolFn___closed__3; lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_identFnAux___main___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Syntax_foldArgs___rarg___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2; uint8_t lean_string_utf8_at_end(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_replaceLongest___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkConst(lean_object*, lean_object*); @@ -1079,21 +1073,24 @@ lean_object* l_Lean_Parser_longestMatchStep___boxed(lean_object*, lean_object*, lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldlStepMAux___main___at_Lean_Syntax_foldSepRevArgsM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_toString___closed__1; +lean_object* l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_regBuiltinTermParserAttr___closed__2; lean_object* l_PersistentHashMap_findAtAux___main___at_Lean_Parser_addLeadingParser___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__2; lean_object* l_Lean_Parser_compileParserDescr___main___closed__4; -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1; lean_object* l_Lean_Parser_Parser_inhabited___closed__1; lean_object* l_Lean_Syntax_getTailInfo___main(lean_object*); lean_object* l_Lean_Parser_categoryParserOfStack___elambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Trie_3__findAux_x3f___main___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at_Lean_Parser_SyntaxNodeKindSet_insert___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_registerTagAttribute___lambda__4___closed__1; +lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_initAttr; lean_object* l_Lean_Parser_identFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_decimalNumberFn___spec__2___boxed(lean_object*, lean_object*); lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__3(lean_object*); +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2; lean_object* l___private_Init_Data_Array_Basic_3__iterateRevMAux___main___at_Lean_Syntax_foldSepRevArgs___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_antiquotExpr___closed__3; lean_object* l_Lean_Parser_charLitNoAntiquot; @@ -1106,19 +1103,21 @@ lean_object* l_Lean_Parser_nameLit___elambda__1___closed__2; lean_object* l_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__3___rarg(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Parser_Parser_5__isIdFirstOrBeginEscape___boxed(lean_object*); -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Info___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_rawIdent___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_strLit; lean_object* l_Lean_Parser_many1(lean_object*, uint8_t); +lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAtomicInfo___closed__2; lean_object* l_Lean_Parser_sepBy___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_identNoAntiquot___closed__2; uint8_t l___private_Lean_Parser_Parser_5__isIdFirstOrBeginEscape(uint32_t); +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2; lean_object* l_Lean_Parser_strLit___closed__2; lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__2; -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1; lean_object* l_Lean_Parser_nonReservedSymbolInfo___boxed(lean_object*, lean_object*); +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1; lean_object* l_Lean_Parser_ParserState_mergeErrors(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_isIdRest(uint32_t); lean_object* l_Lean_Parser_numberFnAux___boxed(lean_object*, lean_object*); @@ -1128,19 +1127,19 @@ lean_object* l_Lean_Parser_fieldIdxFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_compileParserDescr___main___closed__5; lean_object* l_Lean_Parser_mkIdent(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_nameLitKind___closed__1; -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_string_dec_eq(lean_object*, lean_object*); +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_isLitKind___boxed(lean_object*); lean_object* l_IO_ofExcept___at_Lean_Parser_declareBuiltinParser___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_registerParserCategory___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_longestMatchFnAux___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(lean_object*, lean_object*); uint8_t l_Lean_Syntax_isIdent(lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__1; lean_object* l_Lean_Parser_ParserFn_inhabited___boxed(lean_object*); lean_object* l_Lean_Parser_andthenFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2(lean_object*, lean_object*); lean_object* _init_l_Lean_quotedSymbolKind___closed__1() { _start: { @@ -10672,36 +10671,7 @@ lean_dec(x_1); return x_3; } } -lean_object* l_Lean_Parser_checkPrecFn(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; uint8_t x_6; -x_5 = lean_ctor_get(x_3, 1); -x_6 = lean_nat_dec_le(x_5, x_1); -if (x_6 == 0) -{ -lean_object* x_7; -x_7 = l_Lean_Parser_ParserState_mkUnexpectedError(x_4, x_2); -return x_7; -} -else -{ -lean_dec(x_2); -return x_4; -} -} -} -lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_Parser_checkPrecFn(x_1, x_2, x_3, x_4); -lean_dec(x_3); -lean_dec(x_1); -return x_5; -} -} -lean_object* _init_l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1() { +lean_object* _init_l_Lean_Parser_checkPrecFn___closed__1() { _start: { lean_object* x_1; @@ -10709,84 +10679,100 @@ x_1 = lean_mk_string("unexpected token at this precedence level; consider parent return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_10__precErrorMsg() { +lean_object* l_Lean_Parser_checkPrecFn(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_1; -x_1 = l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1; -return x_1; +lean_object* x_4; uint8_t x_5; +x_4 = lean_ctor_get(x_2, 1); +x_5 = lean_nat_dec_le(x_4, x_1); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; +x_6 = l_Lean_Parser_checkPrecFn___closed__1; +x_7 = l_Lean_Parser_ParserState_mkUnexpectedError(x_3, x_6); +return x_7; +} +else +{ +return x_3; } } -lean_object* l_Lean_Parser_checkPrec(lean_object* x_1, lean_object* x_2) { +} +lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -x_4 = l_Lean_Parser_epsilonInfo; -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_4); -lean_ctor_set(x_5, 1, x_3); -return x_5; +lean_object* x_4; +x_4 = l_Lean_Parser_checkPrecFn(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +lean_object* l_Lean_Parser_checkPrec(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_2, 0, x_1); +x_3 = l_Lean_Parser_epsilonInfo; +x_4 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_4, 0, x_3); +lean_ctor_set(x_4, 1, x_2); +return x_4; } } lean_object* l_Lean_Parser_leadingNodePrec(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_5, 0, x_2); -lean_closure_set(x_5, 1, x_4); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_4, 0, x_2); +x_5 = lean_ctor_get(x_3, 0); +lean_inc(x_5); lean_inc(x_1); -x_7 = l_Lean_Parser_nodeInfo(x_1, x_6); -x_8 = lean_ctor_get(x_3, 1); -lean_inc(x_8); +x_6 = l_Lean_Parser_nodeInfo(x_1, x_5); +x_7 = lean_ctor_get(x_3, 1); +lean_inc(x_7); lean_dec(x_3); -x_9 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); -lean_closure_set(x_9, 0, x_1); -lean_closure_set(x_9, 1, x_8); -x_10 = l_Lean_Parser_epsilonInfo; -x_11 = l_Lean_Parser_andthenInfo(x_10, x_7); -x_12 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_12, 0, x_5); -lean_closure_set(x_12, 1, x_9); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_11); -lean_ctor_set(x_13, 1, x_12); -return x_13; +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); +lean_closure_set(x_8, 0, x_1); +lean_closure_set(x_8, 1, x_7); +x_9 = l_Lean_Parser_epsilonInfo; +x_10 = l_Lean_Parser_andthenInfo(x_9, x_6); +x_11 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_11, 0, x_4); +lean_closure_set(x_11, 1, x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; } } lean_object* l_Lean_Parser_trailingNodePrec(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_5, 0, x_2); -lean_closure_set(x_5, 1, x_4); -x_6 = lean_ctor_get(x_3, 0); -lean_inc(x_6); +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_4, 0, x_2); +x_5 = lean_ctor_get(x_3, 0); +lean_inc(x_5); lean_inc(x_1); -x_7 = l_Lean_Parser_nodeInfo(x_1, x_6); -x_8 = lean_ctor_get(x_3, 1); -lean_inc(x_8); +x_6 = l_Lean_Parser_nodeInfo(x_1, x_5); +x_7 = lean_ctor_get(x_3, 1); +lean_inc(x_7); lean_dec(x_3); -x_9 = lean_alloc_closure((void*)(l_Lean_Parser_trailingNodeFn), 4, 2); -lean_closure_set(x_9, 0, x_1); -lean_closure_set(x_9, 1, x_8); -x_10 = l_Lean_Parser_epsilonInfo; -x_11 = l_Lean_Parser_andthenInfo(x_10, x_7); -x_12 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_12, 0, x_5); -lean_closure_set(x_12, 1, x_9); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_11); -lean_ctor_set(x_13, 1, x_12); -return x_13; +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_trailingNodeFn), 4, 2); +lean_closure_set(x_8, 0, x_1); +lean_closure_set(x_8, 1, x_7); +x_9 = l_Lean_Parser_epsilonInfo; +x_10 = l_Lean_Parser_andthenInfo(x_9, x_6); +x_11 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_11, 0, x_4); +lean_closure_set(x_11, 1, x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; } } lean_object* l_Lean_Parser_mkAtomicInfo___elambda__1(lean_object* x_1) { @@ -23919,7 +23905,7 @@ x_1 = l_Lean_Parser_dollarSymbol___closed__3; return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1() { _start: { lean_object* x_1; @@ -23927,7 +23913,7 @@ x_1 = lean_mk_string("unexpected ':'"); return x_1; } } -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; uint8_t x_5; @@ -23963,7 +23949,7 @@ return x_2; else { lean_object* x_13; lean_object* x_14; -x_13 = l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1; +x_13 = l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1; x_14 = l_Lean_Parser_ParserState_mkUnexpectedError(x_2, x_13); return x_14; } @@ -23976,39 +23962,39 @@ return x_2; } } } -lean_object* _init_l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___boxed), 2, 0); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Parser_inhabited___closed__1; -x_2 = l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1; +x_2 = l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -lean_object* _init_l___private_Lean_Parser_Parser_11__noImmediateColon() { +lean_object* _init_l___private_Lean_Parser_Parser_10__noImmediateColon() { _start: { lean_object* x_1; -x_1 = l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2; +x_1 = l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2; return x_1; } } -lean_object* l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1(x_1, x_2); +x_3 = l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1(x_1, x_2); lean_dec(x_1); return x_3; } @@ -25002,7 +24988,7 @@ lean_object* _init_l_Lean_Parser_mkAntiquot___closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Parser_Parser_11__noImmediateColon; +x_1 = l___private_Lean_Parser_Parser_10__noImmediateColon; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_mkAntiquot___closed__23; @@ -25014,7 +25000,7 @@ lean_object* _init_l_Lean_Parser_mkAntiquot___closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1; +x_1 = l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1; x_2 = l_Lean_Parser_mkAntiquot___closed__24; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); @@ -26377,7 +26363,7 @@ lean_dec(x_1); return x_5; } } -lean_object* l___private_Lean_Parser_Parser_12__mkResult(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_11__mkResult(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -26432,7 +26418,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; lean_dec(x_1); x_15 = l_Lean_Parser_longestMatchFn(x_13, x_4, x_10); -x_16 = l___private_Lean_Parser_Parser_12__mkResult(x_15, x_7); +x_16 = l___private_Lean_Parser_Parser_11__mkResult(x_15, x_7); return x_16; } else @@ -26597,11 +26583,11 @@ return x_16; } } } -lean_object* l___private_Lean_Parser_Parser_13__mkTrailingResult(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_12__mkTrailingResult(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; -x_3 = l___private_Lean_Parser_Parser_12__mkResult(x_1, x_2); +x_3 = l___private_Lean_Parser_Parser_11__mkResult(x_1, x_2); x_4 = lean_ctor_get(x_3, 0); lean_inc(x_4); x_5 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_4); @@ -26690,7 +26676,7 @@ if (lean_obj_tag(x_20) == 0) { lean_object* x_21; lean_dec(x_18); -x_21 = l___private_Lean_Parser_Parser_13__mkTrailingResult(x_19, x_17); +x_21 = l___private_Lean_Parser_Parser_12__mkTrailingResult(x_19, x_17); x_3 = x_21; goto _start; } @@ -26885,7 +26871,7 @@ x_3 = lean_io_mk_ref(x_2, x_1); return x_3; } } -lean_object* _init_l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1() { _start: { lean_object* x_1; @@ -26893,7 +26879,7 @@ x_1 = lean_mk_string("parser category '"); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2() { _start: { lean_object* x_1; @@ -26901,31 +26887,31 @@ x_1 = lean_mk_string("' has already been defined"); return x_1; } } -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_2 = l_Lean_Name_toString___closed__1; x_3 = l_Lean_Name_toStringWithSep___main(x_2, x_1); -x_4 = l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1; +x_4 = l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1; x_5 = lean_string_append(x_4, x_3); lean_dec(x_3); -x_6 = l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2; +x_6 = l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2; x_7 = lean_string_append(x_5, x_6); x_8 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_8, 0, x_7); return x_8; } } -lean_object* l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg), 1, 0); +x_2 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg), 1, 0); return x_2; } } -uint8_t l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +uint8_t l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_1) == 0) @@ -26985,7 +26971,7 @@ return x_19; } } } -uint8_t l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(lean_object* x_1, lean_object* x_2) { +uint8_t l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; size_t x_4; uint8_t x_5; @@ -26993,11 +26979,11 @@ x_3 = lean_ctor_get(x_1, 0); lean_inc(x_3); lean_dec(x_1); x_4 = l_Lean_Name_hash(x_2); -x_5 = l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2(x_3, x_4, x_2); +x_5 = l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2(x_3, x_4, x_2); return x_5; } } -lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; @@ -27089,7 +27075,7 @@ return x_29; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; uint8_t x_8; @@ -27112,7 +27098,7 @@ x_13 = x_1 - x_12; x_14 = 5; x_15 = x_14 * x_13; x_16 = x_11 >> x_15; -x_17 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_6, x_16, x_1, x_9, x_10); +x_17 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_6, x_16, x_1, x_9, x_10); x_18 = lean_unsigned_to_nat(1u); x_19 = lean_nat_add(x_5, x_18); lean_dec(x_5); @@ -27122,7 +27108,7 @@ goto _start; } } } -lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { _start: { if (lean_obj_tag(x_1) == 0) @@ -27235,7 +27221,7 @@ lean_object* x_35; size_t x_36; size_t x_37; lean_object* x_38; lean_object* x_3 x_35 = lean_ctor_get(x_15, 0); x_36 = x_2 >> x_9; x_37 = x_3 + x_8; -x_38 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_35, x_36, x_37, x_4, x_5); +x_38 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_35, x_36, x_37, x_4, x_5); lean_ctor_set(x_15, 0, x_38); x_39 = lean_array_fset(x_17, x_12, x_15); lean_dec(x_12); @@ -27250,7 +27236,7 @@ lean_inc(x_40); lean_dec(x_15); x_41 = x_2 >> x_9; x_42 = x_3 + x_8; -x_43 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_40, x_41, x_42, x_4, x_5); +x_43 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_40, x_41, x_42, x_4, x_5); x_44 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_44, 0, x_43); x_45 = lean_array_fset(x_17, x_12, x_44); @@ -27366,7 +27352,7 @@ if (lean_is_exclusive(x_57)) { } x_73 = x_2 >> x_50; x_74 = x_3 + x_49; -x_75 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_71, x_73, x_74, x_4, x_5); +x_75 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_71, x_73, x_74, x_4, x_5); if (lean_is_scalar(x_72)) { x_76 = lean_alloc_ctor(1, 1, 0); } else { @@ -27399,7 +27385,7 @@ else { lean_object* x_82; lean_object* x_83; size_t x_84; uint8_t x_85; x_82 = lean_unsigned_to_nat(0u); -x_83 = l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__5(x_1, x_82, x_4, x_5); +x_83 = l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__5(x_1, x_82, x_4, x_5); x_84 = 7; x_85 = x_84 <= x_3; if (x_85 == 0) @@ -27418,7 +27404,7 @@ x_90 = lean_ctor_get(x_83, 1); lean_inc(x_90); lean_dec(x_83); x_91 = l_PersistentHashMap_insertAux___main___rarg___closed__3; -x_92 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6(x_3, x_89, x_90, x_89, x_82, x_91); +x_92 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6(x_3, x_89, x_90, x_89, x_82, x_91); lean_dec(x_90); lean_dec(x_89); return x_92; @@ -27435,7 +27421,7 @@ return x_83; } } } -lean_object* l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -27447,7 +27433,7 @@ x_5 = lean_ctor_get(x_1, 0); x_6 = lean_ctor_get(x_1, 1); x_7 = l_Lean_Name_hash(x_2); x_8 = 1; -x_9 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_5, x_7, x_8, x_2, x_3); +x_9 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_5, x_7, x_8, x_2, x_3); x_10 = lean_unsigned_to_nat(1u); x_11 = lean_nat_add(x_6, x_10); lean_dec(x_6); @@ -27465,7 +27451,7 @@ lean_inc(x_12); lean_dec(x_1); x_14 = l_Lean_Name_hash(x_2); x_15 = 1; -x_16 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_12, x_14, x_15, x_2, x_3); +x_16 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_12, x_14, x_15, x_2, x_3); x_17 = lean_unsigned_to_nat(1u); x_18 = lean_nat_add(x_13, x_17); lean_dec(x_13); @@ -27476,16 +27462,16 @@ return x_19; } } } -lean_object* l___private_Lean_Parser_Parser_15__addParserCategoryCore(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_14__addParserCategoryCore(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; lean_inc(x_1); -x_4 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(x_1, x_2); +x_4 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(x_1, x_2); if (x_4 == 0) { lean_object* x_5; lean_object* x_6; -x_5 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_3); +x_5 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_3); x_6 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_6, 0, x_5); return x_6; @@ -27495,47 +27481,47 @@ else lean_object* x_7; lean_dec(x_3); lean_dec(x_1); -x_7 = l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg(x_2); +x_7 = l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg(x_2); return x_7; } } } -lean_object* l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; uint8_t x_5; lean_object* x_6; x_4 = lean_unbox_usize(x_2); lean_dec(x_2); -x_5 = l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__2(x_1, x_4, x_3); +x_5 = l_PersistentHashMap_containsAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__2(x_1, x_4, x_3); lean_dec(x_3); x_6 = lean_box(x_5); return x_6; } } -lean_object* l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(x_1, x_2); +x_3 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(x_1, x_2); lean_dec(x_2); x_4 = lean_box(x_3); return x_4; } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { size_t x_7; lean_object* x_8; x_7 = lean_unbox_usize(x_1); lean_dec(x_1); -x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__6(x_7, x_2, x_3, x_4, x_5, x_6); +x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__6(x_7, x_2, x_3, x_4, x_5, x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); return x_8; } } -lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +lean_object* l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { size_t x_6; size_t x_7; lean_object* x_8; @@ -27543,11 +27529,11 @@ x_6 = lean_unbox_usize(x_2); lean_dec(x_2); x_7 = lean_unbox_usize(x_3); lean_dec(x_3); -x_8 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__4(x_1, x_6, x_7, x_4, x_5); +x_8 = l_PersistentHashMap_insertAux___main___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__4(x_1, x_6, x_7, x_4, x_5); return x_8; } } -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(lean_object* x_1, lean_object* x_2) { +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -27574,7 +27560,7 @@ return x_7; } } } -lean_object* l___private_Lean_Parser_Parser_16__addBuiltinParserCategory(lean_object* x_1, uint8_t x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_15__addBuiltinParserCategory(lean_object* x_1, uint8_t x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -27592,8 +27578,8 @@ x_8 = l_Lean_Parser_PrattParsingTables_inhabited___closed__1; x_9 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_9, 0, x_8); lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_2); -x_10 = l___private_Lean_Parser_Parser_15__addParserCategoryCore(x_6, x_1, x_9); -x_11 = l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(x_10, x_7); +x_10 = l___private_Lean_Parser_Parser_14__addParserCategoryCore(x_6, x_1, x_9); +x_11 = l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(x_10, x_7); lean_dec(x_10); if (lean_obj_tag(x_11) == 0) { @@ -27654,22 +27640,22 @@ return x_22; } } } -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(x_1, x_2); +x_3 = l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(x_1, x_2); lean_dec(x_1); return x_3; } } -lean_object* l___private_Lean_Parser_Parser_16__addBuiltinParserCategory___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_15__addBuiltinParserCategory___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; lean_object* x_5; x_4 = lean_unbox(x_2); lean_dec(x_2); -x_5 = l___private_Lean_Parser_Parser_16__addBuiltinParserCategory(x_1, x_4, x_3); +x_5 = l___private_Lean_Parser_Parser_15__addBuiltinParserCategory(x_1, x_4, x_3); return x_5; } } @@ -27697,7 +27683,7 @@ x_1 = l_Lean_Parser_ParserExtensionState_inhabited___closed__1; return x_1; } } -lean_object* l___private_Lean_Parser_Parser_17__ParserExtension_mkInitial(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_16__ParserExtension_mkInitial(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; @@ -27833,7 +27819,7 @@ return x_32; } } } -lean_object* _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1() { _start: { lean_object* x_1; @@ -27841,7 +27827,7 @@ x_1 = lean_mk_string("precedence mismatch for '"); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2() { _start: { lean_object* x_1; @@ -27849,7 +27835,7 @@ x_1 = lean_mk_string("', previous: "); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3() { +lean_object* _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3() { _start: { lean_object* x_1; @@ -27857,7 +27843,7 @@ x_1 = lean_mk_string(", new: "); return x_1; } } -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { if (lean_obj_tag(x_3) == 0) @@ -27891,15 +27877,15 @@ if (x_9 == 0) { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_dec(x_3); -x_10 = l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1; +x_10 = l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1; x_11 = lean_string_append(x_1, x_10); x_12 = lean_string_append(x_11, x_2); -x_13 = l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2; +x_13 = l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2; x_14 = lean_string_append(x_12, x_13); x_15 = l_Nat_repr(x_7); x_16 = lean_string_append(x_14, x_15); lean_dec(x_15); -x_17 = l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3; +x_17 = l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3; x_18 = lean_string_append(x_16, x_17); x_19 = l_Nat_repr(x_8); x_20 = lean_string_append(x_18, x_19); @@ -27922,16 +27908,16 @@ return x_22; } } } -lean_object* l___private_Lean_Parser_Parser_18__mergePrecendences___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l___private_Lean_Parser_Parser_17__mergePrecendences___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l___private_Lean_Parser_Parser_18__mergePrecendences(x_1, x_2, x_3, x_4); +x_5 = l___private_Lean_Parser_Parser_17__mergePrecendences(x_1, x_2, x_3, x_4); lean_dec(x_2); return x_5; } } -lean_object* _init_l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1() { _start: { lean_object* x_1; @@ -27939,17 +27925,17 @@ x_1 = lean_mk_string("invalid empty symbol"); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1; +x_1 = l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -lean_object* l___private_Lean_Parser_Parser_19__addTokenConfig(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_18__addTokenConfig(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint8_t x_4; @@ -27986,7 +27972,7 @@ else lean_object* x_10; lean_dec(x_2); lean_dec(x_1); -x_10 = l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2; +x_10 = l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2; return x_10; } } @@ -28399,7 +28385,7 @@ x_13 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_13, 0, x_4); lean_ctor_set(x_13, 1, x_12); lean_ctor_set(x_10, 1, x_13); -x_14 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_7); +x_14 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_7); x_15 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_15, 0, x_14); return x_15; @@ -28425,7 +28411,7 @@ lean_ctor_set(x_21, 1, x_20); lean_ctor_set(x_21, 2, x_18); lean_ctor_set(x_21, 3, x_19); lean_ctor_set(x_7, 0, x_21); -x_22 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_7); +x_22 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_7); x_23 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_23, 0, x_22); return x_23; @@ -28471,7 +28457,7 @@ lean_ctor_set(x_32, 3, x_29); x_33 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_33, 0, x_32); lean_ctor_set_uint8(x_33, sizeof(void*)*1, x_25); -x_34 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_33); +x_34 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_33); x_35 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_35, 0, x_34); return x_35; @@ -28489,7 +28475,7 @@ x_40 = lean_ctor_get(x_7, 0); x_41 = l_List_eraseDups___at_Lean_Parser_addLeadingParser___spec__5(x_38); x_42 = l_List_foldl___main___at_Lean_Parser_addLeadingParser___spec__7(x_4, x_40, x_41); lean_ctor_set(x_7, 0, x_42); -x_43 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_7); +x_43 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_7); x_44 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_44, 0, x_43); return x_44; @@ -28506,7 +28492,7 @@ x_48 = l_List_foldl___main___at_Lean_Parser_addLeadingParser___spec__7(x_4, x_45 x_49 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_49, 0, x_48); lean_ctor_set_uint8(x_49, sizeof(void*)*1, x_46); -x_50 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_49); +x_50 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_49); x_51 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_51, 0, x_50); return x_51; @@ -28555,7 +28541,7 @@ lean_dec(x_3); return x_5; } } -lean_object* l_List_foldl___main___at___private_Lean_Parser_Parser_20__addTrailingParserAux___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l_List_foldl___main___at___private_Lean_Parser_Parser_19__addTrailingParserAux___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -28608,7 +28594,7 @@ goto _start; } } } -lean_object* l___private_Lean_Parser_Parser_20__addTrailingParserAux(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_19__addTrailingParserAux(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_14; lean_object* x_19; lean_object* x_20; @@ -28688,7 +28674,7 @@ block_18: lean_object* x_15; lean_object* x_16; lean_object* x_17; x_15 = l_List_map___main___at_Lean_Parser_addLeadingParser___spec__4(x_14); x_16 = l_List_eraseDups___at_Lean_Parser_addLeadingParser___spec__5(x_15); -x_17 = l_List_foldl___main___at___private_Lean_Parser_Parser_20__addTrailingParserAux___spec__1(x_2, x_1, x_16); +x_17 = l_List_foldl___main___at___private_Lean_Parser_Parser_19__addTrailingParserAux___spec__1(x_2, x_1, x_16); return x_17; } } @@ -28718,9 +28704,9 @@ if (x_7 == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_8 = lean_ctor_get(x_6, 0); -x_9 = l___private_Lean_Parser_Parser_20__addTrailingParserAux(x_8, x_3); +x_9 = l___private_Lean_Parser_Parser_19__addTrailingParserAux(x_8, x_3); lean_ctor_set(x_6, 0, x_9); -x_10 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_6); +x_10 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_6); x_11 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_11, 0, x_10); return x_11; @@ -28732,11 +28718,11 @@ x_12 = lean_ctor_get(x_6, 0); x_13 = lean_ctor_get_uint8(x_6, sizeof(void*)*1); lean_inc(x_12); lean_dec(x_6); -x_14 = l___private_Lean_Parser_Parser_20__addTrailingParserAux(x_12, x_3); +x_14 = l___private_Lean_Parser_Parser_19__addTrailingParserAux(x_12, x_3); x_15 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_15, 0, x_14); lean_ctor_set_uint8(x_15, sizeof(void*)*1, x_13); -x_16 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_1, x_2, x_15); +x_16 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_1, x_2, x_15); x_17 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_17, 0, x_16); return x_17; @@ -28790,7 +28776,7 @@ lean_inc(x_4); x_5 = lean_ctor_get(x_2, 1); lean_inc(x_5); lean_dec(x_2); -x_6 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_1, x_4); +x_6 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_1, x_4); if (lean_obj_tag(x_6) == 0) { uint8_t x_7; @@ -28837,7 +28823,7 @@ x_6 = l_List_foldlM___main___at_Lean_Parser_addParserTokens___spec__1(x_1, x_5); return x_6; } } -lean_object* _init_l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1() { _start: { lean_object* x_1; @@ -28845,7 +28831,7 @@ x_1 = lean_mk_string("invalid builtin parser '"); return x_1; } } -lean_object* l___private_Lean_Parser_Parser_21__updateBuiltinTokens(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_20__updateBuiltinTokens(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -28870,7 +28856,7 @@ lean_inc(x_11); lean_dec(x_10); x_12 = l_Lean_Name_toString___closed__1; x_13 = l_Lean_Name_toStringWithSep___main(x_12, x_2); -x_14 = l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1; +x_14 = l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1; x_15 = lean_string_append(x_14, x_13); lean_dec(x_13); x_16 = l_Lean_registerTagAttribute___lambda__4___closed__4; @@ -28912,7 +28898,7 @@ lean_inc(x_25); lean_dec(x_24); x_26 = l_Lean_Name_toString___closed__1; x_27 = l_Lean_Name_toStringWithSep___main(x_26, x_2); -x_28 = l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1; +x_28 = l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1; x_29 = lean_string_append(x_28, x_27); lean_dec(x_27); x_30 = l_Lean_registerTagAttribute___lambda__4___closed__4; @@ -28980,7 +28966,7 @@ lean_inc(x_9); lean_dec(x_7); lean_inc(x_4); x_10 = l_Lean_Parser_addParser(x_8, x_1, x_2, x_3, x_4); -x_11 = l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(x_10, x_9); +x_11 = l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(x_10, x_9); lean_dec(x_10); if (lean_obj_tag(x_11) == 0) { @@ -29027,7 +29013,7 @@ lean_object* x_26; lean_object* x_27; x_26 = lean_ctor_get(x_25, 1); lean_inc(x_26); lean_dec(x_25); -x_27 = l___private_Lean_Parser_Parser_21__updateBuiltinTokens(x_14, x_2, x_26); +x_27 = l___private_Lean_Parser_Parser_20__updateBuiltinTokens(x_14, x_2, x_26); return x_27; } else @@ -29213,7 +29199,7 @@ x_6 = l_Lean_Parser_addBuiltinParser(x_1, x_2, x_5, x_3, x_4); return x_6; } } -lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addEntry(lean_object* x_1, lean_object* x_2) { +lean_object* l___private_Lean_Parser_Parser_21__ParserExtension_addEntry(lean_object* x_1, lean_object* x_2) { _start: { switch (lean_obj_tag(x_2)) { @@ -29232,7 +29218,7 @@ x_6 = lean_ctor_get(x_1, 1); x_7 = lean_ctor_get(x_1, 2); x_8 = lean_ctor_get(x_1, 3); lean_inc(x_3); -x_9 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_5, x_3); +x_9 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_5, x_3); if (lean_obj_tag(x_9) == 0) { lean_object* x_10; lean_object* x_11; @@ -29275,7 +29261,7 @@ lean_inc(x_16); lean_inc(x_15); lean_dec(x_1); lean_inc(x_3); -x_19 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_15, x_3); +x_19 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_15, x_3); if (lean_obj_tag(x_19) == 0) { lean_object* x_20; lean_object* x_21; @@ -29376,7 +29362,7 @@ lean_inc(x_47); x_48 = lean_ctor_get(x_1, 3); lean_inc(x_48); lean_inc(x_47); -x_49 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(x_47, x_43); +x_49 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(x_47, x_43); if (x_49 == 0) { uint8_t x_50; @@ -29397,7 +29383,7 @@ x_56 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_56, 0, x_55); lean_ctor_set_uint8(x_56, sizeof(void*)*1, x_44); lean_inc(x_43); -x_57 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_47, x_43, x_56); +x_57 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_47, x_43, x_56); x_58 = lean_alloc_ctor(2, 1, 1); lean_ctor_set(x_58, 0, x_43); lean_ctor_set_uint8(x_58, sizeof(void*)*1, x_44); @@ -29417,7 +29403,7 @@ x_61 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_61, 0, x_60); lean_ctor_set_uint8(x_61, sizeof(void*)*1, x_44); lean_inc(x_43); -x_62 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__3(x_47, x_43, x_61); +x_62 = l_PersistentHashMap_insert___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__3(x_47, x_43, x_61); x_63 = lean_alloc_ctor(2, 1, 1); lean_ctor_set(x_63, 0, x_43); lean_ctor_set_uint8(x_63, sizeof(void*)*1, x_44); @@ -30746,47 +30732,45 @@ return x_293; } case 18: { -lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; +lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_dec(x_1); x_294 = lean_ctor_get(x_2, 0); lean_inc(x_294); lean_dec(x_2); -x_295 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_296 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_296, 0, x_294); -lean_closure_set(x_296, 1, x_295); -x_297 = l_Lean_Parser_epsilonInfo; -x_298 = lean_alloc_ctor(0, 2, 0); +x_295 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_295, 0, x_294); +x_296 = l_Lean_Parser_epsilonInfo; +x_297 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_297, 0, x_296); +lean_ctor_set(x_297, 1, x_295); +x_298 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_298, 0, x_297); -lean_ctor_set(x_298, 1, x_296); -x_299 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_299, 0, x_298); -return x_299; +return x_298; } default: { -lean_object* x_300; lean_object* x_301; lean_object* x_302; -x_300 = lean_ctor_get(x_2, 0); +lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_299 = lean_ctor_get(x_2, 0); +lean_inc(x_299); +x_300 = lean_ctor_get(x_2, 1); lean_inc(x_300); -x_301 = lean_ctor_get(x_2, 1); -lean_inc(x_301); lean_dec(x_2); -x_302 = l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1(x_1, x_300); -if (lean_obj_tag(x_302) == 0) +x_301 = l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1(x_1, x_299); +if (lean_obj_tag(x_301) == 0) { -lean_object* x_303; -lean_dec(x_301); -x_303 = l_Lean_Parser_throwUnknownParserCategory___rarg(x_300); -return x_303; +lean_object* x_302; +lean_dec(x_300); +x_302 = l_Lean_Parser_throwUnknownParserCategory___rarg(x_299); +return x_302; } else { -lean_object* x_304; lean_object* x_305; -lean_dec(x_302); -x_304 = l_Lean_Parser_categoryParser(x_300, x_301); -x_305 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_305, 0, x_304); -return x_305; +lean_object* x_303; lean_object* x_304; +lean_dec(x_301); +x_303 = l_Lean_Parser_categoryParser(x_299, x_300); +x_304 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_304, 0, x_303); +return x_304; } } } @@ -31388,7 +31372,7 @@ lean_dec(x_1); return x_4; } } -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1(lean_object* x_1, lean_object* x_2) { +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -31415,7 +31399,7 @@ return x_7; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; uint8_t x_8; @@ -31454,8 +31438,8 @@ x_15 = lean_ctor_get(x_5, 0); x_16 = lean_ctor_get(x_5, 1); x_17 = lean_ctor_get(x_5, 2); x_18 = lean_ctor_get(x_5, 3); -x_19 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_15, x_13); -x_20 = l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1(x_19, x_6); +x_19 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_15, x_13); +x_20 = l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1(x_19, x_6); lean_dec(x_19); if (lean_obj_tag(x_20) == 0) { @@ -31511,8 +31495,8 @@ lean_inc(x_30); lean_inc(x_29); lean_inc(x_28); lean_dec(x_5); -x_32 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_28, x_13); -x_33 = l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1(x_32, x_6); +x_32 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_28, x_13); +x_33 = l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1(x_32, x_6); lean_dec(x_32); if (lean_obj_tag(x_33) == 0) { @@ -31623,8 +31607,8 @@ x_63 = l_Lean_Parser_PrattParsingTables_inhabited___closed__1; x_64 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_64, 0, x_63); lean_ctor_set_uint8(x_64, sizeof(void*)*1, x_57); -x_65 = l___private_Lean_Parser_Parser_15__addParserCategoryCore(x_61, x_56, x_64); -x_66 = l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(x_65, x_6); +x_65 = l___private_Lean_Parser_Parser_14__addParserCategoryCore(x_61, x_56, x_64); +x_66 = l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(x_65, x_6); lean_dec(x_65); if (lean_obj_tag(x_66) == 0) { @@ -31684,8 +31668,8 @@ x_78 = l_Lean_Parser_PrattParsingTables_inhabited___closed__1; x_79 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_79, 0, x_78); lean_ctor_set_uint8(x_79, sizeof(void*)*1, x_57); -x_80 = l___private_Lean_Parser_Parser_15__addParserCategoryCore(x_76, x_56, x_79); -x_81 = l_IO_ofExcept___at___private_Lean_Parser_Parser_16__addBuiltinParserCategory___spec__1(x_80, x_6); +x_80 = l___private_Lean_Parser_Parser_14__addParserCategoryCore(x_76, x_56, x_79); +x_81 = l_IO_ofExcept___at___private_Lean_Parser_Parser_15__addBuiltinParserCategory___spec__1(x_80, x_6); lean_dec(x_80); if (lean_obj_tag(x_81) == 0) { @@ -31916,7 +31900,7 @@ goto _start; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; uint8_t x_8; @@ -31942,7 +31926,7 @@ x_12 = lean_nat_add(x_4, x_11); lean_dec(x_4); x_13 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_14 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2(x_1, x_10, x_10, x_13, x_5, x_6); +x_14 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2(x_1, x_10, x_10, x_13, x_5, x_6); lean_dec(x_10); if (lean_obj_tag(x_14) == 0) { @@ -31984,11 +31968,11 @@ return x_21; } } } -lean_object* l___private_Lean_Parser_Parser_23__ParserExtension_addImported(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addImported(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l___private_Lean_Parser_Parser_17__ParserExtension_mkInitial(x_3); +x_4 = l___private_Lean_Parser_Parser_16__ParserExtension_mkInitial(x_3); if (lean_obj_tag(x_4) == 0) { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -31998,7 +31982,7 @@ x_6 = lean_ctor_get(x_4, 1); lean_inc(x_6); lean_dec(x_4); x_7 = lean_unsigned_to_nat(0u); -x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3(x_1, x_2, x_2, x_7, x_5, x_6); +x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3(x_1, x_2, x_2, x_7, x_5, x_6); return x_8; } else @@ -32026,40 +32010,40 @@ return x_12; } } } -lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_IO_ofExcept___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__1(x_1, x_2); +x_3 = l_IO_ofExcept___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__1(x_1, x_2); lean_dec(x_1); return x_3; } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; -x_7 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); lean_dec(x_3); lean_dec(x_2); return x_7; } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; -x_7 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_23__ParserExtension_addImported___spec__3(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_22__ParserExtension_addImported___spec__3(x_1, x_2, x_3, x_4, x_5, x_6); lean_dec(x_3); lean_dec(x_2); return x_7; } } -lean_object* l___private_Lean_Parser_Parser_23__ParserExtension_addImported___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +lean_object* l___private_Lean_Parser_Parser_22__ParserExtension_addImported___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l___private_Lean_Parser_Parser_23__ParserExtension_addImported(x_1, x_2, x_3); +x_4 = l___private_Lean_Parser_Parser_22__ParserExtension_addImported(x_1, x_2, x_3); lean_dec(x_2); return x_4; } @@ -32870,7 +32854,7 @@ lean_object* _init_l_Lean_Parser_mkParserExtension___closed__3() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_17__ParserExtension_mkInitial), 1, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_16__ParserExtension_mkInitial), 1, 0); return x_1; } } @@ -32878,7 +32862,7 @@ lean_object* _init_l_Lean_Parser_mkParserExtension___closed__4() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_23__ParserExtension_addImported___boxed), 3, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_22__ParserExtension_addImported___boxed), 3, 0); return x_1; } } @@ -32886,7 +32870,7 @@ lean_object* _init_l_Lean_Parser_mkParserExtension___closed__5() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_22__ParserExtension_addEntry), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_21__ParserExtension_addEntry), 2, 0); return x_1; } } @@ -33112,7 +33096,7 @@ x_4 = l_Lean_PersistentEnvExtension_getState___rarg(x_3, x_1); x_5 = lean_ctor_get(x_4, 2); lean_inc(x_5); lean_dec(x_4); -x_6 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_15__addParserCategoryCore___spec__1(x_5, x_2); +x_6 = l_PersistentHashMap_contains___at___private_Lean_Parser_Parser_14__addParserCategoryCore___spec__1(x_5, x_2); return x_6; } } @@ -33148,7 +33132,7 @@ else { lean_object* x_9; lean_dec(x_1); -x_9 = l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg(x_2); +x_9 = l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg(x_2); return x_9; } } @@ -33202,7 +33186,7 @@ x_4 = lean_box(x_3); return x_4; } } -lean_object* l___private_Lean_Parser_Parser_24__catNameToString(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_23__catNameToString(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 1) @@ -33240,7 +33224,7 @@ lean_object* l_Lean_Parser_mkCategoryAntiquotParser(lean_object* x_1, lean_objec _start: { lean_object* x_4; lean_object* x_5; uint8_t x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_4 = l___private_Lean_Parser_Parser_24__catNameToString(x_1); +x_4 = l___private_Lean_Parser_Parser_23__catNameToString(x_1); x_5 = lean_box(0); x_6 = 1; x_7 = l_Lean_Parser_mkAntiquot(x_4, x_5, x_6); @@ -33324,7 +33308,7 @@ lean_dec(x_23); x_25 = lean_ctor_get(x_3, 1); lean_inc(x_25); lean_inc(x_1); -x_26 = l___private_Lean_Parser_Parser_24__catNameToString(x_1); +x_26 = l___private_Lean_Parser_Parser_23__catNameToString(x_1); x_27 = lean_box(0); x_28 = 1; x_29 = l_Lean_Parser_mkAntiquot(x_26, x_27, x_28); @@ -33425,7 +33409,7 @@ x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); lean_dec(x_4); lean_inc(x_2); -x_6 = l___private_Lean_Parser_Parser_19__addTokenConfig(x_5, x_2); +x_6 = l___private_Lean_Parser_Parser_18__addTokenConfig(x_5, x_2); if (lean_obj_tag(x_6) == 0) { uint8_t x_7; @@ -34226,7 +34210,7 @@ x_6 = l_Lean_Parser_declareBuiltinParser(x_1, x_5, x_2, x_3, x_4); return x_6; } } -lean_object* _init_l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1() { _start: { lean_object* x_1; @@ -34234,7 +34218,7 @@ x_1 = lean_mk_string("' (`Parser` or `TrailingParser` expected"); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2() { _start: { lean_object* x_1; lean_object* x_2; @@ -34244,7 +34228,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7) { +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -34284,7 +34268,7 @@ lean_object* x_28; lean_object* x_29; lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_28 = l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2; +x_28 = l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2; x_29 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_7); @@ -34467,7 +34451,7 @@ x_20 = l_Lean_Name_toStringWithSep___main(x_19, x_4); x_21 = l_Lean_Parser_mkParserOfConstantUnsafe___closed__1; x_22 = lean_string_append(x_21, x_20); lean_dec(x_20); -x_23 = l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1; +x_23 = l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1; x_24 = lean_string_append(x_22, x_23); x_25 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_25, 0, x_24); @@ -34500,13 +34484,13 @@ return x_63; } } } -lean_object* l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +lean_object* l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; lean_object* x_9; x_8 = lean_unbox(x_6); lean_dec(x_6); -x_9 = l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_8, x_7); +x_9 = l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_8, x_7); lean_dec(x_5); return x_9; } @@ -34525,7 +34509,7 @@ _start: lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_inc(x_2); lean_inc(x_1); -x_5 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___boxed), 7, 2); +x_5 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___boxed), 7, 2); lean_closure_set(x_5, 0, x_1); lean_closure_set(x_5, 1, x_2); x_6 = l_Lean_Parser_registerBuiltinParserAttribute___closed__1; @@ -34535,7 +34519,7 @@ lean_ctor_set(x_8, 0, x_1); lean_ctor_set(x_8, 1, x_6); lean_ctor_set(x_8, 2, x_5); lean_ctor_set_uint8(x_8, sizeof(void*)*3, x_7); -x_9 = l___private_Lean_Parser_Parser_16__addBuiltinParserCategory(x_2, x_3, x_4); +x_9 = l___private_Lean_Parser_Parser_15__addBuiltinParserCategory(x_2, x_3, x_4); if (lean_obj_tag(x_9) == 0) { lean_object* x_10; lean_object* x_11; @@ -34580,7 +34564,7 @@ x_6 = l_Lean_Parser_registerBuiltinParserAttribute(x_1, x_2, x_5, x_4); return x_6; } } -lean_object* _init_l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1() { +lean_object* _init_l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1() { _start: { lean_object* x_1; @@ -34588,7 +34572,7 @@ x_1 = lean_mk_string("invalid parser '"); return x_1; } } -lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { if (lean_obj_tag(x_3) == 0) @@ -34618,7 +34602,7 @@ lean_inc(x_9); lean_dec(x_8); x_10 = l_Lean_Name_toString___closed__1; x_11 = l_Lean_Name_toStringWithSep___main(x_10, x_1); -x_12 = l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1; +x_12 = l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1; x_13 = lean_string_append(x_12, x_11); lean_dec(x_11); x_14 = l_Lean_registerTagAttribute___lambda__4___closed__4; @@ -34645,7 +34629,7 @@ goto _start; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; uint8_t x_6; @@ -34682,7 +34666,7 @@ lean_object* x_13; lean_object* x_14; x_13 = lean_ctor_get(x_7, 0); lean_inc(x_13); lean_dec(x_7); -x_14 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3(x_13, x_4); +x_14 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3(x_13, x_4); lean_dec(x_13); x_3 = x_9; x_4 = x_14; @@ -34697,7 +34681,7 @@ goto _start; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; uint8_t x_6; @@ -34723,7 +34707,7 @@ goto _start; } } } -lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3(lean_object* x_1, lean_object* x_2) { +lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -34731,7 +34715,7 @@ if (lean_obj_tag(x_1) == 0) lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_ctor_get(x_1, 0); x_4 = lean_unsigned_to_nat(0u); -x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4(x_3, x_3, x_4, x_2); +x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4(x_3, x_3, x_4, x_2); return x_5; } else @@ -34739,21 +34723,21 @@ else lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = lean_ctor_get(x_1, 0); x_7 = lean_unsigned_to_nat(0u); -x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5(x_6, x_6, x_7, x_2); +x_8 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5(x_6, x_6, x_7, x_2); return x_8; } } } -lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2(lean_object* x_1, lean_object* x_2) { +lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; x_3 = lean_ctor_get(x_1, 0); -x_4 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3(x_3, x_2); +x_4 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3(x_3, x_2); return x_4; } } -lean_object* l___private_Lean_Parser_Parser_26__ParserAttribute_add(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7) { +lean_object* l___private_Lean_Parser_Parser_25__ParserAttribute_add(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -34806,7 +34790,7 @@ lean_inc(x_20); x_21 = lean_box(0); x_22 = lean_apply_1(x_20, x_21); lean_inc(x_4); -x_23 = l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1(x_4, x_3, x_22, x_7); +x_23 = l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1(x_4, x_3, x_22, x_7); if (lean_obj_tag(x_23) == 0) { uint8_t x_24; @@ -34820,7 +34804,7 @@ lean_inc(x_26); lean_dec(x_19); x_27 = l_PersistentHashMap_empty___at_Lean_Parser_mkBuiltinSyntaxNodeKindSetRef___spec__1; x_28 = lean_apply_1(x_26, x_27); -x_29 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2(x_28, x_25); +x_29 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2(x_28, x_25); lean_dec(x_28); x_30 = lean_unbox(x_17); lean_inc(x_18); @@ -34872,7 +34856,7 @@ lean_inc(x_39); lean_dec(x_19); x_40 = l_PersistentHashMap_empty___at_Lean_Parser_mkBuiltinSyntaxNodeKindSetRef___spec__1; x_41 = lean_apply_1(x_39, x_40); -x_42 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2(x_41, x_37); +x_42 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2(x_41, x_37); lean_dec(x_41); x_43 = lean_unbox(x_17); lean_inc(x_18); @@ -34967,51 +34951,51 @@ return x_63; } } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__4(x_1, x_2, x_3, x_4); +x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__4(x_1, x_2, x_3, x_4); lean_dec(x_2); lean_dec(x_1); return x_5; } } -lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +lean_object* l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__5(x_1, x_2, x_3, x_4); +x_5 = l_Array_iterateMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__5(x_1, x_2, x_3, x_4); lean_dec(x_2); lean_dec(x_1); return x_5; } } -lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__3(x_1, x_2); +x_3 = l_PersistentHashMap_foldlMAux___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__3(x_1, x_2); lean_dec(x_1); return x_3; } } -lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__2(x_1, x_2); +x_3 = l_PersistentHashMap_foldlM___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__2(x_1, x_2); lean_dec(x_1); return x_3; } } -lean_object* l___private_Lean_Parser_Parser_26__ParserAttribute_add___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +lean_object* l___private_Lean_Parser_Parser_25__ParserAttribute_add___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; lean_object* x_9; x_8 = lean_unbox(x_6); lean_dec(x_6); -x_9 = l___private_Lean_Parser_Parser_26__ParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_8, x_7); +x_9 = l___private_Lean_Parser_Parser_25__ParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_8, x_7); lean_dec(x_5); return x_9; } @@ -35020,7 +35004,7 @@ lean_object* l_Lean_Parser_mkParserAttributeImpl___elambda__1(lean_object* x_1, _start: { lean_object* x_8; -x_8 = l___private_Lean_Parser_Parser_26__ParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l___private_Lean_Parser_Parser_25__ParserAttribute_add(x_1, x_2, x_3, x_4, x_5, x_6, x_7); return x_8; } } @@ -35070,7 +35054,7 @@ x_5 = l_Lean_registerBuiltinAttribute(x_4, x_3); return x_5; } } -lean_object* _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1() { _start: { lean_object* x_1; @@ -35078,23 +35062,23 @@ x_1 = lean_mk_string("invalid parser attribute implementation builder arguments" return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1; +x_1 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 0) { lean_object* x_2; -x_2 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; +x_2 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; return x_2; } else @@ -35112,7 +35096,7 @@ if (lean_obj_tag(x_4) == 0) { lean_object* x_5; lean_dec(x_3); -x_5 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; +x_5 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; return x_5; } else @@ -35146,7 +35130,7 @@ lean_object* x_12; lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_12 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; +x_12 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; return x_12; } } @@ -35156,7 +35140,7 @@ lean_object* x_13; lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); -x_13 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; +x_13 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; return x_13; } } @@ -35166,13 +35150,13 @@ else lean_object* x_14; lean_dec(x_3); lean_dec(x_1); -x_14 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2; +x_14 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2; return x_14; } } } } -lean_object* _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1() { +lean_object* _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1() { _start: { lean_object* x_1; @@ -35180,30 +35164,30 @@ x_1 = lean_mk_string("parserAttr"); return x_1; } } -lean_object* _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2() { +lean_object* _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1; +x_2 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3() { +lean_object* _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1), 1, 0); return x_1; } } -lean_object* l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder(lean_object* x_1) { +lean_object* l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2; -x_3 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3; +x_2 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2; +x_3 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3; x_4 = l_Lean_registerAttributeImplBuilder(x_2, x_3, x_1); return x_4; } @@ -35235,7 +35219,7 @@ lean_ctor_set(x_13, 1, x_12); x_14 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_14, 0, x_10); lean_ctor_set(x_14, 1, x_13); -x_15 = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2; +x_15 = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2; x_16 = l_Lean_registerAttributeOfBuilder(x_8, x_15, x_14, x_9); return x_16; } @@ -36476,10 +36460,8 @@ l_Lean_Parser_unicodeSymbolInfo___closed__1 = _init_l_Lean_Parser_unicodeSymbolI lean_mark_persistent(l_Lean_Parser_unicodeSymbolInfo___closed__1); l_Lean_Parser_unicodeSymbolFn___closed__1 = _init_l_Lean_Parser_unicodeSymbolFn___closed__1(); lean_mark_persistent(l_Lean_Parser_unicodeSymbolFn___closed__1); -l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1 = _init_l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_10__precErrorMsg___closed__1); -l___private_Lean_Parser_Parser_10__precErrorMsg = _init_l___private_Lean_Parser_Parser_10__precErrorMsg(); -lean_mark_persistent(l___private_Lean_Parser_Parser_10__precErrorMsg); +l_Lean_Parser_checkPrecFn___closed__1 = _init_l_Lean_Parser_checkPrecFn___closed__1(); +lean_mark_persistent(l_Lean_Parser_checkPrecFn___closed__1); l_Lean_Parser_mkAtomicInfo___closed__1 = _init_l_Lean_Parser_mkAtomicInfo___closed__1(); lean_mark_persistent(l_Lean_Parser_mkAtomicInfo___closed__1); l_Lean_Parser_mkAtomicInfo___closed__2 = _init_l_Lean_Parser_mkAtomicInfo___closed__2(); @@ -36616,14 +36598,14 @@ l_Lean_Parser_dollarSymbol___closed__3 = _init_l_Lean_Parser_dollarSymbol___clos lean_mark_persistent(l_Lean_Parser_dollarSymbol___closed__3); l_Lean_Parser_dollarSymbol = _init_l_Lean_Parser_dollarSymbol(); lean_mark_persistent(l_Lean_Parser_dollarSymbol); -l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1 = _init_l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_11__noImmediateColon___elambda__1___closed__1); -l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1 = _init_l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_11__noImmediateColon___closed__1); -l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2 = _init_l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_11__noImmediateColon___closed__2); -l___private_Lean_Parser_Parser_11__noImmediateColon = _init_l___private_Lean_Parser_Parser_11__noImmediateColon(); -lean_mark_persistent(l___private_Lean_Parser_Parser_11__noImmediateColon); +l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1 = _init_l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_10__noImmediateColon___elambda__1___closed__1); +l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1 = _init_l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_10__noImmediateColon___closed__1); +l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2 = _init_l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_10__noImmediateColon___closed__2); +l___private_Lean_Parser_Parser_10__noImmediateColon = _init_l___private_Lean_Parser_Parser_10__noImmediateColon(); +lean_mark_persistent(l___private_Lean_Parser_Parser_10__noImmediateColon); l_Lean_Parser_pushNone___closed__1 = _init_l_Lean_Parser_pushNone___closed__1(); lean_mark_persistent(l_Lean_Parser_pushNone___closed__1); l_Lean_Parser_pushNone___closed__2 = _init_l_Lean_Parser_pushNone___closed__2(); @@ -36819,28 +36801,28 @@ if (lean_io_result_is_error(res)) return res; l_Lean_Parser_builtinParserCategoriesRef = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Parser_builtinParserCategoriesRef); lean_dec_ref(res); -l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1 = _init_l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__1); -l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2 = _init_l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_14__throwParserCategoryAlreadyDefined___rarg___closed__2); +l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1 = _init_l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__1); +l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2 = _init_l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_13__throwParserCategoryAlreadyDefined___rarg___closed__2); l_Lean_Parser_ParserExtensionState_inhabited___closed__1 = _init_l_Lean_Parser_ParserExtensionState_inhabited___closed__1(); lean_mark_persistent(l_Lean_Parser_ParserExtensionState_inhabited___closed__1); l_Lean_Parser_ParserExtensionState_inhabited = _init_l_Lean_Parser_ParserExtensionState_inhabited(); lean_mark_persistent(l_Lean_Parser_ParserExtensionState_inhabited); -l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1 = _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_18__mergePrecendences___closed__1); -l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2 = _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_18__mergePrecendences___closed__2); -l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3 = _init_l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3(); -lean_mark_persistent(l___private_Lean_Parser_Parser_18__mergePrecendences___closed__3); -l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1 = _init_l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_19__addTokenConfig___closed__1); -l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2 = _init_l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_19__addTokenConfig___closed__2); +l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1 = _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_17__mergePrecendences___closed__1); +l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2 = _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_17__mergePrecendences___closed__2); +l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3 = _init_l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3(); +lean_mark_persistent(l___private_Lean_Parser_Parser_17__mergePrecendences___closed__3); +l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1 = _init_l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_18__addTokenConfig___closed__1); +l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2 = _init_l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_18__addTokenConfig___closed__2); l_Lean_Parser_throwUnknownParserCategory___rarg___closed__1 = _init_l_Lean_Parser_throwUnknownParserCategory___rarg___closed__1(); lean_mark_persistent(l_Lean_Parser_throwUnknownParserCategory___rarg___closed__1); -l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1 = _init_l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_21__updateBuiltinTokens___closed__1); +l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1 = _init_l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_20__updateBuiltinTokens___closed__1); l_Lean_Parser_compileParserDescr___main___closed__1 = _init_l_Lean_Parser_compileParserDescr___main___closed__1(); lean_mark_persistent(l_Lean_Parser_compileParserDescr___main___closed__1); l_Lean_Parser_compileParserDescr___main___closed__2 = _init_l_Lean_Parser_compileParserDescr___main___closed__2(); @@ -36927,27 +36909,27 @@ l_Lean_Parser_declareTrailingBuiltinParser___closed__1 = _init_l_Lean_Parser_dec lean_mark_persistent(l_Lean_Parser_declareTrailingBuiltinParser___closed__1); l_Lean_Parser_declareTrailingBuiltinParser___closed__2 = _init_l_Lean_Parser_declareTrailingBuiltinParser___closed__2(); lean_mark_persistent(l_Lean_Parser_declareTrailingBuiltinParser___closed__2); -l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1 = _init_l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__1); -l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2 = _init_l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_25__BuiltinParserAttribute_add___closed__2); +l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1 = _init_l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__1); +l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2 = _init_l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_24__BuiltinParserAttribute_add___closed__2); l_Lean_Parser_registerBuiltinParserAttribute___closed__1 = _init_l_Lean_Parser_registerBuiltinParserAttribute___closed__1(); lean_mark_persistent(l_Lean_Parser_registerBuiltinParserAttribute___closed__1); -l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1 = _init_l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1(); -lean_mark_persistent(l_List_foldlM___main___at___private_Lean_Parser_Parser_26__ParserAttribute_add___spec__1___closed__1); +l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1 = _init_l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1(); +lean_mark_persistent(l_List_foldlM___main___at___private_Lean_Parser_Parser_25__ParserAttribute_add___spec__1___closed__1); l_Lean_Parser_mkParserAttributeImpl___closed__1 = _init_l_Lean_Parser_mkParserAttributeImpl___closed__1(); lean_mark_persistent(l_Lean_Parser_mkParserAttributeImpl___closed__1); -l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1 = _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__1); -l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2 = _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___lambda__1___closed__2); -l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1 = _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1(); -lean_mark_persistent(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__1); -l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2 = _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2(); -lean_mark_persistent(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__2); -l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3 = _init_l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3(); -lean_mark_persistent(l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder___closed__3); -res = l___private_Lean_Parser_Parser_27__registerParserAttributeImplBuilder(lean_io_mk_world()); +l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1 = _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__1); +l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2 = _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___lambda__1___closed__2); +l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1 = _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1(); +lean_mark_persistent(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__1); +l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2 = _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2(); +lean_mark_persistent(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__2); +l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3 = _init_l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3(); +lean_mark_persistent(l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder___closed__3); +res = l___private_Lean_Parser_Parser_26__registerParserAttributeImplBuilder(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_Parser_regBuiltinTermParserAttr___closed__1 = _init_l_Lean_Parser_regBuiltinTermParserAttr___closed__1(); diff --git a/stage0/stdlib/Lean/Parser/Syntax.c b/stage0/stdlib/Lean/Parser/Syntax.c index 145164c672..0d1512a336 100644 --- a/stage0/stdlib/Lean/Parser/Syntax.c +++ b/stage0/stdlib/Lean/Parser/Syntax.c @@ -20,7 +20,9 @@ lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__6; lean_object* l_Lean_Parser_Syntax_cat___closed__6; lean_object* l_Lean_Parser_categoryParserOfStack___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_orelse___closed__5; +lean_object* l_Lean_Parser_Command_notation___closed__12; lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_postfix___closed__6; lean_object* l_Lean_Parser_Command_prefix___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__1; lean_object* l_Lean_Parser_Syntax_str___elambda__1(lean_object*, lean_object*); @@ -45,6 +47,7 @@ lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__2; lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_mixfix; lean_object* l_Lean_Parser_Command_mixfixSymbol___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_str___closed__6; lean_object* l_Lean_Parser_Syntax_lookahead___closed__4; lean_object* l_Lean_Parser_Command_macroArgType___closed__4; lean_object* l_Lean_Parser_Syntax_num___closed__5; @@ -52,6 +55,7 @@ lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__1; lean_object* l_Lean_Parser_Syntax_try___closed__3; lean_object* l_Lean_Parser_Syntax_many1___elambda__1___closed__1; extern lean_object* l_Lean_nullKind; +lean_object* l_Lean_Parser_Syntax_num___closed__6; extern lean_object* l_Lean_Parser_Tactic_orelse___closed__1; lean_object* l_Lean_Parser_Syntax_paren___closed__6; lean_object* l_Lean_Parser_Command_syntax___elambda__1(lean_object*, lean_object*); @@ -143,6 +147,7 @@ lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3; lean_object* l_Lean_Parser_Syntax_ident___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_macro___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_macroHead___closed__1; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__8; lean_object* l_Lean_Parser_precedence___elambda__1___closed__4; lean_object* l_Lean_Parser_Syntax_ident___elambda__1___closed__1; lean_object* l_Lean_Parser_optPrecedence; @@ -153,6 +158,7 @@ lean_object* l_Lean_Parser_Command_infixl___closed__4; lean_object* l_Lean_Parser_Syntax_many___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_paren___closed__3; lean_object* l_Lean_Parser_Command_macroArgType___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_macro__rules___closed__8; lean_object* l_Lean_Parser_Command_infix; lean_object* l_Lean_Parser_Command_optKind___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_mixfix___elambda__1___closed__2; @@ -160,14 +166,16 @@ lean_object* l_Lean_Parser_quotedSymbolFn(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__2; extern lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__6; lean_object* l___regBuiltinParser_Lean_Parser_Command_reserve(lean_object*); +lean_object* l_Lean_Parser_Command_macroArgSimple___closed__8; lean_object* l_Lean_Parser_Command_identPrec; lean_object* l_Lean_Parser_Command_infixl___closed__2; +lean_object* l_Lean_Parser_Syntax_many1___closed__4; lean_object* l_Lean_Parser_precedence___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__1; lean_object* l_Lean_Parser_Syntax_char___closed__2; lean_object* l_Lean_Parser_Command_postfix___elambda__1___closed__8; lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__8; -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_char___elambda__1___closed__5; lean_object* l_Lean_Parser_Syntax_sepBy___closed__4; lean_object* l_Lean_Parser_Command_macro___closed__5; @@ -186,6 +194,7 @@ extern lean_object* l_Lean_Parser_Term_stxQuot___elambda__1___closed__4; lean_object* l_Lean_Parser_Syntax_ident___closed__3; lean_object* l_Lean_Parser_Command_macroArgSimple___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_macro__rules___closed__6; +lean_object* l_Lean_Parser_Command_identPrec___closed__5; lean_object* l_Lean_Parser_Syntax_ident___closed__5; lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_macroTailDefault___closed__5; @@ -237,6 +246,7 @@ lean_object* l_Lean_Parser_Command_macroHead___elambda__1(lean_object*, lean_obj lean_object* l___regBuiltinParser_Lean_Parser_Syntax_lookahead(lean_object*); extern lean_object* l_Lean_Nat_HasQuote___closed__1; lean_object* l_Lean_Parser_Command_notation___closed__5; +lean_object* l_Lean_Parser_Syntax_try___closed__8; lean_object* l_Lean_Parser_nodeInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_infix___closed__1; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1(lean_object*, lean_object*); @@ -254,6 +264,7 @@ lean_object* l_Lean_Parser_Command_postfix; lean_object* l_Lean_Parser_Command_infix___closed__2; extern lean_object* l_Lean_Parser_antiquotNestedExpr___closed__2; lean_object* l_Lean_Parser_Command_postfix___elambda__1___closed__4; +lean_object* l_Lean_Parser_Command_infixr___closed__6; lean_object* l_Lean_Parser_noFirstTokenInfo(lean_object*); lean_object* l_Lean_Parser_Command_infix___elambda__1___closed__8; lean_object* l_Lean_Parser_Command_prefix___elambda__1___closed__7; @@ -263,7 +274,9 @@ lean_object* l_Lean_Parser_Command_prefix___closed__1; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__2; lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); lean_object* l_Lean_Parser_Syntax_str___closed__2; +lean_object* l_Lean_Parser_Syntax_optional___closed__4; lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__7; +lean_object* l_Lean_Parser_Command_syntaxCat___closed__7; lean_object* l_Lean_Parser_Command_syntax___closed__3; lean_object* l_Lean_Parser_Syntax_orelse___closed__3; lean_object* l_Lean_Parser_Command_macroArgType___closed__3; @@ -316,6 +329,7 @@ lean_object* l_Lean_Parser_categoryParserOfStack(lean_object*, lean_object*); extern lean_object* l_Char_HasRepr___closed__1; lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_infixr___elambda__1___closed__7; +lean_object* l_Lean_Parser_Command_infixl___closed__6; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__6; lean_object* l_Lean_Parser_checkNoWsBeforeFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_cat; @@ -334,6 +348,7 @@ lean_object* l_Lean_Parser_Command_infix___elambda__1(lean_object*, lean_object* lean_object* l_Lean_Parser_maxPrec; lean_object* l___regBuiltinParser_Lean_Parser_Syntax_str(lean_object*); lean_object* l_Lean_Parser_Syntax_ident___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_ident___closed__6; extern lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_macro___closed__10; lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__5; @@ -352,9 +367,11 @@ lean_object* l_Lean_Parser_Command_macro__rules___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_macroArgSimple___closed__6; lean_object* l_Lean_Parser_Command_reserve___closed__8; lean_object* l_Lean_Parser_Command_infixr___closed__5; +lean_object* l_Lean_Parser_Command_infix___closed__6; lean_object* l_Lean_Parser_maxPrec___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_infixr___closed__3; lean_object* l_Lean_Parser_Command_identPrec___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_lookahead___closed__7; lean_object* l_Lean_Parser_Command_macroTail___closed__4; lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; lean_object* l_Lean_Parser_registerBuiltinParserAttribute(lean_object*, lean_object*, uint8_t, lean_object*); @@ -405,6 +422,7 @@ lean_object* l_Lean_Parser_Command_reserve___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Syntax_paren(lean_object*); extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_notation___elambda__1___closed__2; +lean_object* l_Lean_Parser_Command_reserve___closed__9; lean_object* l_Lean_Parser_Syntax_char___elambda__1___closed__4; lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_postfix___elambda__1(lean_object*, lean_object*); @@ -435,6 +453,7 @@ lean_object* l_Lean_Parser_Syntax_paren___closed__2; lean_object* l_Lean_Parser_Command_mixfixKind___elambda__1(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_haveAssign___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Syntax_num(lean_object*); +lean_object* l_Lean_Parser_Command_prefix___closed__6; lean_object* l_Lean_Parser_Command_macro___closed__6; lean_object* l_Lean_Parser_optPrecedence___closed__3; lean_object* l_Lean_Parser_Command_infix___closed__5; @@ -455,7 +474,7 @@ lean_object* l_Lean_Parser_Command_postfix___closed__4; lean_object* l_Lean_Parser_Command_notation___closed__2; lean_object* l_Lean_Parser_Command_syntaxCat___closed__3; lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__4; -extern lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; +lean_object* l_Lean_Parser_Syntax_char___closed__6; lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_cat___elambda__1(lean_object*, lean_object*); @@ -518,6 +537,7 @@ lean_object* l_Lean_Parser_Syntax_sepBy1___closed__3; lean_object* l_Lean_Parser_Syntax_sepBy1___closed__5; lean_object* l_Lean_Parser_Command_notation___closed__9; extern lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +lean_object* l_Lean_Parser_Command_macro___closed__11; lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_macro___elambda__1___closed__4; lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__3; @@ -527,6 +547,7 @@ lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr(lean_object*); lean_object* l_Lean_Parser_Command_infixl___closed__1; lean_object* l_Lean_Parser_Command_optKind___closed__4; lean_object* l_Lean_Parser_maxPrec___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_syntax___closed__11; lean_object* l_Lean_Parser_precedenceLit___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_notation___elambda__1___closed__3; @@ -548,6 +569,7 @@ lean_object* l_Lean_Parser_Command_infixr___elambda__1___closed__1; lean_object* l_Lean_Parser_Command_optKind___closed__1; lean_object* l_Lean_Parser_Syntax_paren___closed__7; lean_object* l_Lean_Parser_Command_optKind; +lean_object* l_Lean_Parser_precedence___closed__6; extern lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__3; lean_object* l_Lean_Parser_Command_macroTailTactic___closed__2; lean_object* l_Lean_Parser_Syntax_str; @@ -602,12 +624,15 @@ lean_object* l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; lean_object* l_Lean_Parser_Command_identPrec___closed__1; lean_object* l_Lean_Parser_Syntax_cat___closed__5; lean_object* l_Lean_Parser_Command_macro___elambda__1___closed__2; +lean_object* l_Lean_Parser_maxPrec___closed__6; lean_object* l_Lean_Parser_Syntax_sepBy___closed__7; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__4; lean_object* l_Lean_Parser_ParserState_mkUnexpectedError(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many___closed__4; lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; lean_object* l_Lean_Parser_Syntax_try___closed__6; lean_object* l_Lean_Parser_Command_macroTailDefault___closed__1; +lean_object* l_Lean_Parser_Command_mixfix___closed__10; extern lean_object* l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; lean_object* l_Lean_Parser_Command_syntax___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Syntax_atom(lean_object*); @@ -649,6 +674,7 @@ lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__2; lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__4; lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; lean_object* l_Lean_Parser_maxPrec___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__7; extern lean_object* l_Lean_Parser_strLit; lean_object* l_Lean_Parser_Command_infixr___closed__2; extern lean_object* l_Lean_Parser_Term_char___elambda__1___closed__1; @@ -812,75 +838,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_maxPrec___elambda__1___closed__5; -x_9 = l_Lean_Parser_maxPrec___elambda__1___closed__7; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_maxPrec___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_maxPrec___elambda__1___closed__5; +x_12 = l_Lean_Parser_maxPrec___elambda__1___closed__7; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_maxPrec___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_maxPrec___elambda__1___closed__5; -x_25 = l_Lean_Parser_maxPrec___elambda__1___closed__7; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_maxPrec___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_maxPrec___elambda__1___closed__5; +x_31 = l_Lean_Parser_maxPrec___elambda__1___closed__7; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_maxPrec___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -909,16 +966,26 @@ return x_3; lean_object* _init_l_Lean_Parser_maxPrec___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_maxPrec___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_maxPrec___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_maxPrec___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_maxPrec___closed__2; +x_3 = l_Lean_Parser_maxPrec___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_maxPrec___closed__4() { +lean_object* _init_l_Lean_Parser_maxPrec___closed__5() { _start: { lean_object* x_1; @@ -926,12 +993,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_maxPrec___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_maxPrec___closed__5() { +lean_object* _init_l_Lean_Parser_maxPrec___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_maxPrec___closed__3; -x_2 = l_Lean_Parser_maxPrec___closed__4; +x_1 = l_Lean_Parser_maxPrec___closed__4; +x_2 = l_Lean_Parser_maxPrec___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -942,7 +1009,7 @@ lean_object* _init_l_Lean_Parser_maxPrec() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_maxPrec___closed__5; +x_1 = l_Lean_Parser_maxPrec___closed__6; return x_1; } } @@ -1124,224 +1191,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_mkAntiquot___closed__4; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_precedenceLit___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_precedence___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_precedence___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_mkAntiquot___closed__4; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_precedenceLit___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_precedence___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_precedence___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_mkAntiquot___closed__4; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_precedence___elambda__1___closed__7; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_precedence___elambda__1___closed__7; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_mkAntiquot___closed__4; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_precedence___elambda__1___closed__7; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_precedenceLit___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_precedence___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_precedenceLit___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_precedence___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_precedence___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_precedence___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -1371,16 +1469,26 @@ return x_3; lean_object* _init_l_Lean_Parser_precedence___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_precedence___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_precedence___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_precedence___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_precedence___closed__2; +x_3 = l_Lean_Parser_precedence___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_precedence___closed__4() { +lean_object* _init_l_Lean_Parser_precedence___closed__5() { _start: { lean_object* x_1; @@ -1388,12 +1496,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_precedence___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_precedence___closed__5() { +lean_object* _init_l_Lean_Parser_precedence___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_precedence___closed__3; -x_2 = l_Lean_Parser_precedence___closed__4; +x_1 = l_Lean_Parser_precedence___closed__4; +x_2 = l_Lean_Parser_precedence___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1404,7 +1512,7 @@ lean_object* _init_l_Lean_Parser_precedence() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_precedence___closed__5; +x_1 = l_Lean_Parser_precedence___closed__6; return x_1; } } @@ -1663,471 +1771,469 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_39; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_55 = lean_ctor_get(x_8, 1); -lean_inc(x_55); -lean_inc(x_1); -x_56 = l_Lean_Parser_tokenFn(x_1, x_8); -x_57 = lean_ctor_get(x_56, 3); -lean_inc(x_57); -if (lean_obj_tag(x_57) == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = lean_ctor_get(x_56, 0); -lean_inc(x_58); -x_59 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_58); -lean_dec(x_58); -if (lean_obj_tag(x_59) == 2) -{ -lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_60 = lean_ctor_get(x_59, 1); -lean_inc(x_60); -lean_dec(x_59); -x_61 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_62 = lean_string_dec_eq(x_60, x_61); -lean_dec(x_60); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; -x_63 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_63, x_55); -x_39 = x_64; -goto block_54; -} -else -{ -lean_dec(x_55); -x_39 = x_56; -goto block_54; -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_59); -x_65 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_65, x_55); -x_39 = x_66; -goto block_54; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_57); -x_67 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_67, x_55); -x_39 = x_68; -goto block_54; -} -block_38: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_11); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_16); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_13); -lean_dec(x_1); -x_36 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_11); -return x_37; -} -} -block_54: -{ -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); -x_43 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_44 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_45 = l_Lean_Parser_categoryParser___elambda__1(x_43, x_44, x_1, x_39); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_inc(x_1); -x_47 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_45); -x_48 = l_Lean_nullKind; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_12 = x_49; -goto block_38; -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_46); -x_50 = l_Lean_nullKind; -x_51 = l_Lean_Parser_ParserState_mkNode(x_45, x_50, x_42); -x_12 = x_51; -goto block_38; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_40); -lean_dec(x_1); -x_52 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_53 = l_Lean_Parser_ParserState_mkNode(x_39, x_52, x_11); -return x_53; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_54 = lean_ctor_get(x_7, 1); +lean_inc(x_54); +lean_inc(x_1); +x_55 = l_Lean_Parser_tokenFn(x_1, x_7); +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +x_57 = lean_ctor_get(x_55, 0); +lean_inc(x_57); +x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); +lean_dec(x_57); +if (lean_obj_tag(x_58) == 2) +{ +lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +x_60 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_61 = lean_string_dec_eq(x_59, x_60); +lean_dec(x_59); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; +x_62 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_54); +x_38 = x_63; +goto block_53; +} +else +{ +lean_dec(x_54); +x_38 = x_55; +goto block_53; } } else { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_69 = lean_ctor_get(x_2, 0); -lean_inc(x_69); -x_70 = lean_array_get_size(x_69); +lean_object* x_64; lean_object* x_65; +lean_dec(x_58); +x_64 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_54); +x_38 = x_65; +goto block_53; +} +} +else +{ +lean_object* x_66; lean_object* x_67; +lean_dec(x_56); +x_66 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_54); +x_38 = x_67; +goto block_53; +} +block_37: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_12); +lean_dec(x_1); +x_35 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; +} +} +block_53: +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +x_42 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_43 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_44 = l_Lean_Parser_categoryParser___elambda__1(x_42, x_43, x_1, x_38); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_inc(x_1); +x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_44); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_41); +x_11 = x_48; +goto block_37; +} +else +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_45); +x_49 = l_Lean_nullKind; +x_50 = l_Lean_Parser_ParserState_mkNode(x_44, x_49, x_41); +x_11 = x_50; +goto block_37; +} +} +else +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_39); +lean_dec(x_1); +x_51 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_52 = l_Lean_Parser_ParserState_mkNode(x_38, x_51, x_10); +return x_52; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_68 = lean_ctor_get(x_2, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_70 = lean_ctor_get(x_2, 1); +lean_inc(x_70); +lean_inc(x_1); +x_71 = lean_apply_2(x_4, x_1, x_2); +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) +{ +lean_dec(x_70); lean_dec(x_69); -x_71 = lean_ctor_get(x_2, 1); -lean_inc(x_71); -lean_inc(x_1); -x_72 = lean_apply_2(x_4, x_1, x_2); -x_73 = lean_ctor_get(x_72, 3); +lean_dec(x_1); +return x_71; +} +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 0); lean_inc(x_73); -if (lean_obj_tag(x_73) == 0) -{ -lean_dec(x_71); -lean_dec(x_70); -lean_dec(x_1); -return x_72; -} -else -{ -lean_object* x_74; lean_object* x_75; uint8_t x_76; -x_74 = lean_ctor_get(x_73, 0); +lean_dec(x_72); +x_74 = lean_ctor_get(x_71, 1); lean_inc(x_74); -lean_dec(x_73); -x_75 = lean_ctor_get(x_72, 1); -lean_inc(x_75); -x_76 = lean_nat_dec_eq(x_75, x_71); -lean_dec(x_75); -if (x_76 == 0) -{ +x_75 = lean_nat_dec_eq(x_74, x_70); lean_dec(x_74); -lean_dec(x_71); +if (x_75 == 0) +{ +lean_dec(x_73); lean_dec(x_70); +lean_dec(x_69); lean_dec(x_1); -return x_72; +return x_71; } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_inc(x_71); -x_77 = l_Lean_Parser_ParserState_restore(x_72, x_70, x_71); -lean_dec(x_70); -x_78 = l_Lean_Parser_appPrec; -x_79 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_80 = l_Lean_Parser_checkPrecFn(x_78, x_79, x_1, x_77); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_inc(x_70); +x_76 = l_Lean_Parser_ParserState_restore(x_71, x_69, x_70); +lean_dec(x_69); +x_77 = l_Lean_Parser_appPrec; +x_78 = l_Lean_Parser_checkPrecFn(x_77, x_1, x_76); +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_116; lean_object* x_133; lean_object* x_134; lean_object* x_135; -x_82 = lean_ctor_get(x_80, 0); -lean_inc(x_82); -x_83 = lean_array_get_size(x_82); -lean_dec(x_82); -x_133 = lean_ctor_get(x_80, 1); -lean_inc(x_133); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_114; lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_array_get_size(x_80); +lean_dec(x_80); +x_131 = lean_ctor_get(x_78, 1); +lean_inc(x_131); lean_inc(x_1); -x_134 = l_Lean_Parser_tokenFn(x_1, x_80); -x_135 = lean_ctor_get(x_134, 3); -lean_inc(x_135); -if (lean_obj_tag(x_135) == 0) +x_132 = l_Lean_Parser_tokenFn(x_1, x_78); +x_133 = lean_ctor_get(x_132, 3); +lean_inc(x_133); +if (lean_obj_tag(x_133) == 0) { -lean_object* x_136; lean_object* x_137; -x_136 = lean_ctor_get(x_134, 0); +lean_object* x_134; lean_object* x_135; +x_134 = lean_ctor_get(x_132, 0); +lean_inc(x_134); +x_135 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_134); +lean_dec(x_134); +if (lean_obj_tag(x_135) == 2) +{ +lean_object* x_136; lean_object* x_137; uint8_t x_138; +x_136 = lean_ctor_get(x_135, 1); lean_inc(x_136); -x_137 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_136); +lean_dec(x_135); +x_137 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_138 = lean_string_dec_eq(x_136, x_137); lean_dec(x_136); -if (lean_obj_tag(x_137) == 2) +if (x_138 == 0) { -lean_object* x_138; lean_object* x_139; uint8_t x_140; -x_138 = lean_ctor_get(x_137, 1); -lean_inc(x_138); -lean_dec(x_137); -x_139 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_140 = lean_string_dec_eq(x_138, x_139); -lean_dec(x_138); -if (x_140 == 0) +lean_object* x_139; lean_object* x_140; +x_139 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_139, x_131); +x_114 = x_140; +goto block_130; +} +else +{ +lean_dec(x_131); +x_114 = x_132; +goto block_130; +} +} +else { lean_object* x_141; lean_object* x_142; +lean_dec(x_135); x_141 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_141, x_133); -x_116 = x_142; -goto block_132; -} -else -{ -lean_dec(x_133); -x_116 = x_134; -goto block_132; +x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_141, x_131); +x_114 = x_142; +goto block_130; } } else { lean_object* x_143; lean_object* x_144; -lean_dec(x_137); +lean_dec(x_133); x_143 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_144 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_143, x_133); -x_116 = x_144; -goto block_132; +x_144 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_143, x_131); +x_114 = x_144; +goto block_130; } -} -else +block_113: { -lean_object* x_145; lean_object* x_146; -lean_dec(x_135); -x_145 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_146 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_145, x_133); -x_116 = x_146; -goto block_132; -} -block_115: +lean_object* x_83; +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) { -lean_object* x_85; -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_86 = lean_ctor_get(x_84, 1); +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_82, 1); +lean_inc(x_84); +x_85 = l_Lean_Parser_tokenFn(x_1, x_82); +x_86 = lean_ctor_get(x_85, 3); lean_inc(x_86); -x_87 = l_Lean_Parser_tokenFn(x_1, x_84); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) +if (lean_obj_tag(x_86) == 0) { -lean_object* x_89; lean_object* x_90; -x_89 = lean_ctor_get(x_87, 0); +lean_object* x_87; lean_object* x_88; +x_87 = lean_ctor_get(x_85, 0); +lean_inc(x_87); +x_88 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_87); +lean_dec(x_87); +if (lean_obj_tag(x_88) == 2) +{ +lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_89 = lean_ctor_get(x_88, 1); lean_inc(x_89); -x_90 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_89); -lean_dec(x_89); -if (lean_obj_tag(x_90) == 2) -{ -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 1); -lean_inc(x_91); -lean_dec(x_90); -x_92 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_93 = lean_string_dec_eq(x_91, x_92); -lean_dec(x_91); -if (x_93 == 0) -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_94 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_94, x_86); -x_96 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_83); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_74, x_71); -lean_dec(x_71); -return x_98; -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_86); -x_99 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_100 = l_Lean_Parser_ParserState_mkNode(x_87, x_99, x_83); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_74, x_71); -lean_dec(x_71); -return x_101; -} -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_90); -x_102 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_103 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_102, x_86); -x_104 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_105 = l_Lean_Parser_ParserState_mkNode(x_103, x_104, x_83); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_74, x_71); -lean_dec(x_71); -return x_106; -} -} -else -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_dec(x_88); -x_107 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_87, x_107, x_86); -x_109 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_83); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_74, x_71); -lean_dec(x_71); -return x_111; +x_90 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_91 = lean_string_dec_eq(x_89, x_90); +lean_dec(x_89); +if (x_91 == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_92 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_92, x_84); +x_94 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_81); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_73, x_70); +lean_dec(x_70); +return x_96; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_84); +x_97 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_98 = l_Lean_Parser_ParserState_mkNode(x_85, x_97, x_81); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_73, x_70); +lean_dec(x_70); +return x_99; } } else { -lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_85); +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_88); +x_100 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_100, x_84); +x_102 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_81); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_73, x_70); +lean_dec(x_70); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_86); +x_105 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_105, x_84); +x_107 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_81); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_73, x_70); +lean_dec(x_70); +return x_109; +} +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; +lean_dec(x_83); lean_dec(x_1); -x_112 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_113 = l_Lean_Parser_ParserState_mkNode(x_84, x_112, x_83); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_74, x_71); -lean_dec(x_71); -return x_114; +x_110 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_111 = l_Lean_Parser_ParserState_mkNode(x_82, x_110, x_81); +x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_73, x_70); +lean_dec(x_70); +return x_112; } } -block_132: +block_130: { -lean_object* x_117; -x_117 = lean_ctor_get(x_116, 3); -lean_inc(x_117); -if (lean_obj_tag(x_117) == 0) +lean_object* x_115; +x_115 = lean_ctor_get(x_114, 3); +lean_inc(x_115); +if (lean_obj_tag(x_115) == 0) { -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; -x_118 = lean_ctor_get(x_116, 0); -lean_inc(x_118); -x_119 = lean_array_get_size(x_118); -lean_dec(x_118); -x_120 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_121 = lean_unsigned_to_nat(0u); +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = lean_array_get_size(x_116); +lean_dec(x_116); +x_118 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_119 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_122 = l_Lean_Parser_categoryParser___elambda__1(x_120, x_121, x_1, x_116); -x_123 = lean_ctor_get(x_122, 3); -lean_inc(x_123); -if (lean_obj_tag(x_123) == 0) +x_120 = l_Lean_Parser_categoryParser___elambda__1(x_118, x_119, x_1, x_114); +x_121 = lean_ctor_get(x_120, 3); +lean_inc(x_121); +if (lean_obj_tag(x_121) == 0) { -lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_inc(x_1); -x_124 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_122); +x_122 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_120); +x_123 = l_Lean_nullKind; +x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_117); +x_82 = x_124; +goto block_113; +} +else +{ +lean_object* x_125; lean_object* x_126; +lean_dec(x_121); x_125 = l_Lean_nullKind; -x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_119); -x_84 = x_126; -goto block_115; -} -else -{ -lean_object* x_127; lean_object* x_128; -lean_dec(x_123); -x_127 = l_Lean_nullKind; -x_128 = l_Lean_Parser_ParserState_mkNode(x_122, x_127, x_119); -x_84 = x_128; -goto block_115; +x_126 = l_Lean_Parser_ParserState_mkNode(x_120, x_125, x_117); +x_82 = x_126; +goto block_113; } } else { -lean_object* x_129; lean_object* x_130; lean_object* x_131; -lean_dec(x_117); +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_115); lean_dec(x_1); -x_129 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; -x_130 = l_Lean_Parser_ParserState_mkNode(x_116, x_129, x_83); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_74, x_71); -lean_dec(x_71); -return x_131; +x_127 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_128 = l_Lean_Parser_ParserState_mkNode(x_114, x_127, x_81); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_73, x_70); +lean_dec(x_70); +return x_129; } } } else { -lean_object* x_147; -lean_dec(x_81); +lean_object* x_145; +lean_dec(x_79); lean_dec(x_1); -x_147 = l_Lean_Parser_mergeOrElseErrors(x_80, x_74, x_71); -lean_dec(x_71); -return x_147; +x_145 = l_Lean_Parser_mergeOrElseErrors(x_78, x_73, x_70); +lean_dec(x_70); +return x_145; } } } @@ -2289,139 +2395,137 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -lean_inc(x_1); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_11); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_11); -return x_18; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +lean_inc(x_1); +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); lean_dec(x_1); -return x_8; +x_16 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_2, 0); +lean_inc(x_18); +x_19 = lean_array_get_size(x_18); +lean_dec(x_18); +x_20 = lean_ctor_get(x_2, 1); +lean_inc(x_20); +lean_inc(x_1); +x_21 = lean_apply_2(x_4, x_1, x_2); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_dec(x_20); lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); +lean_dec(x_1); +return x_21; +} +else +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 0); lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_1); -return x_22; -} -else -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_dec(x_22); +x_24 = lean_ctor_get(x_21, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) -{ +x_25 = lean_nat_dec_eq(x_24, x_20); lean_dec(x_24); -lean_dec(x_21); +if (x_25 == 0) +{ +lean_dec(x_23); lean_dec(x_20); +lean_dec(x_19); lean_dec(x_1); -return x_22; +return x_21; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = l_Lean_Parser_appPrec; -x_29 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_30 = l_Lean_Parser_checkPrecFn(x_28, x_29, x_1, x_27); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_inc(x_20); +x_26 = l_Lean_Parser_ParserState_restore(x_21, x_19, x_20); +lean_dec(x_19); +x_27 = l_Lean_Parser_appPrec; +x_28 = l_Lean_Parser_checkPrecFn(x_27, x_1, x_26); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_32 = lean_ctor_get(x_30, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); lean_inc(x_1); -x_34 = l_Lean_Parser_ident___elambda__1(x_1, x_30); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_32 = l_Lean_Parser_ident___elambda__1(x_1, x_28); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_36 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_34); -x_37 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_33); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_32); +x_35 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_31); +x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_23, x_20); +lean_dec(x_20); +return x_37; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_35); +lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_34, x_40, x_33); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_38 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_32, x_38, x_31); +x_40 = l_Lean_Parser_mergeOrElseErrors(x_39, x_23, x_20); +lean_dec(x_20); +return x_40; } } else { -lean_object* x_43; -lean_dec(x_31); +lean_object* x_41; +lean_dec(x_29); lean_dec(x_1); -x_43 = l_Lean_Parser_mergeOrElseErrors(x_30, x_24, x_21); -lean_dec(x_21); -return x_43; +x_41 = l_Lean_Parser_mergeOrElseErrors(x_28, x_23, x_20); +lean_dec(x_20); +return x_41; } } } @@ -2565,103 +2669,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_strLit___elambda__1(x_1, x_8); -x_13 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_strLit___elambda__1(x_1, x_7); +x_12 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_strLit___elambda__1(x_1, x_26); -x_31 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_strLit___elambda__1(x_1, x_24); +x_29 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -2814,75 +2916,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; -x_9 = l_Lean_Parser_Syntax_num___elambda__1___closed__6; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; +x_12 = l_Lean_Parser_Syntax_num___elambda__1___closed__6; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; -x_25 = l_Lean_Parser_Syntax_num___elambda__1___closed__6; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; +x_31 = l_Lean_Parser_Syntax_num___elambda__1___closed__6; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -2911,16 +3044,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_num___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_num___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_num___closed__2; +x_3 = l_Lean_Parser_Syntax_num___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_num___closed__4() { +lean_object* _init_l_Lean_Parser_Syntax_num___closed__5() { _start: { lean_object* x_1; @@ -2928,12 +3071,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_num___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_num___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_num___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_num___closed__3; -x_2 = l_Lean_Parser_Syntax_num___closed__4; +x_1 = l_Lean_Parser_Syntax_num___closed__4; +x_2 = l_Lean_Parser_Syntax_num___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -2944,7 +3087,7 @@ lean_object* _init_l_Lean_Parser_Syntax_num() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_num___closed__5; +x_1 = l_Lean_Parser_Syntax_num___closed__6; return x_1; } } @@ -3032,75 +3175,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; -x_9 = l_Lean_Parser_Syntax_str___elambda__1___closed__6; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; +x_12 = l_Lean_Parser_Syntax_str___elambda__1___closed__6; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; -x_25 = l_Lean_Parser_Syntax_str___elambda__1___closed__6; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; +x_31 = l_Lean_Parser_Syntax_str___elambda__1___closed__6; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -3129,16 +3303,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_str___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_str___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_str___closed__2; +x_3 = l_Lean_Parser_Syntax_str___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_str___closed__4() { +lean_object* _init_l_Lean_Parser_Syntax_str___closed__5() { _start: { lean_object* x_1; @@ -3146,12 +3330,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_str___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_str___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_str___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_str___closed__3; -x_2 = l_Lean_Parser_Syntax_str___closed__4; +x_1 = l_Lean_Parser_Syntax_str___closed__4; +x_2 = l_Lean_Parser_Syntax_str___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3162,7 +3346,7 @@ lean_object* _init_l_Lean_Parser_Syntax_str() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_str___closed__5; +x_1 = l_Lean_Parser_Syntax_str___closed__6; return x_1; } } @@ -3250,75 +3434,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_char___elambda__1___closed__4; -x_9 = l_Lean_Parser_Syntax_char___elambda__1___closed__6; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Syntax_char___elambda__1___closed__1; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_char___elambda__1___closed__4; +x_12 = l_Lean_Parser_Syntax_char___elambda__1___closed__6; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Syntax_char___elambda__1___closed__1; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Syntax_char___elambda__1___closed__4; -x_25 = l_Lean_Parser_Syntax_char___elambda__1___closed__6; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Syntax_char___elambda__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Syntax_char___elambda__1___closed__4; +x_31 = l_Lean_Parser_Syntax_char___elambda__1___closed__6; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Syntax_char___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -3347,16 +3562,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_char___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_char___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_char___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_char___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_char___closed__2; +x_3 = l_Lean_Parser_Syntax_char___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_char___closed__4() { +lean_object* _init_l_Lean_Parser_Syntax_char___closed__5() { _start: { lean_object* x_1; @@ -3364,12 +3589,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_char___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_char___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_char___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_char___closed__3; -x_2 = l_Lean_Parser_Syntax_char___closed__4; +x_1 = l_Lean_Parser_Syntax_char___closed__4; +x_2 = l_Lean_Parser_Syntax_char___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3380,7 +3605,7 @@ lean_object* _init_l_Lean_Parser_Syntax_char() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_char___closed__5; +x_1 = l_Lean_Parser_Syntax_char___closed__6; return x_1; } } @@ -3468,75 +3693,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_ident___elambda__1___closed__4; -x_9 = l_Lean_Parser_Syntax_ident___elambda__1___closed__6; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Syntax_ident___elambda__1___closed__1; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_ident___elambda__1___closed__4; +x_12 = l_Lean_Parser_Syntax_ident___elambda__1___closed__6; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Syntax_ident___elambda__1___closed__1; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Syntax_ident___elambda__1___closed__4; -x_25 = l_Lean_Parser_Syntax_ident___elambda__1___closed__6; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Syntax_ident___elambda__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Syntax_ident___elambda__1___closed__4; +x_31 = l_Lean_Parser_Syntax_ident___elambda__1___closed__6; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Syntax_ident___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -3565,16 +3821,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_ident___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_ident___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_ident___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_ident___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_ident___closed__2; +x_3 = l_Lean_Parser_Syntax_ident___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_ident___closed__4() { +lean_object* _init_l_Lean_Parser_Syntax_ident___closed__5() { _start: { lean_object* x_1; @@ -3582,12 +3848,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_ident___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_ident___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_ident___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_ident___closed__3; -x_2 = l_Lean_Parser_Syntax_ident___closed__4; +x_1 = l_Lean_Parser_Syntax_ident___closed__4; +x_2 = l_Lean_Parser_Syntax_ident___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3598,7 +3864,7 @@ lean_object* _init_l_Lean_Parser_Syntax_ident() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_ident___closed__5; +x_1 = l_Lean_Parser_Syntax_ident___closed__6; return x_1; } } @@ -3702,114 +3968,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; -x_9 = l_Lean_Parser_Syntax_try___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; +x_12 = l_Lean_Parser_Syntax_try___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_13 = l_Lean_Parser_appPrec; -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_16 = l_Lean_Parser_appPrec; +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; -x_31 = l_Lean_Parser_Syntax_try___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_35 = l_Lean_Parser_appPrec; -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; +x_37 = l_Lean_Parser_Syntax_try___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_41 = l_Lean_Parser_appPrec; +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -3861,16 +4158,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_try___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_try___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_try___closed__4; +x_3 = l_Lean_Parser_Syntax_try___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_try___closed__6() { +lean_object* _init_l_Lean_Parser_Syntax_try___closed__7() { _start: { lean_object* x_1; @@ -3878,12 +4185,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_try___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_try___closed__7() { +lean_object* _init_l_Lean_Parser_Syntax_try___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_try___closed__5; -x_2 = l_Lean_Parser_Syntax_try___closed__6; +x_1 = l_Lean_Parser_Syntax_try___closed__6; +x_2 = l_Lean_Parser_Syntax_try___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3894,7 +4201,7 @@ lean_object* _init_l_Lean_Parser_Syntax_try() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_try___closed__7; +x_1 = l_Lean_Parser_Syntax_try___closed__8; return x_1; } } @@ -3998,114 +4305,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; -x_9 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; +x_12 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_13 = l_Lean_Parser_appPrec; -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_16 = l_Lean_Parser_appPrec; +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; -x_31 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_35 = l_Lean_Parser_appPrec; -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; +x_37 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_41 = l_Lean_Parser_appPrec; +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -4147,16 +4485,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_lookahead___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_lookahead___closed__3; +x_3 = l_Lean_Parser_Syntax_lookahead___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__6() { _start: { lean_object* x_1; @@ -4164,12 +4512,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_lookahead___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__6() { +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_lookahead___closed__4; -x_2 = l_Lean_Parser_Syntax_lookahead___closed__5; +x_1 = l_Lean_Parser_Syntax_lookahead___closed__5; +x_2 = l_Lean_Parser_Syntax_lookahead___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4180,7 +4528,7 @@ lean_object* _init_l_Lean_Parser_Syntax_lookahead() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_lookahead___closed__6; +x_1 = l_Lean_Parser_Syntax_lookahead___closed__7; return x_1; } } @@ -4284,150 +4632,181 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; -x_9 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +x_12 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_13 = l_Lean_Parser_appPrec; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_16 = l_Lean_Parser_appPrec; lean_inc(x_1); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_14); -x_17 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_17); +x_20 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_15); +lean_object* x_22; lean_object* x_23; +lean_dec(x_18); lean_dec(x_1); -x_19 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_14, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_17, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_11); +lean_object* x_24; lean_object* x_25; +lean_dec(x_14); lean_dec(x_1); -x_21 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_10, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_10); +return x_25; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -x_25 = lean_ctor_get(x_2, 1); -lean_inc(x_25); -lean_inc(x_1); -x_26 = lean_apply_2(x_4, x_1, x_2); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) -{ -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_8); lean_dec(x_1); -return x_26; +return x_7; +} } else { -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_26 = lean_ctor_get(x_2, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = lean_ctor_get(x_2, 1); lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -x_30 = lean_nat_dec_eq(x_29, x_25); -lean_dec(x_29); -if (x_30 == 0) +lean_inc(x_1); +x_29 = lean_apply_2(x_4, x_1, x_2); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { lean_dec(x_28); -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_27); lean_dec(x_1); -return x_26; +return x_29; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_inc(x_25); -x_31 = l_Lean_Parser_ParserState_restore(x_26, x_24, x_25); -lean_dec(x_24); -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +lean_dec(x_30); +x_32 = lean_ctor_get(x_29, 1); lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +x_33 = lean_nat_dec_eq(x_32, x_28); lean_dec(x_32); -x_34 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; -x_35 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; -lean_inc(x_1); -x_36 = l_Lean_Parser_nonReservedSymbolFnAux(x_34, x_35, x_1, x_31); +if (x_33 == 0) +{ +lean_dec(x_31); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_1); +return x_29; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_28); +x_34 = l_Lean_Parser_ParserState_restore(x_29, x_27, x_28); +lean_dec(x_27); +x_35 = lean_unsigned_to_nat(1024u); +x_36 = l_Lean_Parser_checkPrecFn(x_35, x_1, x_34); x_37 = lean_ctor_get(x_36, 3); lean_inc(x_37); if (lean_obj_tag(x_37) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_39 = l_Lean_Parser_appPrec; +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +x_41 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; lean_inc(x_1); -x_40 = l_Lean_Parser_categoryParser___elambda__1(x_38, x_39, x_1, x_36); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) +x_42 = l_Lean_Parser_nonReservedSymbolFnAux(x_40, x_41, x_1, x_36); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_42 = l_Lean_Parser_categoryParser___elambda__1(x_38, x_39, x_1, x_40); -x_43 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_33); -x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_28, x_25); -lean_dec(x_25); -return x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_45 = l_Lean_Parser_appPrec; +lean_inc(x_1); +x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_42); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_46); +x_49 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_39); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_31, x_28); +lean_dec(x_28); +return x_51; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_dec(x_41); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_47); lean_dec(x_1); -x_46 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_40, x_46, x_33); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_28, x_25); -lean_dec(x_25); -return x_48; +x_52 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_46, x_52, x_39); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_31, x_28); +lean_dec(x_28); +return x_54; } } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_43); +lean_dec(x_1); +x_55 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_42, x_55, x_39); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_31, x_28); +lean_dec(x_28); +return x_57; +} +} +else +{ +lean_object* x_58; lean_dec(x_37); lean_dec(x_1); -x_49 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_36, x_49, x_33); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_28, x_25); -lean_dec(x_25); -return x_51; +x_58 = l_Lean_Parser_mergeOrElseErrors(x_36, x_31, x_28); +lean_dec(x_28); +return x_58; } } } @@ -4479,16 +4858,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_sepBy___closed__4; +x_3 = l_Lean_Parser_Syntax_sepBy___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__6() { +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__7() { _start: { lean_object* x_1; @@ -4496,12 +4885,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_sepBy___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__7() { +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_sepBy___closed__5; -x_2 = l_Lean_Parser_Syntax_sepBy___closed__6; +x_1 = l_Lean_Parser_Syntax_sepBy___closed__6; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4512,7 +4901,7 @@ lean_object* _init_l_Lean_Parser_Syntax_sepBy() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_sepBy___closed__7; +x_1 = l_Lean_Parser_Syntax_sepBy___closed__8; return x_1; } } @@ -4616,150 +5005,181 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; -x_9 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +x_12 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_13 = l_Lean_Parser_appPrec; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_16 = l_Lean_Parser_appPrec; lean_inc(x_1); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_14); -x_17 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_17); +x_20 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_15); +lean_object* x_22; lean_object* x_23; +lean_dec(x_18); lean_dec(x_1); -x_19 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_14, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_17, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_11); +lean_object* x_24; lean_object* x_25; +lean_dec(x_14); lean_dec(x_1); -x_21 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_10, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_10); +return x_25; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -x_25 = lean_ctor_get(x_2, 1); -lean_inc(x_25); -lean_inc(x_1); -x_26 = lean_apply_2(x_4, x_1, x_2); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) -{ -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_8); lean_dec(x_1); -return x_26; +return x_7; +} } else { -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_26 = lean_ctor_get(x_2, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = lean_ctor_get(x_2, 1); lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -x_30 = lean_nat_dec_eq(x_29, x_25); -lean_dec(x_29); -if (x_30 == 0) +lean_inc(x_1); +x_29 = lean_apply_2(x_4, x_1, x_2); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { lean_dec(x_28); -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_27); lean_dec(x_1); -return x_26; +return x_29; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_inc(x_25); -x_31 = l_Lean_Parser_ParserState_restore(x_26, x_24, x_25); -lean_dec(x_24); -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +lean_dec(x_30); +x_32 = lean_ctor_get(x_29, 1); lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +x_33 = lean_nat_dec_eq(x_32, x_28); lean_dec(x_32); -x_34 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; -x_35 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; -lean_inc(x_1); -x_36 = l_Lean_Parser_nonReservedSymbolFnAux(x_34, x_35, x_1, x_31); +if (x_33 == 0) +{ +lean_dec(x_31); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_1); +return x_29; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_28); +x_34 = l_Lean_Parser_ParserState_restore(x_29, x_27, x_28); +lean_dec(x_27); +x_35 = lean_unsigned_to_nat(1024u); +x_36 = l_Lean_Parser_checkPrecFn(x_35, x_1, x_34); x_37 = lean_ctor_get(x_36, 3); lean_inc(x_37); if (lean_obj_tag(x_37) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_39 = l_Lean_Parser_appPrec; +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +x_41 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; lean_inc(x_1); -x_40 = l_Lean_Parser_categoryParser___elambda__1(x_38, x_39, x_1, x_36); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) +x_42 = l_Lean_Parser_nonReservedSymbolFnAux(x_40, x_41, x_1, x_36); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_42 = l_Lean_Parser_categoryParser___elambda__1(x_38, x_39, x_1, x_40); -x_43 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_33); -x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_28, x_25); -lean_dec(x_25); -return x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_45 = l_Lean_Parser_appPrec; +lean_inc(x_1); +x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_42); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_46); +x_49 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_39); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_31, x_28); +lean_dec(x_28); +return x_51; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_dec(x_41); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_47); lean_dec(x_1); -x_46 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_40, x_46, x_33); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_28, x_25); -lean_dec(x_25); -return x_48; +x_52 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_46, x_52, x_39); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_31, x_28); +lean_dec(x_28); +return x_54; } } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_43); +lean_dec(x_1); +x_55 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_42, x_55, x_39); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_31, x_28); +lean_dec(x_28); +return x_57; +} +} +else +{ +lean_object* x_58; lean_dec(x_37); lean_dec(x_1); -x_49 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_36, x_49, x_33); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_28, x_25); -lean_dec(x_25); -return x_51; +x_58 = l_Lean_Parser_mergeOrElseErrors(x_36, x_31, x_28); +lean_dec(x_28); +return x_58; } } } @@ -4799,16 +5219,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_sepBy1___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Syntax_sepBy1___closed__3; +x_3 = l_Lean_Parser_Syntax_sepBy1___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__5() { +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__6() { _start: { lean_object* x_1; @@ -4816,12 +5246,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_sepBy1___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__6() { +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_sepBy1___closed__4; -x_2 = l_Lean_Parser_Syntax_sepBy1___closed__5; +x_1 = l_Lean_Parser_Syntax_sepBy1___closed__5; +x_2 = l_Lean_Parser_Syntax_sepBy1___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4832,7 +5262,7 @@ lean_object* _init_l_Lean_Parser_Syntax_sepBy1() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_sepBy1___closed__6; +x_1 = l_Lean_Parser_Syntax_sepBy1___closed__7; return x_1; } } @@ -4869,77 +5299,91 @@ return x_3; lean_object* l_Lean_Parser_Syntax_optional___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_3 = lean_ctor_get(x_2, 0); -lean_inc(x_3); -x_4 = lean_array_get_size(x_3); -lean_dec(x_3); -x_5 = lean_ctor_get(x_2, 1); +lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_3 = lean_unsigned_to_nat(1024u); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); lean_inc(x_5); -lean_inc(x_1); -x_6 = l_Lean_Parser_tokenFn(x_1, x_2); -x_7 = lean_ctor_get(x_6, 3); -lean_inc(x_7); -if (lean_obj_tag(x_7) == 0) +if (lean_obj_tag(x_5) == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_1, 2); +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_4, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); lean_inc(x_8); -lean_dec(x_1); -x_9 = lean_ctor_get(x_6, 0); -lean_inc(x_9); -x_10 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_9); -lean_dec(x_9); -if (lean_obj_tag(x_10) == 2) +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 1); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_1, 2); lean_inc(x_11); -lean_dec(x_10); -x_12 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; -x_13 = lean_string_dec_eq(x_11, x_12); -lean_dec(x_11); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_15 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_14, x_5); -x_16 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_8, x_4); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_5); -x_18 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_6, x_18, x_8, x_4); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_20 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_20, x_5); -x_22 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkTrailingNode(x_21, x_22, x_8, x_4); -return x_23; -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_7); -x_24 = lean_ctor_get(x_1, 2); -lean_inc(x_24); lean_dec(x_1); -x_25 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_25, x_5); -x_27 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkTrailingNode(x_26, x_27, x_24, x_4); -return x_28; +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +x_13 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_12); +lean_dec(x_12); +if (lean_obj_tag(x_13) == 2) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; +x_16 = lean_string_dec_eq(x_14, x_15); +lean_dec(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_18 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_17, x_8); +x_19 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_18, x_19, x_11, x_7); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_8); +x_21 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkTrailingNode(x_9, x_21, x_11, x_7); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_23 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_23, x_8); +x_25 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkTrailingNode(x_24, x_25, x_11, x_7); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_10); +x_27 = lean_ctor_get(x_1, 2); +lean_inc(x_27); +lean_dec(x_1); +x_28 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_28, x_8); +x_30 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkTrailingNode(x_29, x_30, x_27, x_7); +return x_31; +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -4956,17 +5400,27 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_optional___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_optional___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_optional___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Syntax_optional___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_optional___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_optional___closed__1; -x_2 = l_Lean_Parser_Syntax_optional___closed__2; +x_1 = l_Lean_Parser_Syntax_optional___closed__2; +x_2 = l_Lean_Parser_Syntax_optional___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4977,7 +5431,7 @@ lean_object* _init_l_Lean_Parser_Syntax_optional() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_optional___closed__3; +x_1 = l_Lean_Parser_Syntax_optional___closed__4; return x_1; } } @@ -5046,77 +5500,91 @@ return x_3; lean_object* l_Lean_Parser_Syntax_many___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_3 = lean_ctor_get(x_2, 0); -lean_inc(x_3); -x_4 = lean_array_get_size(x_3); -lean_dec(x_3); -x_5 = lean_ctor_get(x_2, 1); +lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_3 = lean_unsigned_to_nat(1024u); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); lean_inc(x_5); -lean_inc(x_1); -x_6 = l_Lean_Parser_tokenFn(x_1, x_2); -x_7 = lean_ctor_get(x_6, 3); -lean_inc(x_7); -if (lean_obj_tag(x_7) == 0) +if (lean_obj_tag(x_5) == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_1, 2); +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_4, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); lean_inc(x_8); -lean_dec(x_1); -x_9 = lean_ctor_get(x_6, 0); -lean_inc(x_9); -x_10 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_9); -lean_dec(x_9); -if (lean_obj_tag(x_10) == 2) +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 1); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_1, 2); lean_inc(x_11); -lean_dec(x_10); -x_12 = l_Lean_Parser_mkAntiquot___closed__14; -x_13 = lean_string_dec_eq(x_11, x_12); -lean_dec(x_11); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; -x_15 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_14, x_5); -x_16 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_8, x_4); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_5); -x_18 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_6, x_18, x_8, x_4); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_20 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_20, x_5); -x_22 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkTrailingNode(x_21, x_22, x_8, x_4); -return x_23; -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_7); -x_24 = lean_ctor_get(x_1, 2); -lean_inc(x_24); lean_dec(x_1); -x_25 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_25, x_5); -x_27 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkTrailingNode(x_26, x_27, x_24, x_4); -return x_28; +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +x_13 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_12); +lean_dec(x_12); +if (lean_obj_tag(x_13) == 2) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Parser_mkAntiquot___closed__14; +x_16 = lean_string_dec_eq(x_14, x_15); +lean_dec(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_18 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_17, x_8); +x_19 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_18, x_19, x_11, x_7); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_8); +x_21 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkTrailingNode(x_9, x_21, x_11, x_7); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_23 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_23, x_8); +x_25 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkTrailingNode(x_24, x_25, x_11, x_7); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_10); +x_27 = lean_ctor_get(x_1, 2); +lean_inc(x_27); +lean_dec(x_1); +x_28 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_28, x_8); +x_30 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkTrailingNode(x_29, x_30, x_27, x_7); +return x_31; +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -5133,17 +5601,27 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_many___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_many___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Syntax_many___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_many___closed__1; -x_2 = l_Lean_Parser_Syntax_many___closed__2; +x_1 = l_Lean_Parser_Syntax_many___closed__2; +x_2 = l_Lean_Parser_Syntax_many___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5154,7 +5632,7 @@ lean_object* _init_l_Lean_Parser_Syntax_many() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_many___closed__3; +x_1 = l_Lean_Parser_Syntax_many___closed__4; return x_1; } } @@ -5191,77 +5669,91 @@ return x_3; lean_object* l_Lean_Parser_Syntax_many1___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_3 = lean_ctor_get(x_2, 0); -lean_inc(x_3); -x_4 = lean_array_get_size(x_3); -lean_dec(x_3); -x_5 = lean_ctor_get(x_2, 1); +lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_3 = lean_unsigned_to_nat(1024u); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); lean_inc(x_5); -lean_inc(x_1); -x_6 = l_Lean_Parser_tokenFn(x_1, x_2); -x_7 = lean_ctor_get(x_6, 3); -lean_inc(x_7); -if (lean_obj_tag(x_7) == 0) +if (lean_obj_tag(x_5) == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_1, 2); +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_4, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); lean_inc(x_8); -lean_dec(x_1); -x_9 = lean_ctor_get(x_6, 0); -lean_inc(x_9); -x_10 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_9); -lean_dec(x_9); -if (lean_obj_tag(x_10) == 2) +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_11 = lean_ctor_get(x_10, 1); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_1, 2); lean_inc(x_11); -lean_dec(x_10); -x_12 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; -x_13 = lean_string_dec_eq(x_11, x_12); -lean_dec(x_11); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_15 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_14, x_5); -x_16 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_8, x_4); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_5); -x_18 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_6, x_18, x_8, x_4); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -x_20 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_20, x_5); -x_22 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkTrailingNode(x_21, x_22, x_8, x_4); -return x_23; -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_7); -x_24 = lean_ctor_get(x_1, 2); -lean_inc(x_24); lean_dec(x_1); -x_25 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_6, x_25, x_5); -x_27 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkTrailingNode(x_26, x_27, x_24, x_4); -return x_28; +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +x_13 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_12); +lean_dec(x_12); +if (lean_obj_tag(x_13) == 2) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; +x_16 = lean_string_dec_eq(x_14, x_15); +lean_dec(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_18 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_17, x_8); +x_19 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_18, x_19, x_11, x_7); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_8); +x_21 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkTrailingNode(x_9, x_21, x_11, x_7); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_23 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_23, x_8); +x_25 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkTrailingNode(x_24, x_25, x_11, x_7); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_10); +x_27 = lean_ctor_get(x_1, 2); +lean_inc(x_27); +lean_dec(x_1); +x_28 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_28, x_8); +x_30 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkTrailingNode(x_29, x_30, x_27, x_7); +return x_31; +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -5278,17 +5770,27 @@ return x_3; lean_object* _init_l_Lean_Parser_Syntax_many1___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many1___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_many1___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Syntax_many1___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many1___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Syntax_many1___closed__1; -x_2 = l_Lean_Parser_Syntax_many1___closed__2; +x_1 = l_Lean_Parser_Syntax_many1___closed__2; +x_2 = l_Lean_Parser_Syntax_many1___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5299,7 +5801,7 @@ lean_object* _init_l_Lean_Parser_Syntax_many1() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Syntax_many1___closed__3; +x_1 = l_Lean_Parser_Syntax_many1___closed__4; return x_1; } } @@ -5328,108 +5830,107 @@ return x_3; lean_object* l_Lean_Parser_Syntax_orelse___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(2u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_tokenFn(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_10, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__2; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_28, x_9); -x_13 = x_29; -goto block_22; -} -else -{ -lean_dec(x_9); -x_13 = x_10; -goto block_22; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_30, x_9); -x_13 = x_31; -goto block_22; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_11); -x_32 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_32, x_9); -x_13 = x_33; -goto block_22; -} -block_22: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_16 = lean_unsigned_to_nat(1u); -x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); -x_18 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_17, x_18, x_12, x_8); -return x_19; -} -else -{ -lean_object* x_20; lean_object* x_21; -lean_dec(x_14); -lean_dec(x_1); -x_20 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; -x_21 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_20, x_12, x_8); -return x_21; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_9, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__2; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_27, x_8); +x_12 = x_28; +goto block_21; +} +else +{ +lean_dec(x_8); +x_12 = x_9; +goto block_21; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_29, x_8); +x_12 = x_30; +goto block_21; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_10); +x_31 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_31, x_8); +x_12 = x_32; +goto block_21; +} +block_21: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_15 = lean_unsigned_to_nat(1u); +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); +x_17 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_17, x_11, x_7); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_19 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_19, x_11, x_7); +return x_20; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -5607,188 +6108,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_prefix___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_prefix___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_prefix___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_prefix___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_prefix___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_prefix___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -5817,16 +6349,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_prefix___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_prefix___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_prefix___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_prefix___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_prefix___closed__2; +x_3 = l_Lean_Parser_Command_prefix___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_prefix___closed__4() { +lean_object* _init_l_Lean_Parser_Command_prefix___closed__5() { _start: { lean_object* x_1; @@ -5834,12 +6376,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_prefix___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_prefix___closed__5() { +lean_object* _init_l_Lean_Parser_Command_prefix___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_prefix___closed__3; -x_2 = l_Lean_Parser_Command_prefix___closed__4; +x_1 = l_Lean_Parser_Command_prefix___closed__4; +x_2 = l_Lean_Parser_Command_prefix___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5850,7 +6392,7 @@ lean_object* _init_l_Lean_Parser_Command_prefix() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_prefix___closed__5; +x_1 = l_Lean_Parser_Command_prefix___closed__6; return x_1; } } @@ -5946,188 +6488,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_infix___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_infix___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_infix___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_infix___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_infix___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_infix___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_infix___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_infix___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -6156,16 +6729,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_infix___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_infix___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_infix___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_infix___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_infix___closed__2; +x_3 = l_Lean_Parser_Command_infix___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_infix___closed__4() { +lean_object* _init_l_Lean_Parser_Command_infix___closed__5() { _start: { lean_object* x_1; @@ -6173,12 +6756,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_infix___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_infix___closed__5() { +lean_object* _init_l_Lean_Parser_Command_infix___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_infix___closed__3; -x_2 = l_Lean_Parser_Command_infix___closed__4; +x_1 = l_Lean_Parser_Command_infix___closed__4; +x_2 = l_Lean_Parser_Command_infix___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6189,7 +6772,7 @@ lean_object* _init_l_Lean_Parser_Command_infix() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_infix___closed__5; +x_1 = l_Lean_Parser_Command_infix___closed__6; return x_1; } } @@ -6285,188 +6868,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_infixl___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_infixl___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_infixl___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_infixl___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_infixl___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_infixl___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -6495,16 +7109,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_infixl___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_infixl___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_infixl___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_infixl___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_infixl___closed__2; +x_3 = l_Lean_Parser_Command_infixl___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_infixl___closed__4() { +lean_object* _init_l_Lean_Parser_Command_infixl___closed__5() { _start: { lean_object* x_1; @@ -6512,12 +7136,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_infixl___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_infixl___closed__5() { +lean_object* _init_l_Lean_Parser_Command_infixl___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_infixl___closed__3; -x_2 = l_Lean_Parser_Command_infixl___closed__4; +x_1 = l_Lean_Parser_Command_infixl___closed__4; +x_2 = l_Lean_Parser_Command_infixl___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6528,7 +7152,7 @@ lean_object* _init_l_Lean_Parser_Command_infixl() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_infixl___closed__5; +x_1 = l_Lean_Parser_Command_infixl___closed__6; return x_1; } } @@ -6624,188 +7248,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_infixr___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_infixr___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_infixr___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_infixr___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_infixr___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_infixr___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -6834,16 +7489,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_infixr___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_infixr___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_infixr___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_infixr___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_infixr___closed__2; +x_3 = l_Lean_Parser_Command_infixr___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_infixr___closed__4() { +lean_object* _init_l_Lean_Parser_Command_infixr___closed__5() { _start: { lean_object* x_1; @@ -6851,12 +7516,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_infixr___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_infixr___closed__5() { +lean_object* _init_l_Lean_Parser_Command_infixr___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_infixr___closed__3; -x_2 = l_Lean_Parser_Command_infixr___closed__4; +x_1 = l_Lean_Parser_Command_infixr___closed__4; +x_2 = l_Lean_Parser_Command_infixr___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6867,7 +7532,7 @@ lean_object* _init_l_Lean_Parser_Command_infixr() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_infixr___closed__5; +x_1 = l_Lean_Parser_Command_infixr___closed__6; return x_1; } } @@ -6963,188 +7628,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 1); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); lean_inc(x_8); -x_9 = l_Lean_Parser_tokenFn(x_1, x_2); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); lean_inc(x_11); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_11); -lean_dec(x_11); -if (lean_obj_tag(x_12) == 2) -{ -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_12, 1); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Command_postfix___elambda__1___closed__5; -x_15 = lean_string_dec_eq(x_13, x_14); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Command_postfix___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); -x_18 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_7); -return x_19; +x_29 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} } else { -lean_object* x_20; lean_object* x_21; lean_dec(x_8); -x_20 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_7); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_22 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); -x_24 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_10); -x_26 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); -x_28 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_dec(x_32); -lean_dec(x_31); lean_dec(x_1); -return x_33; +return x_7; +} } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -x_41 = l_Lean_Parser_tokenFn(x_1, x_38); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +if (x_40 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Command_postfix___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); +x_46 = lean_array_get_size(x_45); lean_dec(x_45); -if (x_47 == 0) +x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_47); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_48 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -lean_inc(x_32); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_32); -x_50 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_40); -x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_35, x_32); -lean_dec(x_32); -return x_52; +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Command_postfix___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_54 = l_Lean_Parser_ParserState_mkNode(x_41, x_53, x_40); -x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_35, x_32); -lean_dec(x_32); -return x_55; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; lean_dec(x_44); -x_56 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -lean_inc(x_32); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_56, x_32); -x_58 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_40); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_35, x_32); -lean_dec(x_32); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_42); -x_61 = l_Lean_Parser_Command_postfix___elambda__1___closed__8; -lean_inc(x_32); -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_61, x_32); -x_63 = l_Lean_Parser_Command_postfix___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_40); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); -lean_dec(x_32); -return x_65; +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -7173,16 +7869,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_postfix___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_postfix___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_postfix___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_postfix___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_postfix___closed__2; +x_3 = l_Lean_Parser_Command_postfix___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_postfix___closed__4() { +lean_object* _init_l_Lean_Parser_Command_postfix___closed__5() { _start: { lean_object* x_1; @@ -7190,12 +7896,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_postfix___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_postfix___closed__5() { +lean_object* _init_l_Lean_Parser_Command_postfix___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_postfix___closed__3; -x_2 = l_Lean_Parser_Command_postfix___closed__4; +x_1 = l_Lean_Parser_Command_postfix___closed__4; +x_2 = l_Lean_Parser_Command_postfix___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -7206,7 +7912,7 @@ lean_object* _init_l_Lean_Parser_Command_postfix() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_postfix___closed__5; +x_1 = l_Lean_Parser_Command_postfix___closed__6; return x_1; } } @@ -7585,293 +8291,324 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_24 = lean_ctor_get(x_2, 1); -lean_inc(x_24); -lean_inc(x_1); -x_25 = l_Lean_Parser_tokenFn(x_1, x_2); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_27); -lean_dec(x_27); -if (lean_obj_tag(x_28) == 2) -{ -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = l_Lean_Parser_Command_reserve___elambda__1___closed__6; -x_31 = lean_string_dec_eq(x_29, x_30); -lean_dec(x_29); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); -x_8 = x_33; -goto block_23; -} -else -{ -lean_dec(x_24); -x_8 = x_25; -goto block_23; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_28); -x_34 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_34, x_24); -x_8 = x_35; -goto block_23; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_26); -x_36 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_36, x_24); -x_8 = x_37; -goto block_23; -} -block_23: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -x_12 = l_Lean_Parser_quotedSymbolFn(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; -} -} -else -{ -lean_object* x_21; lean_object* x_22; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_21 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_8, x_21, x_7); -return x_22; -} -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_38 = lean_ctor_get(x_2, 0); -lean_inc(x_38); -x_39 = lean_array_get_size(x_38); -lean_dec(x_38); -x_40 = lean_ctor_get(x_2, 1); -lean_inc(x_40); +x_27 = lean_ctor_get(x_7, 1); +lean_inc(x_27); lean_inc(x_1); -x_41 = lean_apply_2(x_4, x_1, x_2); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) +x_28 = l_Lean_Parser_tokenFn(x_1, x_7); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_1); -return x_41; +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_30); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 2) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = l_Lean_Parser_Command_reserve___elambda__1___closed__6; +x_34 = lean_string_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_35, x_27); +x_11 = x_36; +goto block_26; } else { -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_ctor_get(x_42, 0); +lean_dec(x_27); +x_11 = x_28; +goto block_26; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +x_37 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_37, x_27); +x_11 = x_38; +goto block_26; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_29); +x_39 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_28, x_39, x_27); +x_11 = x_40; +goto block_26; +} +block_26: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = l_Lean_Parser_quotedSymbolFn(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +lean_dec(x_1); +x_24 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_11, x_24, x_10); +return x_25; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = lean_ctor_get(x_2, 0); +lean_inc(x_41); +x_42 = lean_array_get_size(x_41); +lean_dec(x_41); +x_43 = lean_ctor_get(x_2, 1); lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_ctor_get(x_41, 1); -lean_inc(x_44); -x_45 = lean_nat_dec_eq(x_44, x_40); -lean_dec(x_44); -if (x_45 == 0) +lean_inc(x_1); +x_44 = lean_apply_2(x_4, x_1, x_2); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { lean_dec(x_43); -lean_dec(x_40); -lean_dec(x_39); +lean_dec(x_42); lean_dec(x_1); -return x_41; +return x_44; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_69; lean_object* x_70; -lean_inc(x_40); -x_46 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); -lean_dec(x_39); -x_47 = lean_ctor_get(x_46, 0); +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +x_47 = lean_ctor_get(x_44, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); +x_48 = lean_nat_dec_eq(x_47, x_43); lean_dec(x_47); -lean_inc(x_1); -x_69 = l_Lean_Parser_tokenFn(x_1, x_46); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +if (x_48 == 0) { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); -lean_dec(x_71); -if (lean_obj_tag(x_72) == 2) -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Command_reserve___elambda__1___closed__6; -x_75 = lean_string_dec_eq(x_73, x_74); -lean_dec(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -lean_inc(x_40); -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_40); -x_49 = x_77; -goto block_68; +lean_dec(x_46); +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_1); +return x_44; } else { -x_49 = x_69; -goto block_68; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_72); -x_78 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -lean_inc(x_40); -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_40); -x_49 = x_79; -goto block_68; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_70); -x_80 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; -lean_inc(x_40); -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_40); -x_49 = x_81; -goto block_68; -} -block_68: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_49); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_inc(x_43); +x_49 = l_Lean_Parser_ParserState_restore(x_44, x_42, x_43); +lean_dec(x_42); +x_50 = lean_unsigned_to_nat(1024u); +x_51 = l_Lean_Parser_checkPrecFn(x_50, x_1, x_49); x_52 = lean_ctor_get(x_51, 3); lean_inc(x_52); if (lean_obj_tag(x_52) == 0) { -lean_object* x_53; lean_object* x_54; -x_53 = l_Lean_Parser_quotedSymbolFn(x_1, x_51); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = lean_array_get_size(x_53); +lean_dec(x_53); +x_75 = lean_ctor_get(x_51, 1); +lean_inc(x_75); +lean_inc(x_1); +x_76 = l_Lean_Parser_tokenFn(x_1, x_51); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_53); -x_56 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_48); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_43, x_40); -lean_dec(x_40); -return x_58; +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 2) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Parser_Command_reserve___elambda__1___closed__6; +x_82 = lean_string_dec_eq(x_80, x_81); +lean_dec(x_80); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; +x_83 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); +x_55 = x_84; +goto block_74; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -lean_dec(x_1); -x_59 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_53, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_43, x_40); -lean_dec(x_40); -return x_61; +lean_dec(x_75); +x_55 = x_76; +goto block_74; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_52); -lean_dec(x_1); +lean_object* x_85; lean_object* x_86; +lean_dec(x_79); +x_85 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); +x_55 = x_86; +goto block_74; +} +} +else +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_77); +x_87 = l_Lean_Parser_Command_reserve___elambda__1___closed__9; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); +x_55 = x_88; +goto block_74; +} +block_74: +{ +lean_object* x_56; +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_inc(x_1); +x_57 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_55); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_quotedSymbolFn(x_1, x_57); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_59); x_62 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_51, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_43, x_40); -lean_dec(x_40); +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_54); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_46, x_43); +lean_dec(x_43); return x_64; } -} else { lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_50); +lean_dec(x_60); lean_dec(x_1); x_65 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_48); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_43, x_40); -lean_dec(x_40); +x_66 = l_Lean_Parser_ParserState_mkNode(x_59, x_65, x_54); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_46, x_43); +lean_dec(x_43); return x_67; } } +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_dec(x_58); +lean_dec(x_1); +x_68 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_57, x_68, x_54); +x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_46, x_43); +lean_dec(x_43); +return x_70; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_56); +lean_dec(x_1); +x_71 = l_Lean_Parser_Command_reserve___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_54); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_46, x_43); +lean_dec(x_43); +return x_73; +} +} +} +else +{ +lean_object* x_89; +lean_dec(x_52); +lean_dec(x_1); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_51, x_46, x_43); +lean_dec(x_43); +return x_89; +} } } } @@ -7935,16 +8672,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_reserve___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_reserve___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_reserve___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_reserve___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_reserve___closed__5; +x_3 = l_Lean_Parser_Command_reserve___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_reserve___closed__7() { +lean_object* _init_l_Lean_Parser_Command_reserve___closed__8() { _start: { lean_object* x_1; @@ -7952,12 +8699,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_reserve___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_reserve___closed__8() { +lean_object* _init_l_Lean_Parser_Command_reserve___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_reserve___closed__6; -x_2 = l_Lean_Parser_Command_reserve___closed__7; +x_1 = l_Lean_Parser_Command_reserve___closed__7; +x_2 = l_Lean_Parser_Command_reserve___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -7968,7 +8715,7 @@ lean_object* _init_l_Lean_Parser_Command_reserve() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_reserve___closed__8; +x_1 = l_Lean_Parser_Command_reserve___closed__9; return x_1; } } @@ -8165,106 +8912,137 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_2, 0); +lean_inc(x_18); +x_19 = lean_array_get_size(x_18); +lean_dec(x_18); +x_20 = lean_ctor_get(x_2, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) +lean_inc(x_1); +x_21 = lean_apply_2(x_4, x_1, x_2); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) { lean_dec(x_20); -lean_dec(x_17); -lean_dec(x_16); +lean_dec(x_19); lean_dec(x_1); -return x_18; +return x_21; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_21, 1); lean_inc(x_24); -x_25 = lean_array_get_size(x_24); +x_25 = lean_nat_dec_eq(x_24, x_20); lean_dec(x_24); -lean_inc(x_1); -x_26 = l_Lean_Parser_ident___elambda__1(x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +if (x_25 == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_28 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_26); -x_29 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_25); -x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_20, x_17); -lean_dec(x_17); -return x_31; +lean_dec(x_23); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_1); +return x_21; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_27); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_inc(x_20); +x_26 = l_Lean_Parser_ParserState_restore(x_21, x_19, x_20); +lean_dec(x_19); +x_27 = lean_unsigned_to_nat(1024u); +x_28 = l_Lean_Parser_checkPrecFn(x_27, x_1, x_26); +x_29 = lean_ctor_get(x_28, 3); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +lean_inc(x_1); +x_32 = l_Lean_Parser_ident___elambda__1(x_1, x_28); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_32); +x_35 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_31); +x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_23, x_20); +lean_dec(x_20); +return x_37; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_33); lean_dec(x_1); -x_32 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_26, x_32, x_25); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_20, x_17); -lean_dec(x_17); -return x_34; +x_38 = l_Lean_Parser_Command_identPrec___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_32, x_38, x_31); +x_40 = l_Lean_Parser_mergeOrElseErrors(x_39, x_23, x_20); +lean_dec(x_20); +return x_40; +} +} +else +{ +lean_object* x_41; +lean_dec(x_29); +lean_dec(x_1); +x_41 = l_Lean_Parser_mergeOrElseErrors(x_28, x_23, x_20); +lean_dec(x_20); +return x_41; } } } @@ -8284,16 +9062,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_identPrec___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_identPrec___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_identPrec___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_identPrec___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_identPrec___closed__1; +x_3 = l_Lean_Parser_Command_identPrec___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_identPrec___closed__3() { +lean_object* _init_l_Lean_Parser_Command_identPrec___closed__4() { _start: { lean_object* x_1; @@ -8301,12 +9089,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_identPrec___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_identPrec___closed__4() { +lean_object* _init_l_Lean_Parser_Command_identPrec___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_identPrec___closed__2; -x_2 = l_Lean_Parser_Command_identPrec___closed__3; +x_1 = l_Lean_Parser_Command_identPrec___closed__3; +x_2 = l_Lean_Parser_Command_identPrec___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8317,7 +9105,7 @@ lean_object* _init_l_Lean_Parser_Command_identPrec() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_identPrec___closed__4; +x_1 = l_Lean_Parser_Command_identPrec___closed__5; return x_1; } } @@ -8372,405 +9160,426 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_mixfixSymbol___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_41; lean_object* x_42; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -lean_inc(x_1); -x_41 = l_Lean_Parser_tokenFn(x_1, x_12); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); -lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_47 = lean_string_dec_eq(x_45, x_46); -lean_dec(x_45); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_16); -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_16); -x_17 = x_49; -goto block_40; -} -else -{ -x_17 = x_41; -goto block_40; -} -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_44); -x_50 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_16); -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_50, x_16); -x_17 = x_51; -goto block_40; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_42); -x_52 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_16); -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_52, x_16); -x_17 = x_53; -goto block_40; -} -block_40: -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_16); -lean_dec(x_15); -x_19 = l_Lean_Parser_termParser___closed__2; -x_20 = lean_unsigned_to_nat(0u); -x_21 = l_Lean_Parser_categoryParser___elambda__1(x_19, x_20, x_1, x_17); -x_22 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_7); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_18, 0); -lean_inc(x_24); -lean_dec(x_18); -x_25 = lean_ctor_get(x_17, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_16); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_24); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_1); -x_27 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_17, x_27, x_7); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_inc(x_16); -x_29 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); -lean_dec(x_15); -lean_inc(x_1); -x_30 = l_Lean_Parser_darrow___elambda__1(x_1, x_29); -x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_24, x_16); -lean_dec(x_16); -x_32 = lean_ctor_get(x_31, 3); -lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_33 = l_Lean_Parser_termParser___closed__2; -x_34 = lean_unsigned_to_nat(0u); -x_35 = l_Lean_Parser_categoryParser___elambda__1(x_33, x_34, x_1, x_31); -x_36 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_7); -return x_37; -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_32); -lean_dec(x_1); -x_38 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_31, x_38, x_7); -return x_39; -} -} -} -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_13); -lean_dec(x_1); -x_54 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_12, x_54, x_7); -return x_55; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_11); -lean_dec(x_1); -x_56 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_10, x_56, x_7); -return x_57; -} -} -else -{ -lean_object* x_58; lean_object* x_59; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_58 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_8, x_58, x_7); -return x_59; -} -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_60 = lean_ctor_get(x_2, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); -lean_dec(x_60); -x_62 = lean_ctor_get(x_2, 1); -lean_inc(x_62); lean_inc(x_1); -x_63 = lean_apply_2(x_4, x_1, x_2); -x_64 = lean_ctor_get(x_63, 3); -lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) +x_11 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_62); -lean_dec(x_61); -lean_dec(x_1); -return x_63; +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_mixfixSymbol___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_44; lean_object* x_45; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_inc(x_1); +x_44 = l_Lean_Parser_tokenFn(x_1, x_15); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_19); +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_19); +x_20 = x_52; +goto block_43; } else { -lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_65 = lean_ctor_get(x_64, 0); +x_20 = x_44; +goto block_43; +} +} +else +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_19); +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_19); +x_20 = x_54; +goto block_43; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_19); +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_19); +x_20 = x_56; +goto block_43; +} +block_43: +{ +lean_object* x_21; +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_18); +x_22 = l_Lean_Parser_termParser___closed__2; +x_23 = lean_unsigned_to_nat(0u); +x_24 = l_Lean_Parser_categoryParser___elambda__1(x_22, x_23, x_1, x_20); +x_25 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_21, 0); +lean_inc(x_27); +lean_dec(x_21); +x_28 = lean_ctor_get(x_20, 1); +lean_inc(x_28); +x_29 = lean_nat_dec_eq(x_28, x_19); +lean_dec(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_27); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_1); +x_30 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_20, x_30, x_10); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_inc(x_19); +x_32 = l_Lean_Parser_ParserState_restore(x_20, x_18, x_19); +lean_dec(x_18); +lean_inc(x_1); +x_33 = l_Lean_Parser_darrow___elambda__1(x_1, x_32); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_27, x_19); +lean_dec(x_19); +x_35 = lean_ctor_get(x_34, 3); +lean_inc(x_35); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_36 = l_Lean_Parser_termParser___closed__2; +x_37 = lean_unsigned_to_nat(0u); +x_38 = l_Lean_Parser_categoryParser___elambda__1(x_36, x_37, x_1, x_34); +x_39 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_10); +return x_40; +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_35); +lean_dec(x_1); +x_41 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_34, x_41, x_10); +return x_42; +} +} +} +} +} +else +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_16); +lean_dec(x_1); +x_57 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_15, x_57, x_10); +return x_58; +} +} +else +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_14); +lean_dec(x_1); +x_59 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_60 = l_Lean_Parser_ParserState_mkNode(x_13, x_59, x_10); +return x_60; +} +} +else +{ +lean_object* x_61; lean_object* x_62; +lean_dec(x_12); +lean_dec(x_1); +x_61 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_11, x_61, x_10); +return x_62; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_63 = lean_ctor_get(x_2, 0); +lean_inc(x_63); +x_64 = lean_array_get_size(x_63); +lean_dec(x_63); +x_65 = lean_ctor_get(x_2, 1); lean_inc(x_65); -lean_dec(x_64); -x_66 = lean_ctor_get(x_63, 1); -lean_inc(x_66); -x_67 = lean_nat_dec_eq(x_66, x_62); -lean_dec(x_66); -if (x_67 == 0) +lean_inc(x_1); +x_66 = lean_apply_2(x_4, x_1, x_2); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { lean_dec(x_65); -lean_dec(x_62); -lean_dec(x_61); +lean_dec(x_64); lean_dec(x_1); -return x_63; +return x_66; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_inc(x_62); -x_68 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); -lean_dec(x_61); -x_69 = lean_ctor_get(x_68, 0); +lean_object* x_68; lean_object* x_69; uint8_t x_70; +x_68 = lean_ctor_get(x_67, 0); +lean_inc(x_68); +lean_dec(x_67); +x_69 = lean_ctor_get(x_66, 1); lean_inc(x_69); -x_70 = lean_array_get_size(x_69); +x_70 = lean_nat_dec_eq(x_69, x_65); lean_dec(x_69); -lean_inc(x_1); -x_71 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_68); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) +if (x_70 == 0) { -lean_object* x_73; lean_object* x_74; -lean_inc(x_1); -x_73 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_71); +lean_dec(x_68); +lean_dec(x_65); +lean_dec(x_64); +lean_dec(x_1); +return x_66; +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_inc(x_65); +x_71 = l_Lean_Parser_ParserState_restore(x_66, x_64, x_65); +lean_dec(x_64); +x_72 = lean_unsigned_to_nat(1024u); +x_73 = l_Lean_Parser_checkPrecFn(x_72, x_1, x_71); x_74 = lean_ctor_get(x_73, 3); lean_inc(x_74); if (lean_obj_tag(x_74) == 0) { -lean_object* x_75; lean_object* x_76; +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_75 = lean_ctor_get(x_73, 0); +lean_inc(x_75); +x_76 = lean_array_get_size(x_75); +lean_dec(x_75); lean_inc(x_1); -x_75 = l_Lean_Parser_Command_mixfixSymbol___elambda__1(x_1, x_73); -x_76 = lean_ctor_get(x_75, 3); -lean_inc(x_76); -if (lean_obj_tag(x_76) == 0) +x_77 = l_Lean_Parser_Command_mixfixKind___elambda__1(x_1, x_73); +x_78 = lean_ctor_get(x_77, 3); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_108; lean_object* x_109; -x_77 = lean_ctor_get(x_75, 0); -lean_inc(x_77); -x_78 = lean_array_get_size(x_77); -lean_dec(x_77); -x_79 = lean_ctor_get(x_75, 1); -lean_inc(x_79); +lean_object* x_79; lean_object* x_80; lean_inc(x_1); -x_108 = l_Lean_Parser_tokenFn(x_1, x_75); -x_109 = lean_ctor_get(x_108, 3); -lean_inc(x_109); -if (lean_obj_tag(x_109) == 0) +x_79 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_77); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_110; lean_object* x_111; -x_110 = lean_ctor_get(x_108, 0); -lean_inc(x_110); -x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); -lean_dec(x_110); -if (lean_obj_tag(x_111) == 2) +lean_object* x_81; lean_object* x_82; +lean_inc(x_1); +x_81 = l_Lean_Parser_Command_mixfixSymbol___elambda__1(x_1, x_79); +x_82 = lean_ctor_get(x_81, 3); +lean_inc(x_82); +if (lean_obj_tag(x_82) == 0) { -lean_object* x_112; lean_object* x_113; uint8_t x_114; -x_112 = lean_ctor_get(x_111, 1); -lean_inc(x_112); -lean_dec(x_111); -x_113 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_114 = lean_string_dec_eq(x_112, x_113); -lean_dec(x_112); -if (x_114 == 0) +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_114; lean_object* x_115; +x_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = lean_array_get_size(x_83); +lean_dec(x_83); +x_85 = lean_ctor_get(x_81, 1); +lean_inc(x_85); +lean_inc(x_1); +x_114 = l_Lean_Parser_tokenFn(x_1, x_81); +x_115 = lean_ctor_get(x_114, 3); +lean_inc(x_115); +if (lean_obj_tag(x_115) == 0) { -lean_object* x_115; lean_object* x_116; -x_115 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_79); -x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_79); -x_80 = x_116; -goto block_107; +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); +lean_dec(x_116); +if (lean_obj_tag(x_117) == 2) +{ +lean_object* x_118; lean_object* x_119; uint8_t x_120; +x_118 = lean_ctor_get(x_117, 1); +lean_inc(x_118); +lean_dec(x_117); +x_119 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_120 = lean_string_dec_eq(x_118, x_119); +lean_dec(x_118); +if (x_120 == 0) +{ +lean_object* x_121; lean_object* x_122; +x_121 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_85); +x_86 = x_122; +goto block_113; } else { -x_80 = x_108; -goto block_107; +x_86 = x_114; +goto block_113; } } else { -lean_object* x_117; lean_object* x_118; -lean_dec(x_111); -x_117 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_79); -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_117, x_79); -x_80 = x_118; -goto block_107; +lean_object* x_123; lean_object* x_124; +lean_dec(x_117); +x_123 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_85); +x_86 = x_124; +goto block_113; } } else { -lean_object* x_119; lean_object* x_120; -lean_dec(x_109); -x_119 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_79); -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_119, x_79); -x_80 = x_120; -goto block_107; +lean_object* x_125; lean_object* x_126; +lean_dec(x_115); +x_125 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_85); +x_86 = x_126; +goto block_113; } -block_107: +block_113: { -lean_object* x_81; -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) +lean_object* x_87; +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_79); -lean_dec(x_78); -x_82 = l_Lean_Parser_termParser___closed__2; -x_83 = lean_unsigned_to_nat(0u); -x_84 = l_Lean_Parser_categoryParser___elambda__1(x_82, x_83, x_1, x_80); -x_85 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_84, x_85, x_70); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_65, x_62); -lean_dec(x_62); -return x_87; -} -else -{ -lean_object* x_88; lean_object* x_89; uint8_t x_90; -x_88 = lean_ctor_get(x_81, 0); -lean_inc(x_88); -lean_dec(x_81); -x_89 = lean_ctor_get(x_80, 1); -lean_inc(x_89); -x_90 = lean_nat_dec_eq(x_89, x_79); -lean_dec(x_89); -if (x_90 == 0) -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_88); -lean_dec(x_79); -lean_dec(x_78); -lean_dec(x_1); +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_85); +lean_dec(x_84); +x_88 = l_Lean_Parser_termParser___closed__2; +x_89 = lean_unsigned_to_nat(0u); +x_90 = l_Lean_Parser_categoryParser___elambda__1(x_88, x_89, x_1, x_86); x_91 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_80, x_91, x_70); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_65, x_62); -lean_dec(x_62); +x_92 = l_Lean_Parser_ParserState_mkNode(x_90, x_91, x_76); +x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_68, x_65); +lean_dec(x_65); return x_93; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_inc(x_79); -x_94 = l_Lean_Parser_ParserState_restore(x_80, x_78, x_79); -lean_dec(x_78); +lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_94 = lean_ctor_get(x_87, 0); +lean_inc(x_94); +lean_dec(x_87); +x_95 = lean_ctor_get(x_86, 1); +lean_inc(x_95); +x_96 = lean_nat_dec_eq(x_95, x_85); +lean_dec(x_95); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_94); +lean_dec(x_85); +lean_dec(x_84); +lean_dec(x_1); +x_97 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_86, x_97, x_76); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_68, x_65); +lean_dec(x_65); +return x_99; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_inc(x_85); +x_100 = l_Lean_Parser_ParserState_restore(x_86, x_84, x_85); +lean_dec(x_84); lean_inc(x_1); -x_95 = l_Lean_Parser_darrow___elambda__1(x_1, x_94); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_88, x_79); -lean_dec(x_79); -x_97 = lean_ctor_get(x_96, 3); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) +x_101 = l_Lean_Parser_darrow___elambda__1(x_1, x_100); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_94, x_85); +lean_dec(x_85); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -x_98 = l_Lean_Parser_termParser___closed__2; -x_99 = lean_unsigned_to_nat(0u); -x_100 = l_Lean_Parser_categoryParser___elambda__1(x_98, x_99, x_1, x_96); -x_101 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_70); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_65, x_62); -lean_dec(x_62); -return x_103; +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_104 = l_Lean_Parser_termParser___closed__2; +x_105 = lean_unsigned_to_nat(0u); +x_106 = l_Lean_Parser_categoryParser___elambda__1(x_104, x_105, x_1, x_102); +x_107 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_76); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_68, x_65); +lean_dec(x_65); +return x_109; } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_97); +lean_object* x_110; lean_object* x_111; lean_object* x_112; +lean_dec(x_103); lean_dec(x_1); -x_104 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_96, x_104, x_70); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_65, x_62); -lean_dec(x_62); -return x_106; +x_110 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_111 = l_Lean_Parser_ParserState_mkNode(x_102, x_110, x_76); +x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_68, x_65); +lean_dec(x_65); +return x_112; } } } @@ -8778,40 +9587,50 @@ return x_106; } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_76); -lean_dec(x_1); -x_121 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_122 = l_Lean_Parser_ParserState_mkNode(x_75, x_121, x_70); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_65, x_62); -lean_dec(x_62); -return x_123; -} -} -else -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; -lean_dec(x_74); -lean_dec(x_1); -x_124 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_125 = l_Lean_Parser_ParserState_mkNode(x_73, x_124, x_70); -x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_65, x_62); -lean_dec(x_62); -return x_126; -} -} -else -{ lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_72); +lean_dec(x_82); lean_dec(x_1); x_127 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; -x_128 = l_Lean_Parser_ParserState_mkNode(x_71, x_127, x_70); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_65, x_62); -lean_dec(x_62); +x_128 = l_Lean_Parser_ParserState_mkNode(x_81, x_127, x_76); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_68, x_65); +lean_dec(x_65); return x_129; } } +else +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; +lean_dec(x_80); +lean_dec(x_1); +x_130 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_131 = l_Lean_Parser_ParserState_mkNode(x_79, x_130, x_76); +x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_68, x_65); +lean_dec(x_65); +return x_132; +} +} +else +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; +lean_dec(x_78); +lean_dec(x_1); +x_133 = l_Lean_Parser_Command_mixfix___elambda__1___closed__2; +x_134 = l_Lean_Parser_ParserState_mkNode(x_77, x_133, x_76); +x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_68, x_65); +lean_dec(x_65); +return x_135; +} +} +else +{ +lean_object* x_136; +lean_dec(x_74); +lean_dec(x_1); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_73, x_68, x_65); +lean_dec(x_65); +return x_136; +} +} } } } @@ -8889,16 +9708,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_mixfix___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_mixfix___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_mixfix___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_mixfix___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_mixfix___closed__6; +x_3 = l_Lean_Parser_Command_mixfix___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_mixfix___closed__8() { +lean_object* _init_l_Lean_Parser_Command_mixfix___closed__9() { _start: { lean_object* x_1; @@ -8906,12 +9735,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_mixfix___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_mixfix___closed__9() { +lean_object* _init_l_Lean_Parser_Command_mixfix___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_mixfix___closed__7; -x_2 = l_Lean_Parser_Command_mixfix___closed__8; +x_1 = l_Lean_Parser_Command_mixfix___closed__8; +x_2 = l_Lean_Parser_Command_mixfix___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8922,7 +9751,7 @@ lean_object* _init_l_Lean_Parser_Command_mixfix() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_mixfix___closed__9; +x_1 = l_Lean_Parser_Command_mixfix___closed__10; return x_1; } } @@ -9427,532 +10256,553 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_65 = lean_ctor_get(x_2, 1); -lean_inc(x_65); -lean_inc(x_1); -x_66 = l_Lean_Parser_tokenFn(x_1, x_2); -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_68; lean_object* x_69; -x_68 = lean_ctor_get(x_66, 0); -lean_inc(x_68); -x_69 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_68); -lean_dec(x_68); -if (lean_obj_tag(x_69) == 2) -{ -lean_object* x_70; lean_object* x_71; uint8_t x_72; -x_70 = lean_ctor_get(x_69, 1); -lean_inc(x_70); -lean_dec(x_69); -x_71 = l_Lean_Parser_Command_notation___elambda__1___closed__5; -x_72 = lean_string_dec_eq(x_70, x_71); -lean_dec(x_70); -if (x_72 == 0) -{ -lean_object* x_73; lean_object* x_74; -x_73 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_73, x_65); -x_8 = x_74; -goto block_64; -} -else -{ -lean_dec(x_65); -x_8 = x_66; -goto block_64; -} -} -else -{ -lean_object* x_75; lean_object* x_76; -lean_dec(x_69); -x_75 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_75, x_65); -x_8 = x_76; -goto block_64; -} -} -else -{ -lean_object* x_77; lean_object* x_78; -lean_dec(x_67); -x_77 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_77, x_65); -x_8 = x_78; -goto block_64; -} -block_64: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -lean_inc(x_1); -x_14 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_notation___elambda__1___spec__1(x_1, x_10); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_13); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_45; lean_object* x_46; -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -x_19 = lean_array_get_size(x_18); -lean_dec(x_18); -x_20 = lean_ctor_get(x_16, 1); -lean_inc(x_20); -lean_inc(x_1); -x_45 = l_Lean_Parser_tokenFn(x_1, x_16); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); -lean_dec(x_47); -if (lean_obj_tag(x_48) == 2) -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_51 = lean_string_dec_eq(x_49, x_50); -lean_dec(x_49); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_20); -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_20); -x_21 = x_53; -goto block_44; -} -else -{ -x_21 = x_45; -goto block_44; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -x_54 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_20); -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_20); -x_21 = x_55; -goto block_44; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_46); -x_56 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_20); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_20); -x_21 = x_57; -goto block_44; -} -block_44: -{ -lean_object* x_22; -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -lean_dec(x_19); -x_23 = l_Lean_Parser_termParser___closed__2; -x_24 = lean_unsigned_to_nat(0u); -x_25 = l_Lean_Parser_categoryParser___elambda__1(x_23, x_24, x_1, x_21); -x_26 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_22, 0); -lean_inc(x_28); -lean_dec(x_22); -x_29 = lean_ctor_get(x_21, 1); -lean_inc(x_29); -x_30 = lean_nat_dec_eq(x_29, x_20); -lean_dec(x_29); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_28); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_1); -x_31 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_21, x_31, x_7); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_inc(x_20); -x_33 = l_Lean_Parser_ParserState_restore(x_21, x_19, x_20); -lean_dec(x_19); -lean_inc(x_1); -x_34 = l_Lean_Parser_darrow___elambda__1(x_1, x_33); -x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_28, x_20); -lean_dec(x_20); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = l_Lean_Parser_termParser___closed__2; -x_38 = lean_unsigned_to_nat(0u); -x_39 = l_Lean_Parser_categoryParser___elambda__1(x_37, x_38, x_1, x_35); -x_40 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_7); -return x_41; -} -else -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_36); -lean_dec(x_1); -x_42 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_35, x_42, x_7); -return x_43; -} -} -} -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_17); -lean_dec(x_1); -x_58 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_16, x_58, x_7); -return x_59; -} -} -else -{ -lean_object* x_60; lean_object* x_61; -lean_dec(x_11); -lean_dec(x_1); -x_60 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_10, x_60, x_7); -return x_61; -} -} -else -{ -lean_object* x_62; lean_object* x_63; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_62 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_8, x_62, x_7); -return x_63; -} -} -} -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_79 = lean_ctor_get(x_2, 0); -lean_inc(x_79); -x_80 = lean_array_get_size(x_79); -lean_dec(x_79); -x_81 = lean_ctor_get(x_2, 1); -lean_inc(x_81); +x_68 = lean_ctor_get(x_7, 1); +lean_inc(x_68); lean_inc(x_1); -x_82 = lean_apply_2(x_4, x_1, x_2); -x_83 = lean_ctor_get(x_82, 3); -lean_inc(x_83); -if (lean_obj_tag(x_83) == 0) +x_69 = l_Lean_Parser_tokenFn(x_1, x_7); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) { -lean_dec(x_81); -lean_dec(x_80); -lean_dec(x_1); -return x_82; +lean_object* x_71; lean_object* x_72; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); +lean_dec(x_71); +if (lean_obj_tag(x_72) == 2) +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_74 = l_Lean_Parser_Command_notation___elambda__1___closed__5; +x_75 = lean_string_dec_eq(x_73, x_74); +lean_dec(x_73); +if (x_75 == 0) +{ +lean_object* x_76; lean_object* x_77; +x_76 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_68); +x_11 = x_77; +goto block_67; } else { -lean_object* x_84; lean_object* x_85; uint8_t x_86; -x_84 = lean_ctor_get(x_83, 0); +lean_dec(x_68); +x_11 = x_69; +goto block_67; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_72); +x_78 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_68); +x_11 = x_79; +goto block_67; +} +} +else +{ +lean_object* x_80; lean_object* x_81; +lean_dec(x_70); +x_80 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_68); +x_11 = x_81; +goto block_67; +} +block_67: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +lean_inc(x_1); +x_17 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_notation___elambda__1___spec__1(x_1, x_13); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_16); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_48; lean_object* x_49; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = lean_array_get_size(x_21); +lean_dec(x_21); +x_23 = lean_ctor_get(x_19, 1); +lean_inc(x_23); +lean_inc(x_1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_19); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; +x_55 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_23); +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_23); +x_24 = x_56; +goto block_47; +} +else +{ +x_24 = x_48; +goto block_47; +} +} +else +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_51); +x_57 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_23); +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_57, x_23); +x_24 = x_58; +goto block_47; +} +} +else +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_49); +x_59 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_23); +x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_59, x_23); +x_24 = x_60; +goto block_47; +} +block_47: +{ +lean_object* x_25; +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +lean_dec(x_22); +x_26 = l_Lean_Parser_termParser___closed__2; +x_27 = lean_unsigned_to_nat(0u); +x_28 = l_Lean_Parser_categoryParser___elambda__1(x_26, x_27, x_1, x_24); +x_29 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_25, 0); +lean_inc(x_31); +lean_dec(x_25); +x_32 = lean_ctor_get(x_24, 1); +lean_inc(x_32); +x_33 = lean_nat_dec_eq(x_32, x_23); +lean_dec(x_32); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_31); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_1); +x_34 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_24, x_34, x_10); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_inc(x_23); +x_36 = l_Lean_Parser_ParserState_restore(x_24, x_22, x_23); +lean_dec(x_22); +lean_inc(x_1); +x_37 = l_Lean_Parser_darrow___elambda__1(x_1, x_36); +x_38 = l_Lean_Parser_mergeOrElseErrors(x_37, x_31, x_23); +lean_dec(x_23); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_10); +return x_44; +} +else +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_39); +lean_dec(x_1); +x_45 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_38, x_45, x_10); +return x_46; +} +} +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; +lean_dec(x_20); +lean_dec(x_1); +x_61 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_19, x_61, x_10); +return x_62; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_14); +lean_dec(x_1); +x_63 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_13, x_63, x_10); +return x_64; +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_12); +lean_dec(x_1); +x_65 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_11, x_65, x_10); +return x_66; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = lean_ctor_get(x_2, 0); +lean_inc(x_82); +x_83 = lean_array_get_size(x_82); +lean_dec(x_82); +x_84 = lean_ctor_get(x_2, 1); lean_inc(x_84); -lean_dec(x_83); -x_85 = lean_ctor_get(x_82, 1); -lean_inc(x_85); -x_86 = lean_nat_dec_eq(x_85, x_81); -lean_dec(x_85); -if (x_86 == 0) +lean_inc(x_1); +x_85 = lean_apply_2(x_4, x_1, x_2); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) { lean_dec(x_84); -lean_dec(x_81); -lean_dec(x_80); +lean_dec(x_83); lean_dec(x_1); -return x_82; +return x_85; } else { -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_154; lean_object* x_155; -lean_inc(x_81); -x_87 = l_Lean_Parser_ParserState_restore(x_82, x_80, x_81); -lean_dec(x_80); -x_88 = lean_ctor_get(x_87, 0); +lean_object* x_87; lean_object* x_88; uint8_t x_89; +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +lean_dec(x_86); +x_88 = lean_ctor_get(x_85, 1); lean_inc(x_88); -x_89 = lean_array_get_size(x_88); +x_89 = lean_nat_dec_eq(x_88, x_84); lean_dec(x_88); -lean_inc(x_1); -x_154 = l_Lean_Parser_tokenFn(x_1, x_87); -x_155 = lean_ctor_get(x_154, 3); -lean_inc(x_155); -if (lean_obj_tag(x_155) == 0) +if (x_89 == 0) { -lean_object* x_156; lean_object* x_157; -x_156 = lean_ctor_get(x_154, 0); -lean_inc(x_156); -x_157 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_156); -lean_dec(x_156); -if (lean_obj_tag(x_157) == 2) -{ -lean_object* x_158; lean_object* x_159; uint8_t x_160; -x_158 = lean_ctor_get(x_157, 1); -lean_inc(x_158); -lean_dec(x_157); -x_159 = l_Lean_Parser_Command_notation___elambda__1___closed__5; -x_160 = lean_string_dec_eq(x_158, x_159); -lean_dec(x_158); -if (x_160 == 0) -{ -lean_object* x_161; lean_object* x_162; -x_161 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -lean_inc(x_81); -x_162 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_161, x_81); -x_90 = x_162; -goto block_153; +lean_dec(x_87); +lean_dec(x_84); +lean_dec(x_83); +lean_dec(x_1); +return x_85; } else { -x_90 = x_154; -goto block_153; -} -} -else -{ -lean_object* x_163; lean_object* x_164; -lean_dec(x_157); -x_163 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -lean_inc(x_81); -x_164 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_163, x_81); -x_90 = x_164; -goto block_153; -} -} -else -{ -lean_object* x_165; lean_object* x_166; -lean_dec(x_155); -x_165 = l_Lean_Parser_Command_notation___elambda__1___closed__8; -lean_inc(x_81); -x_166 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_165, x_81); -x_90 = x_166; -goto block_153; -} -block_153: -{ -lean_object* x_91; -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; -lean_inc(x_1); -x_92 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_90); +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_inc(x_84); +x_90 = l_Lean_Parser_ParserState_restore(x_85, x_83, x_84); +lean_dec(x_83); +x_91 = lean_unsigned_to_nat(1024u); +x_92 = l_Lean_Parser_checkPrecFn(x_91, x_1, x_90); x_93 = lean_ctor_get(x_92, 3); lean_inc(x_93); if (lean_obj_tag(x_93) == 0) { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_160; lean_object* x_161; lean_object* x_162; x_94 = lean_ctor_get(x_92, 0); lean_inc(x_94); x_95 = lean_array_get_size(x_94); lean_dec(x_94); +x_160 = lean_ctor_get(x_92, 1); +lean_inc(x_160); lean_inc(x_1); -x_96 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_notation___elambda__1___spec__1(x_1, x_92); -x_97 = l_Lean_nullKind; -x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_95); +x_161 = l_Lean_Parser_tokenFn(x_1, x_92); +x_162 = lean_ctor_get(x_161, 3); +lean_inc(x_162); +if (lean_obj_tag(x_162) == 0) +{ +lean_object* x_163; lean_object* x_164; +x_163 = lean_ctor_get(x_161, 0); +lean_inc(x_163); +x_164 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_163); +lean_dec(x_163); +if (lean_obj_tag(x_164) == 2) +{ +lean_object* x_165; lean_object* x_166; uint8_t x_167; +x_165 = lean_ctor_get(x_164, 1); +lean_inc(x_165); +lean_dec(x_164); +x_166 = l_Lean_Parser_Command_notation___elambda__1___closed__5; +x_167 = lean_string_dec_eq(x_165, x_166); +lean_dec(x_165); +if (x_167 == 0) +{ +lean_object* x_168; lean_object* x_169; +x_168 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_169 = l_Lean_Parser_ParserState_mkErrorsAt(x_161, x_168, x_160); +x_96 = x_169; +goto block_159; +} +else +{ +lean_dec(x_160); +x_96 = x_161; +goto block_159; +} +} +else +{ +lean_object* x_170; lean_object* x_171; +lean_dec(x_164); +x_170 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_171 = l_Lean_Parser_ParserState_mkErrorsAt(x_161, x_170, x_160); +x_96 = x_171; +goto block_159; +} +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_162); +x_172 = l_Lean_Parser_Command_notation___elambda__1___closed__8; +x_173 = l_Lean_Parser_ParserState_mkErrorsAt(x_161, x_172, x_160); +x_96 = x_173; +goto block_159; +} +block_159: +{ +lean_object* x_97; +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; +lean_inc(x_1); +x_98 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_96); x_99 = lean_ctor_get(x_98, 3); lean_inc(x_99); if (lean_obj_tag(x_99) == 0) { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_131; lean_object* x_132; +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; x_100 = lean_ctor_get(x_98, 0); lean_inc(x_100); x_101 = lean_array_get_size(x_100); lean_dec(x_100); -x_102 = lean_ctor_get(x_98, 1); -lean_inc(x_102); lean_inc(x_1); -x_131 = l_Lean_Parser_tokenFn(x_1, x_98); -x_132 = lean_ctor_get(x_131, 3); -lean_inc(x_132); -if (lean_obj_tag(x_132) == 0) +x_102 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_notation___elambda__1___spec__1(x_1, x_98); +x_103 = l_Lean_nullKind; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_101); +x_105 = lean_ctor_get(x_104, 3); +lean_inc(x_105); +if (lean_obj_tag(x_105) == 0) { -lean_object* x_133; lean_object* x_134; -x_133 = lean_ctor_get(x_131, 0); -lean_inc(x_133); -x_134 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_133); -lean_dec(x_133); -if (lean_obj_tag(x_134) == 2) +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_137; lean_object* x_138; +x_106 = lean_ctor_get(x_104, 0); +lean_inc(x_106); +x_107 = lean_array_get_size(x_106); +lean_dec(x_106); +x_108 = lean_ctor_get(x_104, 1); +lean_inc(x_108); +lean_inc(x_1); +x_137 = l_Lean_Parser_tokenFn(x_1, x_104); +x_138 = lean_ctor_get(x_137, 3); +lean_inc(x_138); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_135; lean_object* x_136; uint8_t x_137; -x_135 = lean_ctor_get(x_134, 1); -lean_inc(x_135); -lean_dec(x_134); -x_136 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_137 = lean_string_dec_eq(x_135, x_136); -lean_dec(x_135); -if (x_137 == 0) +lean_object* x_139; lean_object* x_140; +x_139 = lean_ctor_get(x_137, 0); +lean_inc(x_139); +x_140 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_139); +lean_dec(x_139); +if (lean_obj_tag(x_140) == 2) { -lean_object* x_138; lean_object* x_139; -x_138 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_102); -x_139 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_138, x_102); -x_103 = x_139; -goto block_130; +lean_object* x_141; lean_object* x_142; uint8_t x_143; +x_141 = lean_ctor_get(x_140, 1); +lean_inc(x_141); +lean_dec(x_140); +x_142 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_143 = lean_string_dec_eq(x_141, x_142); +lean_dec(x_141); +if (x_143 == 0) +{ +lean_object* x_144; lean_object* x_145; +x_144 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_108); +x_145 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_144, x_108); +x_109 = x_145; +goto block_136; } else { -x_103 = x_131; -goto block_130; +x_109 = x_137; +goto block_136; } } else { -lean_object* x_140; lean_object* x_141; -lean_dec(x_134); -x_140 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_102); -x_141 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_140, x_102); -x_103 = x_141; -goto block_130; +lean_object* x_146; lean_object* x_147; +lean_dec(x_140); +x_146 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_108); +x_147 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_146, x_108); +x_109 = x_147; +goto block_136; } } else { -lean_object* x_142; lean_object* x_143; -lean_dec(x_132); -x_142 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_102); -x_143 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_142, x_102); -x_103 = x_143; -goto block_130; +lean_object* x_148; lean_object* x_149; +lean_dec(x_138); +x_148 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_108); +x_149 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_148, x_108); +x_109 = x_149; +goto block_136; } -block_130: +block_136: { -lean_object* x_104; -x_104 = lean_ctor_get(x_103, 3); -lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) +lean_object* x_110; +x_110 = lean_ctor_get(x_109, 3); +lean_inc(x_110); +if (lean_obj_tag(x_110) == 0) { -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_102); -lean_dec(x_101); -x_105 = l_Lean_Parser_termParser___closed__2; -x_106 = lean_unsigned_to_nat(0u); -x_107 = l_Lean_Parser_categoryParser___elambda__1(x_105, x_106, x_1, x_103); -x_108 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_109 = l_Lean_Parser_ParserState_mkNode(x_107, x_108, x_89); -x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_84, x_81); -lean_dec(x_81); -return x_110; -} -else -{ -lean_object* x_111; lean_object* x_112; uint8_t x_113; -x_111 = lean_ctor_get(x_104, 0); -lean_inc(x_111); -lean_dec(x_104); -x_112 = lean_ctor_get(x_103, 1); -lean_inc(x_112); -x_113 = lean_nat_dec_eq(x_112, x_102); -lean_dec(x_112); -if (x_113 == 0) -{ -lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_111); -lean_dec(x_102); -lean_dec(x_101); -lean_dec(x_1); +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +lean_dec(x_108); +lean_dec(x_107); +x_111 = l_Lean_Parser_termParser___closed__2; +x_112 = lean_unsigned_to_nat(0u); +x_113 = l_Lean_Parser_categoryParser___elambda__1(x_111, x_112, x_1, x_109); x_114 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_115 = l_Lean_Parser_ParserState_mkNode(x_103, x_114, x_89); -x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_84, x_81); -lean_dec(x_81); +x_115 = l_Lean_Parser_ParserState_mkNode(x_113, x_114, x_95); +x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_87, x_84); +lean_dec(x_84); return x_116; } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_inc(x_102); -x_117 = l_Lean_Parser_ParserState_restore(x_103, x_101, x_102); -lean_dec(x_101); +lean_object* x_117; lean_object* x_118; uint8_t x_119; +x_117 = lean_ctor_get(x_110, 0); +lean_inc(x_117); +lean_dec(x_110); +x_118 = lean_ctor_get(x_109, 1); +lean_inc(x_118); +x_119 = lean_nat_dec_eq(x_118, x_108); +lean_dec(x_118); +if (x_119 == 0) +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; +lean_dec(x_117); +lean_dec(x_108); +lean_dec(x_107); +lean_dec(x_1); +x_120 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_121 = l_Lean_Parser_ParserState_mkNode(x_109, x_120, x_95); +x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_87, x_84); +lean_dec(x_84); +return x_122; +} +else +{ +lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_inc(x_108); +x_123 = l_Lean_Parser_ParserState_restore(x_109, x_107, x_108); +lean_dec(x_107); lean_inc(x_1); -x_118 = l_Lean_Parser_darrow___elambda__1(x_1, x_117); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_111, x_102); -lean_dec(x_102); -x_120 = lean_ctor_get(x_119, 3); -lean_inc(x_120); -if (lean_obj_tag(x_120) == 0) +x_124 = l_Lean_Parser_darrow___elambda__1(x_1, x_123); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_117, x_108); +lean_dec(x_108); +x_126 = lean_ctor_get(x_125, 3); +lean_inc(x_126); +if (lean_obj_tag(x_126) == 0) { -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; -x_121 = l_Lean_Parser_termParser___closed__2; -x_122 = lean_unsigned_to_nat(0u); -x_123 = l_Lean_Parser_categoryParser___elambda__1(x_121, x_122, x_1, x_119); -x_124 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_125 = l_Lean_Parser_ParserState_mkNode(x_123, x_124, x_89); -x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_84, x_81); -lean_dec(x_81); -return x_126; +lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_127 = l_Lean_Parser_termParser___closed__2; +x_128 = lean_unsigned_to_nat(0u); +x_129 = l_Lean_Parser_categoryParser___elambda__1(x_127, x_128, x_1, x_125); +x_130 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_95); +x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_87, x_84); +lean_dec(x_84); +return x_132; } else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_120); +lean_object* x_133; lean_object* x_134; lean_object* x_135; +lean_dec(x_126); lean_dec(x_1); -x_127 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_128 = l_Lean_Parser_ParserState_mkNode(x_119, x_127, x_89); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_84, x_81); -lean_dec(x_81); -return x_129; +x_133 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_134 = l_Lean_Parser_ParserState_mkNode(x_125, x_133, x_95); +x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_87, x_84); +lean_dec(x_84); +return x_135; } } } @@ -9960,40 +10810,50 @@ return x_129; } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; -lean_dec(x_99); -lean_dec(x_1); -x_144 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_145 = l_Lean_Parser_ParserState_mkNode(x_98, x_144, x_89); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_84, x_81); -lean_dec(x_81); -return x_146; -} -} -else -{ -lean_object* x_147; lean_object* x_148; lean_object* x_149; -lean_dec(x_93); -lean_dec(x_1); -x_147 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_148 = l_Lean_Parser_ParserState_mkNode(x_92, x_147, x_89); -x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_84, x_81); -lean_dec(x_81); -return x_149; -} -} -else -{ lean_object* x_150; lean_object* x_151; lean_object* x_152; -lean_dec(x_91); +lean_dec(x_105); lean_dec(x_1); x_150 = l_Lean_Parser_Command_notation___elambda__1___closed__2; -x_151 = l_Lean_Parser_ParserState_mkNode(x_90, x_150, x_89); -x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_84, x_81); -lean_dec(x_81); +x_151 = l_Lean_Parser_ParserState_mkNode(x_104, x_150, x_95); +x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_87, x_84); +lean_dec(x_84); return x_152; } } +else +{ +lean_object* x_153; lean_object* x_154; lean_object* x_155; +lean_dec(x_99); +lean_dec(x_1); +x_153 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_154 = l_Lean_Parser_ParserState_mkNode(x_98, x_153, x_95); +x_155 = l_Lean_Parser_mergeOrElseErrors(x_154, x_87, x_84); +lean_dec(x_84); +return x_155; +} +} +else +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; +lean_dec(x_97); +lean_dec(x_1); +x_156 = l_Lean_Parser_Command_notation___elambda__1___closed__2; +x_157 = l_Lean_Parser_ParserState_mkNode(x_96, x_156, x_95); +x_158 = l_Lean_Parser_mergeOrElseErrors(x_157, x_87, x_84); +lean_dec(x_84); +return x_158; +} +} +} +else +{ +lean_object* x_174; +lean_dec(x_93); +lean_dec(x_1); +x_174 = l_Lean_Parser_mergeOrElseErrors(x_92, x_87, x_84); +lean_dec(x_84); +return x_174; +} } } } @@ -10088,16 +10948,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_notation___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_notation___closed__8; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_notation___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_notation___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_notation___closed__8; +x_3 = l_Lean_Parser_Command_notation___closed__9; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_notation___closed__10() { +lean_object* _init_l_Lean_Parser_Command_notation___closed__11() { _start: { lean_object* x_1; @@ -10105,12 +10975,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_notation___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_notation___closed__11() { +lean_object* _init_l_Lean_Parser_Command_notation___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_notation___closed__9; -x_2 = l_Lean_Parser_Command_notation___closed__10; +x_1 = l_Lean_Parser_Command_notation___closed__10; +x_2 = l_Lean_Parser_Command_notation___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10121,7 +10991,7 @@ lean_object* _init_l_Lean_Parser_Command_notation() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_notation___closed__11; +x_1 = l_Lean_Parser_Command_notation___closed__12; return x_1; } } @@ -10232,264 +11102,297 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); -x_8 = lean_ctor_get(x_2, 0); -lean_inc(x_8); -x_9 = lean_array_get_size(x_8); -lean_dec(x_8); -x_22 = lean_ctor_get(x_2, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_2); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) +x_8 = lean_unsigned_to_nat(1024u); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_10 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_10 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_10 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_10 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_11; -x_11 = lean_ctor_get(x_10, 3); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_apply_2(x_4, x_1, x_12); -x_15 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_9); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_4); -lean_dec(x_1); -x_17 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_9); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; +x_12 = lean_array_get_size(x_11); lean_dec(x_11); -lean_dec(x_4); -lean_dec(x_1); -x_19 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_9); -return x_20; -} -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); -lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); +x_25 = lean_ctor_get(x_9, 1); +lean_inc(x_25); lean_inc(x_1); -x_39 = lean_apply_2(x_6, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) +x_26 = l_Lean_Parser_tokenFn(x_1, x_9); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) { -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_4); -lean_dec(x_1); -return x_39; +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_28); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 2) +{ +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; +x_32 = lean_string_dec_eq(x_30, x_31); +lean_dec(x_30); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_33, x_25); +x_13 = x_34; +goto block_24; } else { -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_25); +x_13 = x_26; +goto block_24; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_29); +x_35 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_35, x_25); +x_13 = x_36; +goto block_24; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_27); +x_37 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_37, x_25); +x_13 = x_38; +goto block_24; +} +block_24: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_apply_2(x_4, x_1, x_15); +x_18 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_12); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_4); +lean_dec(x_1); +x_20 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_12); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +lean_dec(x_4); +lean_dec(x_1); +x_22 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_12); +return x_23; +} +} +} +else +{ +lean_dec(x_10); +lean_dec(x_4); +lean_dec(x_1); +return x_9; +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_2, 0); +lean_inc(x_39); +x_40 = lean_array_get_size(x_39); +lean_dec(x_39); +x_41 = lean_ctor_get(x_2, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) +lean_inc(x_1); +x_42 = lean_apply_2(x_6, x_1, x_2); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { lean_dec(x_41); -lean_dec(x_38); -lean_dec(x_37); +lean_dec(x_40); lean_dec(x_4); lean_dec(x_1); -return x_39; +return x_42; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_62; lean_object* x_63; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = lean_ctor_get(x_44, 0); +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +lean_dec(x_43); +x_45 = lean_ctor_get(x_42, 1); lean_inc(x_45); -x_46 = lean_array_get_size(x_45); +x_46 = lean_nat_dec_eq(x_45, x_41); lean_dec(x_45); -lean_inc(x_1); -x_62 = l_Lean_Parser_tokenFn(x_1, x_44); -x_63 = lean_ctor_get(x_62, 3); -lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) +if (x_46 == 0) { -lean_object* x_64; lean_object* x_65; -x_64 = lean_ctor_get(x_62, 0); -lean_inc(x_64); -x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); -lean_dec(x_64); -if (lean_obj_tag(x_65) == 2) -{ -lean_object* x_66; lean_object* x_67; uint8_t x_68; -x_66 = lean_ctor_get(x_65, 1); -lean_inc(x_66); -lean_dec(x_65); -x_67 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; -x_68 = lean_string_dec_eq(x_66, x_67); -lean_dec(x_66); -if (x_68 == 0) -{ -lean_object* x_69; lean_object* x_70; -x_69 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_38); -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_38); -x_47 = x_70; -goto block_61; +lean_dec(x_44); +lean_dec(x_41); +lean_dec(x_40); +lean_dec(x_4); +lean_dec(x_1); +return x_42; } else { -x_47 = x_62; -goto block_61; -} -} -else -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_65); -x_71 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_38); -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_38); -x_47 = x_72; -goto block_61; -} -} -else -{ -lean_object* x_73; lean_object* x_74; -lean_dec(x_63); -x_73 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; -lean_inc(x_38); -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_38); -x_47 = x_74; -goto block_61; -} -block_61: -{ -lean_object* x_48; -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; -lean_inc(x_1); -x_49 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_47); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_inc(x_41); +x_47 = l_Lean_Parser_ParserState_restore(x_42, x_40, x_41); +lean_dec(x_40); +x_48 = lean_unsigned_to_nat(1024u); +x_49 = l_Lean_Parser_checkPrecFn(x_48, x_1, x_47); x_50 = lean_ctor_get(x_49, 3); lean_inc(x_50); if (lean_obj_tag(x_50) == 0) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_apply_2(x_4, x_1, x_49); -x_52 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_46); -x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_41, x_38); -lean_dec(x_38); -return x_54; +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_51 = lean_ctor_get(x_49, 0); +lean_inc(x_51); +x_52 = lean_array_get_size(x_51); +lean_dec(x_51); +x_68 = lean_ctor_get(x_49, 1); +lean_inc(x_68); +lean_inc(x_1); +x_69 = l_Lean_Parser_tokenFn(x_1, x_49); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); +lean_dec(x_71); +if (lean_obj_tag(x_72) == 2) +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_74 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__5; +x_75 = lean_string_dec_eq(x_73, x_74); +lean_dec(x_73); +if (x_75 == 0) +{ +lean_object* x_76; lean_object* x_77; +x_76 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_68); +x_53 = x_77; +goto block_67; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_68); +x_53 = x_69; +goto block_67; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_72); +x_78 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_68); +x_53 = x_79; +goto block_67; +} +} +else +{ +lean_object* x_80; lean_object* x_81; +lean_dec(x_70); +x_80 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__8; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_68); +x_53 = x_81; +goto block_67; +} +block_67: +{ +lean_object* x_54; +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; +lean_inc(x_1); +x_55 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_53); +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_57 = lean_apply_2(x_4, x_1, x_55); +x_58 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_59 = l_Lean_Parser_ParserState_mkNode(x_57, x_58, x_52); +x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_44, x_41); +lean_dec(x_41); +return x_60; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_56); +lean_dec(x_4); +lean_dec(x_1); +x_61 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_55, x_61, x_52); +x_63 = l_Lean_Parser_mergeOrElseErrors(x_62, x_44, x_41); +lean_dec(x_41); +return x_63; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +lean_dec(x_54); +lean_dec(x_4); +lean_dec(x_1); +x_64 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; +x_65 = l_Lean_Parser_ParserState_mkNode(x_53, x_64, x_52); +x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_44, x_41); +lean_dec(x_41); +return x_66; +} +} +} +else +{ +lean_object* x_82; lean_dec(x_50); lean_dec(x_4); lean_dec(x_1); -x_55 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_56 = l_Lean_Parser_ParserState_mkNode(x_49, x_55, x_46); -x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_41, x_38); -lean_dec(x_38); -return x_57; -} -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -lean_dec(x_48); -lean_dec(x_4); -lean_dec(x_1); -x_58 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__2; -x_59 = l_Lean_Parser_ParserState_mkNode(x_47, x_58, x_46); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_41, x_38); -lean_dec(x_38); -return x_60; -} +x_82 = l_Lean_Parser_mergeOrElseErrors(x_49, x_44, x_41); +lean_dec(x_41); +return x_82; } } } @@ -10542,16 +11445,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_macro__rules___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_macro__rules___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_macro__rules___closed__4; +x_3 = l_Lean_Parser_Command_macro__rules___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__6() { +lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__7() { _start: { lean_object* x_1; @@ -10559,12 +11472,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_macro__rules___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__7() { +lean_object* _init_l_Lean_Parser_Command_macro__rules___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_macro__rules___closed__5; -x_2 = l_Lean_Parser_Command_macro__rules___closed__6; +x_1 = l_Lean_Parser_Command_macro__rules___closed__6; +x_2 = l_Lean_Parser_Command_macro__rules___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10575,7 +11488,7 @@ lean_object* _init_l_Lean_Parser_Command_macro__rules() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_macro__rules___closed__7; +x_1 = l_Lean_Parser_Command_macro__rules___closed__8; return x_1; } } @@ -10683,521 +11596,552 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_36; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_60 = lean_ctor_get(x_2, 1); -lean_inc(x_60); -lean_inc(x_1); -x_61 = l_Lean_Parser_tokenFn(x_1, x_2); -x_62 = lean_ctor_get(x_61, 3); -lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_63; lean_object* x_64; -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_63); -lean_dec(x_63); -if (lean_obj_tag(x_64) == 2) -{ -lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_65 = lean_ctor_get(x_64, 1); -lean_inc(x_65); -lean_dec(x_64); -x_66 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; -x_67 = lean_string_dec_eq(x_65, x_66); -lean_dec(x_65); -if (x_67 == 0) -{ -lean_object* x_68; lean_object* x_69; -x_68 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_68, x_60); -x_36 = x_69; -goto block_59; -} -else -{ -lean_dec(x_60); -x_36 = x_61; -goto block_59; -} -} -else -{ -lean_object* x_70; lean_object* x_71; -lean_dec(x_64); -x_70 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_70, x_60); -x_36 = x_71; -goto block_59; -} -} -else -{ -lean_object* x_72; lean_object* x_73; -lean_dec(x_62); -x_72 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_61, x_72, x_60); -x_36 = x_73; -goto block_59; -} -block_35: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_39; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_63 = lean_ctor_get(x_7, 1); +lean_inc(x_63); lean_inc(x_1); -x_11 = l_Lean_Parser_tokenFn(x_1, x_8); +x_64 = l_Lean_Parser_tokenFn(x_1, x_7); +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = lean_ctor_get(x_64, 0); +lean_inc(x_66); +x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_66); +if (lean_obj_tag(x_67) == 2) +{ +lean_object* x_68; lean_object* x_69; uint8_t x_70; +x_68 = lean_ctor_get(x_67, 1); +lean_inc(x_68); +lean_dec(x_67); +x_69 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; +x_70 = lean_string_dec_eq(x_68, x_69); +lean_dec(x_68); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; +x_71 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); +x_39 = x_72; +goto block_62; +} +else +{ +lean_dec(x_63); +x_39 = x_64; +goto block_62; +} +} +else +{ +lean_object* x_73; lean_object* x_74; +lean_dec(x_67); +x_73 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); +x_39 = x_74; +goto block_62; +} +} +else +{ +lean_object* x_75; lean_object* x_76; +lean_dec(x_65); +x_75 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); +x_39 = x_76; +goto block_62; +} +block_38: +{ +lean_object* x_12; x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_17 = lean_string_dec_eq(x_15, x_16); -lean_dec(x_15); -if (x_17 == 0) +if (lean_obj_tag(x_15) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_dec(x_1); -x_18 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -x_20 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_10); -x_22 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_21 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); x_23 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); return x_24; } +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_13); +x_25 = l_Lean_Parser_ident___elambda__1(x_1, x_14); +x_26 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_14); +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_17); lean_dec(x_1); -x_25 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_25, x_10); -x_27 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_7); -return x_28; +x_28 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_28, x_13); +x_30 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; } } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_15); +lean_dec(x_1); +x_32 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_32, x_13); +x_34 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_dec(x_12); lean_dec(x_1); -x_29 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_29, x_10); -x_31 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_7); -return x_32; +x_36 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_37 = l_Lean_Parser_ParserState_mkNode(x_11, x_36, x_10); +return x_37; } } -else +block_62: { -lean_object* x_33; lean_object* x_34; -lean_dec(x_9); -lean_dec(x_1); -x_33 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_34 = l_Lean_Parser_ParserState_mkNode(x_8, x_33, x_7); -return x_34; -} -} -block_59: +lean_object* x_40; +x_40 = lean_ctor_get(x_39, 3); +lean_inc(x_40); +if (lean_obj_tag(x_40) == 0) { -lean_object* x_37; -x_37 = lean_ctor_get(x_36, 3); -lean_inc(x_37); -if (lean_obj_tag(x_37) == 0) -{ -lean_object* x_38; lean_object* x_39; +lean_object* x_41; lean_object* x_42; lean_inc(x_1); -x_38 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_36); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) -{ -lean_object* x_40; lean_object* x_41; -lean_inc(x_1); -x_40 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_38); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_42 = lean_ctor_get(x_40, 0); +x_41 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_39); +x_42 = lean_ctor_get(x_41, 3); lean_inc(x_42); -x_43 = lean_array_get_size(x_42); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_inc(x_1); +x_43 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_48 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_49 = l_Lean_Parser_categoryParser___elambda__1(x_47, x_48, x_1, x_43); +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_inc(x_1); +x_51 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_49); +x_52 = l_Lean_nullKind; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_46); +x_11 = x_53; +goto block_38; +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_50); +x_54 = l_Lean_nullKind; +x_55 = l_Lean_Parser_ParserState_mkNode(x_49, x_54, x_46); +x_11 = x_55; +goto block_38; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_44); +lean_dec(x_1); +x_56 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_57 = l_Lean_Parser_ParserState_mkNode(x_43, x_56, x_10); +return x_57; +} +} +else +{ +lean_object* x_58; lean_object* x_59; lean_dec(x_42); -x_44 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_45 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_40); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_inc(x_1); -x_48 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_46); -x_49 = l_Lean_nullKind; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_43); -x_8 = x_50; -goto block_35; -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_47); -x_51 = l_Lean_nullKind; -x_52 = l_Lean_Parser_ParserState_mkNode(x_46, x_51, x_43); -x_8 = x_52; -goto block_35; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_41); lean_dec(x_1); -x_53 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_54 = l_Lean_Parser_ParserState_mkNode(x_40, x_53, x_7); -return x_54; +x_58 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_59 = l_Lean_Parser_ParserState_mkNode(x_41, x_58, x_10); +return x_59; } } else { -lean_object* x_55; lean_object* x_56; -lean_dec(x_39); +lean_object* x_60; lean_object* x_61; +lean_dec(x_40); lean_dec(x_1); -x_55 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_56 = l_Lean_Parser_ParserState_mkNode(x_38, x_55, x_7); -return x_56; +x_60 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_61 = l_Lean_Parser_ParserState_mkNode(x_39, x_60, x_10); +return x_61; +} } } else { -lean_object* x_57; lean_object* x_58; -lean_dec(x_37); +lean_dec(x_8); lean_dec(x_1); -x_57 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_58 = l_Lean_Parser_ParserState_mkNode(x_36, x_57, x_7); -return x_58; -} +return x_7; } } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_74 = lean_ctor_get(x_2, 0); -lean_inc(x_74); -x_75 = lean_array_get_size(x_74); -lean_dec(x_74); -x_76 = lean_ctor_get(x_2, 1); -lean_inc(x_76); -lean_inc(x_1); -x_77 = lean_apply_2(x_4, x_1, x_2); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) -{ -lean_dec(x_76); -lean_dec(x_75); -lean_dec(x_1); -return x_77; -} -else -{ -lean_object* x_79; lean_object* x_80; uint8_t x_81; -x_79 = lean_ctor_get(x_78, 0); +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_77 = lean_ctor_get(x_2, 0); +lean_inc(x_77); +x_78 = lean_array_get_size(x_77); +lean_dec(x_77); +x_79 = lean_ctor_get(x_2, 1); lean_inc(x_79); -lean_dec(x_78); -x_80 = lean_ctor_get(x_77, 1); -lean_inc(x_80); -x_81 = lean_nat_dec_eq(x_80, x_76); -lean_dec(x_80); -if (x_81 == 0) +lean_inc(x_1); +x_80 = lean_apply_2(x_4, x_1, x_2); +x_81 = lean_ctor_get(x_80, 3); +lean_inc(x_81); +if (lean_obj_tag(x_81) == 0) { lean_dec(x_79); -lean_dec(x_76); -lean_dec(x_75); +lean_dec(x_78); lean_dec(x_1); -return x_77; +return x_80; } else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_118; lean_object* x_145; lean_object* x_146; -lean_inc(x_76); -x_82 = l_Lean_Parser_ParserState_restore(x_77, x_75, x_76); -lean_dec(x_75); -x_83 = lean_ctor_get(x_82, 0); +lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +lean_dec(x_81); +x_83 = lean_ctor_get(x_80, 1); lean_inc(x_83); -x_84 = lean_array_get_size(x_83); +x_84 = lean_nat_dec_eq(x_83, x_79); lean_dec(x_83); +if (x_84 == 0) +{ +lean_dec(x_82); +lean_dec(x_79); +lean_dec(x_78); +lean_dec(x_1); +return x_80; +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_inc(x_79); +x_85 = l_Lean_Parser_ParserState_restore(x_80, x_78, x_79); +lean_dec(x_78); +x_86 = lean_unsigned_to_nat(1024u); +x_87 = l_Lean_Parser_checkPrecFn(x_86, x_1, x_85); +x_88 = lean_ctor_get(x_87, 3); +lean_inc(x_88); +if (lean_obj_tag(x_88) == 0) +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_124; lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_89 = lean_ctor_get(x_87, 0); +lean_inc(x_89); +x_90 = lean_array_get_size(x_89); +lean_dec(x_89); +x_151 = lean_ctor_get(x_87, 1); +lean_inc(x_151); lean_inc(x_1); -x_145 = l_Lean_Parser_tokenFn(x_1, x_82); -x_146 = lean_ctor_get(x_145, 3); -lean_inc(x_146); -if (lean_obj_tag(x_146) == 0) -{ -lean_object* x_147; lean_object* x_148; -x_147 = lean_ctor_get(x_145, 0); -lean_inc(x_147); -x_148 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_147); -lean_dec(x_147); -if (lean_obj_tag(x_148) == 2) -{ -lean_object* x_149; lean_object* x_150; uint8_t x_151; -x_149 = lean_ctor_get(x_148, 1); -lean_inc(x_149); -lean_dec(x_148); -x_150 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; -x_151 = lean_string_dec_eq(x_149, x_150); -lean_dec(x_149); -if (x_151 == 0) -{ -lean_object* x_152; lean_object* x_153; -x_152 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -lean_inc(x_76); -x_153 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_152, x_76); -x_118 = x_153; -goto block_144; -} -else -{ -x_118 = x_145; -goto block_144; -} -} -else +x_152 = l_Lean_Parser_tokenFn(x_1, x_87); +x_153 = lean_ctor_get(x_152, 3); +lean_inc(x_153); +if (lean_obj_tag(x_153) == 0) { lean_object* x_154; lean_object* x_155; -lean_dec(x_148); -x_154 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -lean_inc(x_76); -x_155 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_154, x_76); -x_118 = x_155; -goto block_144; +x_154 = lean_ctor_get(x_152, 0); +lean_inc(x_154); +x_155 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_154); +lean_dec(x_154); +if (lean_obj_tag(x_155) == 2) +{ +lean_object* x_156; lean_object* x_157; uint8_t x_158; +x_156 = lean_ctor_get(x_155, 1); +lean_inc(x_156); +lean_dec(x_155); +x_157 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; +x_158 = lean_string_dec_eq(x_156, x_157); +lean_dec(x_156); +if (x_158 == 0) +{ +lean_object* x_159; lean_object* x_160; +x_159 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_160 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_159, x_151); +x_124 = x_160; +goto block_150; +} +else +{ +lean_dec(x_151); +x_124 = x_152; +goto block_150; } } else { -lean_object* x_156; lean_object* x_157; -lean_dec(x_146); -x_156 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; -lean_inc(x_76); -x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_156, x_76); -x_118 = x_157; -goto block_144; +lean_object* x_161; lean_object* x_162; +lean_dec(x_155); +x_161 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_162 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_161, x_151); +x_124 = x_162; +goto block_150; } -block_117: +} +else { -lean_object* x_86; -x_86 = lean_ctor_get(x_85, 3); -lean_inc(x_86); -if (lean_obj_tag(x_86) == 0) +lean_object* x_163; lean_object* x_164; +lean_dec(x_153); +x_163 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +x_164 = l_Lean_Parser_ParserState_mkErrorsAt(x_152, x_163, x_151); +x_124 = x_164; +goto block_150; +} +block_123: { -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_85, 1); -lean_inc(x_87); -lean_inc(x_1); -x_88 = l_Lean_Parser_tokenFn(x_1, x_85); -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) -{ -lean_object* x_90; lean_object* x_91; -x_90 = lean_ctor_get(x_88, 0); -lean_inc(x_90); -x_91 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_90); -lean_dec(x_90); -if (lean_obj_tag(x_91) == 2) -{ -lean_object* x_92; lean_object* x_93; uint8_t x_94; -x_92 = lean_ctor_get(x_91, 1); +lean_object* x_92; +x_92 = lean_ctor_get(x_91, 3); lean_inc(x_92); -lean_dec(x_91); -x_93 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_94 = lean_string_dec_eq(x_92, x_93); +if (lean_obj_tag(x_92) == 0) +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_93 = lean_ctor_get(x_91, 1); +lean_inc(x_93); +lean_inc(x_1); +x_94 = l_Lean_Parser_tokenFn(x_1, x_91); +x_95 = lean_ctor_get(x_94, 3); +lean_inc(x_95); +if (lean_obj_tag(x_95) == 0) +{ +lean_object* x_96; lean_object* x_97; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +x_97 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_96); +lean_dec(x_96); +if (lean_obj_tag(x_97) == 2) +{ +lean_object* x_98; lean_object* x_99; uint8_t x_100; +x_98 = lean_ctor_get(x_97, 1); +lean_inc(x_98); +lean_dec(x_97); +x_99 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_100 = lean_string_dec_eq(x_98, x_99); +lean_dec(x_98); +if (x_100 == 0) +{ +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_1); +x_101 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_101, x_93); +x_103 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_90); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_82, x_79); +lean_dec(x_79); +return x_105; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_93); +x_106 = l_Lean_Parser_ident___elambda__1(x_1, x_94); +x_107 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_90); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_82, x_79); +lean_dec(x_79); +return x_109; +} +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_97); +lean_dec(x_1); +x_110 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_110, x_93); +x_112 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_90); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_82, x_79); +lean_dec(x_79); +return x_114; +} +} +else +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_95); +lean_dec(x_1); +x_115 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_115, x_93); +x_117 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_118 = l_Lean_Parser_ParserState_mkNode(x_116, x_117, x_90); +x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_82, x_79); +lean_dec(x_79); +return x_119; +} +} +else +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_dec(x_92); -if (x_94 == 0) -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_dec(x_1); -x_95 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_95, x_87); -x_97 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_84); -x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_79, x_76); -lean_dec(x_76); -return x_99; +x_120 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_121 = l_Lean_Parser_ParserState_mkNode(x_91, x_120, x_90); +x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_82, x_79); +lean_dec(x_79); +return x_122; } -else +} +block_150: { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_87); -x_100 = l_Lean_Parser_ident___elambda__1(x_1, x_88); -x_101 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_84); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_79, x_76); -lean_dec(x_76); -return x_103; -} -} -else +lean_object* x_125; +x_125 = lean_ctor_get(x_124, 3); +lean_inc(x_125); +if (lean_obj_tag(x_125) == 0) { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_91); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_105 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_104, x_87); -x_106 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_107 = l_Lean_Parser_ParserState_mkNode(x_105, x_106, x_84); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_79, x_76); -lean_dec(x_76); -return x_108; -} -} -else -{ -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -lean_dec(x_89); -lean_dec(x_1); -x_109 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_109, x_87); -x_111 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_112 = l_Lean_Parser_ParserState_mkNode(x_110, x_111, x_84); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_79, x_76); -lean_dec(x_76); -return x_113; -} -} -else -{ -lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_86); -lean_dec(x_1); -x_114 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_115 = l_Lean_Parser_ParserState_mkNode(x_85, x_114, x_84); -x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_79, x_76); -lean_dec(x_76); -return x_116; -} -} -block_144: -{ -lean_object* x_119; -x_119 = lean_ctor_get(x_118, 3); -lean_inc(x_119); -if (lean_obj_tag(x_119) == 0) -{ -lean_object* x_120; lean_object* x_121; +lean_object* x_126; lean_object* x_127; lean_inc(x_1); -x_120 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_118); -x_121 = lean_ctor_get(x_120, 3); -lean_inc(x_121); -if (lean_obj_tag(x_121) == 0) +x_126 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_124); +x_127 = lean_ctor_get(x_126, 3); +lean_inc(x_127); +if (lean_obj_tag(x_127) == 0) { -lean_object* x_122; lean_object* x_123; +lean_object* x_128; lean_object* x_129; lean_inc(x_1); -x_122 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_120); -x_123 = lean_ctor_get(x_122, 3); -lean_inc(x_123); -if (lean_obj_tag(x_123) == 0) -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_124 = lean_ctor_get(x_122, 0); -lean_inc(x_124); -x_125 = lean_array_get_size(x_124); -lean_dec(x_124); -x_126 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_127 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_128 = l_Lean_Parser_categoryParser___elambda__1(x_126, x_127, x_1, x_122); +x_128 = l_Lean_Parser_Command_optKind___elambda__1(x_1, x_126); x_129 = lean_ctor_get(x_128, 3); lean_inc(x_129); if (lean_obj_tag(x_129) == 0) { -lean_object* x_130; lean_object* x_131; lean_object* x_132; +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; +x_130 = lean_ctor_get(x_128, 0); +lean_inc(x_130); +x_131 = lean_array_get_size(x_130); +lean_dec(x_130); +x_132 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_133 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_130 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_128); -x_131 = l_Lean_nullKind; -x_132 = l_Lean_Parser_ParserState_mkNode(x_130, x_131, x_125); -x_85 = x_132; -goto block_117; +x_134 = l_Lean_Parser_categoryParser___elambda__1(x_132, x_133, x_1, x_128); +x_135 = lean_ctor_get(x_134, 3); +lean_inc(x_135); +if (lean_obj_tag(x_135) == 0) +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_inc(x_1); +x_136 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_1, x_134); +x_137 = l_Lean_nullKind; +x_138 = l_Lean_Parser_ParserState_mkNode(x_136, x_137, x_131); +x_91 = x_138; +goto block_123; } else { -lean_object* x_133; lean_object* x_134; -lean_dec(x_129); -x_133 = l_Lean_nullKind; -x_134 = l_Lean_Parser_ParserState_mkNode(x_128, x_133, x_125); -x_85 = x_134; -goto block_117; -} -} -else -{ -lean_object* x_135; lean_object* x_136; lean_object* x_137; -lean_dec(x_123); -lean_dec(x_1); -x_135 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_136 = l_Lean_Parser_ParserState_mkNode(x_122, x_135, x_84); -x_137 = l_Lean_Parser_mergeOrElseErrors(x_136, x_79, x_76); -lean_dec(x_76); -return x_137; -} -} -else -{ -lean_object* x_138; lean_object* x_139; lean_object* x_140; -lean_dec(x_121); -lean_dec(x_1); -x_138 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_139 = l_Lean_Parser_ParserState_mkNode(x_120, x_138, x_84); -x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_79, x_76); -lean_dec(x_76); -return x_140; +lean_object* x_139; lean_object* x_140; +lean_dec(x_135); +x_139 = l_Lean_nullKind; +x_140 = l_Lean_Parser_ParserState_mkNode(x_134, x_139, x_131); +x_91 = x_140; +goto block_123; } } else { lean_object* x_141; lean_object* x_142; lean_object* x_143; -lean_dec(x_119); +lean_dec(x_129); lean_dec(x_1); x_141 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; -x_142 = l_Lean_Parser_ParserState_mkNode(x_118, x_141, x_84); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_79, x_76); -lean_dec(x_76); +x_142 = l_Lean_Parser_ParserState_mkNode(x_128, x_141, x_90); +x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_82, x_79); +lean_dec(x_79); return x_143; } } +else +{ +lean_object* x_144; lean_object* x_145; lean_object* x_146; +lean_dec(x_127); +lean_dec(x_1); +x_144 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_145 = l_Lean_Parser_ParserState_mkNode(x_126, x_144, x_90); +x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_82, x_79); +lean_dec(x_79); +return x_146; +} +} +else +{ +lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_dec(x_125); +lean_dec(x_1); +x_147 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_148 = l_Lean_Parser_ParserState_mkNode(x_124, x_147, x_90); +x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_82, x_79); +lean_dec(x_79); +return x_149; +} +} +} +else +{ +lean_object* x_165; +lean_dec(x_88); +lean_dec(x_1); +x_165 = l_Lean_Parser_mergeOrElseErrors(x_87, x_82, x_79); +lean_dec(x_79); +return x_165; +} } } } @@ -11283,16 +12227,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_syntax___closed__8() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_syntax___closed__7; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__9() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_syntax___closed__7; +x_3 = l_Lean_Parser_Command_syntax___closed__8; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_syntax___closed__9() { +lean_object* _init_l_Lean_Parser_Command_syntax___closed__10() { _start: { lean_object* x_1; @@ -11300,12 +12254,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_syntax___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Command_syntax___closed__10() { +lean_object* _init_l_Lean_Parser_Command_syntax___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_syntax___closed__8; -x_2 = l_Lean_Parser_Command_syntax___closed__9; +x_1 = l_Lean_Parser_Command_syntax___closed__9; +x_2 = l_Lean_Parser_Command_syntax___closed__10; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -11316,7 +12270,7 @@ lean_object* _init_l_Lean_Parser_Command_syntax() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_syntax___closed__10; +x_1 = l_Lean_Parser_Command_syntax___closed__11; return x_1; } } @@ -11432,224 +12386,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_ident___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_ident___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -11688,16 +12673,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_syntaxCat___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_syntaxCat___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_syntaxCat___closed__3; +x_3 = l_Lean_Parser_Command_syntaxCat___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__5() { +lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__6() { _start: { lean_object* x_1; @@ -11705,12 +12700,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_syntaxCat___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__6() { +lean_object* _init_l_Lean_Parser_Command_syntaxCat___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_syntaxCat___closed__4; -x_2 = l_Lean_Parser_Command_syntaxCat___closed__5; +x_1 = l_Lean_Parser_Command_syntaxCat___closed__5; +x_2 = l_Lean_Parser_Command_syntaxCat___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -11721,7 +12716,7 @@ lean_object* _init_l_Lean_Parser_Command_syntaxCat() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_syntaxCat___closed__6; +x_1 = l_Lean_Parser_Command_syntaxCat___closed__7; return x_1; } } @@ -12089,270 +13084,301 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); -lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__5; -x_11 = l_Lean_Parser_checkNoWsBeforeFn(x_10, x_1, x_8); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +lean_inc(x_1); +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -lean_inc(x_1); -x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_13 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__5; +x_14 = l_Lean_Parser_checkNoWsBeforeFn(x_13, x_1, x_11); x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_14, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); -x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); -lean_dec(x_16); -if (lean_obj_tag(x_17) == 2) -{ -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_1); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); lean_inc(x_18); -lean_dec(x_17); -x_19 = l_Lean_Parser_mkAntiquot___closed__4; -x_20 = lean_string_dec_eq(x_18, x_19); -lean_dec(x_18); -if (x_20 == 0) +if (lean_obj_tag(x_18) == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_mkAntiquot___closed__4; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_dec(x_1); -x_21 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_13); -x_25 = l_Lean_Parser_Command_macroArgType___elambda__1(x_1, x_14); +x_24 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); x_26 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); return x_27; } +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_16); +x_28 = l_Lean_Parser_Command_macroArgType___elambda__1(x_1, x_17); +x_29 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} } else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_17); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); lean_dec(x_1); -x_28 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_28, x_13); -x_30 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; +x_31 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_31, x_16); +x_33 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; } } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_18); +lean_dec(x_1); +x_35 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_35, x_16); +x_37 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_dec(x_15); lean_dec(x_1); -x_32 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_32, x_13); -x_34 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); -return x_35; +x_39 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_14, x_39, x_10); +return x_40; } } else { -lean_object* x_36; lean_object* x_37; +lean_object* x_41; lean_object* x_42; lean_dec(x_12); lean_dec(x_1); -x_36 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_11, x_36, x_7); -return x_37; +x_41 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; } } else { -lean_object* x_38; lean_object* x_39; -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -x_38 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_8, x_38, x_7); -return x_39; +return x_7; } } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_40 = lean_ctor_get(x_2, 0); -lean_inc(x_40); -x_41 = lean_array_get_size(x_40); -lean_dec(x_40); -x_42 = lean_ctor_get(x_2, 1); -lean_inc(x_42); -lean_inc(x_1); -x_43 = lean_apply_2(x_4, x_1, x_2); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_dec(x_42); -lean_dec(x_41); -lean_dec(x_1); -return x_43; -} -else -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 0); +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = lean_ctor_get(x_2, 0); +lean_inc(x_43); +x_44 = lean_array_get_size(x_43); +lean_dec(x_43); +x_45 = lean_ctor_get(x_2, 1); lean_inc(x_45); -lean_dec(x_44); -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_42); -lean_dec(x_46); -if (x_47 == 0) +lean_inc(x_1); +x_46 = lean_apply_2(x_4, x_1, x_2); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) { lean_dec(x_45); -lean_dec(x_42); -lean_dec(x_41); +lean_dec(x_44); lean_dec(x_1); -return x_43; +return x_46; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -lean_inc(x_42); -x_48 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); -lean_dec(x_41); -x_49 = lean_ctor_get(x_48, 0); +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +lean_dec(x_47); +x_49 = lean_ctor_get(x_46, 1); lean_inc(x_49); -x_50 = lean_array_get_size(x_49); +x_50 = lean_nat_dec_eq(x_49, x_45); lean_dec(x_49); -lean_inc(x_1); -x_51 = l_Lean_Parser_ident___elambda__1(x_1, x_48); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) +if (x_50 == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__5; -x_54 = l_Lean_Parser_checkNoWsBeforeFn(x_53, x_1, x_51); -x_55 = lean_ctor_get(x_54, 3); +lean_dec(x_48); +lean_dec(x_45); +lean_dec(x_44); +lean_dec(x_1); +return x_46; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_inc(x_45); +x_51 = l_Lean_Parser_ParserState_restore(x_46, x_44, x_45); +lean_dec(x_44); +x_52 = lean_unsigned_to_nat(1024u); +x_53 = l_Lean_Parser_checkPrecFn(x_52, x_1, x_51); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = lean_ctor_get(x_53, 0); lean_inc(x_55); -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_56 = lean_ctor_get(x_54, 1); -lean_inc(x_56); +x_56 = lean_array_get_size(x_55); +lean_dec(x_55); lean_inc(x_1); -x_57 = l_Lean_Parser_tokenFn(x_1, x_54); +x_57 = l_Lean_Parser_ident___elambda__1(x_1, x_53); x_58 = lean_ctor_get(x_57, 3); lean_inc(x_58); if (lean_obj_tag(x_58) == 0) { -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -x_60 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_59); -lean_dec(x_59); -if (lean_obj_tag(x_60) == 2) -{ -lean_object* x_61; lean_object* x_62; uint8_t x_63; -x_61 = lean_ctor_get(x_60, 1); +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__5; +x_60 = l_Lean_Parser_checkNoWsBeforeFn(x_59, x_1, x_57); +x_61 = lean_ctor_get(x_60, 3); lean_inc(x_61); -lean_dec(x_60); -x_62 = l_Lean_Parser_mkAntiquot___closed__4; -x_63 = lean_string_dec_eq(x_61, x_62); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +lean_inc(x_1); +x_63 = l_Lean_Parser_tokenFn(x_1, x_60); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_63, 0); +lean_inc(x_65); +x_66 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_65); +lean_dec(x_65); +if (lean_obj_tag(x_66) == 2) +{ +lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_67 = lean_ctor_get(x_66, 1); +lean_inc(x_67); +lean_dec(x_66); +x_68 = l_Lean_Parser_mkAntiquot___closed__4; +x_69 = lean_string_dec_eq(x_67, x_68); +lean_dec(x_67); +if (x_69 == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_dec(x_1); +x_70 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_70, x_62); +x_72 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_56); +x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_48, x_45); +lean_dec(x_45); +return x_74; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_dec(x_62); +x_75 = l_Lean_Parser_Command_macroArgType___elambda__1(x_1, x_63); +x_76 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_77 = l_Lean_Parser_ParserState_mkNode(x_75, x_76, x_56); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_48, x_45); +lean_dec(x_45); +return x_78; +} +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_66); +lean_dec(x_1); +x_79 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_79, x_62); +x_81 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_82 = l_Lean_Parser_ParserState_mkNode(x_80, x_81, x_56); +x_83 = l_Lean_Parser_mergeOrElseErrors(x_82, x_48, x_45); +lean_dec(x_45); +return x_83; +} +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_64); +lean_dec(x_1); +x_84 = l_Lean_Parser_precedence___elambda__1___closed__7; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_63, x_84, x_62); +x_86 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_56); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_48, x_45); +lean_dec(x_45); +return x_88; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_dec(x_61); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_dec(x_1); -x_64 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_56); -x_66 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_50); -x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_45, x_42); -lean_dec(x_42); -return x_68; -} -else -{ -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_dec(x_56); -x_69 = l_Lean_Parser_Command_macroArgType___elambda__1(x_1, x_57); -x_70 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_50); -x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_45, x_42); -lean_dec(x_42); -return x_72; +x_89 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_60, x_89, x_56); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_48, x_45); +lean_dec(x_45); +return x_91; } } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_60); -lean_dec(x_1); -x_73 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_73, x_56); -x_75 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_50); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_45, x_42); -lean_dec(x_42); -return x_77; -} -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_dec(x_58); lean_dec(x_1); -x_78 = l_Lean_Parser_precedence___elambda__1___closed__7; -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_78, x_56); -x_80 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_79, x_80, x_50); -x_82 = l_Lean_Parser_mergeOrElseErrors(x_81, x_45, x_42); -lean_dec(x_42); -return x_82; +x_92 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_57, x_92, x_56); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_48, x_45); +lean_dec(x_45); +return x_94; } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_55); +lean_object* x_95; +lean_dec(x_54); lean_dec(x_1); -x_83 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_54, x_83, x_50); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_45, x_42); -lean_dec(x_42); -return x_85; -} -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; -lean_dec(x_52); -lean_dec(x_1); -x_86 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_51, x_86, x_50); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_45, x_42); -lean_dec(x_42); -return x_88; +x_95 = l_Lean_Parser_mergeOrElseErrors(x_53, x_48, x_45); +lean_dec(x_45); +return x_95; } } } @@ -12406,16 +13432,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_macroArgSimple___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_macroArgSimple___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_macroArgSimple___closed__4; +x_3 = l_Lean_Parser_Command_macroArgSimple___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__6() { +lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__7() { _start: { lean_object* x_1; @@ -12423,12 +13459,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_macroArgSimple___elambda_ return x_1; } } -lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__7() { +lean_object* _init_l_Lean_Parser_Command_macroArgSimple___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_macroArgSimple___closed__5; -x_2 = l_Lean_Parser_Command_macroArgSimple___closed__6; +x_1 = l_Lean_Parser_Command_macroArgSimple___closed__6; +x_2 = l_Lean_Parser_Command_macroArgSimple___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -12439,7 +13475,7 @@ lean_object* _init_l_Lean_Parser_Command_macroArgSimple() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_macroArgSimple___closed__7; +x_1 = l_Lean_Parser_Command_macroArgSimple___closed__8; return x_1; } } @@ -14550,343 +15586,374 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); -lean_inc(x_1); -x_33 = l_Lean_Parser_tokenFn(x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_35; lean_object* x_36; -x_35 = lean_ctor_get(x_33, 0); -lean_inc(x_35); -x_36 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_35); -lean_dec(x_35); -if (lean_obj_tag(x_36) == 2) -{ -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 1); -lean_inc(x_37); -lean_dec(x_36); -x_38 = l_Lean_Parser_Command_macro___elambda__1___closed__6; -x_39 = lean_string_dec_eq(x_37, x_38); -lean_dec(x_37); -if (x_39 == 0) -{ -lean_object* x_40; lean_object* x_41; -x_40 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_33, x_40, x_32); -x_8 = x_41; -goto block_31; -} -else -{ -lean_dec(x_32); -x_8 = x_33; -goto block_31; -} -} -else -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_36); -x_42 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_33, x_42, x_32); -x_8 = x_43; -goto block_31; -} -} -else -{ -lean_object* x_44; lean_object* x_45; -lean_dec(x_34); -x_44 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_33, x_44, x_32); -x_8 = x_45; -goto block_31; -} -block_31: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; -lean_inc(x_1); -x_10 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_inc(x_1); -x_12 = l_Lean_Parser_Command_macroHead___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -lean_inc(x_1); -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1(x_1, x_12); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_15); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_Command_macroTail___elambda__1(x_1, x_18); -x_21 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_7); -return x_22; -} -else -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_19); -lean_dec(x_1); -x_23 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_18, x_23, x_7); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_13); -lean_dec(x_1); -x_25 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_12, x_25, x_7); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_11); -lean_dec(x_1); -x_27 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_10, x_27, x_7); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_29 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_8, x_29, x_7); -return x_30; -} -} -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_46 = lean_ctor_get(x_2, 0); -lean_inc(x_46); -x_47 = lean_array_get_size(x_46); -lean_dec(x_46); -x_48 = lean_ctor_get(x_2, 1); -lean_inc(x_48); +x_35 = lean_ctor_get(x_7, 1); +lean_inc(x_35); lean_inc(x_1); -x_49 = lean_apply_2(x_4, x_1, x_2); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) +x_36 = l_Lean_Parser_tokenFn(x_1, x_7); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { -lean_dec(x_48); -lean_dec(x_47); -lean_dec(x_1); -return x_49; +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_38); +lean_dec(x_38); +if (lean_obj_tag(x_39) == 2) +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +lean_dec(x_39); +x_41 = l_Lean_Parser_Command_macro___elambda__1___closed__6; +x_42 = lean_string_dec_eq(x_40, x_41); +lean_dec(x_40); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; +x_43 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_43, x_35); +x_11 = x_44; +goto block_34; } else { -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_50, 0); +lean_dec(x_35); +x_11 = x_36; +goto block_34; +} +} +else +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_39); +x_45 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_45, x_35); +x_11 = x_46; +goto block_34; +} +} +else +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_37); +x_47 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_47, x_35); +x_11 = x_48; +goto block_34; +} +block_34: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_inc(x_1); +x_15 = l_Lean_Parser_Command_macroHead___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +lean_inc(x_1); +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1(x_1, x_15); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_18); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Parser_Command_macroTail___elambda__1(x_1, x_21); +x_24 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_22); +lean_dec(x_1); +x_26 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_21, x_26, x_10); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +lean_dec(x_1); +x_28 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_15, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_14); +lean_dec(x_1); +x_30 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_13, x_30, x_10); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_12); +lean_dec(x_1); +x_32 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_11, x_32, x_10); +return x_33; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_2, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_51 = lean_ctor_get(x_2, 1); lean_inc(x_51); -lean_dec(x_50); -x_52 = lean_ctor_get(x_49, 1); -lean_inc(x_52); -x_53 = lean_nat_dec_eq(x_52, x_48); -lean_dec(x_52); -if (x_53 == 0) +lean_inc(x_1); +x_52 = lean_apply_2(x_4, x_1, x_2); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) { lean_dec(x_51); -lean_dec(x_48); -lean_dec(x_47); +lean_dec(x_50); lean_dec(x_1); -return x_49; +return x_52; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_86; lean_object* x_87; -lean_inc(x_48); -x_54 = l_Lean_Parser_ParserState_restore(x_49, x_47, x_48); -lean_dec(x_47); -x_55 = lean_ctor_get(x_54, 0); +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +lean_dec(x_53); +x_55 = lean_ctor_get(x_52, 1); lean_inc(x_55); -x_56 = lean_array_get_size(x_55); +x_56 = lean_nat_dec_eq(x_55, x_51); lean_dec(x_55); -lean_inc(x_1); -x_86 = l_Lean_Parser_tokenFn(x_1, x_54); -x_87 = lean_ctor_get(x_86, 3); -lean_inc(x_87); -if (lean_obj_tag(x_87) == 0) +if (x_56 == 0) { -lean_object* x_88; lean_object* x_89; -x_88 = lean_ctor_get(x_86, 0); -lean_inc(x_88); -x_89 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_88); -lean_dec(x_88); -if (lean_obj_tag(x_89) == 2) -{ -lean_object* x_90; lean_object* x_91; uint8_t x_92; -x_90 = lean_ctor_get(x_89, 1); -lean_inc(x_90); -lean_dec(x_89); -x_91 = l_Lean_Parser_Command_macro___elambda__1___closed__6; -x_92 = lean_string_dec_eq(x_90, x_91); -lean_dec(x_90); -if (x_92 == 0) -{ -lean_object* x_93; lean_object* x_94; -x_93 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -lean_inc(x_48); -x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_93, x_48); -x_57 = x_94; -goto block_85; +lean_dec(x_54); +lean_dec(x_51); +lean_dec(x_50); +lean_dec(x_1); +return x_52; } else { -x_57 = x_86; -goto block_85; -} -} -else -{ -lean_object* x_95; lean_object* x_96; -lean_dec(x_89); -x_95 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -lean_inc(x_48); -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_95, x_48); -x_57 = x_96; -goto block_85; -} -} -else -{ -lean_object* x_97; lean_object* x_98; -lean_dec(x_87); -x_97 = l_Lean_Parser_Command_macro___elambda__1___closed__9; -lean_inc(x_48); -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_97, x_48); -x_57 = x_98; -goto block_85; -} -block_85: -{ -lean_object* x_58; -x_58 = lean_ctor_get(x_57, 3); -lean_inc(x_58); -if (lean_obj_tag(x_58) == 0) -{ -lean_object* x_59; lean_object* x_60; -lean_inc(x_1); -x_59 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_57); +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_inc(x_51); +x_57 = l_Lean_Parser_ParserState_restore(x_52, x_50, x_51); +lean_dec(x_50); +x_58 = lean_unsigned_to_nat(1024u); +x_59 = l_Lean_Parser_checkPrecFn(x_58, x_1, x_57); x_60 = lean_ctor_get(x_59, 3); lean_inc(x_60); if (lean_obj_tag(x_60) == 0) { -lean_object* x_61; lean_object* x_62; +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_61 = lean_ctor_get(x_59, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_92 = lean_ctor_get(x_59, 1); +lean_inc(x_92); lean_inc(x_1); -x_61 = l_Lean_Parser_Command_macroHead___elambda__1(x_1, x_59); -x_62 = lean_ctor_get(x_61, 3); -lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) +x_93 = l_Lean_Parser_tokenFn(x_1, x_59); +x_94 = lean_ctor_get(x_93, 3); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = lean_array_get_size(x_63); -lean_dec(x_63); +lean_object* x_95; lean_object* x_96; +x_95 = lean_ctor_get(x_93, 0); +lean_inc(x_95); +x_96 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_95); +lean_dec(x_95); +if (lean_obj_tag(x_96) == 2) +{ +lean_object* x_97; lean_object* x_98; uint8_t x_99; +x_97 = lean_ctor_get(x_96, 1); +lean_inc(x_97); +lean_dec(x_96); +x_98 = l_Lean_Parser_Command_macro___elambda__1___closed__6; +x_99 = lean_string_dec_eq(x_97, x_98); +lean_dec(x_97); +if (x_99 == 0) +{ +lean_object* x_100; lean_object* x_101; +x_100 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_100, x_92); +x_63 = x_101; +goto block_91; +} +else +{ +lean_dec(x_92); +x_63 = x_93; +goto block_91; +} +} +else +{ +lean_object* x_102; lean_object* x_103; +lean_dec(x_96); +x_102 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_103 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_102, x_92); +x_63 = x_103; +goto block_91; +} +} +else +{ +lean_object* x_104; lean_object* x_105; +lean_dec(x_94); +x_104 = l_Lean_Parser_Command_macro___elambda__1___closed__9; +x_105 = l_Lean_Parser_ParserState_mkErrorsAt(x_93, x_104, x_92); +x_63 = x_105; +goto block_91; +} +block_91: +{ +lean_object* x_64; +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_inc(x_1); -x_65 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1(x_1, x_61); -x_66 = l_Lean_nullKind; -x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_64); +x_65 = l_Lean_Parser_optPrecedence___elambda__1(x_1, x_63); +x_66 = lean_ctor_get(x_65, 3); +lean_inc(x_66); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; +lean_inc(x_1); +x_67 = l_Lean_Parser_Command_macroHead___elambda__1(x_1, x_65); x_68 = lean_ctor_get(x_67, 3); lean_inc(x_68); if (lean_obj_tag(x_68) == 0) { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_69 = l_Lean_Parser_Command_macroTail___elambda__1(x_1, x_67); -x_70 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_56); -x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_51, x_48); -lean_dec(x_48); -return x_72; -} -else +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +lean_inc(x_1); +x_71 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Command_macro___elambda__1___spec__1(x_1, x_67); +x_72 = l_Lean_nullKind; +x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_70); +x_74 = lean_ctor_get(x_73, 3); +lean_inc(x_74); +if (lean_obj_tag(x_74) == 0) { -lean_object* x_73; lean_object* x_74; lean_object* x_75; -lean_dec(x_68); -lean_dec(x_1); -x_73 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_74 = l_Lean_Parser_ParserState_mkNode(x_67, x_73, x_56); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_51, x_48); -lean_dec(x_48); -return x_75; -} -} -else -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_dec(x_62); -lean_dec(x_1); +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_75 = l_Lean_Parser_Command_macroTail___elambda__1(x_1, x_73); x_76 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_77 = l_Lean_Parser_ParserState_mkNode(x_61, x_76, x_56); -x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_51, x_48); -lean_dec(x_48); +x_77 = l_Lean_Parser_ParserState_mkNode(x_75, x_76, x_62); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_54, x_51); +lean_dec(x_51); return x_78; } -} else { lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_60); +lean_dec(x_74); lean_dec(x_1); x_79 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_59, x_79, x_56); -x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_51, x_48); -lean_dec(x_48); +x_80 = l_Lean_Parser_ParserState_mkNode(x_73, x_79, x_62); +x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_54, x_51); +lean_dec(x_51); return x_81; } } else { lean_object* x_82; lean_object* x_83; lean_object* x_84; -lean_dec(x_58); +lean_dec(x_68); lean_dec(x_1); x_82 = l_Lean_Parser_Command_macro___elambda__1___closed__2; -x_83 = l_Lean_Parser_ParserState_mkNode(x_57, x_82, x_56); -x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_51, x_48); -lean_dec(x_48); +x_83 = l_Lean_Parser_ParserState_mkNode(x_67, x_82, x_62); +x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_54, x_51); +lean_dec(x_51); return x_84; } } +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_66); +lean_dec(x_1); +x_85 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_86 = l_Lean_Parser_ParserState_mkNode(x_65, x_85, x_62); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_54, x_51); +lean_dec(x_51); +return x_87; +} +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_dec(x_64); +lean_dec(x_1); +x_88 = l_Lean_Parser_Command_macro___elambda__1___closed__2; +x_89 = l_Lean_Parser_ParserState_mkNode(x_63, x_88, x_62); +x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_54, x_51); +lean_dec(x_51); +return x_90; +} +} +} +else +{ +lean_object* x_106; +lean_dec(x_60); +lean_dec(x_1); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_59, x_54, x_51); +lean_dec(x_51); +return x_106; +} } } } @@ -14971,16 +16038,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_macro___closed__8() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_macro___closed__7; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_macro___closed__9() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_macro___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_macro___closed__7; +x_3 = l_Lean_Parser_Command_macro___closed__8; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Command_macro___closed__9() { +lean_object* _init_l_Lean_Parser_Command_macro___closed__10() { _start: { lean_object* x_1; @@ -14988,12 +16065,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_macro___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Command_macro___closed__10() { +lean_object* _init_l_Lean_Parser_Command_macro___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_macro___closed__8; -x_2 = l_Lean_Parser_Command_macro___closed__9; +x_1 = l_Lean_Parser_Command_macro___closed__9; +x_2 = l_Lean_Parser_Command_macro___closed__10; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -15004,7 +16081,7 @@ lean_object* _init_l_Lean_Parser_Command_macro() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_macro___closed__10; +x_1 = l_Lean_Parser_Command_macro___closed__11; return x_1; } } @@ -15068,6 +16145,8 @@ l_Lean_Parser_maxPrec___closed__4 = _init_l_Lean_Parser_maxPrec___closed__4(); lean_mark_persistent(l_Lean_Parser_maxPrec___closed__4); l_Lean_Parser_maxPrec___closed__5 = _init_l_Lean_Parser_maxPrec___closed__5(); lean_mark_persistent(l_Lean_Parser_maxPrec___closed__5); +l_Lean_Parser_maxPrec___closed__6 = _init_l_Lean_Parser_maxPrec___closed__6(); +lean_mark_persistent(l_Lean_Parser_maxPrec___closed__6); l_Lean_Parser_maxPrec = _init_l_Lean_Parser_maxPrec(); lean_mark_persistent(l_Lean_Parser_maxPrec); l_Lean_Parser_precedenceLit___closed__1 = _init_l_Lean_Parser_precedenceLit___closed__1(); @@ -15102,6 +16181,8 @@ l_Lean_Parser_precedence___closed__4 = _init_l_Lean_Parser_precedence___closed__ lean_mark_persistent(l_Lean_Parser_precedence___closed__4); l_Lean_Parser_precedence___closed__5 = _init_l_Lean_Parser_precedence___closed__5(); lean_mark_persistent(l_Lean_Parser_precedence___closed__5); +l_Lean_Parser_precedence___closed__6 = _init_l_Lean_Parser_precedence___closed__6(); +lean_mark_persistent(l_Lean_Parser_precedence___closed__6); l_Lean_Parser_precedence = _init_l_Lean_Parser_precedence(); lean_mark_persistent(l_Lean_Parser_precedence); l_Lean_Parser_optPrecedence___closed__1 = _init_l_Lean_Parser_optPrecedence___closed__1(); @@ -15213,6 +16294,8 @@ l_Lean_Parser_Syntax_num___closed__4 = _init_l_Lean_Parser_Syntax_num___closed__ lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__4); l_Lean_Parser_Syntax_num___closed__5 = _init_l_Lean_Parser_Syntax_num___closed__5(); lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__5); +l_Lean_Parser_Syntax_num___closed__6 = _init_l_Lean_Parser_Syntax_num___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__6); l_Lean_Parser_Syntax_num = _init_l_Lean_Parser_Syntax_num(); lean_mark_persistent(l_Lean_Parser_Syntax_num); res = l___regBuiltinParser_Lean_Parser_Syntax_num(lean_io_mk_world()); @@ -15240,6 +16323,8 @@ l_Lean_Parser_Syntax_str___closed__4 = _init_l_Lean_Parser_Syntax_str___closed__ lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__4); l_Lean_Parser_Syntax_str___closed__5 = _init_l_Lean_Parser_Syntax_str___closed__5(); lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__5); +l_Lean_Parser_Syntax_str___closed__6 = _init_l_Lean_Parser_Syntax_str___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__6); l_Lean_Parser_Syntax_str = _init_l_Lean_Parser_Syntax_str(); lean_mark_persistent(l_Lean_Parser_Syntax_str); res = l___regBuiltinParser_Lean_Parser_Syntax_str(lean_io_mk_world()); @@ -15267,6 +16352,8 @@ l_Lean_Parser_Syntax_char___closed__4 = _init_l_Lean_Parser_Syntax_char___closed lean_mark_persistent(l_Lean_Parser_Syntax_char___closed__4); l_Lean_Parser_Syntax_char___closed__5 = _init_l_Lean_Parser_Syntax_char___closed__5(); lean_mark_persistent(l_Lean_Parser_Syntax_char___closed__5); +l_Lean_Parser_Syntax_char___closed__6 = _init_l_Lean_Parser_Syntax_char___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_char___closed__6); l_Lean_Parser_Syntax_char = _init_l_Lean_Parser_Syntax_char(); lean_mark_persistent(l_Lean_Parser_Syntax_char); res = l___regBuiltinParser_Lean_Parser_Syntax_char(lean_io_mk_world()); @@ -15294,6 +16381,8 @@ l_Lean_Parser_Syntax_ident___closed__4 = _init_l_Lean_Parser_Syntax_ident___clos lean_mark_persistent(l_Lean_Parser_Syntax_ident___closed__4); l_Lean_Parser_Syntax_ident___closed__5 = _init_l_Lean_Parser_Syntax_ident___closed__5(); lean_mark_persistent(l_Lean_Parser_Syntax_ident___closed__5); +l_Lean_Parser_Syntax_ident___closed__6 = _init_l_Lean_Parser_Syntax_ident___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_ident___closed__6); l_Lean_Parser_Syntax_ident = _init_l_Lean_Parser_Syntax_ident(); lean_mark_persistent(l_Lean_Parser_Syntax_ident); res = l___regBuiltinParser_Lean_Parser_Syntax_ident(lean_io_mk_world()); @@ -15329,6 +16418,8 @@ l_Lean_Parser_Syntax_try___closed__6 = _init_l_Lean_Parser_Syntax_try___closed__ lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__6); l_Lean_Parser_Syntax_try___closed__7 = _init_l_Lean_Parser_Syntax_try___closed__7(); lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__7); +l_Lean_Parser_Syntax_try___closed__8 = _init_l_Lean_Parser_Syntax_try___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__8); l_Lean_Parser_Syntax_try = _init_l_Lean_Parser_Syntax_try(); lean_mark_persistent(l_Lean_Parser_Syntax_try); res = l___regBuiltinParser_Lean_Parser_Syntax_try(lean_io_mk_world()); @@ -15362,6 +16453,8 @@ l_Lean_Parser_Syntax_lookahead___closed__5 = _init_l_Lean_Parser_Syntax_lookahea lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__5); l_Lean_Parser_Syntax_lookahead___closed__6 = _init_l_Lean_Parser_Syntax_lookahead___closed__6(); lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__6); +l_Lean_Parser_Syntax_lookahead___closed__7 = _init_l_Lean_Parser_Syntax_lookahead___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__7); l_Lean_Parser_Syntax_lookahead = _init_l_Lean_Parser_Syntax_lookahead(); lean_mark_persistent(l_Lean_Parser_Syntax_lookahead); res = l___regBuiltinParser_Lean_Parser_Syntax_lookahead(lean_io_mk_world()); @@ -15397,6 +16490,8 @@ l_Lean_Parser_Syntax_sepBy___closed__6 = _init_l_Lean_Parser_Syntax_sepBy___clos lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__6); l_Lean_Parser_Syntax_sepBy___closed__7 = _init_l_Lean_Parser_Syntax_sepBy___closed__7(); lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__7); +l_Lean_Parser_Syntax_sepBy___closed__8 = _init_l_Lean_Parser_Syntax_sepBy___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__8); l_Lean_Parser_Syntax_sepBy = _init_l_Lean_Parser_Syntax_sepBy(); lean_mark_persistent(l_Lean_Parser_Syntax_sepBy); res = l___regBuiltinParser_Lean_Parser_Syntax_sepBy(lean_io_mk_world()); @@ -15430,6 +16525,8 @@ l_Lean_Parser_Syntax_sepBy1___closed__5 = _init_l_Lean_Parser_Syntax_sepBy1___cl lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__5); l_Lean_Parser_Syntax_sepBy1___closed__6 = _init_l_Lean_Parser_Syntax_sepBy1___closed__6(); lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__6); +l_Lean_Parser_Syntax_sepBy1___closed__7 = _init_l_Lean_Parser_Syntax_sepBy1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__7); l_Lean_Parser_Syntax_sepBy1 = _init_l_Lean_Parser_Syntax_sepBy1(); lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1); res = l___regBuiltinParser_Lean_Parser_Syntax_sepBy1(lean_io_mk_world()); @@ -15445,6 +16542,8 @@ l_Lean_Parser_Syntax_optional___closed__2 = _init_l_Lean_Parser_Syntax_optional_ lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__2); l_Lean_Parser_Syntax_optional___closed__3 = _init_l_Lean_Parser_Syntax_optional___closed__3(); lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__3); +l_Lean_Parser_Syntax_optional___closed__4 = _init_l_Lean_Parser_Syntax_optional___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__4); l_Lean_Parser_Syntax_optional = _init_l_Lean_Parser_Syntax_optional(); lean_mark_persistent(l_Lean_Parser_Syntax_optional); res = l___regBuiltinParser_Lean_Parser_Syntax_optional(lean_io_mk_world()); @@ -15466,6 +16565,8 @@ l_Lean_Parser_Syntax_many___closed__2 = _init_l_Lean_Parser_Syntax_many___closed lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__2); l_Lean_Parser_Syntax_many___closed__3 = _init_l_Lean_Parser_Syntax_many___closed__3(); lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__3); +l_Lean_Parser_Syntax_many___closed__4 = _init_l_Lean_Parser_Syntax_many___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__4); l_Lean_Parser_Syntax_many = _init_l_Lean_Parser_Syntax_many(); lean_mark_persistent(l_Lean_Parser_Syntax_many); res = l___regBuiltinParser_Lean_Parser_Syntax_many(lean_io_mk_world()); @@ -15481,6 +16582,8 @@ l_Lean_Parser_Syntax_many1___closed__2 = _init_l_Lean_Parser_Syntax_many1___clos lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__2); l_Lean_Parser_Syntax_many1___closed__3 = _init_l_Lean_Parser_Syntax_many1___closed__3(); lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__3); +l_Lean_Parser_Syntax_many1___closed__4 = _init_l_Lean_Parser_Syntax_many1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__4); l_Lean_Parser_Syntax_many1 = _init_l_Lean_Parser_Syntax_many1(); lean_mark_persistent(l_Lean_Parser_Syntax_many1); res = l___regBuiltinParser_Lean_Parser_Syntax_many1(lean_io_mk_world()); @@ -15531,6 +16634,8 @@ l_Lean_Parser_Command_prefix___closed__4 = _init_l_Lean_Parser_Command_prefix___ lean_mark_persistent(l_Lean_Parser_Command_prefix___closed__4); l_Lean_Parser_Command_prefix___closed__5 = _init_l_Lean_Parser_Command_prefix___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_prefix___closed__5); +l_Lean_Parser_Command_prefix___closed__6 = _init_l_Lean_Parser_Command_prefix___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_prefix___closed__6); l_Lean_Parser_Command_prefix = _init_l_Lean_Parser_Command_prefix(); lean_mark_persistent(l_Lean_Parser_Command_prefix); l_Lean_Parser_Command_infix___elambda__1___closed__1 = _init_l_Lean_Parser_Command_infix___elambda__1___closed__1(); @@ -15559,6 +16664,8 @@ l_Lean_Parser_Command_infix___closed__4 = _init_l_Lean_Parser_Command_infix___cl lean_mark_persistent(l_Lean_Parser_Command_infix___closed__4); l_Lean_Parser_Command_infix___closed__5 = _init_l_Lean_Parser_Command_infix___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_infix___closed__5); +l_Lean_Parser_Command_infix___closed__6 = _init_l_Lean_Parser_Command_infix___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_infix___closed__6); l_Lean_Parser_Command_infix = _init_l_Lean_Parser_Command_infix(); lean_mark_persistent(l_Lean_Parser_Command_infix); l_Lean_Parser_Command_infixl___elambda__1___closed__1 = _init_l_Lean_Parser_Command_infixl___elambda__1___closed__1(); @@ -15587,6 +16694,8 @@ l_Lean_Parser_Command_infixl___closed__4 = _init_l_Lean_Parser_Command_infixl___ lean_mark_persistent(l_Lean_Parser_Command_infixl___closed__4); l_Lean_Parser_Command_infixl___closed__5 = _init_l_Lean_Parser_Command_infixl___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_infixl___closed__5); +l_Lean_Parser_Command_infixl___closed__6 = _init_l_Lean_Parser_Command_infixl___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_infixl___closed__6); l_Lean_Parser_Command_infixl = _init_l_Lean_Parser_Command_infixl(); lean_mark_persistent(l_Lean_Parser_Command_infixl); l_Lean_Parser_Command_infixr___elambda__1___closed__1 = _init_l_Lean_Parser_Command_infixr___elambda__1___closed__1(); @@ -15615,6 +16724,8 @@ l_Lean_Parser_Command_infixr___closed__4 = _init_l_Lean_Parser_Command_infixr___ lean_mark_persistent(l_Lean_Parser_Command_infixr___closed__4); l_Lean_Parser_Command_infixr___closed__5 = _init_l_Lean_Parser_Command_infixr___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_infixr___closed__5); +l_Lean_Parser_Command_infixr___closed__6 = _init_l_Lean_Parser_Command_infixr___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_infixr___closed__6); l_Lean_Parser_Command_infixr = _init_l_Lean_Parser_Command_infixr(); lean_mark_persistent(l_Lean_Parser_Command_infixr); l_Lean_Parser_Command_postfix___elambda__1___closed__1 = _init_l_Lean_Parser_Command_postfix___elambda__1___closed__1(); @@ -15643,6 +16754,8 @@ l_Lean_Parser_Command_postfix___closed__4 = _init_l_Lean_Parser_Command_postfix_ lean_mark_persistent(l_Lean_Parser_Command_postfix___closed__4); l_Lean_Parser_Command_postfix___closed__5 = _init_l_Lean_Parser_Command_postfix___closed__5(); lean_mark_persistent(l_Lean_Parser_Command_postfix___closed__5); +l_Lean_Parser_Command_postfix___closed__6 = _init_l_Lean_Parser_Command_postfix___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_postfix___closed__6); l_Lean_Parser_Command_postfix = _init_l_Lean_Parser_Command_postfix(); lean_mark_persistent(l_Lean_Parser_Command_postfix); l_Lean_Parser_Command_mixfixKind___closed__1 = _init_l_Lean_Parser_Command_mixfixKind___closed__1(); @@ -15693,6 +16806,8 @@ l_Lean_Parser_Command_reserve___closed__7 = _init_l_Lean_Parser_Command_reserve_ lean_mark_persistent(l_Lean_Parser_Command_reserve___closed__7); l_Lean_Parser_Command_reserve___closed__8 = _init_l_Lean_Parser_Command_reserve___closed__8(); lean_mark_persistent(l_Lean_Parser_Command_reserve___closed__8); +l_Lean_Parser_Command_reserve___closed__9 = _init_l_Lean_Parser_Command_reserve___closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_reserve___closed__9); l_Lean_Parser_Command_reserve = _init_l_Lean_Parser_Command_reserve(); lean_mark_persistent(l_Lean_Parser_Command_reserve); res = l___regBuiltinParser_Lean_Parser_Command_reserve(lean_io_mk_world()); @@ -15722,6 +16837,8 @@ l_Lean_Parser_Command_identPrec___closed__3 = _init_l_Lean_Parser_Command_identP lean_mark_persistent(l_Lean_Parser_Command_identPrec___closed__3); l_Lean_Parser_Command_identPrec___closed__4 = _init_l_Lean_Parser_Command_identPrec___closed__4(); lean_mark_persistent(l_Lean_Parser_Command_identPrec___closed__4); +l_Lean_Parser_Command_identPrec___closed__5 = _init_l_Lean_Parser_Command_identPrec___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_identPrec___closed__5); l_Lean_Parser_Command_identPrec = _init_l_Lean_Parser_Command_identPrec(); lean_mark_persistent(l_Lean_Parser_Command_identPrec); l_Lean_Parser_Command_mixfix___elambda__1___closed__1 = _init_l_Lean_Parser_Command_mixfix___elambda__1___closed__1(); @@ -15750,6 +16867,8 @@ l_Lean_Parser_Command_mixfix___closed__8 = _init_l_Lean_Parser_Command_mixfix___ lean_mark_persistent(l_Lean_Parser_Command_mixfix___closed__8); l_Lean_Parser_Command_mixfix___closed__9 = _init_l_Lean_Parser_Command_mixfix___closed__9(); lean_mark_persistent(l_Lean_Parser_Command_mixfix___closed__9); +l_Lean_Parser_Command_mixfix___closed__10 = _init_l_Lean_Parser_Command_mixfix___closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_mixfix___closed__10); l_Lean_Parser_Command_mixfix = _init_l_Lean_Parser_Command_mixfix(); lean_mark_persistent(l_Lean_Parser_Command_mixfix); res = l___regBuiltinParser_Lean_Parser_Command_mixfix(lean_io_mk_world()); @@ -15805,6 +16924,8 @@ l_Lean_Parser_Command_notation___closed__10 = _init_l_Lean_Parser_Command_notati lean_mark_persistent(l_Lean_Parser_Command_notation___closed__10); l_Lean_Parser_Command_notation___closed__11 = _init_l_Lean_Parser_Command_notation___closed__11(); lean_mark_persistent(l_Lean_Parser_Command_notation___closed__11); +l_Lean_Parser_Command_notation___closed__12 = _init_l_Lean_Parser_Command_notation___closed__12(); +lean_mark_persistent(l_Lean_Parser_Command_notation___closed__12); l_Lean_Parser_Command_notation = _init_l_Lean_Parser_Command_notation(); lean_mark_persistent(l_Lean_Parser_Command_notation); res = l___regBuiltinParser_Lean_Parser_Command_notation(lean_io_mk_world()); @@ -15840,6 +16961,8 @@ l_Lean_Parser_Command_macro__rules___closed__6 = _init_l_Lean_Parser_Command_mac lean_mark_persistent(l_Lean_Parser_Command_macro__rules___closed__6); l_Lean_Parser_Command_macro__rules___closed__7 = _init_l_Lean_Parser_Command_macro__rules___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_macro__rules___closed__7); +l_Lean_Parser_Command_macro__rules___closed__8 = _init_l_Lean_Parser_Command_macro__rules___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_macro__rules___closed__8); l_Lean_Parser_Command_macro__rules = _init_l_Lean_Parser_Command_macro__rules(); lean_mark_persistent(l_Lean_Parser_Command_macro__rules); res = l___regBuiltinParser_Lean_Parser_Command_macro__rules(lean_io_mk_world()); @@ -15881,6 +17004,8 @@ l_Lean_Parser_Command_syntax___closed__9 = _init_l_Lean_Parser_Command_syntax___ lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__9); l_Lean_Parser_Command_syntax___closed__10 = _init_l_Lean_Parser_Command_syntax___closed__10(); lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__10); +l_Lean_Parser_Command_syntax___closed__11 = _init_l_Lean_Parser_Command_syntax___closed__11(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__11); l_Lean_Parser_Command_syntax = _init_l_Lean_Parser_Command_syntax(); lean_mark_persistent(l_Lean_Parser_Command_syntax); res = l___regBuiltinParser_Lean_Parser_Command_syntax(lean_io_mk_world()); @@ -15916,6 +17041,8 @@ l_Lean_Parser_Command_syntaxCat___closed__5 = _init_l_Lean_Parser_Command_syntax lean_mark_persistent(l_Lean_Parser_Command_syntaxCat___closed__5); l_Lean_Parser_Command_syntaxCat___closed__6 = _init_l_Lean_Parser_Command_syntaxCat___closed__6(); lean_mark_persistent(l_Lean_Parser_Command_syntaxCat___closed__6); +l_Lean_Parser_Command_syntaxCat___closed__7 = _init_l_Lean_Parser_Command_syntaxCat___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_syntaxCat___closed__7); l_Lean_Parser_Command_syntaxCat = _init_l_Lean_Parser_Command_syntaxCat(); lean_mark_persistent(l_Lean_Parser_Command_syntaxCat); res = l___regBuiltinParser_Lean_Parser_Command_syntaxCat(lean_io_mk_world()); @@ -15959,6 +17086,8 @@ l_Lean_Parser_Command_macroArgSimple___closed__6 = _init_l_Lean_Parser_Command_m lean_mark_persistent(l_Lean_Parser_Command_macroArgSimple___closed__6); l_Lean_Parser_Command_macroArgSimple___closed__7 = _init_l_Lean_Parser_Command_macroArgSimple___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_macroArgSimple___closed__7); +l_Lean_Parser_Command_macroArgSimple___closed__8 = _init_l_Lean_Parser_Command_macroArgSimple___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_macroArgSimple___closed__8); l_Lean_Parser_Command_macroArgSimple = _init_l_Lean_Parser_Command_macroArgSimple(); lean_mark_persistent(l_Lean_Parser_Command_macroArgSimple); l_Lean_Parser_Command_macroArg___closed__1 = _init_l_Lean_Parser_Command_macroArg___closed__1(); @@ -16071,6 +17200,8 @@ l_Lean_Parser_Command_macro___closed__9 = _init_l_Lean_Parser_Command_macro___cl lean_mark_persistent(l_Lean_Parser_Command_macro___closed__9); l_Lean_Parser_Command_macro___closed__10 = _init_l_Lean_Parser_Command_macro___closed__10(); lean_mark_persistent(l_Lean_Parser_Command_macro___closed__10); +l_Lean_Parser_Command_macro___closed__11 = _init_l_Lean_Parser_Command_macro___closed__11(); +lean_mark_persistent(l_Lean_Parser_Command_macro___closed__11); l_Lean_Parser_Command_macro = _init_l_Lean_Parser_Command_macro(); lean_mark_persistent(l_Lean_Parser_Command_macro); res = l___regBuiltinParser_Lean_Parser_Command_macro(lean_io_mk_world()); diff --git a/stage0/stdlib/Lean/Parser/Tactic.c b/stage0/stdlib/Lean/Parser/Tactic.c index b40103361c..a26f54141f 100644 --- a/stage0/stdlib/Lean/Parser/Tactic.c +++ b/stage0/stdlib/Lean/Parser/Tactic.c @@ -36,12 +36,14 @@ lean_object* l_Lean_Parser_Tactic_subst___elambda__1___closed__7; lean_object* l_Lean_Parser_Tactic_withIds___closed__3; lean_object* l_Lean_Parser_Tactic_revert___closed__2; lean_object* l_Lean_Parser_Tactic_generalize___closed__1; +lean_object* l_Lean_Parser_Tactic_intro___closed__8; lean_object* l_Lean_Parser_Tactic_inductionAlt___closed__11; lean_object* l_Lean_Parser_Tactic_case___closed__6; lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mkError(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_apply___closed__2; extern lean_object* l_Lean_Parser_Term_structInst___closed__1; +lean_object* l_Lean_Parser_Tactic_skip___closed__6; lean_object* l_Lean_Parser_Tactic_clear___elambda__1___closed__2; lean_object* l_Lean_Parser_Tactic_generalize___closed__2; lean_object* l_Lean_Parser_Tactic_allGoals___elambda__1(lean_object*, lean_object*); @@ -94,6 +96,7 @@ lean_object* l_Lean_Parser_Tactic_underscore___closed__1; lean_object* l_Lean_Parser_Tactic_usingRec___closed__2; lean_object* l_Lean_Parser_Tactic_nestedTacticBlockCurly___closed__7; lean_object* l_Lean_Parser_Tactic_skip___closed__2; +lean_object* l_Lean_Parser_Tactic_injection___closed__8; lean_object* l_Lean_Parser_ParserState_mkNode(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_apply___closed__4; lean_object* l_Lean_Parser_Tactic_allGoals___elambda__1___closed__6; @@ -161,9 +164,10 @@ lean_object* l_Lean_Parser_Tactic_intros___closed__3; lean_object* l_Lean_Parser_Tactic_apply___closed__5; lean_object* l_Lean_Parser_Tactic_case___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_assumption___closed__4; -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_intros___closed__6; lean_object* l_Lean_Parser_Tactic_clear___closed__1; +lean_object* l_Lean_Parser_Tactic_exact___closed__7; lean_object* l_Lean_Parser_Tactic_clear___closed__2; lean_object* l_Lean_Parser_Tactic_clear; lean_object* l_Lean_Parser_Tactic_clear___elambda__1___closed__3; @@ -171,6 +175,7 @@ lean_object* l_Lean_Parser_Tactic_case___closed__4; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_inductionAlts___elambda__1___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_subst___closed__1; +lean_object* l_Lean_Parser_Tactic_refine___closed__7; lean_object* l_Lean_Parser_Tactic_induction; lean_object* l_Lean_Parser_Tactic_generalizingVars___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_refine___elambda__1___closed__6; @@ -188,6 +193,7 @@ extern lean_object* l_Lean_Parser_Term_hole___closed__4; extern lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_generalizingVars___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_usingRec___elambda__1___closed__4; +lean_object* l_Lean_Parser_Tactic_failIfSuccess___closed__7; extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; lean_object* l_Lean_Parser_Tactic_inductionAlts___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_traceState___closed__5; @@ -199,8 +205,8 @@ lean_object* l_Lean_Parser_Tactic_cases___elambda__1___closed__8; lean_object* l_Lean_Parser_Tactic_refine___elambda__1___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Tactic_generalize(lean_object*); extern lean_object* l_Lean_Parser_identNoAntiquot___closed__1; +lean_object* l_Lean_Parser_Tactic_intros___closed__8; lean_object* l_Lean_Parser_Tactic_allGoals___elambda__1___closed__3; -lean_object* l_Lean_Parser_Tactic_generalize___elambda__1___closed__12; lean_object* l_Lean_Parser_Tactic_assumption___elambda__1___closed__4; lean_object* l_Lean_Parser_Tactic_skip___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_case___elambda__1(lean_object*, lean_object*); @@ -218,6 +224,7 @@ lean_object* l_Lean_Parser_Tactic_revert___elambda__1___closed__7; lean_object* l_Lean_Parser_Tactic_allGoals; lean_object* l_Lean_Parser_Tactic_injection___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_refine___closed__3; +lean_object* l_Lean_Parser_Tactic_allGoals___closed__7; lean_object* l_Lean_Parser_Tactic_nestedTacticBlock___closed__1; lean_object* l_Lean_Parser_Tactic_cases; lean_object* l___regBuiltinParser_Lean_Parser_Tactic_case(lean_object*); @@ -229,6 +236,7 @@ lean_object* l_Lean_Parser_Tactic_case___elambda__1___closed__5; lean_object* l_Lean_Parser_nodeInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_allGoals___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_assumption___closed__1; +lean_object* l_Lean_Parser_Tactic_generalize___closed__12; lean_object* l_Lean_Parser_Tactic_apply___closed__3; lean_object* l_Lean_Parser_Tactic_clear___closed__5; lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -267,6 +275,7 @@ lean_object* l_Lean_Parser_Tactic_allGoals___elambda__1___closed__7; lean_object* l_Lean_Parser_optionaInfo(lean_object*); lean_object* l_Lean_Parser_Tactic_cases___closed__2; lean_object* l_Lean_Parser_Tactic_generalize___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Tactic_assumption___closed__6; lean_object* l_Lean_Parser_Tactic_induction___closed__7; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Tactic_inductionAlts___elambda__1___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_revert___closed__5; @@ -301,6 +310,7 @@ lean_object* l_Lean_Parser_Tactic_majorPremise___closed__3; extern lean_object* l_Lean_Parser_termParser___closed__2; lean_object* lean_name_mk_string(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_match___closed__2; +lean_object* l_Lean_Parser_Tactic_cases___closed__8; lean_object* l_Lean_Parser_Tactic_usingRec___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_apply___elambda__1___closed__7; lean_object* l_Lean_Parser_Tactic_generalize___elambda__1___closed__10; @@ -310,6 +320,7 @@ lean_object* l_Lean_Parser_Tactic_inductionAlts___closed__3; lean_object* l_Lean_Parser_Tactic_paren___closed__5; extern lean_object* l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; lean_object* l_Lean_Parser_Tactic_skip___elambda__1___closed__5; +lean_object* l_Lean_Parser_Tactic_traceState___closed__6; lean_object* l_Lean_Parser_Tactic_assumption___closed__2; lean_object* l_Lean_Parser_Tactic_exact___elambda__1___closed__8; extern lean_object* l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; @@ -319,6 +330,7 @@ lean_object* l_Lean_Parser_Tactic_exact___closed__5; lean_object* l_Lean_Parser_Tactic_cases___elambda__1___closed__6; lean_object* l_Lean_Parser_Tactic_clear___elambda__1___closed__4; lean_object* l_Lean_Parser_Tactic_skip___elambda__1___closed__2; +lean_object* l_Lean_Parser_Tactic_induction___closed__10; lean_object* l_Lean_Parser_Tactic_paren___closed__3; lean_object* l_Lean_Parser_Tactic_inductionAlt___closed__3; lean_object* l_Lean_Parser_Tactic_majorPremise___closed__2; @@ -402,6 +414,7 @@ lean_object* l_Lean_Parser_Tactic_clear___elambda__1(lean_object*, lean_object*) lean_object* l_Lean_Parser_Tactic_refine___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Tactic_exact(lean_object*); lean_object* l_Lean_Parser_Tactic_assumption___elambda__1___closed__1; +lean_object* l_Lean_Parser_Tactic_majorPremise___closed__6; lean_object* l_Lean_Parser_Tactic_revert___elambda__1(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_case___closed__3; @@ -412,13 +425,14 @@ lean_object* l_Lean_Parser_Tactic_skip___elambda__1___closed__1; lean_object* l_Lean_Parser_Tactic_induction___elambda__1___closed__2; lean_object* l_Lean_Parser_Tactic_generalize___elambda__1___closed__8; lean_object* l___regBuiltinParser_Lean_Parser_Tactic_allGoals(lean_object*); +lean_object* l_Lean_Parser_Tactic_subst___closed__7; lean_object* l_Lean_Parser_Tactic_induction___closed__6; -extern lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_withAlts___elambda__1(lean_object*, lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Tactic_cases(lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_withAlts; +lean_object* l_Lean_Parser_Tactic_apply___closed__7; lean_object* l_Lean_Parser_Tactic_refine___closed__4; lean_object* l_Lean_Parser_categoryParser(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_exact; @@ -429,6 +443,7 @@ lean_object* l_Lean_Parser_Tactic_revert___elambda__1___closed__3; lean_object* l_Lean_Parser_Tactic_case___closed__1; lean_object* l_Lean_Parser_Tactic_injection___elambda__1___closed__6; lean_object* l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__1; +lean_object* l_Lean_Parser_Tactic_revert___closed__7; lean_object* l_Lean_Parser_Tactic_allGoals___closed__5; lean_object* l_Lean_Parser_Tactic_paren___closed__6; lean_object* l_Lean_Parser_Tactic_skip___elambda__1___closed__4; @@ -441,6 +456,7 @@ lean_object* l_Lean_Parser_Tactic_induction___closed__3; lean_object* l_Lean_Parser_symbolInfo(lean_object*); lean_object* l_Lean_Parser_Tactic_revert___elambda__1___closed__5; lean_object* l_Lean_Parser_Tactic_apply___elambda__1___closed__6; +lean_object* l_Lean_Parser_Tactic_case___closed__8; lean_object* l_Lean_Parser_Tactic_clear___elambda__1___closed__1; lean_object* l_Lean_Parser_Tactic_cases___elambda__1___closed__4; lean_object* l_Lean_Parser_Tactic_clear___elambda__1___closed__8; @@ -519,6 +535,7 @@ lean_object* l_Lean_Parser_Tactic_induction___closed__9; lean_object* l_Lean_Parser_Tactic_nestedTacticBlock___closed__3; lean_object* l_Lean_Parser_Tactic_allGoals___closed__4; lean_object* l_Lean_Parser_Tactic_revert___elambda__1___closed__4; +lean_object* l_Lean_Parser_Tactic_clear___closed__7; lean_object* l_Lean_Parser_Tactic_intro___closed__1; lean_object* l_Lean_Parser_Tactic_inductionAlts___closed__4; lean_object* l_Lean_Parser_Tactic_injection___elambda__1(lean_object*, lean_object*); @@ -919,202 +936,233 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_intro___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_intro___elambda__1___closed__8; -lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_10, 1); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_intro___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_intro___elambda__1___closed__8; +lean_inc(x_1); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); lean_inc(x_14); -x_15 = l_Lean_Parser_Tactic_ident_x27___elambda__1(x_1, x_10); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) +if (lean_obj_tag(x_14) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +x_18 = l_Lean_Parser_Tactic_ident_x27___elambda__1(x_1, x_13); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_18, x_20, x_16); +x_22 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; +} +else +{ +lean_object* x_24; uint8_t x_25; +lean_dec(x_19); +x_24 = lean_ctor_get(x_18, 1); +lean_inc(x_24); +x_25 = lean_nat_dec_eq(x_24, x_17); +lean_dec(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_17); +x_26 = l_Lean_nullKind; +x_27 = l_Lean_Parser_ParserState_mkNode(x_18, x_26, x_16); +x_28 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_10); +return x_29; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); +x_31 = l_Lean_nullKind; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_16); +x_33 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_dec(x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_15, x_17, x_13); -x_19 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; uint8_t x_22; -lean_dec(x_16); -x_21 = lean_ctor_get(x_15, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_14); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_14); -x_23 = l_Lean_nullKind; -x_24 = l_Lean_Parser_ParserState_mkNode(x_15, x_23, x_13); -x_25 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_7); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_27 = l_Lean_Parser_ParserState_restore(x_15, x_13, x_14); -x_28 = l_Lean_nullKind; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_13); -x_30 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_11); lean_dec(x_1); -x_32 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_10, x_32, x_7); -return x_33; +x_35 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_13, x_35, x_10); +return x_36; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); -lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); +lean_dec(x_8); lean_dec(x_1); -return x_37; +return x_7; +} } else { -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = lean_ctor_get(x_2, 0); +lean_inc(x_37); +x_38 = lean_array_get_size(x_37); +lean_dec(x_37); +x_39 = lean_ctor_get(x_2, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) +lean_inc(x_1); +x_40 = lean_apply_2(x_4, x_1, x_2); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_35); +lean_dec(x_38); lean_dec(x_1); -return x_37; +return x_40; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = lean_ctor_get(x_42, 0); +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +lean_dec(x_41); +x_43 = lean_ctor_get(x_40, 1); lean_inc(x_43); -x_44 = lean_array_get_size(x_43); +x_44 = lean_nat_dec_eq(x_43, x_39); lean_dec(x_43); -x_45 = l_Lean_Parser_Tactic_intro___elambda__1___closed__6; -x_46 = l_Lean_Parser_Tactic_intro___elambda__1___closed__8; -lean_inc(x_1); -x_47 = l_Lean_Parser_nonReservedSymbolFnAux(x_45, x_46, x_1, x_42); +if (x_44 == 0) +{ +lean_dec(x_42); +lean_dec(x_39); +lean_dec(x_38); +lean_dec(x_1); +return x_40; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_inc(x_39); +x_45 = l_Lean_Parser_ParserState_restore(x_40, x_38, x_39); +lean_dec(x_38); +x_46 = lean_unsigned_to_nat(1024u); +x_47 = l_Lean_Parser_checkPrecFn(x_46, x_1, x_45); x_48 = lean_ctor_get(x_47, 3); lean_inc(x_48); if (lean_obj_tag(x_48) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; x_49 = lean_ctor_get(x_47, 0); lean_inc(x_49); x_50 = lean_array_get_size(x_49); lean_dec(x_49); -x_51 = lean_ctor_get(x_47, 1); -lean_inc(x_51); -x_52 = l_Lean_Parser_Tactic_ident_x27___elambda__1(x_1, x_47); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) +x_51 = l_Lean_Parser_Tactic_intro___elambda__1___closed__6; +x_52 = l_Lean_Parser_Tactic_intro___elambda__1___closed__8; +lean_inc(x_1); +x_53 = l_Lean_Parser_nonReservedSymbolFnAux(x_51, x_52, x_1, x_47); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_51); -x_54 = l_Lean_nullKind; -x_55 = l_Lean_Parser_ParserState_mkNode(x_52, x_54, x_50); -x_56 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_44); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_39, x_36); -lean_dec(x_36); -return x_58; -} -else -{ -lean_object* x_59; uint8_t x_60; -lean_dec(x_53); -x_59 = lean_ctor_get(x_52, 1); +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = lean_array_get_size(x_55); +lean_dec(x_55); +x_57 = lean_ctor_get(x_53, 1); +lean_inc(x_57); +x_58 = l_Lean_Parser_Tactic_ident_x27___elambda__1(x_1, x_53); +x_59 = lean_ctor_get(x_58, 3); lean_inc(x_59); -x_60 = lean_nat_dec_eq(x_59, x_51); -lean_dec(x_59); -if (x_60 == 0) +if (lean_obj_tag(x_59) == 0) { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_51); -x_61 = l_Lean_nullKind; -x_62 = l_Lean_Parser_ParserState_mkNode(x_52, x_61, x_50); -x_63 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_44); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_39, x_36); -lean_dec(x_36); -return x_65; +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_57); +x_60 = l_Lean_nullKind; +x_61 = l_Lean_Parser_ParserState_mkNode(x_58, x_60, x_56); +x_62 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_50); +x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_42, x_39); +lean_dec(x_39); +return x_64; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_66 = l_Lean_Parser_ParserState_restore(x_52, x_50, x_51); +lean_object* x_65; uint8_t x_66; +lean_dec(x_59); +x_65 = lean_ctor_get(x_58, 1); +lean_inc(x_65); +x_66 = lean_nat_dec_eq(x_65, x_57); +lean_dec(x_65); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_57); x_67 = l_Lean_nullKind; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_50); +x_68 = l_Lean_Parser_ParserState_mkNode(x_58, x_67, x_56); x_69 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_70 = l_Lean_Parser_ParserState_mkNode(x_68, x_69, x_44); -x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_39, x_36); -lean_dec(x_36); +x_70 = l_Lean_Parser_ParserState_mkNode(x_68, x_69, x_50); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_42, x_39); +lean_dec(x_39); return x_71; } +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_72 = l_Lean_Parser_ParserState_restore(x_58, x_56, x_57); +x_73 = l_Lean_nullKind; +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_73, x_56); +x_75 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_50); +x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_42, x_39); +lean_dec(x_39); +return x_77; +} } } else { -lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_object* x_78; lean_object* x_79; lean_object* x_80; +lean_dec(x_54); +lean_dec(x_1); +x_78 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; +x_79 = l_Lean_Parser_ParserState_mkNode(x_53, x_78, x_50); +x_80 = l_Lean_Parser_mergeOrElseErrors(x_79, x_42, x_39); +lean_dec(x_39); +return x_80; +} +} +else +{ +lean_object* x_81; lean_dec(x_48); lean_dec(x_1); -x_72 = l_Lean_Parser_Tactic_intro___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_47, x_72, x_44); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_81 = l_Lean_Parser_mergeOrElseErrors(x_47, x_42, x_39); +lean_dec(x_39); +return x_81; } } } @@ -1165,16 +1213,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_intro___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_intro___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_intro___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_intro___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_intro___closed__4; +x_3 = l_Lean_Parser_Tactic_intro___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_intro___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_intro___closed__7() { _start: { lean_object* x_1; @@ -1182,12 +1240,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_intro___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_intro___closed__7() { +lean_object* _init_l_Lean_Parser_Tactic_intro___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_intro___closed__5; -x_2 = l_Lean_Parser_Tactic_intro___closed__6; +x_1 = l_Lean_Parser_Tactic_intro___closed__6; +x_2 = l_Lean_Parser_Tactic_intro___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1198,7 +1256,7 @@ lean_object* _init_l_Lean_Parser_Tactic_intro() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_intro___closed__7; +x_1 = l_Lean_Parser_Tactic_intro___closed__8; return x_1; } } @@ -1364,122 +1422,153 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_intros___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_intros___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_intros___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_intros___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_14 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_intros___elambda__1___spec__1(x_1, x_10); -x_15 = l_Lean_nullKind; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_13); -x_17 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_intros___elambda__1___spec__1(x_1, x_13); +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_16); +x_20 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); lean_dec(x_1); -x_19 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_21 = lean_ctor_get(x_2, 0); -lean_inc(x_21); -x_22 = lean_array_get_size(x_21); -lean_dec(x_21); -x_23 = lean_ctor_get(x_2, 1); -lean_inc(x_23); -lean_inc(x_1); -x_24 = lean_apply_2(x_4, x_1, x_2); -x_25 = lean_ctor_get(x_24, 3); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) -{ -lean_dec(x_23); -lean_dec(x_22); +lean_dec(x_8); lean_dec(x_1); -return x_24; +return x_7; +} } else { -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 0); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_24 = lean_ctor_get(x_2, 0); +lean_inc(x_24); +x_25 = lean_array_get_size(x_24); +lean_dec(x_24); +x_26 = lean_ctor_get(x_2, 1); lean_inc(x_26); -lean_dec(x_25); -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -x_28 = lean_nat_dec_eq(x_27, x_23); -lean_dec(x_27); -if (x_28 == 0) +lean_inc(x_1); +x_27 = lean_apply_2(x_4, x_1, x_2); +x_28 = lean_ctor_get(x_27, 3); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) { lean_dec(x_26); -lean_dec(x_23); -lean_dec(x_22); +lean_dec(x_25); lean_dec(x_1); -return x_24; +return x_27; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_inc(x_23); -x_29 = l_Lean_Parser_ParserState_restore(x_24, x_22, x_23); -lean_dec(x_22); -x_30 = lean_ctor_get(x_29, 0); +lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +lean_dec(x_28); +x_30 = lean_ctor_get(x_27, 1); lean_inc(x_30); -x_31 = lean_array_get_size(x_30); +x_31 = lean_nat_dec_eq(x_30, x_26); lean_dec(x_30); -x_32 = l_Lean_Parser_Tactic_intros___elambda__1___closed__6; -x_33 = l_Lean_Parser_Tactic_intros___elambda__1___closed__8; -lean_inc(x_1); -x_34 = l_Lean_Parser_nonReservedSymbolFnAux(x_32, x_33, x_1, x_29); +if (x_31 == 0) +{ +lean_dec(x_29); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_1); +return x_27; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_inc(x_26); +x_32 = l_Lean_Parser_ParserState_restore(x_27, x_25, x_26); +lean_dec(x_25); +x_33 = lean_unsigned_to_nat(1024u); +x_34 = l_Lean_Parser_checkPrecFn(x_33, x_1, x_32); x_35 = lean_ctor_get(x_34, 3); lean_inc(x_35); if (lean_obj_tag(x_35) == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_36 = lean_ctor_get(x_34, 0); lean_inc(x_36); x_37 = lean_array_get_size(x_36); lean_dec(x_36); -x_38 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_intros___elambda__1___spec__1(x_1, x_34); -x_39 = l_Lean_nullKind; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_37); -x_41 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_31); -x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_26, x_23); -lean_dec(x_23); -return x_43; +x_38 = l_Lean_Parser_Tactic_intros___elambda__1___closed__6; +x_39 = l_Lean_Parser_Tactic_intros___elambda__1___closed__8; +lean_inc(x_1); +x_40 = l_Lean_Parser_nonReservedSymbolFnAux(x_38, x_39, x_1, x_34); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = lean_array_get_size(x_42); +lean_dec(x_42); +x_44 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_intros___elambda__1___spec__1(x_1, x_40); +x_45 = l_Lean_nullKind; +x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_43); +x_47 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_37); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_29, x_26); +lean_dec(x_26); +return x_49; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_41); +lean_dec(x_1); +x_50 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_40, x_50, x_37); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_29, x_26); +lean_dec(x_26); +return x_52; +} +} +else +{ +lean_object* x_53; lean_dec(x_35); lean_dec(x_1); -x_44 = l_Lean_Parser_Tactic_intros___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_34, x_44, x_31); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_26, x_23); -lean_dec(x_23); -return x_46; +x_53 = l_Lean_Parser_mergeOrElseErrors(x_34, x_29, x_26); +lean_dec(x_26); +return x_53; } } } @@ -1530,16 +1619,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_intros___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_intros___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_intros___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_intros___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_intros___closed__4; +x_3 = l_Lean_Parser_Tactic_intros___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_intros___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_intros___closed__7() { _start: { lean_object* x_1; @@ -1547,12 +1646,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_intros___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_intros___closed__7() { +lean_object* _init_l_Lean_Parser_Tactic_intros___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_intros___closed__5; -x_2 = l_Lean_Parser_Tactic_intros___closed__6; +x_1 = l_Lean_Parser_Tactic_intros___closed__6; +x_2 = l_Lean_Parser_Tactic_intros___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1563,7 +1662,7 @@ lean_object* _init_l_Lean_Parser_Tactic_intros() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_intros___closed__7; +x_1 = l_Lean_Parser_Tactic_intros___closed__8; return x_1; } } @@ -1729,162 +1828,193 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_revert___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_revert___elambda__1___closed__8; -lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_revert___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_revert___elambda__1___closed__8; lean_inc(x_1); -x_14 = l_Lean_Parser_ident___elambda__1(x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_13, 0); lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_13); -x_19 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_16 = lean_array_get_size(x_15); lean_dec(x_15); -lean_dec(x_1); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_11); -lean_dec(x_1); -x_25 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_10, x_25, x_7); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_27 = lean_ctor_get(x_2, 0); -lean_inc(x_27); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = lean_ctor_get(x_2, 1); -lean_inc(x_29); lean_inc(x_1); -x_30 = lean_apply_2(x_4, x_1, x_2); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +x_17 = l_Lean_Parser_ident___elambda__1(x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_dec(x_29); -lean_dec(x_28); -lean_dec(x_1); -return x_30; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; } else { -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_18); +lean_dec(x_1); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_14); +lean_dec(x_1); +x_28 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_13, x_28, x_10); +return x_29; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_2, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +x_32 = lean_ctor_get(x_2, 1); lean_inc(x_32); -lean_dec(x_31); -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -x_34 = lean_nat_dec_eq(x_33, x_29); -lean_dec(x_33); -if (x_34 == 0) +lean_inc(x_1); +x_33 = lean_apply_2(x_4, x_1, x_2); +x_34 = lean_ctor_get(x_33, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) { lean_dec(x_32); -lean_dec(x_29); -lean_dec(x_28); +lean_dec(x_31); lean_dec(x_1); -return x_30; +return x_33; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_inc(x_29); -x_35 = l_Lean_Parser_ParserState_restore(x_30, x_28, x_29); -lean_dec(x_28); -x_36 = lean_ctor_get(x_35, 0); +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_33, 1); lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +x_37 = lean_nat_dec_eq(x_36, x_32); lean_dec(x_36); -x_38 = l_Lean_Parser_Tactic_revert___elambda__1___closed__6; -x_39 = l_Lean_Parser_Tactic_revert___elambda__1___closed__8; -lean_inc(x_1); -x_40 = l_Lean_Parser_nonReservedSymbolFnAux(x_38, x_39, x_1, x_35); +if (x_37 == 0) +{ +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_1); +return x_33; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_inc(x_32); +x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); +lean_dec(x_31); +x_39 = lean_unsigned_to_nat(1024u); +x_40 = l_Lean_Parser_checkPrecFn(x_39, x_1, x_38); x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); if (lean_obj_tag(x_41) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; x_42 = lean_ctor_get(x_40, 0); lean_inc(x_42); x_43 = lean_array_get_size(x_42); lean_dec(x_42); +x_44 = l_Lean_Parser_Tactic_revert___elambda__1___closed__6; +x_45 = l_Lean_Parser_Tactic_revert___elambda__1___closed__8; lean_inc(x_1); -x_44 = l_Lean_Parser_ident___elambda__1(x_1, x_40); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) +x_46 = l_Lean_Parser_nonReservedSymbolFnAux(x_44, x_45, x_1, x_40); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_44); -x_47 = l_Lean_nullKind; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_43); -x_49 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_37); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_32, x_29); -lean_dec(x_29); -return x_51; +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_array_get_size(x_48); +lean_dec(x_48); +lean_inc(x_1); +x_50 = l_Lean_Parser_ident___elambda__1(x_1, x_46); +x_51 = lean_ctor_get(x_50, 3); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_52 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_50); +x_53 = l_Lean_nullKind; +x_54 = l_Lean_Parser_ParserState_mkNode(x_52, x_53, x_49); +x_55 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_43); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_35, x_32); +lean_dec(x_32); +return x_57; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_45); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_51); lean_dec(x_1); -x_52 = l_Lean_nullKind; -x_53 = l_Lean_Parser_ParserState_mkNode(x_44, x_52, x_43); -x_54 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_37); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_32, x_29); -lean_dec(x_29); -return x_56; +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_50, x_58, x_49); +x_60 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_43); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_35, x_32); +lean_dec(x_32); +return x_62; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_47); +lean_dec(x_1); +x_63 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_46, x_63, x_43); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); +lean_dec(x_32); +return x_65; +} +} +else +{ +lean_object* x_66; lean_dec(x_41); lean_dec(x_1); -x_57 = l_Lean_Parser_Tactic_revert___elambda__1___closed__2; -x_58 = l_Lean_Parser_ParserState_mkNode(x_40, x_57, x_37); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_32, x_29); -lean_dec(x_29); -return x_59; +x_66 = l_Lean_Parser_mergeOrElseErrors(x_40, x_35, x_32); +lean_dec(x_32); +return x_66; } } } @@ -1926,16 +2056,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_revert___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_revert___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_revert___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_revert___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_revert___closed__3; +x_3 = l_Lean_Parser_Tactic_revert___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_revert___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_revert___closed__6() { _start: { lean_object* x_1; @@ -1943,12 +2083,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_revert___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_revert___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_revert___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_revert___closed__4; -x_2 = l_Lean_Parser_Tactic_revert___closed__5; +x_1 = l_Lean_Parser_Tactic_revert___closed__5; +x_2 = l_Lean_Parser_Tactic_revert___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -1959,7 +2099,7 @@ lean_object* _init_l_Lean_Parser_Tactic_revert() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_revert___closed__6; +x_1 = l_Lean_Parser_Tactic_revert___closed__7; return x_1; } } @@ -2063,162 +2203,193 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_clear___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_clear___elambda__1___closed__8; -lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_clear___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_clear___elambda__1___closed__8; lean_inc(x_1); -x_14 = l_Lean_Parser_ident___elambda__1(x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_13, 0); lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_13); -x_19 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_16 = lean_array_get_size(x_15); lean_dec(x_15); -lean_dec(x_1); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_11); -lean_dec(x_1); -x_25 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_10, x_25, x_7); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_27 = lean_ctor_get(x_2, 0); -lean_inc(x_27); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = lean_ctor_get(x_2, 1); -lean_inc(x_29); lean_inc(x_1); -x_30 = lean_apply_2(x_4, x_1, x_2); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +x_17 = l_Lean_Parser_ident___elambda__1(x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_dec(x_29); -lean_dec(x_28); -lean_dec(x_1); -return x_30; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; } else { -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_18); +lean_dec(x_1); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_14); +lean_dec(x_1); +x_28 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_13, x_28, x_10); +return x_29; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_2, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +x_32 = lean_ctor_get(x_2, 1); lean_inc(x_32); -lean_dec(x_31); -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -x_34 = lean_nat_dec_eq(x_33, x_29); -lean_dec(x_33); -if (x_34 == 0) +lean_inc(x_1); +x_33 = lean_apply_2(x_4, x_1, x_2); +x_34 = lean_ctor_get(x_33, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) { lean_dec(x_32); -lean_dec(x_29); -lean_dec(x_28); +lean_dec(x_31); lean_dec(x_1); -return x_30; +return x_33; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_inc(x_29); -x_35 = l_Lean_Parser_ParserState_restore(x_30, x_28, x_29); -lean_dec(x_28); -x_36 = lean_ctor_get(x_35, 0); +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_33, 1); lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +x_37 = lean_nat_dec_eq(x_36, x_32); lean_dec(x_36); -x_38 = l_Lean_Parser_Tactic_clear___elambda__1___closed__6; -x_39 = l_Lean_Parser_Tactic_clear___elambda__1___closed__8; -lean_inc(x_1); -x_40 = l_Lean_Parser_nonReservedSymbolFnAux(x_38, x_39, x_1, x_35); +if (x_37 == 0) +{ +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_1); +return x_33; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_inc(x_32); +x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); +lean_dec(x_31); +x_39 = lean_unsigned_to_nat(1024u); +x_40 = l_Lean_Parser_checkPrecFn(x_39, x_1, x_38); x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); if (lean_obj_tag(x_41) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; x_42 = lean_ctor_get(x_40, 0); lean_inc(x_42); x_43 = lean_array_get_size(x_42); lean_dec(x_42); +x_44 = l_Lean_Parser_Tactic_clear___elambda__1___closed__6; +x_45 = l_Lean_Parser_Tactic_clear___elambda__1___closed__8; lean_inc(x_1); -x_44 = l_Lean_Parser_ident___elambda__1(x_1, x_40); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) +x_46 = l_Lean_Parser_nonReservedSymbolFnAux(x_44, x_45, x_1, x_40); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_44); -x_47 = l_Lean_nullKind; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_43); -x_49 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_37); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_32, x_29); -lean_dec(x_29); -return x_51; +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_array_get_size(x_48); +lean_dec(x_48); +lean_inc(x_1); +x_50 = l_Lean_Parser_ident___elambda__1(x_1, x_46); +x_51 = lean_ctor_get(x_50, 3); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_52 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_50); +x_53 = l_Lean_nullKind; +x_54 = l_Lean_Parser_ParserState_mkNode(x_52, x_53, x_49); +x_55 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_43); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_35, x_32); +lean_dec(x_32); +return x_57; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_45); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_51); lean_dec(x_1); -x_52 = l_Lean_nullKind; -x_53 = l_Lean_Parser_ParserState_mkNode(x_44, x_52, x_43); -x_54 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_37); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_32, x_29); -lean_dec(x_29); -return x_56; +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_50, x_58, x_49); +x_60 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_43); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_35, x_32); +lean_dec(x_32); +return x_62; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_47); +lean_dec(x_1); +x_63 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_46, x_63, x_43); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); +lean_dec(x_32); +return x_65; +} +} +else +{ +lean_object* x_66; lean_dec(x_41); lean_dec(x_1); -x_57 = l_Lean_Parser_Tactic_clear___elambda__1___closed__2; -x_58 = l_Lean_Parser_ParserState_mkNode(x_40, x_57, x_37); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_32, x_29); -lean_dec(x_29); -return x_59; +x_66 = l_Lean_Parser_mergeOrElseErrors(x_40, x_35, x_32); +lean_dec(x_32); +return x_66; } } } @@ -2260,16 +2431,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_clear___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_clear___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_clear___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_clear___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_clear___closed__3; +x_3 = l_Lean_Parser_Tactic_clear___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_clear___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_clear___closed__6() { _start: { lean_object* x_1; @@ -2277,12 +2458,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_clear___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_clear___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_clear___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_clear___closed__4; -x_2 = l_Lean_Parser_Tactic_clear___closed__5; +x_1 = l_Lean_Parser_Tactic_clear___closed__5; +x_2 = l_Lean_Parser_Tactic_clear___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -2293,7 +2474,7 @@ lean_object* _init_l_Lean_Parser_Tactic_clear() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_clear___closed__6; +x_1 = l_Lean_Parser_Tactic_clear___closed__7; return x_1; } } @@ -2389,162 +2570,193 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_subst___elambda__1___closed__5; -x_9 = l_Lean_Parser_Tactic_subst___elambda__1___closed__7; -lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_subst___elambda__1___closed__5; +x_12 = l_Lean_Parser_Tactic_subst___elambda__1___closed__7; lean_inc(x_1); -x_14 = l_Lean_Parser_ident___elambda__1(x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_13, 0); lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_14); -x_17 = l_Lean_nullKind; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_13); -x_19 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_16 = lean_array_get_size(x_15); lean_dec(x_15); -lean_dec(x_1); -x_21 = l_Lean_nullKind; -x_22 = l_Lean_Parser_ParserState_mkNode(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_11); -lean_dec(x_1); -x_25 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_26 = l_Lean_Parser_ParserState_mkNode(x_10, x_25, x_7); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_27 = lean_ctor_get(x_2, 0); -lean_inc(x_27); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = lean_ctor_get(x_2, 1); -lean_inc(x_29); lean_inc(x_1); -x_30 = lean_apply_2(x_4, x_1, x_2); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +x_17 = l_Lean_Parser_ident___elambda__1(x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_dec(x_29); -lean_dec(x_28); -lean_dec(x_1); -return x_30; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_17); +x_20 = l_Lean_nullKind; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; } else { -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_18); +lean_dec(x_1); +x_24 = l_Lean_nullKind; +x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_14); +lean_dec(x_1); +x_28 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_29 = l_Lean_Parser_ParserState_mkNode(x_13, x_28, x_10); +return x_29; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_2, 0); +lean_inc(x_30); +x_31 = lean_array_get_size(x_30); +lean_dec(x_30); +x_32 = lean_ctor_get(x_2, 1); lean_inc(x_32); -lean_dec(x_31); -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -x_34 = lean_nat_dec_eq(x_33, x_29); -lean_dec(x_33); -if (x_34 == 0) +lean_inc(x_1); +x_33 = lean_apply_2(x_4, x_1, x_2); +x_34 = lean_ctor_get(x_33, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) { lean_dec(x_32); -lean_dec(x_29); -lean_dec(x_28); +lean_dec(x_31); lean_dec(x_1); -return x_30; +return x_33; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_inc(x_29); -x_35 = l_Lean_Parser_ParserState_restore(x_30, x_28, x_29); -lean_dec(x_28); -x_36 = lean_ctor_get(x_35, 0); +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_33, 1); lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +x_37 = lean_nat_dec_eq(x_36, x_32); lean_dec(x_36); -x_38 = l_Lean_Parser_Tactic_subst___elambda__1___closed__5; -x_39 = l_Lean_Parser_Tactic_subst___elambda__1___closed__7; -lean_inc(x_1); -x_40 = l_Lean_Parser_nonReservedSymbolFnAux(x_38, x_39, x_1, x_35); +if (x_37 == 0) +{ +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_1); +return x_33; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_inc(x_32); +x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); +lean_dec(x_31); +x_39 = lean_unsigned_to_nat(1024u); +x_40 = l_Lean_Parser_checkPrecFn(x_39, x_1, x_38); x_41 = lean_ctor_get(x_40, 3); lean_inc(x_41); if (lean_obj_tag(x_41) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; x_42 = lean_ctor_get(x_40, 0); lean_inc(x_42); x_43 = lean_array_get_size(x_42); lean_dec(x_42); +x_44 = l_Lean_Parser_Tactic_subst___elambda__1___closed__5; +x_45 = l_Lean_Parser_Tactic_subst___elambda__1___closed__7; lean_inc(x_1); -x_44 = l_Lean_Parser_ident___elambda__1(x_1, x_40); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) +x_46 = l_Lean_Parser_nonReservedSymbolFnAux(x_44, x_45, x_1, x_40); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_46 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_44); -x_47 = l_Lean_nullKind; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_43); -x_49 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_37); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_32, x_29); -lean_dec(x_29); -return x_51; +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_array_get_size(x_48); +lean_dec(x_48); +lean_inc(x_1); +x_50 = l_Lean_Parser_ident___elambda__1(x_1, x_46); +x_51 = lean_ctor_get(x_50, 3); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_52 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Tactic_revert___elambda__1___spec__1(x_1, x_50); +x_53 = l_Lean_nullKind; +x_54 = l_Lean_Parser_ParserState_mkNode(x_52, x_53, x_49); +x_55 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_43); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_35, x_32); +lean_dec(x_32); +return x_57; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_45); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_51); lean_dec(x_1); -x_52 = l_Lean_nullKind; -x_53 = l_Lean_Parser_ParserState_mkNode(x_44, x_52, x_43); -x_54 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_37); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_32, x_29); -lean_dec(x_29); -return x_56; +x_58 = l_Lean_nullKind; +x_59 = l_Lean_Parser_ParserState_mkNode(x_50, x_58, x_49); +x_60 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_43); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_35, x_32); +lean_dec(x_32); +return x_62; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_47); +lean_dec(x_1); +x_63 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; +x_64 = l_Lean_Parser_ParserState_mkNode(x_46, x_63, x_43); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_35, x_32); +lean_dec(x_32); +return x_65; +} +} +else +{ +lean_object* x_66; lean_dec(x_41); lean_dec(x_1); -x_57 = l_Lean_Parser_Tactic_subst___elambda__1___closed__1; -x_58 = l_Lean_Parser_ParserState_mkNode(x_40, x_57, x_37); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_32, x_29); -lean_dec(x_29); -return x_59; +x_66 = l_Lean_Parser_mergeOrElseErrors(x_40, x_35, x_32); +lean_dec(x_32); +return x_66; } } } @@ -2586,16 +2798,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_subst___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_subst___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_subst___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_subst___elambda__1___closed__3; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_subst___closed__3; +x_3 = l_Lean_Parser_Tactic_subst___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_subst___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_subst___closed__6() { _start: { lean_object* x_1; @@ -2603,12 +2825,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_subst___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_subst___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_subst___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_subst___closed__4; -x_2 = l_Lean_Parser_Tactic_subst___closed__5; +x_1 = l_Lean_Parser_Tactic_subst___closed__5; +x_2 = l_Lean_Parser_Tactic_subst___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -2619,7 +2841,7 @@ lean_object* _init_l_Lean_Parser_Tactic_subst() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_subst___closed__6; +x_1 = l_Lean_Parser_Tactic_subst___closed__7; return x_1; } } @@ -2715,75 +2937,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__5; -x_9 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__7; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__5; +x_12 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__7; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__5; -x_25 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__7; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__5; +x_31 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__7; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -2812,16 +3065,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_assumption___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_assumption___closed__2; +x_3 = l_Lean_Parser_Tactic_assumption___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__4() { +lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__5() { _start: { lean_object* x_1; @@ -2829,12 +3092,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_assumption___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_assumption___closed__3; -x_2 = l_Lean_Parser_Tactic_assumption___closed__4; +x_1 = l_Lean_Parser_Tactic_assumption___closed__4; +x_2 = l_Lean_Parser_Tactic_assumption___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -2845,7 +3108,7 @@ lean_object* _init_l_Lean_Parser_Tactic_assumption() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_assumption___closed__5; +x_1 = l_Lean_Parser_Tactic_assumption___closed__6; return x_1; } } @@ -2949,114 +3212,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_apply___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_apply___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_apply___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_apply___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_termParser___closed__2; -x_13 = lean_unsigned_to_nat(0u); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Tactic_apply___elambda__1___closed__6; -x_31 = l_Lean_Parser_Tactic_apply___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_termParser___closed__2; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Tactic_apply___elambda__1___closed__6; +x_37 = l_Lean_Parser_Tactic_apply___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_apply___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -3098,16 +3392,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_apply___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_apply___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_apply___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_apply___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_apply___closed__3; +x_3 = l_Lean_Parser_Tactic_apply___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_apply___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_apply___closed__6() { _start: { lean_object* x_1; @@ -3115,12 +3419,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_apply___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_apply___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_apply___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_apply___closed__4; -x_2 = l_Lean_Parser_Tactic_apply___closed__5; +x_1 = l_Lean_Parser_Tactic_apply___closed__5; +x_2 = l_Lean_Parser_Tactic_apply___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3131,7 +3435,7 @@ lean_object* _init_l_Lean_Parser_Tactic_apply() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_apply___closed__6; +x_1 = l_Lean_Parser_Tactic_apply___closed__7; return x_1; } } @@ -3235,114 +3539,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_exact___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_exact___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_exact___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_exact___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_termParser___closed__2; -x_13 = lean_unsigned_to_nat(0u); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Tactic_exact___elambda__1___closed__6; -x_31 = l_Lean_Parser_Tactic_exact___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_termParser___closed__2; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Tactic_exact___elambda__1___closed__6; +x_37 = l_Lean_Parser_Tactic_exact___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_exact___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -3384,16 +3719,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_exact___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_exact___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_exact___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_exact___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_exact___closed__3; +x_3 = l_Lean_Parser_Tactic_exact___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_exact___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_exact___closed__6() { _start: { lean_object* x_1; @@ -3401,12 +3746,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_exact___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_exact___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_exact___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_exact___closed__4; -x_2 = l_Lean_Parser_Tactic_exact___closed__5; +x_1 = l_Lean_Parser_Tactic_exact___closed__5; +x_2 = l_Lean_Parser_Tactic_exact___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3417,7 +3762,7 @@ lean_object* _init_l_Lean_Parser_Tactic_exact() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_exact___closed__6; +x_1 = l_Lean_Parser_Tactic_exact___closed__7; return x_1; } } @@ -3521,114 +3866,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_refine___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_refine___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_refine___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_refine___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_termParser___closed__2; -x_13 = lean_unsigned_to_nat(0u); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Tactic_refine___elambda__1___closed__6; -x_31 = l_Lean_Parser_Tactic_refine___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_termParser___closed__2; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Tactic_refine___elambda__1___closed__6; +x_37 = l_Lean_Parser_Tactic_refine___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_refine___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -3670,16 +4046,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_refine___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_refine___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_refine___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_refine___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_refine___closed__3; +x_3 = l_Lean_Parser_Tactic_refine___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_refine___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_refine___closed__6() { _start: { lean_object* x_1; @@ -3687,12 +4073,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_refine___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_refine___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_refine___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_refine___closed__4; -x_2 = l_Lean_Parser_Tactic_refine___closed__5; +x_1 = l_Lean_Parser_Tactic_refine___closed__5; +x_2 = l_Lean_Parser_Tactic_refine___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -3703,7 +4089,7 @@ lean_object* _init_l_Lean_Parser_Tactic_refine() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_refine___closed__6; +x_1 = l_Lean_Parser_Tactic_refine___closed__7; return x_1; } } @@ -3799,150 +4185,181 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_case___elambda__1___closed__5; -x_9 = l_Lean_Parser_Tactic_case___elambda__1___closed__7; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_case___elambda__1___closed__5; +x_12 = l_Lean_Parser_Tactic_case___elambda__1___closed__7; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; +lean_object* x_15; lean_object* x_16; lean_inc(x_1); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_15 = l_Lean_Parser_ident___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Parser_categoryParser___elambda__1(x_17, x_18, x_1, x_15); +x_20 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); +lean_object* x_22; lean_object* x_23; +lean_dec(x_16); lean_dec(x_1); -x_19 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_15, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_11); +lean_object* x_24; lean_object* x_25; +lean_dec(x_14); lean_dec(x_1); -x_21 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_10, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_10); +return x_25; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -x_25 = lean_ctor_get(x_2, 1); -lean_inc(x_25); -lean_inc(x_1); -x_26 = lean_apply_2(x_4, x_1, x_2); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) -{ -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_8); lean_dec(x_1); -return x_26; +return x_7; +} } else { -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_26 = lean_ctor_get(x_2, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = lean_ctor_get(x_2, 1); lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -x_30 = lean_nat_dec_eq(x_29, x_25); -lean_dec(x_29); -if (x_30 == 0) +lean_inc(x_1); +x_29 = lean_apply_2(x_4, x_1, x_2); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { lean_dec(x_28); -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_27); lean_dec(x_1); -return x_26; +return x_29; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_inc(x_25); -x_31 = l_Lean_Parser_ParserState_restore(x_26, x_24, x_25); -lean_dec(x_24); -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +lean_dec(x_30); +x_32 = lean_ctor_get(x_29, 1); lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +x_33 = lean_nat_dec_eq(x_32, x_28); lean_dec(x_32); -x_34 = l_Lean_Parser_Tactic_case___elambda__1___closed__5; -x_35 = l_Lean_Parser_Tactic_case___elambda__1___closed__7; -lean_inc(x_1); -x_36 = l_Lean_Parser_nonReservedSymbolFnAux(x_34, x_35, x_1, x_31); +if (x_33 == 0) +{ +lean_dec(x_31); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_1); +return x_29; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_28); +x_34 = l_Lean_Parser_ParserState_restore(x_29, x_27, x_28); +lean_dec(x_27); +x_35 = lean_unsigned_to_nat(1024u); +x_36 = l_Lean_Parser_checkPrecFn(x_35, x_1, x_34); x_37 = lean_ctor_get(x_36, 3); lean_inc(x_37); if (lean_obj_tag(x_37) == 0) { -lean_object* x_38; lean_object* x_39; +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = l_Lean_Parser_Tactic_case___elambda__1___closed__5; +x_41 = l_Lean_Parser_Tactic_case___elambda__1___closed__7; lean_inc(x_1); -x_38 = l_Lean_Parser_ident___elambda__1(x_1, x_36); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) +x_42 = l_Lean_Parser_nonReservedSymbolFnAux(x_40, x_41, x_1, x_36); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_40 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_41 = lean_unsigned_to_nat(0u); -x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); -x_43 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_33); -x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_28, x_25); -lean_dec(x_25); -return x_45; +lean_object* x_44; lean_object* x_45; +lean_inc(x_1); +x_44 = l_Lean_Parser_ident___elambda__1(x_1, x_42); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_46 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_47 = lean_unsigned_to_nat(0u); +x_48 = l_Lean_Parser_categoryParser___elambda__1(x_46, x_47, x_1, x_44); +x_49 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_39); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_31, x_28); +lean_dec(x_28); +return x_51; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_dec(x_39); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_45); lean_dec(x_1); -x_46 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_33); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_28, x_25); -lean_dec(x_25); -return x_48; +x_52 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_44, x_52, x_39); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_31, x_28); +lean_dec(x_28); +return x_54; } } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_43); +lean_dec(x_1); +x_55 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_42, x_55, x_39); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_31, x_28); +lean_dec(x_28); +return x_57; +} +} +else +{ +lean_object* x_58; lean_dec(x_37); lean_dec(x_1); -x_49 = l_Lean_Parser_Tactic_case___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_36, x_49, x_33); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_28, x_25); -lean_dec(x_25); -return x_51; +x_58 = l_Lean_Parser_mergeOrElseErrors(x_36, x_31, x_28); +lean_dec(x_28); +return x_58; } } } @@ -3996,16 +4413,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_case___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_case___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_case___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_case___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_case___closed__4; +x_3 = l_Lean_Parser_Tactic_case___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_case___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_case___closed__7() { _start: { lean_object* x_1; @@ -4013,12 +4440,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_case___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_case___closed__7() { +lean_object* _init_l_Lean_Parser_Tactic_case___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_case___closed__5; -x_2 = l_Lean_Parser_Tactic_case___closed__6; +x_1 = l_Lean_Parser_Tactic_case___closed__6; +x_2 = l_Lean_Parser_Tactic_case___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4029,7 +4456,7 @@ lean_object* _init_l_Lean_Parser_Tactic_case() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_case___closed__7; +x_1 = l_Lean_Parser_Tactic_case___closed__8; return x_1; } } @@ -4133,114 +4560,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_13 = lean_unsigned_to_nat(0u); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__6; -x_31 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__6; +x_37 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -4282,16 +4740,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_allGoals___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_allGoals___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_allGoals___closed__3; +x_3 = l_Lean_Parser_Tactic_allGoals___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__6() { _start: { lean_object* x_1; @@ -4299,12 +4767,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_allGoals___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_allGoals___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_allGoals___closed__4; -x_2 = l_Lean_Parser_Tactic_allGoals___closed__5; +x_1 = l_Lean_Parser_Tactic_allGoals___closed__5; +x_2 = l_Lean_Parser_Tactic_allGoals___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4315,7 +4783,7 @@ lean_object* _init_l_Lean_Parser_Tactic_allGoals() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_allGoals___closed__6; +x_1 = l_Lean_Parser_Tactic_allGoals___closed__7; return x_1; } } @@ -4411,75 +4879,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_skip___elambda__1___closed__5; -x_9 = l_Lean_Parser_Tactic_skip___elambda__1___closed__7; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Tactic_skip___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_skip___elambda__1___closed__5; +x_12 = l_Lean_Parser_Tactic_skip___elambda__1___closed__7; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Tactic_skip___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Tactic_skip___elambda__1___closed__5; -x_25 = l_Lean_Parser_Tactic_skip___elambda__1___closed__7; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Tactic_skip___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Tactic_skip___elambda__1___closed__5; +x_31 = l_Lean_Parser_Tactic_skip___elambda__1___closed__7; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Tactic_skip___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -4508,16 +5007,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_skip___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_skip___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_skip___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_skip___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_skip___closed__2; +x_3 = l_Lean_Parser_Tactic_skip___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_skip___closed__4() { +lean_object* _init_l_Lean_Parser_Tactic_skip___closed__5() { _start: { lean_object* x_1; @@ -4525,12 +5034,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_skip___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_skip___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_skip___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_skip___closed__3; -x_2 = l_Lean_Parser_Tactic_skip___closed__4; +x_1 = l_Lean_Parser_Tactic_skip___closed__4; +x_2 = l_Lean_Parser_Tactic_skip___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4541,7 +5050,7 @@ lean_object* _init_l_Lean_Parser_Tactic_skip() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_skip___closed__5; +x_1 = l_Lean_Parser_Tactic_skip___closed__6; return x_1; } } @@ -4637,75 +5146,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__5; -x_9 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__7; -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__5; +x_12 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__7; +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__5; -x_25 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__7; -x_26 = l_Lean_Parser_nonReservedSymbolFnAux(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__5; +x_31 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__7; +x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -4734,16 +5274,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_traceState___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_traceState___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_traceState___closed__2; +x_3 = l_Lean_Parser_Tactic_traceState___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__4() { +lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__5() { _start: { lean_object* x_1; @@ -4751,12 +5301,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_traceState___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_traceState___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_traceState___closed__3; -x_2 = l_Lean_Parser_Tactic_traceState___closed__4; +x_1 = l_Lean_Parser_Tactic_traceState___closed__4; +x_2 = l_Lean_Parser_Tactic_traceState___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4767,7 +5317,7 @@ lean_object* _init_l_Lean_Parser_Tactic_traceState() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_traceState___closed__5; +x_1 = l_Lean_Parser_Tactic_traceState___closed__6; return x_1; } } @@ -4871,114 +5421,145 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_13 = lean_unsigned_to_nat(0u); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_11); +lean_object* x_20; lean_object* x_21; +lean_dec(x_14); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_10, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_13, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_8); lean_dec(x_1); -return x_22; +return x_7; +} } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -x_30 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__6; -x_31 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__8; -lean_inc(x_1); -x_32 = l_Lean_Parser_nonReservedSymbolFnAux(x_30, x_31, x_1, x_27); +if (x_29 == 0) +{ +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); x_33 = lean_ctor_get(x_32, 3); lean_inc(x_33); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_34 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_35 = lean_unsigned_to_nat(0u); -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_35, x_1, x_32); -x_37 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_29); -x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); -lean_dec(x_21); -return x_39; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__6; +x_37 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__8; +lean_inc(x_1); +x_38 = l_Lean_Parser_nonReservedSymbolFnAux(x_36, x_37, x_1, x_32); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_35); +x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_27, x_24); +lean_dec(x_24); +return x_45; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_39); +lean_dec(x_1); +x_46 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_38, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; lean_dec(x_33); lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -5020,16 +5601,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_failIfSuccess___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_failIfSuccess___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_failIfSuccess___closed__3; +x_3 = l_Lean_Parser_Tactic_failIfSuccess___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__6() { _start: { lean_object* x_1; @@ -5037,12 +5628,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_failIfSuccess___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_failIfSuccess___closed__4; -x_2 = l_Lean_Parser_Tactic_failIfSuccess___closed__5; +x_1 = l_Lean_Parser_Tactic_failIfSuccess___closed__5; +x_2 = l_Lean_Parser_Tactic_failIfSuccess___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -5053,7 +5644,7 @@ lean_object* _init_l_Lean_Parser_Tactic_failIfSuccess() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_failIfSuccess___closed__6; +x_1 = l_Lean_Parser_Tactic_failIfSuccess___closed__7; return x_1; } } @@ -5178,18 +5769,6 @@ x_3 = lean_string_append(x_1, x_2); return x_3; } } -lean_object* _init_l_Lean_Parser_Tactic_generalize___elambda__1___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__8; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} lean_object* l_Lean_Parser_Tactic_generalize___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { @@ -5202,1084 +5781,752 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_42 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__5; -x_43 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__11; -lean_inc(x_1); -x_44 = l_Lean_Parser_nonReservedSymbolFnAux(x_42, x_43, x_1, x_2); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_72; lean_object* x_73; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = lean_ctor_get(x_44, 1); -lean_inc(x_47); -x_48 = lean_array_get_size(x_46); -lean_dec(x_46); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_45 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__5; +x_46 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__11; lean_inc(x_1); -x_72 = l_Lean_Parser_ident___elambda__1(x_1, x_44); -x_73 = lean_ctor_get(x_72, 3); -lean_inc(x_73); -if (lean_obj_tag(x_73) == 0) +x_47 = l_Lean_Parser_nonReservedSymbolFnAux(x_45, x_46, x_1, x_7); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_74 = lean_ctor_get(x_72, 1); -lean_inc(x_74); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_75; lean_object* x_76; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_47, 1); +lean_inc(x_50); +x_51 = lean_array_get_size(x_49); +lean_dec(x_49); lean_inc(x_1); -x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_75 = l_Lean_Parser_ident___elambda__1(x_1, x_47); x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); if (lean_obj_tag(x_76) == 0) { -lean_object* x_77; lean_object* x_78; -x_77 = lean_ctor_get(x_75, 0); +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_75, 1); lean_inc(x_77); -x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); -lean_dec(x_77); -if (lean_obj_tag(x_78) == 2) -{ -lean_object* x_79; lean_object* x_80; uint8_t x_81; -x_79 = lean_ctor_get(x_78, 1); +lean_inc(x_1); +x_78 = l_Lean_Parser_tokenFn(x_1, x_75); +x_79 = lean_ctor_get(x_78, 3); lean_inc(x_79); -lean_dec(x_78); -x_80 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_81 = lean_string_dec_eq(x_79, x_80); -lean_dec(x_79); -if (x_81 == 0) +if (lean_obj_tag(x_79) == 0) { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_82 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); -x_84 = lean_ctor_get(x_83, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_83, 2); -lean_inc(x_85); -x_86 = lean_ctor_get(x_83, 3); -lean_inc(x_86); -x_49 = x_83; -x_50 = x_84; -x_51 = x_85; -x_52 = x_86; -goto block_71; -} -else +lean_object* x_80; lean_object* x_81; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_80); +lean_dec(x_80); +if (lean_obj_tag(x_81) == 2) { -lean_object* x_87; lean_object* x_88; lean_object* x_89; -lean_dec(x_74); -x_87 = lean_ctor_get(x_75, 0); +lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +lean_dec(x_81); +x_83 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_84 = lean_string_dec_eq(x_82, x_83); +lean_dec(x_82); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_85 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_85, x_77); +x_87 = lean_ctor_get(x_86, 0); lean_inc(x_87); -x_88 = lean_ctor_get(x_75, 2); +x_88 = lean_ctor_get(x_86, 2); lean_inc(x_88); -x_89 = lean_ctor_get(x_75, 3); +x_89 = lean_ctor_get(x_86, 3); lean_inc(x_89); -x_49 = x_75; -x_50 = x_87; -x_51 = x_88; -x_52 = x_89; -goto block_71; -} +x_52 = x_86; +x_53 = x_87; +x_54 = x_88; +x_55 = x_89; +goto block_74; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -lean_dec(x_78); -x_90 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_90, x_74); -x_92 = lean_ctor_get(x_91, 0); +lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_77); +x_90 = lean_ctor_get(x_78, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_78, 2); +lean_inc(x_91); +x_92 = lean_ctor_get(x_78, 3); lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 2); -lean_inc(x_93); -x_94 = lean_ctor_get(x_91, 3); -lean_inc(x_94); -x_49 = x_91; -x_50 = x_92; -x_51 = x_93; -x_52 = x_94; -goto block_71; +x_52 = x_78; +x_53 = x_90; +x_54 = x_91; +x_55 = x_92; +goto block_74; } } else { -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; -lean_dec(x_76); -x_95 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_95, x_74); -x_97 = lean_ctor_get(x_96, 0); +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_81); +x_93 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_93, x_77); +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 2); +lean_inc(x_96); +x_97 = lean_ctor_get(x_94, 3); lean_inc(x_97); -x_98 = lean_ctor_get(x_96, 2); -lean_inc(x_98); -x_99 = lean_ctor_get(x_96, 3); -lean_inc(x_99); -x_49 = x_96; -x_50 = x_97; -x_51 = x_98; -x_52 = x_99; -goto block_71; +x_52 = x_94; +x_53 = x_95; +x_54 = x_96; +x_55 = x_97; +goto block_74; } } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; -lean_dec(x_73); -x_100 = lean_ctor_get(x_72, 0); +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_dec(x_79); +x_98 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_98, x_77); +x_100 = lean_ctor_get(x_99, 0); lean_inc(x_100); -x_101 = lean_ctor_get(x_72, 2); +x_101 = lean_ctor_get(x_99, 2); lean_inc(x_101); -x_102 = lean_ctor_get(x_72, 3); +x_102 = lean_ctor_get(x_99, 3); lean_inc(x_102); -x_49 = x_72; -x_50 = x_100; -x_51 = x_101; -x_52 = x_102; -goto block_71; +x_52 = x_99; +x_53 = x_100; +x_54 = x_101; +x_55 = x_102; +goto block_74; } -block_71: -{ -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; -lean_dec(x_51); -lean_dec(x_50); -x_53 = lean_ctor_get(x_49, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_47); -x_54 = l_Lean_nullKind; -x_55 = l_Lean_Parser_ParserState_mkNode(x_49, x_54, x_48); -x_8 = x_55; -goto block_41; } else { -lean_object* x_56; uint8_t x_57; +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_76); +x_103 = lean_ctor_get(x_75, 0); +lean_inc(x_103); +x_104 = lean_ctor_get(x_75, 2); +lean_inc(x_104); +x_105 = lean_ctor_get(x_75, 3); +lean_inc(x_105); +x_52 = x_75; +x_53 = x_103; +x_54 = x_104; +x_55 = x_105; +goto block_74; +} +block_74: +{ +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; +lean_dec(x_54); lean_dec(x_53); -x_56 = lean_ctor_get(x_49, 1); +x_56 = lean_ctor_get(x_52, 3); lean_inc(x_56); -x_57 = lean_nat_dec_eq(x_56, x_47); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_50); +x_57 = l_Lean_nullKind; +x_58 = l_Lean_Parser_ParserState_mkNode(x_52, x_57, x_51); +x_11 = x_58; +goto block_44; +} +else +{ +lean_object* x_59; uint8_t x_60; lean_dec(x_56); -if (x_57 == 0) +x_59 = lean_ctor_get(x_52, 1); +lean_inc(x_59); +x_60 = lean_nat_dec_eq(x_59, x_50); +lean_dec(x_59); +if (x_60 == 0) { -lean_object* x_58; lean_object* x_59; -lean_dec(x_47); -x_58 = l_Lean_nullKind; -x_59 = l_Lean_Parser_ParserState_mkNode(x_49, x_58, x_48); -x_8 = x_59; -goto block_41; -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = l_Lean_Parser_ParserState_restore(x_49, x_48, x_47); +lean_object* x_61; lean_object* x_62; +lean_dec(x_50); x_61 = l_Lean_nullKind; -x_62 = l_Lean_Parser_ParserState_mkNode(x_60, x_61, x_48); -x_8 = x_62; -goto block_41; +x_62 = l_Lean_Parser_ParserState_mkNode(x_52, x_61, x_51); +x_11 = x_62; +goto block_44; +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = l_Lean_Parser_ParserState_restore(x_52, x_51, x_50); +x_64 = l_Lean_nullKind; +x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_51); +x_11 = x_65; +goto block_44; } } } else { -lean_object* x_63; lean_object* x_64; uint8_t x_65; -lean_dec(x_49); -x_63 = l_Array_shrink___main___rarg(x_50, x_48); -lean_inc(x_47); -x_64 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_64, 0, x_63); -lean_ctor_set(x_64, 1, x_47); -lean_ctor_set(x_64, 2, x_51); -lean_ctor_set(x_64, 3, x_52); -x_65 = lean_nat_dec_eq(x_47, x_47); -if (x_65 == 0) +lean_object* x_66; lean_object* x_67; uint8_t x_68; +lean_dec(x_52); +x_66 = l_Array_shrink___main___rarg(x_53, x_51); +lean_inc(x_50); +x_67 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_50); +lean_ctor_set(x_67, 2, x_54); +lean_ctor_set(x_67, 3, x_55); +x_68 = lean_nat_dec_eq(x_50, x_50); +if (x_68 == 0) { -lean_object* x_66; lean_object* x_67; -lean_dec(x_47); -x_66 = l_Lean_nullKind; -x_67 = l_Lean_Parser_ParserState_mkNode(x_64, x_66, x_48); -x_8 = x_67; -goto block_41; -} -else -{ -lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_68 = l_Lean_Parser_ParserState_restore(x_64, x_48, x_47); +lean_object* x_69; lean_object* x_70; +lean_dec(x_50); x_69 = l_Lean_nullKind; -x_70 = l_Lean_Parser_ParserState_mkNode(x_68, x_69, x_48); -x_8 = x_70; -goto block_41; +x_70 = l_Lean_Parser_ParserState_mkNode(x_67, x_69, x_51); +x_11 = x_70; +goto block_44; +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = l_Lean_Parser_ParserState_restore(x_67, x_51, x_50); +x_72 = l_Lean_nullKind; +x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_51); +x_11 = x_73; +goto block_44; } } } } else { -lean_object* x_103; lean_object* x_104; -lean_dec(x_45); +lean_object* x_106; lean_object* x_107; +lean_dec(x_48); lean_dec(x_1); -x_103 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_104 = l_Lean_Parser_ParserState_mkNode(x_44, x_103, x_7); -return x_104; +x_106 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_47, x_106, x_10); +return x_107; } -block_41: +block_44: { -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); -lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(51u); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(51u); lean_inc(x_1); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_inc(x_1); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); x_16 = lean_ctor_get(x_15, 3); lean_inc(x_16); if (lean_obj_tag(x_16) == 0) { -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_1); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__6; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) +if (lean_obj_tag(x_19) == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__6; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_22 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_14); -x_26 = l_Lean_Parser_ident___elambda__1(x_1, x_15); +x_25 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); x_27 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_7); +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); return x_28; } +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_17); +x_29 = l_Lean_Parser_ident___elambda__1(x_1, x_18); +x_30 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_18); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_21); lean_dec(x_1); -x_29 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_29, x_14); -x_31 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_7); -return x_32; +x_32 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_32, x_17); +x_34 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; } } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_19); +lean_dec(x_1); +x_36 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_36, x_17); +x_38 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_dec(x_16); lean_dec(x_1); -x_33 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_33, x_14); -x_35 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_7); -return x_36; +x_40 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_15, x_40, x_10); +return x_41; } } else { -lean_object* x_37; lean_object* x_38; -lean_dec(x_13); +lean_object* x_42; lean_object* x_43; +lean_dec(x_12); lean_dec(x_1); -x_37 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_12, x_37, x_7); -return x_38; +x_42 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_11, x_42, x_10); +return x_43; +} } } else { -lean_object* x_39; lean_object* x_40; -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -x_39 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_8, x_39, x_7); -return x_40; -} +return x_7; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_105 = lean_ctor_get(x_2, 0); -lean_inc(x_105); -x_106 = lean_array_get_size(x_105); -lean_dec(x_105); -x_107 = lean_ctor_get(x_2, 1); -lean_inc(x_107); -lean_inc(x_1); -x_108 = lean_apply_2(x_4, x_1, x_2); -x_109 = lean_ctor_get(x_108, 3); -lean_inc(x_109); -if (lean_obj_tag(x_109) == 0) -{ -lean_dec(x_107); -lean_dec(x_106); -lean_dec(x_1); -return x_108; -} -else -{ -lean_object* x_110; lean_object* x_111; uint8_t x_112; -x_110 = lean_ctor_get(x_109, 0); +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; +x_108 = lean_ctor_get(x_2, 0); +lean_inc(x_108); +x_109 = lean_array_get_size(x_108); +lean_dec(x_108); +x_110 = lean_ctor_get(x_2, 1); lean_inc(x_110); -lean_dec(x_109); -x_111 = lean_ctor_get(x_108, 1); -lean_inc(x_111); -x_112 = lean_nat_dec_eq(x_111, x_107); -lean_dec(x_111); -if (x_112 == 0) +lean_inc(x_1); +x_111 = lean_apply_2(x_4, x_1, x_2); +x_112 = lean_ctor_get(x_111, 3); +lean_inc(x_112); +if (lean_obj_tag(x_112) == 0) { lean_dec(x_110); -lean_dec(x_107); -lean_dec(x_106); +lean_dec(x_109); lean_dec(x_1); -return x_108; +return x_111; } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; -lean_inc(x_107); -x_113 = l_Lean_Parser_ParserState_restore(x_108, x_106, x_107); -lean_dec(x_106); -x_114 = lean_ctor_get(x_113, 0); +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = lean_ctor_get(x_112, 0); +lean_inc(x_113); +lean_dec(x_112); +x_114 = lean_ctor_get(x_111, 1); lean_inc(x_114); -x_115 = lean_array_get_size(x_114); +x_115 = lean_nat_dec_eq(x_114, x_110); lean_dec(x_114); -x_156 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__5; -x_157 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__11; -lean_inc(x_1); -x_158 = l_Lean_Parser_nonReservedSymbolFnAux(x_156, x_157, x_1, x_113); -x_159 = lean_ctor_get(x_158, 3); -lean_inc(x_159); -if (lean_obj_tag(x_159) == 0) +if (x_115 == 0) { -lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; -x_160 = lean_ctor_get(x_158, 0); -lean_inc(x_160); -x_161 = lean_ctor_get(x_158, 1); -lean_inc(x_161); -x_162 = lean_array_get_size(x_160); -lean_dec(x_160); -lean_inc(x_1); -x_163 = l_Lean_Parser_ident___elambda__1(x_1, x_158); -x_164 = lean_ctor_get(x_163, 3); -lean_inc(x_164); -if (lean_obj_tag(x_164) == 0) +lean_dec(x_113); +lean_dec(x_110); +lean_dec(x_109); +lean_dec(x_1); +return x_111; +} +else { -lean_object* x_165; lean_object* x_166; lean_object* x_167; -x_165 = lean_ctor_get(x_163, 1); +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_inc(x_110); +x_116 = l_Lean_Parser_ParserState_restore(x_111, x_109, x_110); +lean_dec(x_109); +x_117 = lean_unsigned_to_nat(1024u); +x_118 = l_Lean_Parser_checkPrecFn(x_117, x_1, x_116); +x_119 = lean_ctor_get(x_118, 3); +lean_inc(x_119); +if (lean_obj_tag(x_119) == 0) +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; +x_120 = lean_ctor_get(x_118, 0); +lean_inc(x_120); +x_121 = lean_array_get_size(x_120); +lean_dec(x_120); +x_162 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__5; +x_163 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__11; +lean_inc(x_1); +x_164 = l_Lean_Parser_nonReservedSymbolFnAux(x_162, x_163, x_1, x_118); +x_165 = lean_ctor_get(x_164, 3); lean_inc(x_165); -lean_inc(x_1); -x_166 = l_Lean_Parser_tokenFn(x_1, x_163); -x_167 = lean_ctor_get(x_166, 3); +if (lean_obj_tag(x_165) == 0) +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_192; lean_object* x_193; +x_166 = lean_ctor_get(x_164, 0); +lean_inc(x_166); +x_167 = lean_ctor_get(x_164, 1); lean_inc(x_167); -if (lean_obj_tag(x_167) == 0) +x_168 = lean_array_get_size(x_166); +lean_dec(x_166); +lean_inc(x_1); +x_192 = l_Lean_Parser_ident___elambda__1(x_1, x_164); +x_193 = lean_ctor_get(x_192, 3); +lean_inc(x_193); +if (lean_obj_tag(x_193) == 0) { -lean_object* x_168; lean_object* x_169; -x_168 = lean_ctor_get(x_166, 0); -lean_inc(x_168); -x_169 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_168); -lean_dec(x_168); -if (lean_obj_tag(x_169) == 2) -{ -lean_object* x_170; lean_object* x_171; uint8_t x_172; -x_170 = lean_ctor_get(x_169, 1); -lean_inc(x_170); -lean_dec(x_169); -x_171 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_172 = lean_string_dec_eq(x_170, x_171); -lean_dec(x_170); -if (x_172 == 0) -{ -lean_object* x_173; lean_object* x_174; uint8_t x_175; -x_173 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_173, x_165); -x_175 = !lean_is_exclusive(x_174); -if (x_175 == 0) -{ -lean_object* x_176; lean_object* x_177; lean_object* x_178; uint8_t x_179; -x_176 = lean_ctor_get(x_174, 0); -x_177 = lean_ctor_get(x_174, 1); -lean_dec(x_177); -x_178 = l_Array_shrink___main___rarg(x_176, x_162); -lean_inc(x_161); -lean_ctor_set(x_174, 1, x_161); -lean_ctor_set(x_174, 0, x_178); -x_179 = lean_nat_dec_eq(x_161, x_161); -if (x_179 == 0) -{ -lean_object* x_180; lean_object* x_181; -lean_dec(x_161); -x_180 = l_Lean_nullKind; -x_181 = l_Lean_Parser_ParserState_mkNode(x_174, x_180, x_162); -x_116 = x_181; -goto block_155; -} -else -{ -lean_object* x_182; lean_object* x_183; lean_object* x_184; -x_182 = l_Lean_Parser_ParserState_restore(x_174, x_162, x_161); -x_183 = l_Lean_nullKind; -x_184 = l_Lean_Parser_ParserState_mkNode(x_182, x_183, x_162); -x_116 = x_184; -goto block_155; -} -} -else -{ -lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; uint8_t x_190; -x_185 = lean_ctor_get(x_174, 3); -x_186 = lean_ctor_get(x_174, 0); -x_187 = lean_ctor_get(x_174, 2); -lean_inc(x_185); -lean_inc(x_187); -lean_inc(x_186); -lean_dec(x_174); -x_188 = l_Array_shrink___main___rarg(x_186, x_162); -lean_inc(x_161); -x_189 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_189, 0, x_188); -lean_ctor_set(x_189, 1, x_161); -lean_ctor_set(x_189, 2, x_187); -lean_ctor_set(x_189, 3, x_185); -x_190 = lean_nat_dec_eq(x_161, x_161); -if (x_190 == 0) -{ -lean_object* x_191; lean_object* x_192; -lean_dec(x_161); -x_191 = l_Lean_nullKind; -x_192 = l_Lean_Parser_ParserState_mkNode(x_189, x_191, x_162); -x_116 = x_192; -goto block_155; -} -else -{ -lean_object* x_193; lean_object* x_194; lean_object* x_195; -x_193 = l_Lean_Parser_ParserState_restore(x_189, x_162, x_161); -x_194 = l_Lean_nullKind; -x_195 = l_Lean_Parser_ParserState_mkNode(x_193, x_194, x_162); -x_116 = x_195; -goto block_155; -} -} -} -else -{ -lean_object* x_196; -lean_dec(x_165); -x_196 = lean_ctor_get(x_166, 3); +lean_object* x_194; lean_object* x_195; lean_object* x_196; +x_194 = lean_ctor_get(x_192, 1); +lean_inc(x_194); +lean_inc(x_1); +x_195 = l_Lean_Parser_tokenFn(x_1, x_192); +x_196 = lean_ctor_get(x_195, 3); lean_inc(x_196); if (lean_obj_tag(x_196) == 0) { -lean_object* x_197; lean_object* x_198; lean_object* x_199; -lean_dec(x_161); -x_197 = l_Lean_nullKind; -x_198 = l_Lean_Parser_ParserState_mkNode(x_166, x_197, x_162); -x_199 = lean_ctor_get(x_198, 3); +lean_object* x_197; lean_object* x_198; +x_197 = lean_ctor_get(x_195, 0); +lean_inc(x_197); +x_198 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_197); +lean_dec(x_197); +if (lean_obj_tag(x_198) == 2) +{ +lean_object* x_199; lean_object* x_200; uint8_t x_201; +x_199 = lean_ctor_get(x_198, 1); lean_inc(x_199); -if (lean_obj_tag(x_199) == 0) +lean_dec(x_198); +x_200 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_201 = lean_string_dec_eq(x_199, x_200); +lean_dec(x_199); +if (x_201 == 0) { -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; -x_200 = l_Lean_Parser_termParser___closed__2; -x_201 = lean_unsigned_to_nat(51u); -lean_inc(x_1); -x_202 = l_Lean_Parser_categoryParser___elambda__1(x_200, x_201, x_1, x_198); -x_203 = lean_ctor_get(x_202, 3); -lean_inc(x_203); -if (lean_obj_tag(x_203) == 0) -{ -lean_object* x_204; lean_object* x_205; lean_object* x_206; -x_204 = lean_ctor_get(x_202, 1); +lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; +x_202 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_203 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_202, x_194); +x_204 = lean_ctor_get(x_203, 0); lean_inc(x_204); -lean_inc(x_1); -x_205 = l_Lean_Parser_tokenFn(x_1, x_202); -x_206 = lean_ctor_get(x_205, 3); +x_205 = lean_ctor_get(x_203, 2); +lean_inc(x_205); +x_206 = lean_ctor_get(x_203, 3); lean_inc(x_206); -if (lean_obj_tag(x_206) == 0) +x_169 = x_203; +x_170 = x_204; +x_171 = x_205; +x_172 = x_206; +goto block_191; +} +else { -lean_object* x_207; lean_object* x_208; -x_207 = lean_ctor_get(x_205, 0); +lean_object* x_207; lean_object* x_208; lean_object* x_209; +lean_dec(x_194); +x_207 = lean_ctor_get(x_195, 0); lean_inc(x_207); -x_208 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_207); -lean_dec(x_207); -if (lean_obj_tag(x_208) == 2) -{ -lean_object* x_209; lean_object* x_210; uint8_t x_211; -x_209 = lean_ctor_get(x_208, 1); +x_208 = lean_ctor_get(x_195, 2); +lean_inc(x_208); +x_209 = lean_ctor_get(x_195, 3); lean_inc(x_209); -lean_dec(x_208); -x_210 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__6; -x_211 = lean_string_dec_eq(x_209, x_210); -lean_dec(x_209); -if (x_211 == 0) -{ -lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; -lean_dec(x_1); -x_212 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__12; -x_213 = l_Lean_Parser_ParserState_mkErrorsAt(x_205, x_212, x_204); -x_214 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_215 = l_Lean_Parser_ParserState_mkNode(x_213, x_214, x_115); -x_216 = l_Lean_Parser_mergeOrElseErrors(x_215, x_110, x_107); -lean_dec(x_107); -return x_216; -} -else -{ -lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; -lean_dec(x_204); -x_217 = l_Lean_Parser_ident___elambda__1(x_1, x_205); -x_218 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_219 = l_Lean_Parser_ParserState_mkNode(x_217, x_218, x_115); -x_220 = l_Lean_Parser_mergeOrElseErrors(x_219, x_110, x_107); -lean_dec(x_107); -return x_220; +x_169 = x_195; +x_170 = x_207; +x_171 = x_208; +x_172 = x_209; +goto block_191; } } else { -lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; -lean_dec(x_208); +lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; +lean_dec(x_198); +x_210 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_211 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_210, x_194); +x_212 = lean_ctor_get(x_211, 0); +lean_inc(x_212); +x_213 = lean_ctor_get(x_211, 2); +lean_inc(x_213); +x_214 = lean_ctor_get(x_211, 3); +lean_inc(x_214); +x_169 = x_211; +x_170 = x_212; +x_171 = x_213; +x_172 = x_214; +goto block_191; +} +} +else +{ +lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; +lean_dec(x_196); +x_215 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_216 = l_Lean_Parser_ParserState_mkErrorsAt(x_195, x_215, x_194); +x_217 = lean_ctor_get(x_216, 0); +lean_inc(x_217); +x_218 = lean_ctor_get(x_216, 2); +lean_inc(x_218); +x_219 = lean_ctor_get(x_216, 3); +lean_inc(x_219); +x_169 = x_216; +x_170 = x_217; +x_171 = x_218; +x_172 = x_219; +goto block_191; +} +} +else +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; +lean_dec(x_193); +x_220 = lean_ctor_get(x_192, 0); +lean_inc(x_220); +x_221 = lean_ctor_get(x_192, 2); +lean_inc(x_221); +x_222 = lean_ctor_get(x_192, 3); +lean_inc(x_222); +x_169 = x_192; +x_170 = x_220; +x_171 = x_221; +x_172 = x_222; +goto block_191; +} +block_191: +{ +if (lean_obj_tag(x_172) == 0) +{ +lean_object* x_173; +lean_dec(x_171); +lean_dec(x_170); +x_173 = lean_ctor_get(x_169, 3); +lean_inc(x_173); +if (lean_obj_tag(x_173) == 0) +{ +lean_object* x_174; lean_object* x_175; +lean_dec(x_167); +x_174 = l_Lean_nullKind; +x_175 = l_Lean_Parser_ParserState_mkNode(x_169, x_174, x_168); +x_122 = x_175; +goto block_161; +} +else +{ +lean_object* x_176; uint8_t x_177; +lean_dec(x_173); +x_176 = lean_ctor_get(x_169, 1); +lean_inc(x_176); +x_177 = lean_nat_dec_eq(x_176, x_167); +lean_dec(x_176); +if (x_177 == 0) +{ +lean_object* x_178; lean_object* x_179; +lean_dec(x_167); +x_178 = l_Lean_nullKind; +x_179 = l_Lean_Parser_ParserState_mkNode(x_169, x_178, x_168); +x_122 = x_179; +goto block_161; +} +else +{ +lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_180 = l_Lean_Parser_ParserState_restore(x_169, x_168, x_167); +x_181 = l_Lean_nullKind; +x_182 = l_Lean_Parser_ParserState_mkNode(x_180, x_181, x_168); +x_122 = x_182; +goto block_161; +} +} +} +else +{ +lean_object* x_183; lean_object* x_184; uint8_t x_185; +lean_dec(x_169); +x_183 = l_Array_shrink___main___rarg(x_170, x_168); +lean_inc(x_167); +x_184 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_184, 0, x_183); +lean_ctor_set(x_184, 1, x_167); +lean_ctor_set(x_184, 2, x_171); +lean_ctor_set(x_184, 3, x_172); +x_185 = lean_nat_dec_eq(x_167, x_167); +if (x_185 == 0) +{ +lean_object* x_186; lean_object* x_187; +lean_dec(x_167); +x_186 = l_Lean_nullKind; +x_187 = l_Lean_Parser_ParserState_mkNode(x_184, x_186, x_168); +x_122 = x_187; +goto block_161; +} +else +{ +lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_188 = l_Lean_Parser_ParserState_restore(x_184, x_168, x_167); +x_189 = l_Lean_nullKind; +x_190 = l_Lean_Parser_ParserState_mkNode(x_188, x_189, x_168); +x_122 = x_190; +goto block_161; +} +} +} +} +else +{ +lean_object* x_223; lean_object* x_224; lean_object* x_225; +lean_dec(x_165); lean_dec(x_1); -x_221 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__12; -x_222 = l_Lean_Parser_ParserState_mkErrorsAt(x_205, x_221, x_204); x_223 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_224 = l_Lean_Parser_ParserState_mkNode(x_222, x_223, x_115); -x_225 = l_Lean_Parser_mergeOrElseErrors(x_224, x_110, x_107); -lean_dec(x_107); +x_224 = l_Lean_Parser_ParserState_mkNode(x_164, x_223, x_121); +x_225 = l_Lean_Parser_mergeOrElseErrors(x_224, x_113, x_110); +lean_dec(x_110); return x_225; } -} -else +block_161: { -lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; -lean_dec(x_206); -lean_dec(x_1); -x_226 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__12; -x_227 = l_Lean_Parser_ParserState_mkErrorsAt(x_205, x_226, x_204); -x_228 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_229 = l_Lean_Parser_ParserState_mkNode(x_227, x_228, x_115); -x_230 = l_Lean_Parser_mergeOrElseErrors(x_229, x_110, x_107); -lean_dec(x_107); -return x_230; -} -} -else +lean_object* x_123; +x_123 = lean_ctor_get(x_122, 3); +lean_inc(x_123); +if (lean_obj_tag(x_123) == 0) { -lean_object* x_231; lean_object* x_232; lean_object* x_233; -lean_dec(x_203); -lean_dec(x_1); -x_231 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_232 = l_Lean_Parser_ParserState_mkNode(x_202, x_231, x_115); -x_233 = l_Lean_Parser_mergeOrElseErrors(x_232, x_110, x_107); -lean_dec(x_107); -return x_233; -} -} -else -{ -lean_object* x_234; lean_object* x_235; lean_object* x_236; -lean_dec(x_199); -lean_dec(x_1); -x_234 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_235 = l_Lean_Parser_ParserState_mkNode(x_198, x_234, x_115); -x_236 = l_Lean_Parser_mergeOrElseErrors(x_235, x_110, x_107); -lean_dec(x_107); -return x_236; -} -} -else -{ -uint8_t x_237; -x_237 = !lean_is_exclusive(x_166); -if (x_237 == 0) -{ -lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; uint8_t x_242; -x_238 = lean_ctor_get(x_166, 0); -x_239 = lean_ctor_get(x_166, 3); -lean_dec(x_239); -x_240 = lean_ctor_get(x_166, 1); -lean_dec(x_240); -x_241 = l_Array_shrink___main___rarg(x_238, x_162); -lean_inc(x_161); -lean_ctor_set(x_166, 1, x_161); -lean_ctor_set(x_166, 0, x_241); -x_242 = lean_nat_dec_eq(x_161, x_161); -if (x_242 == 0) -{ -lean_object* x_243; lean_object* x_244; -lean_dec(x_161); -x_243 = l_Lean_nullKind; -x_244 = l_Lean_Parser_ParserState_mkNode(x_166, x_243, x_162); -x_116 = x_244; -goto block_155; -} -else -{ -lean_object* x_245; lean_object* x_246; lean_object* x_247; -x_245 = l_Lean_Parser_ParserState_restore(x_166, x_162, x_161); -x_246 = l_Lean_nullKind; -x_247 = l_Lean_Parser_ParserState_mkNode(x_245, x_246, x_162); -x_116 = x_247; -goto block_155; -} -} -else -{ -lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; uint8_t x_252; -x_248 = lean_ctor_get(x_166, 0); -x_249 = lean_ctor_get(x_166, 2); -lean_inc(x_249); -lean_inc(x_248); -lean_dec(x_166); -x_250 = l_Array_shrink___main___rarg(x_248, x_162); -lean_inc(x_161); -x_251 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_251, 0, x_250); -lean_ctor_set(x_251, 1, x_161); -lean_ctor_set(x_251, 2, x_249); -lean_ctor_set(x_251, 3, x_196); -x_252 = lean_nat_dec_eq(x_161, x_161); -if (x_252 == 0) -{ -lean_object* x_253; lean_object* x_254; -lean_dec(x_161); -x_253 = l_Lean_nullKind; -x_254 = l_Lean_Parser_ParserState_mkNode(x_251, x_253, x_162); -x_116 = x_254; -goto block_155; -} -else -{ -lean_object* x_255; lean_object* x_256; lean_object* x_257; -x_255 = l_Lean_Parser_ParserState_restore(x_251, x_162, x_161); -x_256 = l_Lean_nullKind; -x_257 = l_Lean_Parser_ParserState_mkNode(x_255, x_256, x_162); -x_116 = x_257; -goto block_155; -} -} -} -} -} -else -{ -lean_object* x_258; lean_object* x_259; uint8_t x_260; -lean_dec(x_169); -x_258 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_259 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_258, x_165); -x_260 = !lean_is_exclusive(x_259); -if (x_260 == 0) -{ -lean_object* x_261; lean_object* x_262; lean_object* x_263; uint8_t x_264; -x_261 = lean_ctor_get(x_259, 0); -x_262 = lean_ctor_get(x_259, 1); -lean_dec(x_262); -x_263 = l_Array_shrink___main___rarg(x_261, x_162); -lean_inc(x_161); -lean_ctor_set(x_259, 1, x_161); -lean_ctor_set(x_259, 0, x_263); -x_264 = lean_nat_dec_eq(x_161, x_161); -if (x_264 == 0) -{ -lean_object* x_265; lean_object* x_266; -lean_dec(x_161); -x_265 = l_Lean_nullKind; -x_266 = l_Lean_Parser_ParserState_mkNode(x_259, x_265, x_162); -x_116 = x_266; -goto block_155; -} -else -{ -lean_object* x_267; lean_object* x_268; lean_object* x_269; -x_267 = l_Lean_Parser_ParserState_restore(x_259, x_162, x_161); -x_268 = l_Lean_nullKind; -x_269 = l_Lean_Parser_ParserState_mkNode(x_267, x_268, x_162); -x_116 = x_269; -goto block_155; -} -} -else -{ -lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; uint8_t x_275; -x_270 = lean_ctor_get(x_259, 3); -x_271 = lean_ctor_get(x_259, 0); -x_272 = lean_ctor_get(x_259, 2); -lean_inc(x_270); -lean_inc(x_272); -lean_inc(x_271); -lean_dec(x_259); -x_273 = l_Array_shrink___main___rarg(x_271, x_162); -lean_inc(x_161); -x_274 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_274, 0, x_273); -lean_ctor_set(x_274, 1, x_161); -lean_ctor_set(x_274, 2, x_272); -lean_ctor_set(x_274, 3, x_270); -x_275 = lean_nat_dec_eq(x_161, x_161); -if (x_275 == 0) -{ -lean_object* x_276; lean_object* x_277; -lean_dec(x_161); -x_276 = l_Lean_nullKind; -x_277 = l_Lean_Parser_ParserState_mkNode(x_274, x_276, x_162); -x_116 = x_277; -goto block_155; -} -else -{ -lean_object* x_278; lean_object* x_279; lean_object* x_280; -x_278 = l_Lean_Parser_ParserState_restore(x_274, x_162, x_161); -x_279 = l_Lean_nullKind; -x_280 = l_Lean_Parser_ParserState_mkNode(x_278, x_279, x_162); -x_116 = x_280; -goto block_155; -} -} -} -} -else -{ -lean_object* x_281; lean_object* x_282; uint8_t x_283; -lean_dec(x_167); -x_281 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_282 = l_Lean_Parser_ParserState_mkErrorsAt(x_166, x_281, x_165); -x_283 = !lean_is_exclusive(x_282); -if (x_283 == 0) -{ -lean_object* x_284; lean_object* x_285; lean_object* x_286; uint8_t x_287; -x_284 = lean_ctor_get(x_282, 0); -x_285 = lean_ctor_get(x_282, 1); -lean_dec(x_285); -x_286 = l_Array_shrink___main___rarg(x_284, x_162); -lean_inc(x_161); -lean_ctor_set(x_282, 1, x_161); -lean_ctor_set(x_282, 0, x_286); -x_287 = lean_nat_dec_eq(x_161, x_161); -if (x_287 == 0) -{ -lean_object* x_288; lean_object* x_289; -lean_dec(x_161); -x_288 = l_Lean_nullKind; -x_289 = l_Lean_Parser_ParserState_mkNode(x_282, x_288, x_162); -x_116 = x_289; -goto block_155; -} -else -{ -lean_object* x_290; lean_object* x_291; lean_object* x_292; -x_290 = l_Lean_Parser_ParserState_restore(x_282, x_162, x_161); -x_291 = l_Lean_nullKind; -x_292 = l_Lean_Parser_ParserState_mkNode(x_290, x_291, x_162); -x_116 = x_292; -goto block_155; -} -} -else -{ -lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; uint8_t x_298; -x_293 = lean_ctor_get(x_282, 3); -x_294 = lean_ctor_get(x_282, 0); -x_295 = lean_ctor_get(x_282, 2); -lean_inc(x_293); -lean_inc(x_295); -lean_inc(x_294); -lean_dec(x_282); -x_296 = l_Array_shrink___main___rarg(x_294, x_162); -lean_inc(x_161); -x_297 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_297, 0, x_296); -lean_ctor_set(x_297, 1, x_161); -lean_ctor_set(x_297, 2, x_295); -lean_ctor_set(x_297, 3, x_293); -x_298 = lean_nat_dec_eq(x_161, x_161); -if (x_298 == 0) -{ -lean_object* x_299; lean_object* x_300; -lean_dec(x_161); -x_299 = l_Lean_nullKind; -x_300 = l_Lean_Parser_ParserState_mkNode(x_297, x_299, x_162); -x_116 = x_300; -goto block_155; -} -else -{ -lean_object* x_301; lean_object* x_302; lean_object* x_303; -x_301 = l_Lean_Parser_ParserState_restore(x_297, x_162, x_161); -x_302 = l_Lean_nullKind; -x_303 = l_Lean_Parser_ParserState_mkNode(x_301, x_302, x_162); -x_116 = x_303; -goto block_155; -} -} -} -} -else -{ -lean_object* x_304; -lean_dec(x_164); -x_304 = lean_ctor_get(x_163, 3); -lean_inc(x_304); -if (lean_obj_tag(x_304) == 0) -{ -lean_object* x_305; uint8_t x_306; -x_305 = lean_ctor_get(x_163, 1); -lean_inc(x_305); -x_306 = lean_nat_dec_eq(x_305, x_161); -lean_dec(x_305); -if (x_306 == 0) -{ -lean_object* x_307; lean_object* x_308; -lean_dec(x_161); -x_307 = l_Lean_nullKind; -x_308 = l_Lean_Parser_ParserState_mkNode(x_163, x_307, x_162); -x_116 = x_308; -goto block_155; -} -else -{ -lean_object* x_309; lean_object* x_310; lean_object* x_311; -x_309 = l_Lean_Parser_ParserState_restore(x_163, x_162, x_161); -x_310 = l_Lean_nullKind; -x_311 = l_Lean_Parser_ParserState_mkNode(x_309, x_310, x_162); -x_116 = x_311; -goto block_155; -} -} -else -{ -uint8_t x_312; -x_312 = !lean_is_exclusive(x_163); -if (x_312 == 0) -{ -lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_object* x_316; uint8_t x_317; -x_313 = lean_ctor_get(x_163, 0); -x_314 = lean_ctor_get(x_163, 3); -lean_dec(x_314); -x_315 = lean_ctor_get(x_163, 1); -lean_dec(x_315); -x_316 = l_Array_shrink___main___rarg(x_313, x_162); -lean_inc(x_161); -lean_ctor_set(x_163, 1, x_161); -lean_ctor_set(x_163, 0, x_316); -x_317 = lean_nat_dec_eq(x_161, x_161); -if (x_317 == 0) -{ -lean_object* x_318; lean_object* x_319; -lean_dec(x_161); -x_318 = l_Lean_nullKind; -x_319 = l_Lean_Parser_ParserState_mkNode(x_163, x_318, x_162); -x_116 = x_319; -goto block_155; -} -else -{ -lean_object* x_320; lean_object* x_321; lean_object* x_322; -x_320 = l_Lean_Parser_ParserState_restore(x_163, x_162, x_161); -x_321 = l_Lean_nullKind; -x_322 = l_Lean_Parser_ParserState_mkNode(x_320, x_321, x_162); -x_116 = x_322; -goto block_155; -} -} -else -{ -lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; uint8_t x_327; -x_323 = lean_ctor_get(x_163, 0); -x_324 = lean_ctor_get(x_163, 2); -lean_inc(x_324); -lean_inc(x_323); -lean_dec(x_163); -x_325 = l_Array_shrink___main___rarg(x_323, x_162); -lean_inc(x_161); -x_326 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_326, 0, x_325); -lean_ctor_set(x_326, 1, x_161); -lean_ctor_set(x_326, 2, x_324); -lean_ctor_set(x_326, 3, x_304); -x_327 = lean_nat_dec_eq(x_161, x_161); -if (x_327 == 0) -{ -lean_object* x_328; lean_object* x_329; -lean_dec(x_161); -x_328 = l_Lean_nullKind; -x_329 = l_Lean_Parser_ParserState_mkNode(x_326, x_328, x_162); -x_116 = x_329; -goto block_155; -} -else -{ -lean_object* x_330; lean_object* x_331; lean_object* x_332; -x_330 = l_Lean_Parser_ParserState_restore(x_326, x_162, x_161); -x_331 = l_Lean_nullKind; -x_332 = l_Lean_Parser_ParserState_mkNode(x_330, x_331, x_162); -x_116 = x_332; -goto block_155; -} -} -} -} -} -else -{ -lean_object* x_333; lean_object* x_334; lean_object* x_335; -lean_dec(x_159); -lean_dec(x_1); -x_333 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_334 = l_Lean_Parser_ParserState_mkNode(x_158, x_333, x_115); -x_335 = l_Lean_Parser_mergeOrElseErrors(x_334, x_110, x_107); -lean_dec(x_107); -return x_335; -} -block_155: -{ -lean_object* x_117; -x_117 = lean_ctor_get(x_116, 3); -lean_inc(x_117); -if (lean_obj_tag(x_117) == 0) -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_118 = l_Lean_Parser_termParser___closed__2; -x_119 = lean_unsigned_to_nat(51u); +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_124 = l_Lean_Parser_termParser___closed__2; +x_125 = lean_unsigned_to_nat(51u); lean_inc(x_1); -x_120 = l_Lean_Parser_categoryParser___elambda__1(x_118, x_119, x_1, x_116); -x_121 = lean_ctor_get(x_120, 3); -lean_inc(x_121); -if (lean_obj_tag(x_121) == 0) -{ -lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_122 = lean_ctor_get(x_120, 1); -lean_inc(x_122); -lean_inc(x_1); -x_123 = l_Lean_Parser_tokenFn(x_1, x_120); -x_124 = lean_ctor_get(x_123, 3); -lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) -{ -lean_object* x_125; lean_object* x_126; -x_125 = lean_ctor_get(x_123, 0); -lean_inc(x_125); -x_126 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_125); -lean_dec(x_125); -if (lean_obj_tag(x_126) == 2) -{ -lean_object* x_127; lean_object* x_128; uint8_t x_129; -x_127 = lean_ctor_get(x_126, 1); +x_126 = l_Lean_Parser_categoryParser___elambda__1(x_124, x_125, x_1, x_122); +x_127 = lean_ctor_get(x_126, 3); lean_inc(x_127); -lean_dec(x_126); -x_128 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__6; -x_129 = lean_string_dec_eq(x_127, x_128); -lean_dec(x_127); -if (x_129 == 0) +if (lean_obj_tag(x_127) == 0) { -lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_128 = lean_ctor_get(x_126, 1); +lean_inc(x_128); +lean_inc(x_1); +x_129 = l_Lean_Parser_tokenFn(x_1, x_126); +x_130 = lean_ctor_get(x_129, 3); +lean_inc(x_130); +if (lean_obj_tag(x_130) == 0) +{ +lean_object* x_131; lean_object* x_132; +x_131 = lean_ctor_get(x_129, 0); +lean_inc(x_131); +x_132 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_131); +lean_dec(x_131); +if (lean_obj_tag(x_132) == 2) +{ +lean_object* x_133; lean_object* x_134; uint8_t x_135; +x_133 = lean_ctor_get(x_132, 1); +lean_inc(x_133); +lean_dec(x_132); +x_134 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__6; +x_135 = lean_string_dec_eq(x_133, x_134); +lean_dec(x_133); +if (x_135 == 0) +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_dec(x_1); -x_130 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_130, x_122); -x_132 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_115); -x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_110, x_107); -lean_dec(x_107); -return x_134; +x_136 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_137 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_136, x_128); +x_138 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_121); +x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_113, x_110); +lean_dec(x_110); +return x_140; } else { -lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -lean_dec(x_122); -x_135 = l_Lean_Parser_ident___elambda__1(x_1, x_123); -x_136 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_115); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_110, x_107); -lean_dec(x_107); -return x_138; +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_dec(x_128); +x_141 = l_Lean_Parser_ident___elambda__1(x_1, x_129); +x_142 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_143 = l_Lean_Parser_ParserState_mkNode(x_141, x_142, x_121); +x_144 = l_Lean_Parser_mergeOrElseErrors(x_143, x_113, x_110); +lean_dec(x_110); +return x_144; } } else { -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; -lean_dec(x_126); +lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_dec(x_132); lean_dec(x_1); -x_139 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_139, x_122); -x_141 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_142 = l_Lean_Parser_ParserState_mkNode(x_140, x_141, x_115); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_110, x_107); -lean_dec(x_107); -return x_143; +x_145 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_146 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_145, x_128); +x_147 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_148 = l_Lean_Parser_ParserState_mkNode(x_146, x_147, x_121); +x_149 = l_Lean_Parser_mergeOrElseErrors(x_148, x_113, x_110); +lean_dec(x_110); +return x_149; } } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; -lean_dec(x_124); -lean_dec(x_1); -x_144 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; -x_145 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_144, x_122); -x_146 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_115); -x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_110, x_107); -lean_dec(x_107); -return x_148; -} -} -else -{ -lean_object* x_149; lean_object* x_150; lean_object* x_151; -lean_dec(x_121); -lean_dec(x_1); -x_149 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_150 = l_Lean_Parser_ParserState_mkNode(x_120, x_149, x_115); -x_151 = l_Lean_Parser_mergeOrElseErrors(x_150, x_110, x_107); -lean_dec(x_107); -return x_151; -} -} -else -{ -lean_object* x_152; lean_object* x_153; lean_object* x_154; -lean_dec(x_117); +lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +lean_dec(x_130); lean_dec(x_1); +x_150 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__9; +x_151 = l_Lean_Parser_ParserState_mkErrorsAt(x_129, x_150, x_128); x_152 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; -x_153 = l_Lean_Parser_ParserState_mkNode(x_116, x_152, x_115); -x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_110, x_107); -lean_dec(x_107); +x_153 = l_Lean_Parser_ParserState_mkNode(x_151, x_152, x_121); +x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_113, x_110); +lean_dec(x_110); return x_154; } } +else +{ +lean_object* x_155; lean_object* x_156; lean_object* x_157; +lean_dec(x_127); +lean_dec(x_1); +x_155 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_156 = l_Lean_Parser_ParserState_mkNode(x_126, x_155, x_121); +x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_113, x_110); +lean_dec(x_110); +return x_157; +} +} +else +{ +lean_object* x_158; lean_object* x_159; lean_object* x_160; +lean_dec(x_123); +lean_dec(x_1); +x_158 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__2; +x_159 = l_Lean_Parser_ParserState_mkNode(x_122, x_158, x_121); +x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_113, x_110); +lean_dec(x_110); +return x_160; +} +} +} +else +{ +lean_object* x_226; +lean_dec(x_119); +lean_dec(x_1); +x_226 = l_Lean_Parser_mergeOrElseErrors(x_118, x_113, x_110); +lean_dec(x_110); +return x_226; +} } } } @@ -6371,16 +6618,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_generalize___closed__8; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_generalize___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_generalize___closed__8; +x_3 = l_Lean_Parser_Tactic_generalize___closed__9; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__10() { +lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__11() { _start: { lean_object* x_1; @@ -6388,12 +6645,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_generalize___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__11() { +lean_object* _init_l_Lean_Parser_Tactic_generalize___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_generalize___closed__9; -x_2 = l_Lean_Parser_Tactic_generalize___closed__10; +x_1 = l_Lean_Parser_Tactic_generalize___closed__10; +x_2 = l_Lean_Parser_Tactic_generalize___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6404,7 +6661,7 @@ lean_object* _init_l_Lean_Parser_Tactic_generalize() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_generalize___closed__11; +x_1 = l_Lean_Parser_Tactic_generalize___closed__12; return x_1; } } @@ -6471,578 +6728,594 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_52; lean_object* x_53; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_52 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_55; lean_object* x_56; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_52); +x_55 = l_Lean_Parser_ident___elambda__1(x_1, x_7); x_56 = lean_ctor_get(x_55, 3); lean_inc(x_56); if (lean_obj_tag(x_56) == 0) { -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_55, 1); lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_1); +x_58 = l_Lean_Parser_tokenFn(x_1, x_55); +x_59 = lean_ctor_get(x_58, 3); lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) +if (lean_obj_tag(x_59) == 0) { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_62 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_54); -x_64 = lean_ctor_get(x_63, 0); -lean_inc(x_64); -x_65 = lean_ctor_get(x_63, 2); -lean_inc(x_65); -x_66 = lean_ctor_get(x_63, 3); -lean_inc(x_66); -x_45 = x_63; -x_46 = x_64; -x_47 = x_65; -x_48 = x_66; -goto block_51; -} -else +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_54); -x_67 = lean_ctor_get(x_55, 0); +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_65 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_67 = lean_ctor_get(x_66, 0); lean_inc(x_67); -x_68 = lean_ctor_get(x_55, 2); +x_68 = lean_ctor_get(x_66, 2); lean_inc(x_68); -x_69 = lean_ctor_get(x_55, 3); +x_69 = lean_ctor_get(x_66, 3); lean_inc(x_69); -x_45 = x_55; -x_46 = x_67; -x_47 = x_68; -x_48 = x_69; -goto block_51; -} +x_48 = x_66; +x_49 = x_67; +x_50 = x_68; +x_51 = x_69; +goto block_54; } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_dec(x_58); -x_70 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_70, x_54); -x_72 = lean_ctor_get(x_71, 0); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_57); +x_70 = lean_ctor_get(x_58, 0); +lean_inc(x_70); +x_71 = lean_ctor_get(x_58, 2); +lean_inc(x_71); +x_72 = lean_ctor_get(x_58, 3); lean_inc(x_72); -x_73 = lean_ctor_get(x_71, 2); -lean_inc(x_73); -x_74 = lean_ctor_get(x_71, 3); -lean_inc(x_74); -x_45 = x_71; -x_46 = x_72; -x_47 = x_73; -x_48 = x_74; -goto block_51; +x_48 = x_58; +x_49 = x_70; +x_50 = x_71; +x_51 = x_72; +goto block_54; } } else { -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_dec(x_56); -x_75 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_75, x_54); -x_77 = lean_ctor_get(x_76, 0); +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_61); +x_73 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_73, x_57); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 2); +lean_inc(x_76); +x_77 = lean_ctor_get(x_74, 3); lean_inc(x_77); -x_78 = lean_ctor_get(x_76, 2); -lean_inc(x_78); -x_79 = lean_ctor_get(x_76, 3); -lean_inc(x_79); -x_45 = x_76; -x_46 = x_77; -x_47 = x_78; -x_48 = x_79; -goto block_51; +x_48 = x_74; +x_49 = x_75; +x_50 = x_76; +x_51 = x_77; +goto block_54; } } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; -lean_dec(x_53); -x_80 = lean_ctor_get(x_52, 0); +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_dec(x_59); +x_78 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_78, x_57); +x_80 = lean_ctor_get(x_79, 0); lean_inc(x_80); -x_81 = lean_ctor_get(x_52, 2); +x_81 = lean_ctor_get(x_79, 2); lean_inc(x_81); -x_82 = lean_ctor_get(x_52, 3); +x_82 = lean_ctor_get(x_79, 3); lean_inc(x_82); -x_45 = x_52; -x_46 = x_80; -x_47 = x_81; -x_48 = x_82; -goto block_51; +x_48 = x_79; +x_49 = x_80; +x_50 = x_81; +x_51 = x_82; +goto block_54; } -block_44: +} +else { -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) +lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_dec(x_56); +x_83 = lean_ctor_get(x_55, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_55, 2); +lean_inc(x_84); +x_85 = lean_ctor_get(x_55, 3); +lean_inc(x_85); +x_48 = x_55; +x_49 = x_83; +x_50 = x_84; +x_51 = x_85; +goto block_54; +} +block_47: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; -lean_dec(x_7); -x_11 = l_Lean_nullKind; -lean_inc(x_8); -x_12 = l_Lean_Parser_ParserState_mkNode(x_9, x_11, x_8); +lean_object* x_13; x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_8); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_8); -return x_20; -} -} -else -{ -lean_object* x_21; uint8_t x_22; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_dec(x_10); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_7); -lean_dec(x_21); -if (x_22 == 0) +x_14 = l_Lean_nullKind; +lean_inc(x_11); +x_15 = l_Lean_Parser_ParserState_mkNode(x_12, x_14, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_7); -x_23 = l_Lean_nullKind; -lean_inc(x_8); -x_24 = l_Lean_Parser_ParserState_mkNode(x_9, x_23, x_8); -x_25 = lean_ctor_get(x_24, 3); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_26 = l_Lean_Parser_termParser___closed__2; -x_27 = lean_unsigned_to_nat(0u); -x_28 = l_Lean_Parser_categoryParser___elambda__1(x_26, x_27, x_1, x_24); -x_29 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_8); -return x_30; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = l_Lean_Parser_termParser___closed__2; +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Parser_categoryParser___elambda__1(x_17, x_18, x_1, x_15); +x_20 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_11); +return x_21; } else { -lean_object* x_31; lean_object* x_32; -lean_dec(x_25); +lean_object* x_22; lean_object* x_23; +lean_dec(x_16); lean_dec(x_1); -x_31 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_24, x_31, x_8); -return x_32; +x_22 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_15, x_22, x_11); +return x_23; } } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_33 = l_Lean_Parser_ParserState_restore(x_9, x_8, x_7); -x_34 = l_Lean_nullKind; -lean_inc(x_8); -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_8); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +lean_object* x_24; uint8_t x_25; +lean_dec(x_13); +x_24 = lean_ctor_get(x_12, 1); +lean_inc(x_24); +x_25 = lean_nat_dec_eq(x_24, x_10); +lean_dec(x_24); +if (x_25 == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = l_Lean_Parser_termParser___closed__2; -x_38 = lean_unsigned_to_nat(0u); -x_39 = l_Lean_Parser_categoryParser___elambda__1(x_37, x_38, x_1, x_35); -x_40 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_8); -return x_41; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_10); +x_26 = l_Lean_nullKind; +lean_inc(x_11); +x_27 = l_Lean_Parser_ParserState_mkNode(x_12, x_26, x_11); +x_28 = lean_ctor_get(x_27, 3); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_29 = l_Lean_Parser_termParser___closed__2; +x_30 = lean_unsigned_to_nat(0u); +x_31 = l_Lean_Parser_categoryParser___elambda__1(x_29, x_30, x_1, x_27); +x_32 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); +return x_33; } else { -lean_object* x_42; lean_object* x_43; -lean_dec(x_36); +lean_object* x_34; lean_object* x_35; +lean_dec(x_28); lean_dec(x_1); -x_42 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_35, x_42, x_8); -return x_43; +x_34 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_27, x_34, x_11); +return x_35; } } -} -} -block_51: -{ -if (lean_obj_tag(x_48) == 0) -{ -lean_dec(x_47); -lean_dec(x_46); -x_9 = x_45; -goto block_44; -} else { -lean_object* x_49; lean_object* x_50; -lean_dec(x_45); -x_49 = l_Array_shrink___main___rarg(x_46, x_8); -lean_inc(x_7); -x_50 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_7); -lean_ctor_set(x_50, 2, x_47); -lean_ctor_set(x_50, 3, x_48); -x_9 = x_50; -goto block_44; +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_36 = l_Lean_Parser_ParserState_restore(x_12, x_11, x_10); +x_37 = l_Lean_nullKind; +lean_inc(x_11); +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_11); +return x_44; +} +else +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_39); +lean_dec(x_1); +x_45 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_38, x_45, x_11); +return x_46; +} +} +} +} +block_54: +{ +if (lean_obj_tag(x_51) == 0) +{ +lean_dec(x_50); +lean_dec(x_49); +x_12 = x_48; +goto block_47; +} +else +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_48); +x_52 = l_Array_shrink___main___rarg(x_49, x_11); +lean_inc(x_10); +x_53 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_10); +lean_ctor_set(x_53, 2, x_50); +lean_ctor_set(x_53, 3, x_51); +x_12 = x_53; +goto block_47; } } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_83 = lean_ctor_get(x_2, 0); -lean_inc(x_83); -x_84 = lean_ctor_get(x_2, 1); -lean_inc(x_84); -x_85 = lean_array_get_size(x_83); -lean_dec(x_83); -lean_inc(x_2); -lean_inc(x_1); -x_86 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_87 = x_2; -} else { - lean_dec_ref(x_2); - x_87 = lean_box(0); +lean_dec(x_8); +lean_dec(x_1); +return x_7; } -x_88 = lean_ctor_get(x_86, 3); +} +else +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_86 = lean_ctor_get(x_2, 0); +lean_inc(x_86); +x_87 = lean_array_get_size(x_86); +lean_dec(x_86); +x_88 = lean_ctor_get(x_2, 1); lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_dec(x_87); -lean_dec(x_85); -lean_dec(x_84); -lean_dec(x_1); -return x_86; -} -else -{ -lean_object* x_89; lean_object* x_90; uint8_t x_91; -x_89 = lean_ctor_get(x_88, 0); -lean_inc(x_89); -lean_dec(x_88); -x_90 = lean_ctor_get(x_86, 1); +lean_inc(x_1); +x_89 = lean_apply_2(x_4, x_1, x_2); +x_90 = lean_ctor_get(x_89, 3); lean_inc(x_90); -x_91 = lean_nat_dec_eq(x_90, x_84); +if (lean_obj_tag(x_90) == 0) +{ +lean_dec(x_88); +lean_dec(x_87); +lean_dec(x_1); +return x_89; +} +else +{ +lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_91 = lean_ctor_get(x_90, 0); +lean_inc(x_91); lean_dec(x_90); -if (x_91 == 0) +x_92 = lean_ctor_get(x_89, 1); +lean_inc(x_92); +x_93 = lean_nat_dec_eq(x_92, x_88); +lean_dec(x_92); +if (x_93 == 0) { -lean_dec(x_89); +lean_dec(x_91); +lean_dec(x_88); lean_dec(x_87); -lean_dec(x_85); -lean_dec(x_84); lean_dec(x_1); -return x_86; +return x_89; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_144; lean_object* x_145; -lean_inc(x_84); -x_92 = l_Lean_Parser_ParserState_restore(x_86, x_85, x_84); -lean_dec(x_85); -x_93 = lean_ctor_get(x_92, 0); -lean_inc(x_93); -x_94 = lean_array_get_size(x_93); -lean_dec(x_93); -lean_inc(x_1); -x_144 = l_Lean_Parser_ident___elambda__1(x_1, x_92); -x_145 = lean_ctor_get(x_144, 3); -lean_inc(x_145); -if (lean_obj_tag(x_145) == 0) +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_inc(x_88); +x_94 = l_Lean_Parser_ParserState_restore(x_89, x_87, x_88); +lean_dec(x_87); +x_95 = lean_unsigned_to_nat(1024u); +x_96 = l_Lean_Parser_checkPrecFn(x_95, x_1, x_94); +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) { -lean_object* x_146; lean_object* x_147; lean_object* x_148; -x_146 = lean_ctor_get(x_144, 1); -lean_inc(x_146); -lean_inc(x_1); -x_147 = l_Lean_Parser_tokenFn(x_1, x_144); -x_148 = lean_ctor_get(x_147, 3); -lean_inc(x_148); -if (lean_obj_tag(x_148) == 0) -{ -lean_object* x_149; lean_object* x_150; -x_149 = lean_ctor_get(x_147, 0); -lean_inc(x_149); -x_150 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_149); -lean_dec(x_149); -if (lean_obj_tag(x_150) == 2) -{ -lean_object* x_151; lean_object* x_152; uint8_t x_153; -x_151 = lean_ctor_get(x_150, 1); -lean_inc(x_151); -lean_dec(x_150); -x_152 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_153 = lean_string_dec_eq(x_151, x_152); -lean_dec(x_151); -if (x_153 == 0) -{ -lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_154 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_155 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_154, x_146); -x_156 = lean_ctor_get(x_155, 0); -lean_inc(x_156); -x_157 = lean_ctor_get(x_155, 2); -lean_inc(x_157); -x_158 = lean_ctor_get(x_155, 3); -lean_inc(x_158); -x_137 = x_155; -x_138 = x_156; -x_139 = x_157; -x_140 = x_158; -goto block_143; -} -else -{ -lean_object* x_159; lean_object* x_160; lean_object* x_161; -lean_dec(x_146); -x_159 = lean_ctor_get(x_147, 0); -lean_inc(x_159); -x_160 = lean_ctor_get(x_147, 2); -lean_inc(x_160); -x_161 = lean_ctor_get(x_147, 3); -lean_inc(x_161); -x_137 = x_147; -x_138 = x_159; -x_139 = x_160; -x_140 = x_161; -goto block_143; -} -} -else -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; -lean_dec(x_150); -x_162 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_162, x_146); -x_164 = lean_ctor_get(x_163, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_163, 2); -lean_inc(x_165); -x_166 = lean_ctor_get(x_163, 3); -lean_inc(x_166); -x_137 = x_163; -x_138 = x_164; -x_139 = x_165; -x_140 = x_166; -goto block_143; -} -} -else -{ -lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; -lean_dec(x_148); -x_167 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_167, x_146); -x_169 = lean_ctor_get(x_168, 0); -lean_inc(x_169); -x_170 = lean_ctor_get(x_168, 2); -lean_inc(x_170); -x_171 = lean_ctor_get(x_168, 3); -lean_inc(x_171); -x_137 = x_168; -x_138 = x_169; -x_139 = x_170; -x_140 = x_171; -goto block_143; -} -} -else -{ -lean_object* x_172; lean_object* x_173; lean_object* x_174; -lean_dec(x_145); -x_172 = lean_ctor_get(x_144, 0); -lean_inc(x_172); -x_173 = lean_ctor_get(x_144, 2); -lean_inc(x_173); -x_174 = lean_ctor_get(x_144, 3); -lean_inc(x_174); -x_137 = x_144; -x_138 = x_172; -x_139 = x_173; -x_140 = x_174; -goto block_143; -} -block_136: -{ -lean_object* x_96; -x_96 = lean_ctor_get(x_95, 3); -lean_inc(x_96); -if (lean_obj_tag(x_96) == 0) -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_97 = l_Lean_nullKind; -lean_inc(x_94); -x_98 = l_Lean_Parser_ParserState_mkNode(x_95, x_97, x_94); -x_99 = lean_ctor_get(x_98, 3); +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_150; lean_object* x_151; +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_96, 1); lean_inc(x_99); -if (lean_obj_tag(x_99) == 0) +x_100 = lean_array_get_size(x_98); +lean_dec(x_98); +lean_inc(x_1); +x_150 = l_Lean_Parser_ident___elambda__1(x_1, x_96); +x_151 = lean_ctor_get(x_150, 3); +lean_inc(x_151); +if (lean_obj_tag(x_151) == 0) { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; -x_100 = l_Lean_Parser_termParser___closed__2; -x_101 = lean_unsigned_to_nat(0u); -x_102 = l_Lean_Parser_categoryParser___elambda__1(x_100, x_101, x_1, x_98); -x_103 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_94); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_89, x_84); -lean_dec(x_84); -return x_105; +lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_inc(x_1); +x_153 = l_Lean_Parser_tokenFn(x_1, x_150); +x_154 = lean_ctor_get(x_153, 3); +lean_inc(x_154); +if (lean_obj_tag(x_154) == 0) +{ +lean_object* x_155; lean_object* x_156; +x_155 = lean_ctor_get(x_153, 0); +lean_inc(x_155); +x_156 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_155); +lean_dec(x_155); +if (lean_obj_tag(x_156) == 2) +{ +lean_object* x_157; lean_object* x_158; uint8_t x_159; +x_157 = lean_ctor_get(x_156, 1); +lean_inc(x_157); +lean_dec(x_156); +x_158 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_159 = lean_string_dec_eq(x_157, x_158); +lean_dec(x_157); +if (x_159 == 0) +{ +lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +x_160 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_160, x_152); +x_162 = lean_ctor_get(x_161, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_161, 2); +lean_inc(x_163); +x_164 = lean_ctor_get(x_161, 3); +lean_inc(x_164); +x_143 = x_161; +x_144 = x_162; +x_145 = x_163; +x_146 = x_164; +goto block_149; } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; +lean_object* x_165; lean_object* x_166; lean_object* x_167; +lean_dec(x_152); +x_165 = lean_ctor_get(x_153, 0); +lean_inc(x_165); +x_166 = lean_ctor_get(x_153, 2); +lean_inc(x_166); +x_167 = lean_ctor_get(x_153, 3); +lean_inc(x_167); +x_143 = x_153; +x_144 = x_165; +x_145 = x_166; +x_146 = x_167; +goto block_149; +} +} +else +{ +lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; +lean_dec(x_156); +x_168 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_169 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_168, x_152); +x_170 = lean_ctor_get(x_169, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_169, 2); +lean_inc(x_171); +x_172 = lean_ctor_get(x_169, 3); +lean_inc(x_172); +x_143 = x_169; +x_144 = x_170; +x_145 = x_171; +x_146 = x_172; +goto block_149; +} +} +else +{ +lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_154); +x_173 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_173, x_152); +x_175 = lean_ctor_get(x_174, 0); +lean_inc(x_175); +x_176 = lean_ctor_get(x_174, 2); +lean_inc(x_176); +x_177 = lean_ctor_get(x_174, 3); +lean_inc(x_177); +x_143 = x_174; +x_144 = x_175; +x_145 = x_176; +x_146 = x_177; +goto block_149; +} +} +else +{ +lean_object* x_178; lean_object* x_179; lean_object* x_180; +lean_dec(x_151); +x_178 = lean_ctor_get(x_150, 0); +lean_inc(x_178); +x_179 = lean_ctor_get(x_150, 2); +lean_inc(x_179); +x_180 = lean_ctor_get(x_150, 3); +lean_inc(x_180); +x_143 = x_150; +x_144 = x_178; +x_145 = x_179; +x_146 = x_180; +goto block_149; +} +block_142: +{ +lean_object* x_102; +x_102 = lean_ctor_get(x_101, 3); +lean_inc(x_102); +if (lean_obj_tag(x_102) == 0) +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_99); +x_103 = l_Lean_nullKind; +lean_inc(x_100); +x_104 = l_Lean_Parser_ParserState_mkNode(x_101, x_103, x_100); +x_105 = lean_ctor_get(x_104, 3); +lean_inc(x_105); +if (lean_obj_tag(x_105) == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_106 = l_Lean_Parser_termParser___closed__2; +x_107 = lean_unsigned_to_nat(0u); +x_108 = l_Lean_Parser_categoryParser___elambda__1(x_106, x_107, x_1, x_104); +x_109 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_100); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_91, x_88); +lean_dec(x_88); +return x_111; +} +else +{ +lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_105); lean_dec(x_1); -x_106 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_98, x_106, x_94); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_89, x_84); -lean_dec(x_84); -return x_108; +x_112 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_113 = l_Lean_Parser_ParserState_mkNode(x_104, x_112, x_100); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_91, x_88); +lean_dec(x_88); +return x_114; } } else { -lean_object* x_109; uint8_t x_110; -lean_dec(x_96); -x_109 = lean_ctor_get(x_95, 1); -lean_inc(x_109); -x_110 = lean_nat_dec_eq(x_109, x_84); -lean_dec(x_109); -if (x_110 == 0) +lean_object* x_115; uint8_t x_116; +lean_dec(x_102); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +x_116 = lean_nat_dec_eq(x_115, x_99); +lean_dec(x_115); +if (x_116 == 0) { -lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_111 = l_Lean_nullKind; -lean_inc(x_94); -x_112 = l_Lean_Parser_ParserState_mkNode(x_95, x_111, x_94); -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_99); +x_117 = l_Lean_nullKind; +lean_inc(x_100); +x_118 = l_Lean_Parser_ParserState_mkNode(x_101, x_117, x_100); +x_119 = lean_ctor_get(x_118, 3); +lean_inc(x_119); +if (lean_obj_tag(x_119) == 0) { -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_114 = l_Lean_Parser_termParser___closed__2; -x_115 = lean_unsigned_to_nat(0u); -x_116 = l_Lean_Parser_categoryParser___elambda__1(x_114, x_115, x_1, x_112); -x_117 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_118 = l_Lean_Parser_ParserState_mkNode(x_116, x_117, x_94); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_89, x_84); -lean_dec(x_84); -return x_119; +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_120 = l_Lean_Parser_termParser___closed__2; +x_121 = lean_unsigned_to_nat(0u); +x_122 = l_Lean_Parser_categoryParser___elambda__1(x_120, x_121, x_1, x_118); +x_123 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_100); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_91, x_88); +lean_dec(x_88); +return x_125; } else { -lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_113); +lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_119); lean_dec(x_1); -x_120 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_112, x_120, x_94); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_89, x_84); -lean_dec(x_84); -return x_122; +x_126 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_127 = l_Lean_Parser_ParserState_mkNode(x_118, x_126, x_100); +x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_91, x_88); +lean_dec(x_88); +return x_128; } } else { -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; -lean_inc(x_84); -x_123 = l_Lean_Parser_ParserState_restore(x_95, x_94, x_84); -x_124 = l_Lean_nullKind; -lean_inc(x_94); -x_125 = l_Lean_Parser_ParserState_mkNode(x_123, x_124, x_94); -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_129 = l_Lean_Parser_ParserState_restore(x_101, x_100, x_99); +x_130 = l_Lean_nullKind; +lean_inc(x_100); +x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_100); +x_132 = lean_ctor_get(x_131, 3); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 0) { -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_127 = l_Lean_Parser_termParser___closed__2; -x_128 = lean_unsigned_to_nat(0u); -x_129 = l_Lean_Parser_categoryParser___elambda__1(x_127, x_128, x_1, x_125); -x_130 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_94); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_89, x_84); -lean_dec(x_84); -return x_132; +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_133 = l_Lean_Parser_termParser___closed__2; +x_134 = lean_unsigned_to_nat(0u); +x_135 = l_Lean_Parser_categoryParser___elambda__1(x_133, x_134, x_1, x_131); +x_136 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_100); +x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_91, x_88); +lean_dec(x_88); +return x_138; } else { -lean_object* x_133; lean_object* x_134; lean_object* x_135; -lean_dec(x_126); +lean_object* x_139; lean_object* x_140; lean_object* x_141; +lean_dec(x_132); lean_dec(x_1); -x_133 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; -x_134 = l_Lean_Parser_ParserState_mkNode(x_125, x_133, x_94); -x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_89, x_84); -lean_dec(x_84); -return x_135; +x_139 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__2; +x_140 = l_Lean_Parser_ParserState_mkNode(x_131, x_139, x_100); +x_141 = l_Lean_Parser_mergeOrElseErrors(x_140, x_91, x_88); +lean_dec(x_88); +return x_141; } } } } -block_143: +block_149: { -if (lean_obj_tag(x_140) == 0) +if (lean_obj_tag(x_146) == 0) { -lean_dec(x_139); -lean_dec(x_138); -lean_dec(x_87); -x_95 = x_137; -goto block_136; +lean_dec(x_145); +lean_dec(x_144); +x_101 = x_143; +goto block_142; } else { -lean_object* x_141; lean_object* x_142; -lean_dec(x_137); -x_141 = l_Array_shrink___main___rarg(x_138, x_94); -lean_inc(x_84); -if (lean_is_scalar(x_87)) { - x_142 = lean_alloc_ctor(0, 4, 0); -} else { - x_142 = x_87; +lean_object* x_147; lean_object* x_148; +lean_dec(x_143); +x_147 = l_Array_shrink___main___rarg(x_144, x_100); +lean_inc(x_99); +x_148 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_99); +lean_ctor_set(x_148, 2, x_145); +lean_ctor_set(x_148, 3, x_146); +x_101 = x_148; +goto block_142; } -lean_ctor_set(x_142, 0, x_141); -lean_ctor_set(x_142, 1, x_84); -lean_ctor_set(x_142, 2, x_139); -lean_ctor_set(x_142, 3, x_140); -x_95 = x_142; -goto block_136; } } +else +{ +lean_object* x_181; +lean_dec(x_97); +lean_dec(x_1); +x_181 = l_Lean_Parser_mergeOrElseErrors(x_96, x_91, x_88); +lean_dec(x_88); +return x_181; +} } } } @@ -7073,16 +7346,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_majorPremise___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_majorPremise___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_majorPremise___closed__2; +x_3 = l_Lean_Parser_Tactic_majorPremise___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__4() { +lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__5() { _start: { lean_object* x_1; @@ -7090,12 +7373,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_majorPremise___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__5() { +lean_object* _init_l_Lean_Parser_Tactic_majorPremise___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_majorPremise___closed__3; -x_2 = l_Lean_Parser_Tactic_majorPremise___closed__4; +x_1 = l_Lean_Parser_Tactic_majorPremise___closed__4; +x_2 = l_Lean_Parser_Tactic_majorPremise___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -7106,7 +7389,7 @@ lean_object* _init_l_Lean_Parser_Tactic_majorPremise() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_majorPremise___closed__5; +x_1 = l_Lean_Parser_Tactic_majorPremise___closed__6; return x_1; } } @@ -10107,220 +10390,251 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_induction___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_induction___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_induction___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_induction___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; +lean_object* x_15; lean_object* x_16; lean_inc(x_1); -x_12 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_15 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_14; lean_object* x_15; +lean_object* x_17; lean_object* x_18; lean_inc(x_1); -x_14 = l_Lean_Parser_Tactic_usingRec___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_17 = l_Lean_Parser_Tactic_usingRec___elambda__1(x_1, x_15); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_16; lean_object* x_17; +lean_object* x_19; lean_object* x_20; lean_inc(x_1); -x_16 = l_Lean_Parser_Tactic_generalizingVars___elambda__1(x_1, x_14); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) +x_19 = l_Lean_Parser_Tactic_generalizingVars___elambda__1(x_1, x_17); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_16); -x_19 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_7); -return x_20; +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_19); +x_22 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_10); +return x_23; } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_17); +lean_object* x_24; lean_object* x_25; +lean_dec(x_20); lean_dec(x_1); -x_21 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_16, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_19, x_24, x_10); +return x_25; } } else { -lean_object* x_23; lean_object* x_24; -lean_dec(x_15); +lean_object* x_26; lean_object* x_27; +lean_dec(x_18); lean_dec(x_1); -x_23 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_14, x_23, x_7); -return x_24; +x_26 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_17, x_26, x_10); +return x_27; } } else { -lean_object* x_25; lean_object* x_26; -lean_dec(x_13); +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); lean_dec(x_1); -x_25 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_12, x_25, x_7); -return x_26; +x_28 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_15, x_28, x_10); +return x_29; } } else { -lean_object* x_27; lean_object* x_28; -lean_dec(x_11); +lean_object* x_30; lean_object* x_31; +lean_dec(x_14); lean_dec(x_1); -x_27 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_10, x_27, x_7); -return x_28; +x_30 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_13, x_30, x_10); +return x_31; } } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_29 = lean_ctor_get(x_2, 0); -lean_inc(x_29); -x_30 = lean_array_get_size(x_29); -lean_dec(x_29); -x_31 = lean_ctor_get(x_2, 1); -lean_inc(x_31); -lean_inc(x_1); -x_32 = lean_apply_2(x_4, x_1, x_2); -x_33 = lean_ctor_get(x_32, 3); -lean_inc(x_33); -if (lean_obj_tag(x_33) == 0) -{ -lean_dec(x_31); -lean_dec(x_30); +lean_dec(x_8); lean_dec(x_1); -return x_32; +return x_7; +} } else { -lean_object* x_34; lean_object* x_35; uint8_t x_36; -x_34 = lean_ctor_get(x_33, 0); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = lean_ctor_get(x_2, 0); +lean_inc(x_32); +x_33 = lean_array_get_size(x_32); +lean_dec(x_32); +x_34 = lean_ctor_get(x_2, 1); lean_inc(x_34); -lean_dec(x_33); -x_35 = lean_ctor_get(x_32, 1); -lean_inc(x_35); -x_36 = lean_nat_dec_eq(x_35, x_31); -lean_dec(x_35); -if (x_36 == 0) +lean_inc(x_1); +x_35 = lean_apply_2(x_4, x_1, x_2); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) { lean_dec(x_34); -lean_dec(x_31); -lean_dec(x_30); +lean_dec(x_33); lean_dec(x_1); -return x_32; +return x_35; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_inc(x_31); -x_37 = l_Lean_Parser_ParserState_restore(x_32, x_30, x_31); -lean_dec(x_30); -x_38 = lean_ctor_get(x_37, 0); +lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +lean_dec(x_36); +x_38 = lean_ctor_get(x_35, 1); lean_inc(x_38); -x_39 = lean_array_get_size(x_38); +x_39 = lean_nat_dec_eq(x_38, x_34); lean_dec(x_38); -x_40 = l_Lean_Parser_Tactic_induction___elambda__1___closed__6; -x_41 = l_Lean_Parser_Tactic_induction___elambda__1___closed__8; -lean_inc(x_1); -x_42 = l_Lean_Parser_nonReservedSymbolFnAux(x_40, x_41, x_1, x_37); +if (x_39 == 0) +{ +lean_dec(x_37); +lean_dec(x_34); +lean_dec(x_33); +lean_dec(x_1); +return x_35; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_inc(x_34); +x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); +lean_dec(x_33); +x_41 = lean_unsigned_to_nat(1024u); +x_42 = l_Lean_Parser_checkPrecFn(x_41, x_1, x_40); x_43 = lean_ctor_get(x_42, 3); lean_inc(x_43); if (lean_obj_tag(x_43) == 0) { -lean_object* x_44; lean_object* x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_array_get_size(x_44); +lean_dec(x_44); +x_46 = l_Lean_Parser_Tactic_induction___elambda__1___closed__6; +x_47 = l_Lean_Parser_Tactic_induction___elambda__1___closed__8; lean_inc(x_1); -x_44 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_42); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; -lean_inc(x_1); -x_46 = l_Lean_Parser_Tactic_usingRec___elambda__1(x_1, x_44); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; -lean_inc(x_1); -x_48 = l_Lean_Parser_Tactic_generalizingVars___elambda__1(x_1, x_46); +x_48 = l_Lean_Parser_nonReservedSymbolFnAux(x_46, x_47, x_1, x_42); x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); if (lean_obj_tag(x_49) == 0) { -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_50 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_48); -x_51 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_51, x_39); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_34, x_31); -lean_dec(x_31); -return x_53; -} -else +lean_object* x_50; lean_object* x_51; +lean_inc(x_1); +x_50 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_48); +x_51 = lean_ctor_get(x_50, 3); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_49); -lean_dec(x_1); -x_54 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_48, x_54, x_39); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_34, x_31); -lean_dec(x_31); -return x_56; -} -} -else +lean_object* x_52; lean_object* x_53; +lean_inc(x_1); +x_52 = l_Lean_Parser_Tactic_usingRec___elambda__1(x_1, x_50); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) { -lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_47); -lean_dec(x_1); +lean_object* x_54; lean_object* x_55; +lean_inc(x_1); +x_54 = l_Lean_Parser_Tactic_generalizingVars___elambda__1(x_1, x_52); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_54); x_57 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_58 = l_Lean_Parser_ParserState_mkNode(x_46, x_57, x_39); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_34, x_31); -lean_dec(x_31); +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_45); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_37, x_34); +lean_dec(x_34); return x_59; } -} else { lean_object* x_60; lean_object* x_61; lean_object* x_62; -lean_dec(x_45); +lean_dec(x_55); lean_dec(x_1); x_60 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_44, x_60, x_39); -x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_34, x_31); -lean_dec(x_31); +x_61 = l_Lean_Parser_ParserState_mkNode(x_54, x_60, x_45); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_37, x_34); +lean_dec(x_34); return x_62; } } else { lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_dec(x_43); +lean_dec(x_53); lean_dec(x_1); x_63 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_42, x_63, x_39); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_34, x_31); -lean_dec(x_31); +x_64 = l_Lean_Parser_ParserState_mkNode(x_52, x_63, x_45); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_37, x_34); +lean_dec(x_34); return x_65; } } +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_51); +lean_dec(x_1); +x_66 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_50, x_66, x_45); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_37, x_34); +lean_dec(x_34); +return x_68; +} +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_49); +lean_dec(x_1); +x_69 = l_Lean_Parser_Tactic_induction___elambda__1___closed__2; +x_70 = l_Lean_Parser_ParserState_mkNode(x_48, x_69, x_45); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_37, x_34); +lean_dec(x_34); +return x_71; +} +} +else +{ +lean_object* x_72; +lean_dec(x_43); +lean_dec(x_1); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_42, x_37, x_34); +lean_dec(x_34); +return x_72; +} +} } } } @@ -10396,16 +10710,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_induction___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_induction___closed__6; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_induction___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_induction___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_induction___closed__6; +x_3 = l_Lean_Parser_Tactic_induction___closed__7; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_induction___closed__8() { +lean_object* _init_l_Lean_Parser_Tactic_induction___closed__9() { _start: { lean_object* x_1; @@ -10413,12 +10737,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_induction___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_induction___closed__9() { +lean_object* _init_l_Lean_Parser_Tactic_induction___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_induction___closed__7; -x_2 = l_Lean_Parser_Tactic_induction___closed__8; +x_1 = l_Lean_Parser_Tactic_induction___closed__8; +x_2 = l_Lean_Parser_Tactic_induction___closed__9; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10429,7 +10753,7 @@ lean_object* _init_l_Lean_Parser_Tactic_induction() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_induction___closed__9; +x_1 = l_Lean_Parser_Tactic_induction___closed__10; return x_1; } } @@ -10533,146 +10857,177 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_cases___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_cases___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_cases___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_cases___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; +lean_object* x_15; lean_object* x_16; lean_inc(x_1); -x_12 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_10); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_15 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_13); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_7); -return x_16; +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; } else { -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); lean_dec(x_1); -x_17 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_7); -return x_18; +x_20 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; } } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_11); +lean_object* x_22; lean_object* x_23; +lean_dec(x_14); lean_dec(x_1); -x_19 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_10, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_13, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_21 = lean_ctor_get(x_2, 0); -lean_inc(x_21); -x_22 = lean_array_get_size(x_21); -lean_dec(x_21); -x_23 = lean_ctor_get(x_2, 1); -lean_inc(x_23); -lean_inc(x_1); -x_24 = lean_apply_2(x_4, x_1, x_2); -x_25 = lean_ctor_get(x_24, 3); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) -{ -lean_dec(x_23); -lean_dec(x_22); +lean_dec(x_8); lean_dec(x_1); -return x_24; +return x_7; +} } else { -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 0); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_24 = lean_ctor_get(x_2, 0); +lean_inc(x_24); +x_25 = lean_array_get_size(x_24); +lean_dec(x_24); +x_26 = lean_ctor_get(x_2, 1); lean_inc(x_26); -lean_dec(x_25); -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -x_28 = lean_nat_dec_eq(x_27, x_23); -lean_dec(x_27); -if (x_28 == 0) +lean_inc(x_1); +x_27 = lean_apply_2(x_4, x_1, x_2); +x_28 = lean_ctor_get(x_27, 3); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) { lean_dec(x_26); -lean_dec(x_23); -lean_dec(x_22); +lean_dec(x_25); lean_dec(x_1); -return x_24; +return x_27; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_inc(x_23); -x_29 = l_Lean_Parser_ParserState_restore(x_24, x_22, x_23); -lean_dec(x_22); -x_30 = lean_ctor_get(x_29, 0); +lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +lean_dec(x_28); +x_30 = lean_ctor_get(x_27, 1); lean_inc(x_30); -x_31 = lean_array_get_size(x_30); +x_31 = lean_nat_dec_eq(x_30, x_26); lean_dec(x_30); -x_32 = l_Lean_Parser_Tactic_cases___elambda__1___closed__6; -x_33 = l_Lean_Parser_Tactic_cases___elambda__1___closed__8; -lean_inc(x_1); -x_34 = l_Lean_Parser_nonReservedSymbolFnAux(x_32, x_33, x_1, x_29); +if (x_31 == 0) +{ +lean_dec(x_29); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_1); +return x_27; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_inc(x_26); +x_32 = l_Lean_Parser_ParserState_restore(x_27, x_25, x_26); +lean_dec(x_25); +x_33 = lean_unsigned_to_nat(1024u); +x_34 = l_Lean_Parser_checkPrecFn(x_33, x_1, x_32); x_35 = lean_ctor_get(x_34, 3); lean_inc(x_35); if (lean_obj_tag(x_35) == 0) { -lean_object* x_36; lean_object* x_37; +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_36 = lean_ctor_get(x_34, 0); +lean_inc(x_36); +x_37 = lean_array_get_size(x_36); +lean_dec(x_36); +x_38 = l_Lean_Parser_Tactic_cases___elambda__1___closed__6; +x_39 = l_Lean_Parser_Tactic_cases___elambda__1___closed__8; lean_inc(x_1); -x_36 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_34); -x_37 = lean_ctor_get(x_36, 3); -lean_inc(x_37); -if (lean_obj_tag(x_37) == 0) +x_40 = l_Lean_Parser_nonReservedSymbolFnAux(x_38, x_39, x_1, x_34); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_36); -x_39 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_31); -x_41 = l_Lean_Parser_mergeOrElseErrors(x_40, x_26, x_23); -lean_dec(x_23); -return x_41; +lean_object* x_42; lean_object* x_43; +lean_inc(x_1); +x_42 = l_Lean_Parser_Tactic_majorPremise___elambda__1(x_1, x_40); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = l_Lean_Parser_Tactic_withAlts___elambda__1(x_1, x_42); +x_45 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_37); +x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_29, x_26); +lean_dec(x_26); +return x_47; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_37); +lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_dec(x_43); lean_dec(x_1); -x_42 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_36, x_42, x_31); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_26, x_23); -lean_dec(x_23); -return x_44; +x_48 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_42, x_48, x_37); +x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_29, x_26); +lean_dec(x_26); +return x_50; } } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_41); +lean_dec(x_1); +x_51 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; +x_52 = l_Lean_Parser_ParserState_mkNode(x_40, x_51, x_37); +x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_29, x_26); +lean_dec(x_26); +return x_53; +} +} +else +{ +lean_object* x_54; lean_dec(x_35); lean_dec(x_1); -x_45 = l_Lean_Parser_Tactic_cases___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_34, x_45, x_31); -x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_26, x_23); -lean_dec(x_23); -return x_47; +x_54 = l_Lean_Parser_mergeOrElseErrors(x_34, x_29, x_26); +lean_dec(x_26); +return x_54; } } } @@ -10726,16 +11081,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_cases___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_cases___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_cases___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_cases___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_cases___closed__4; +x_3 = l_Lean_Parser_Tactic_cases___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_cases___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_cases___closed__7() { _start: { lean_object* x_1; @@ -10743,12 +11108,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_cases___elambda__1), 2, 0) return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_cases___closed__7() { +lean_object* _init_l_Lean_Parser_Tactic_cases___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_cases___closed__5; -x_2 = l_Lean_Parser_Tactic_cases___closed__6; +x_1 = l_Lean_Parser_Tactic_cases___closed__6; +x_2 = l_Lean_Parser_Tactic_cases___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10759,7 +11124,7 @@ lean_object* _init_l_Lean_Parser_Tactic_cases() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_cases___closed__7; +x_1 = l_Lean_Parser_Tactic_cases___closed__8; return x_1; } } @@ -11103,150 +11468,181 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_Tactic_injection___elambda__1___closed__6; -x_9 = l_Lean_Parser_Tactic_injection___elambda__1___closed__8; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_Tactic_injection___elambda__1___closed__6; +x_12 = l_Lean_Parser_Tactic_injection___elambda__1___closed__8; lean_inc(x_1); -x_10 = l_Lean_Parser_nonReservedSymbolFnAux(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_13 = l_Lean_Parser_nonReservedSymbolFnAux(x_11, x_12, x_1, x_7); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = l_Lean_Parser_termParser___closed__2; -x_13 = lean_unsigned_to_nat(0u); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = l_Lean_Parser_Tactic_withIds___elambda__1(x_1, x_14); -x_17 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = l_Lean_Parser_Tactic_withIds___elambda__1(x_1, x_17); +x_20 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; } else { -lean_object* x_19; lean_object* x_20; -lean_dec(x_15); +lean_object* x_22; lean_object* x_23; +lean_dec(x_18); lean_dec(x_1); -x_19 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_14, x_19, x_7); -return x_20; +x_22 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_17, x_22, x_10); +return x_23; } } else { -lean_object* x_21; lean_object* x_22; -lean_dec(x_11); +lean_object* x_24; lean_object* x_25; +lean_dec(x_14); lean_dec(x_1); -x_21 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_10, x_21, x_7); -return x_22; +x_24 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_10); +return x_25; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -x_24 = lean_array_get_size(x_23); -lean_dec(x_23); -x_25 = lean_ctor_get(x_2, 1); -lean_inc(x_25); -lean_inc(x_1); -x_26 = lean_apply_2(x_4, x_1, x_2); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) -{ -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_8); lean_dec(x_1); -return x_26; +return x_7; +} } else { -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_26 = lean_ctor_get(x_2, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = lean_ctor_get(x_2, 1); lean_inc(x_28); -lean_dec(x_27); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -x_30 = lean_nat_dec_eq(x_29, x_25); -lean_dec(x_29); -if (x_30 == 0) +lean_inc(x_1); +x_29 = lean_apply_2(x_4, x_1, x_2); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { lean_dec(x_28); -lean_dec(x_25); -lean_dec(x_24); +lean_dec(x_27); lean_dec(x_1); -return x_26; +return x_29; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_inc(x_25); -x_31 = l_Lean_Parser_ParserState_restore(x_26, x_24, x_25); -lean_dec(x_24); -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +lean_dec(x_30); +x_32 = lean_ctor_get(x_29, 1); lean_inc(x_32); -x_33 = lean_array_get_size(x_32); +x_33 = lean_nat_dec_eq(x_32, x_28); lean_dec(x_32); -x_34 = l_Lean_Parser_Tactic_injection___elambda__1___closed__6; -x_35 = l_Lean_Parser_Tactic_injection___elambda__1___closed__8; -lean_inc(x_1); -x_36 = l_Lean_Parser_nonReservedSymbolFnAux(x_34, x_35, x_1, x_31); +if (x_33 == 0) +{ +lean_dec(x_31); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_1); +return x_29; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_28); +x_34 = l_Lean_Parser_ParserState_restore(x_29, x_27, x_28); +lean_dec(x_27); +x_35 = lean_unsigned_to_nat(1024u); +x_36 = l_Lean_Parser_checkPrecFn(x_35, x_1, x_34); x_37 = lean_ctor_get(x_36, 3); lean_inc(x_37); if (lean_obj_tag(x_37) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = l_Lean_Parser_termParser___closed__2; -x_39 = lean_unsigned_to_nat(0u); +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_36, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = l_Lean_Parser_Tactic_injection___elambda__1___closed__6; +x_41 = l_Lean_Parser_Tactic_injection___elambda__1___closed__8; lean_inc(x_1); -x_40 = l_Lean_Parser_categoryParser___elambda__1(x_38, x_39, x_1, x_36); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) +x_42 = l_Lean_Parser_nonReservedSymbolFnAux(x_40, x_41, x_1, x_36); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_42 = l_Lean_Parser_Tactic_withIds___elambda__1(x_1, x_40); -x_43 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_33); -x_45 = l_Lean_Parser_mergeOrElseErrors(x_44, x_28, x_25); -lean_dec(x_25); -return x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = l_Lean_Parser_termParser___closed__2; +x_45 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_42); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = l_Lean_Parser_Tactic_withIds___elambda__1(x_1, x_46); +x_49 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_39); +x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_31, x_28); +lean_dec(x_28); +return x_51; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_dec(x_41); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_47); lean_dec(x_1); -x_46 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_40, x_46, x_33); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_28, x_25); -lean_dec(x_25); -return x_48; +x_52 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_46, x_52, x_39); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_31, x_28); +lean_dec(x_28); +return x_54; } } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_43); +lean_dec(x_1); +x_55 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_42, x_55, x_39); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_31, x_28); +lean_dec(x_28); +return x_57; +} +} +else +{ +lean_object* x_58; lean_dec(x_37); lean_dec(x_1); -x_49 = l_Lean_Parser_Tactic_injection___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_36, x_49, x_33); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_28, x_25); -lean_dec(x_25); -return x_51; +x_58 = l_Lean_Parser_mergeOrElseErrors(x_36, x_31, x_28); +lean_dec(x_28); +return x_58; } } } @@ -11300,16 +11696,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Tactic_injection___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Tactic_injection___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Tactic_injection___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Tactic_injection___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Tactic_injection___closed__4; +x_3 = l_Lean_Parser_Tactic_injection___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Tactic_injection___closed__6() { +lean_object* _init_l_Lean_Parser_Tactic_injection___closed__7() { _start: { lean_object* x_1; @@ -11317,12 +11723,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Tactic_injection___elambda__1), 2 return x_1; } } -lean_object* _init_l_Lean_Parser_Tactic_injection___closed__7() { +lean_object* _init_l_Lean_Parser_Tactic_injection___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_injection___closed__5; -x_2 = l_Lean_Parser_Tactic_injection___closed__6; +x_1 = l_Lean_Parser_Tactic_injection___closed__6; +x_2 = l_Lean_Parser_Tactic_injection___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -11333,7 +11739,7 @@ lean_object* _init_l_Lean_Parser_Tactic_injection() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_injection___closed__7; +x_1 = l_Lean_Parser_Tactic_injection___closed__8; return x_1; } } @@ -11392,409 +11798,407 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_1); -x_44 = l_Lean_Parser_tokenFn(x_1, x_8); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); -lean_dec(x_46); -if (lean_obj_tag(x_47) == 2) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -lean_dec(x_47); -x_49 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_50 = lean_string_dec_eq(x_48, x_49); -lean_dec(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); -x_12 = x_52; -goto block_42; -} -else -{ -lean_dec(x_43); -x_12 = x_44; -goto block_42; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_47); -x_53 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); -x_12 = x_54; -goto block_42; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_45); -x_55 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); -x_12 = x_56; -goto block_42; -} -block_42: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_18); -x_34 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_15); -lean_dec(x_1); -x_38 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_13); -lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_41 = l_Lean_Parser_ParserState_mkNode(x_12, x_40, x_11); -return x_41; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_42 = lean_ctor_get(x_7, 1); +lean_inc(x_42); +lean_inc(x_1); +x_43 = l_Lean_Parser_tokenFn(x_1, x_7); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); +lean_dec(x_45); +if (lean_obj_tag(x_46) == 2) +{ +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_49 = lean_string_dec_eq(x_47, x_48); +lean_dec(x_47); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_42); +x_11 = x_51; +goto block_41; +} +else +{ +lean_dec(x_42); +x_11 = x_43; +goto block_41; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_2, 0); -lean_inc(x_57); -x_58 = lean_array_get_size(x_57); +lean_object* x_52; lean_object* x_53; +lean_dec(x_46); +x_52 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_42); +x_11 = x_53; +goto block_41; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_44); +x_54 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_42); +x_11 = x_55; +goto block_41; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_17); +x_33 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_14); +lean_dec(x_1); +x_37 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); +lean_dec(x_1); +x_39 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_ctor_get(x_2, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_2, 1); +lean_inc(x_58); +lean_inc(x_1); +x_59 = lean_apply_2(x_4, x_1, x_2); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_dec(x_58); lean_dec(x_57); -x_59 = lean_ctor_get(x_2, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = lean_apply_2(x_4, x_1, x_2); -x_61 = lean_ctor_get(x_60, 3); +lean_dec(x_1); +return x_59; +} +else +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_1); -return x_60; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_59); -lean_dec(x_63); -if (x_64 == 0) -{ +x_63 = lean_nat_dec_eq(x_62, x_58); lean_dec(x_62); -lean_dec(x_59); +if (x_63 == 0) +{ +lean_dec(x_61); lean_dec(x_58); +lean_dec(x_57); lean_dec(x_1); -return x_60; +return x_59; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_inc(x_59); -x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); -lean_dec(x_58); -x_66 = l_Lean_Parser_appPrec; -x_67 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_68 = l_Lean_Parser_checkPrecFn(x_66, x_67, x_1, x_65); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_58); +x_64 = l_Lean_Parser_ParserState_restore(x_59, x_57, x_58); +lean_dec(x_57); +x_65 = l_Lean_Parser_appPrec; +x_66 = l_Lean_Parser_checkPrecFn(x_65, x_1, x_64); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_70 = lean_ctor_get(x_68, 0); -lean_inc(x_70); -x_71 = lean_array_get_size(x_70); -lean_dec(x_70); -x_109 = lean_ctor_get(x_68, 1); -lean_inc(x_109); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_107 = lean_ctor_get(x_66, 1); +lean_inc(x_107); lean_inc(x_1); -x_110 = l_Lean_Parser_tokenFn(x_1, x_68); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) +x_108 = l_Lean_Parser_tokenFn(x_1, x_66); +x_109 = lean_ctor_get(x_108, 3); +lean_inc(x_109); +if (lean_obj_tag(x_109) == 0) { -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); +lean_object* x_110; lean_object* x_111; +x_110 = lean_ctor_get(x_108, 0); +lean_inc(x_110); +x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); +lean_dec(x_110); +if (lean_obj_tag(x_111) == 2) +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); -x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_111); +x_113 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_114 = lean_string_dec_eq(x_112, x_113); lean_dec(x_112); -if (lean_obj_tag(x_113) == 2) +if (x_114 == 0) { -lean_object* x_114; lean_object* x_115; uint8_t x_116; -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -lean_dec(x_113); -x_115 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_116 = lean_string_dec_eq(x_114, x_115); -lean_dec(x_114); -if (x_116 == 0) +lean_object* x_115; lean_object* x_116; +x_115 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); +x_70 = x_116; +goto block_106; +} +else +{ +lean_dec(x_107); +x_70 = x_108; +goto block_106; +} +} +else { lean_object* x_117; lean_object* x_118; +lean_dec(x_111); x_117 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); -x_72 = x_118; -goto block_108; -} -else -{ -lean_dec(x_109); -x_72 = x_110; -goto block_108; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_117, x_107); +x_70 = x_118; +goto block_106; } } else { lean_object* x_119; lean_object* x_120; -lean_dec(x_113); +lean_dec(x_109); x_119 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); -x_72 = x_120; -goto block_108; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_119, x_107); +x_70 = x_120; +goto block_106; } -} -else +block_106: { -lean_object* x_121; lean_object* x_122; -lean_dec(x_111); -x_121 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); -x_72 = x_122; -goto block_108; -} -block_108: +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_73; +lean_object* x_72; lean_object* x_73; +lean_inc(x_1); +x_72 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_70); x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; -lean_inc(x_1); -x_74 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_72); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_74, 1); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); -x_77 = l_Lean_Parser_tokenFn(x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); lean_inc(x_79); -x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); -lean_dec(x_79); -if (lean_obj_tag(x_80) == 2) -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 1); -lean_inc(x_81); -lean_dec(x_80); -x_82 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_83 = lean_string_dec_eq(x_81, x_82); -lean_dec(x_81); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); -x_86 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_71); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); -lean_dec(x_59); -return x_88; -} -else -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_76); -x_89 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_71); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); -lean_dec(x_59); -return x_91; -} -} -else -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_80); -x_92 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); -x_94 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_71); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); -lean_dec(x_59); -return x_96; -} -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_dec(x_78); -x_97 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); -x_99 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_71); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); -lean_dec(x_59); -return x_101; +x_80 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_84 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_69); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_61, x_58); +lean_dec(x_58); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_74); +x_87 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_88 = l_Lean_Parser_ParserState_mkNode(x_75, x_87, x_69); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_61, x_58); +lean_dec(x_58); +return x_89; } } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_75); -lean_dec(x_1); -x_102 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_71); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); -lean_dec(x_59); -return x_104; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_78); +x_90 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_90, x_74); +x_92 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_69); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_61, x_58); +lean_dec(x_58); +return x_94; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_76); +x_95 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_95, x_74); +x_97 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_69); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_61, x_58); +lean_dec(x_58); +return x_99; +} +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_73); lean_dec(x_1); -x_105 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; -x_106 = l_Lean_Parser_ParserState_mkNode(x_72, x_105, x_71); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); -lean_dec(x_59); -return x_107; +x_100 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_101 = l_Lean_Parser_ParserState_mkNode(x_72, x_100, x_69); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_61, x_58); +lean_dec(x_58); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_71); +lean_dec(x_1); +x_103 = l_Lean_Parser_Tactic_paren___elambda__1___closed__1; +x_104 = l_Lean_Parser_ParserState_mkNode(x_70, x_103, x_69); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_61, x_58); +lean_dec(x_58); +return x_105; } } } else { -lean_object* x_123; -lean_dec(x_69); +lean_object* x_121; +lean_dec(x_67); lean_dec(x_1); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_68, x_62, x_59); -lean_dec(x_59); -return x_123; +x_121 = l_Lean_Parser_mergeOrElseErrors(x_66, x_61, x_58); +lean_dec(x_58); +return x_121; } } } @@ -11946,409 +12350,407 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_1); -x_44 = l_Lean_Parser_tokenFn(x_1, x_8); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); -lean_dec(x_46); -if (lean_obj_tag(x_47) == 2) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -lean_dec(x_47); -x_49 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; -x_50 = lean_string_dec_eq(x_48, x_49); -lean_dec(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); -x_12 = x_52; -goto block_42; -} -else -{ -lean_dec(x_43); -x_12 = x_44; -goto block_42; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_47); -x_53 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); -x_12 = x_54; -goto block_42; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_45); -x_55 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); -x_12 = x_56; -goto block_42; -} -block_42: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_18); -x_34 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_15); -lean_dec(x_1); -x_38 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_13); -lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_12, x_40, x_11); -return x_41; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_42 = lean_ctor_get(x_7, 1); +lean_inc(x_42); +lean_inc(x_1); +x_43 = l_Lean_Parser_tokenFn(x_1, x_7); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); +lean_dec(x_45); +if (lean_obj_tag(x_46) == 2) +{ +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; +x_49 = lean_string_dec_eq(x_47, x_48); +lean_dec(x_47); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_42); +x_11 = x_51; +goto block_41; +} +else +{ +lean_dec(x_42); +x_11 = x_43; +goto block_41; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_2, 0); -lean_inc(x_57); -x_58 = lean_array_get_size(x_57); +lean_object* x_52; lean_object* x_53; +lean_dec(x_46); +x_52 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_42); +x_11 = x_53; +goto block_41; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_44); +x_54 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_42); +x_11 = x_55; +goto block_41; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_17); +x_33 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_14); +lean_dec(x_1); +x_37 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); +lean_dec(x_1); +x_39 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_ctor_get(x_2, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_2, 1); +lean_inc(x_58); +lean_inc(x_1); +x_59 = lean_apply_2(x_4, x_1, x_2); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_dec(x_58); lean_dec(x_57); -x_59 = lean_ctor_get(x_2, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = lean_apply_2(x_4, x_1, x_2); -x_61 = lean_ctor_get(x_60, 3); +lean_dec(x_1); +return x_59; +} +else +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_1); -return x_60; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_59); -lean_dec(x_63); -if (x_64 == 0) -{ +x_63 = lean_nat_dec_eq(x_62, x_58); lean_dec(x_62); -lean_dec(x_59); +if (x_63 == 0) +{ +lean_dec(x_61); lean_dec(x_58); +lean_dec(x_57); lean_dec(x_1); -return x_60; +return x_59; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_inc(x_59); -x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); -lean_dec(x_58); -x_66 = l_Lean_Parser_appPrec; -x_67 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_68 = l_Lean_Parser_checkPrecFn(x_66, x_67, x_1, x_65); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_58); +x_64 = l_Lean_Parser_ParserState_restore(x_59, x_57, x_58); +lean_dec(x_57); +x_65 = l_Lean_Parser_appPrec; +x_66 = l_Lean_Parser_checkPrecFn(x_65, x_1, x_64); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_70 = lean_ctor_get(x_68, 0); -lean_inc(x_70); -x_71 = lean_array_get_size(x_70); -lean_dec(x_70); -x_109 = lean_ctor_get(x_68, 1); -lean_inc(x_109); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_107 = lean_ctor_get(x_66, 1); +lean_inc(x_107); lean_inc(x_1); -x_110 = l_Lean_Parser_tokenFn(x_1, x_68); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) +x_108 = l_Lean_Parser_tokenFn(x_1, x_66); +x_109 = lean_ctor_get(x_108, 3); +lean_inc(x_109); +if (lean_obj_tag(x_109) == 0) { -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); +lean_object* x_110; lean_object* x_111; +x_110 = lean_ctor_get(x_108, 0); +lean_inc(x_110); +x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); +lean_dec(x_110); +if (lean_obj_tag(x_111) == 2) +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); -x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_111); +x_113 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; +x_114 = lean_string_dec_eq(x_112, x_113); lean_dec(x_112); -if (lean_obj_tag(x_113) == 2) +if (x_114 == 0) { -lean_object* x_114; lean_object* x_115; uint8_t x_116; -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -lean_dec(x_113); -x_115 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; -x_116 = lean_string_dec_eq(x_114, x_115); -lean_dec(x_114); -if (x_116 == 0) +lean_object* x_115; lean_object* x_116; +x_115 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); +x_70 = x_116; +goto block_106; +} +else +{ +lean_dec(x_107); +x_70 = x_108; +goto block_106; +} +} +else { lean_object* x_117; lean_object* x_118; +lean_dec(x_111); x_117 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); -x_72 = x_118; -goto block_108; -} -else -{ -lean_dec(x_109); -x_72 = x_110; -goto block_108; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_117, x_107); +x_70 = x_118; +goto block_106; } } else { lean_object* x_119; lean_object* x_120; -lean_dec(x_113); +lean_dec(x_109); x_119 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); -x_72 = x_120; -goto block_108; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_119, x_107); +x_70 = x_120; +goto block_106; } -} -else +block_106: { -lean_object* x_121; lean_object* x_122; -lean_dec(x_111); -x_121 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); -x_72 = x_122; -goto block_108; -} -block_108: +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_73; +lean_object* x_72; lean_object* x_73; +lean_inc(x_1); +x_72 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_70); x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; -lean_inc(x_1); -x_74 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_72); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_74, 1); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); -x_77 = l_Lean_Parser_tokenFn(x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); lean_inc(x_79); -x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); -lean_dec(x_79); -if (lean_obj_tag(x_80) == 2) -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 1); -lean_inc(x_81); -lean_dec(x_80); -x_82 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; -x_83 = lean_string_dec_eq(x_81, x_82); -lean_dec(x_81); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); -x_86 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_71); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); -lean_dec(x_59); -return x_88; -} -else -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_76); -x_89 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_71); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); -lean_dec(x_59); -return x_91; -} -} -else -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_80); -x_92 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); -x_94 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_71); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); -lean_dec(x_59); -return x_96; -} -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_dec(x_78); -x_97 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); -x_99 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_71); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); -lean_dec(x_59); -return x_101; +x_80 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_84 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_69); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_61, x_58); +lean_dec(x_58); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_74); +x_87 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_75, x_87, x_69); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_61, x_58); +lean_dec(x_58); +return x_89; } } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_75); -lean_dec(x_1); -x_102 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_71); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); -lean_dec(x_59); -return x_104; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_78); +x_90 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_90, x_74); +x_92 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_69); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_61, x_58); +lean_dec(x_58); +return x_94; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_76); +x_95 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_95, x_74); +x_97 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_69); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_61, x_58); +lean_dec(x_58); +return x_99; +} +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_73); lean_dec(x_1); -x_105 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_72, x_105, x_71); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); -lean_dec(x_59); -return x_107; +x_100 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_72, x_100, x_69); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_61, x_58); +lean_dec(x_58); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_71); +lean_dec(x_1); +x_103 = l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_70, x_103, x_69); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_61, x_58); +lean_dec(x_58); +return x_105; } } } else { -lean_object* x_123; -lean_dec(x_69); +lean_object* x_121; +lean_dec(x_67); lean_dec(x_1); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_68, x_62, x_59); -lean_dec(x_59); -return x_123; +x_121 = l_Lean_Parser_mergeOrElseErrors(x_66, x_61, x_58); +lean_dec(x_58); +return x_121; } } } @@ -12478,409 +12880,407 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_1); -x_44 = l_Lean_Parser_tokenFn(x_1, x_8); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); -lean_dec(x_46); -if (lean_obj_tag(x_47) == 2) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -lean_dec(x_47); -x_49 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_50 = lean_string_dec_eq(x_48, x_49); -lean_dec(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); -x_12 = x_52; -goto block_42; -} -else -{ -lean_dec(x_43); -x_12 = x_44; -goto block_42; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_47); -x_53 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); -x_12 = x_54; -goto block_42; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_45); -x_55 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); -x_12 = x_56; -goto block_42; -} -block_42: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_18); -x_34 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_15); -lean_dec(x_1); -x_38 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_13); -lean_dec(x_1); -x_40 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_12, x_40, x_11); -return x_41; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_42 = lean_ctor_get(x_7, 1); +lean_inc(x_42); +lean_inc(x_1); +x_43 = l_Lean_Parser_tokenFn(x_1, x_7); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); +lean_dec(x_45); +if (lean_obj_tag(x_46) == 2) +{ +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_49 = lean_string_dec_eq(x_47, x_48); +lean_dec(x_47); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_42); +x_11 = x_51; +goto block_41; +} +else +{ +lean_dec(x_42); +x_11 = x_43; +goto block_41; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_2, 0); -lean_inc(x_57); -x_58 = lean_array_get_size(x_57); +lean_object* x_52; lean_object* x_53; +lean_dec(x_46); +x_52 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_42); +x_11 = x_53; +goto block_41; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_44); +x_54 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_42); +x_11 = x_55; +goto block_41; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_17); +x_33 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_14); +lean_dec(x_1); +x_37 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); +lean_dec(x_1); +x_39 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_ctor_get(x_2, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_2, 1); +lean_inc(x_58); +lean_inc(x_1); +x_59 = lean_apply_2(x_4, x_1, x_2); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_dec(x_58); lean_dec(x_57); -x_59 = lean_ctor_get(x_2, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = lean_apply_2(x_4, x_1, x_2); -x_61 = lean_ctor_get(x_60, 3); +lean_dec(x_1); +return x_59; +} +else +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_1); -return x_60; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_59); -lean_dec(x_63); -if (x_64 == 0) -{ +x_63 = lean_nat_dec_eq(x_62, x_58); lean_dec(x_62); -lean_dec(x_59); +if (x_63 == 0) +{ +lean_dec(x_61); lean_dec(x_58); +lean_dec(x_57); lean_dec(x_1); -return x_60; +return x_59; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_inc(x_59); -x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); -lean_dec(x_58); -x_66 = l_Lean_Parser_appPrec; -x_67 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_68 = l_Lean_Parser_checkPrecFn(x_66, x_67, x_1, x_65); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_58); +x_64 = l_Lean_Parser_ParserState_restore(x_59, x_57, x_58); +lean_dec(x_57); +x_65 = l_Lean_Parser_appPrec; +x_66 = l_Lean_Parser_checkPrecFn(x_65, x_1, x_64); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_70 = lean_ctor_get(x_68, 0); -lean_inc(x_70); -x_71 = lean_array_get_size(x_70); -lean_dec(x_70); -x_109 = lean_ctor_get(x_68, 1); -lean_inc(x_109); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_107 = lean_ctor_get(x_66, 1); +lean_inc(x_107); lean_inc(x_1); -x_110 = l_Lean_Parser_tokenFn(x_1, x_68); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) +x_108 = l_Lean_Parser_tokenFn(x_1, x_66); +x_109 = lean_ctor_get(x_108, 3); +lean_inc(x_109); +if (lean_obj_tag(x_109) == 0) { -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); +lean_object* x_110; lean_object* x_111; +x_110 = lean_ctor_get(x_108, 0); +lean_inc(x_110); +x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); +lean_dec(x_110); +if (lean_obj_tag(x_111) == 2) +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); -x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_111); +x_113 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_114 = lean_string_dec_eq(x_112, x_113); lean_dec(x_112); -if (lean_obj_tag(x_113) == 2) +if (x_114 == 0) { -lean_object* x_114; lean_object* x_115; uint8_t x_116; -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -lean_dec(x_113); -x_115 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_116 = lean_string_dec_eq(x_114, x_115); -lean_dec(x_114); -if (x_116 == 0) +lean_object* x_115; lean_object* x_116; +x_115 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); +x_70 = x_116; +goto block_106; +} +else +{ +lean_dec(x_107); +x_70 = x_108; +goto block_106; +} +} +else { lean_object* x_117; lean_object* x_118; +lean_dec(x_111); x_117 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); -x_72 = x_118; -goto block_108; -} -else -{ -lean_dec(x_109); -x_72 = x_110; -goto block_108; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_117, x_107); +x_70 = x_118; +goto block_106; } } else { lean_object* x_119; lean_object* x_120; -lean_dec(x_113); +lean_dec(x_109); x_119 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); -x_72 = x_120; -goto block_108; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_119, x_107); +x_70 = x_120; +goto block_106; } -} -else +block_106: { -lean_object* x_121; lean_object* x_122; -lean_dec(x_111); -x_121 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); -x_72 = x_122; -goto block_108; -} -block_108: +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_73; +lean_object* x_72; lean_object* x_73; +lean_inc(x_1); +x_72 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_70); x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; -lean_inc(x_1); -x_74 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_72); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_74, 1); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); -x_77 = l_Lean_Parser_tokenFn(x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); lean_inc(x_79); -x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); -lean_dec(x_79); -if (lean_obj_tag(x_80) == 2) -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 1); -lean_inc(x_81); -lean_dec(x_80); -x_82 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_83 = lean_string_dec_eq(x_81, x_82); -lean_dec(x_81); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); -x_86 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_71); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); -lean_dec(x_59); -return x_88; -} -else -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_76); -x_89 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_71); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); -lean_dec(x_59); -return x_91; -} -} -else -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_80); -x_92 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); -x_94 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_71); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); -lean_dec(x_59); -return x_96; -} -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_dec(x_78); -x_97 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); -x_99 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_71); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); -lean_dec(x_59); -return x_101; +x_80 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_84 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_69); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_61, x_58); +lean_dec(x_58); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_74); +x_87 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_75, x_87, x_69); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_61, x_58); +lean_dec(x_58); +return x_89; } } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_75); -lean_dec(x_1); -x_102 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_71); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); -lean_dec(x_59); -return x_104; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_78); +x_90 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_90, x_74); +x_92 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_69); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_61, x_58); +lean_dec(x_58); +return x_94; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_76); +x_95 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_95, x_74); +x_97 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_69); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_61, x_58); +lean_dec(x_58); +return x_99; +} +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_73); lean_dec(x_1); -x_105 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_72, x_105, x_71); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); -lean_dec(x_59); -return x_107; +x_100 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_72, x_100, x_69); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_61, x_58); +lean_dec(x_58); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_71); +lean_dec(x_1); +x_103 = l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_70, x_103, x_69); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_61, x_58); +lean_dec(x_58); +return x_105; } } } else { -lean_object* x_123; -lean_dec(x_69); +lean_object* x_121; +lean_dec(x_67); lean_dec(x_1); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_68, x_62, x_59); -lean_dec(x_59); -return x_123; +x_121 = l_Lean_Parser_mergeOrElseErrors(x_66, x_61, x_58); +lean_dec(x_58); +return x_121; } } } @@ -13035,108 +13435,107 @@ return x_3; lean_object* l_Lean_Parser_Tactic_orelse___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(2u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_tokenFn(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_10, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__2; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_28, x_9); -x_13 = x_29; -goto block_22; -} -else -{ -lean_dec(x_9); -x_13 = x_10; -goto block_22; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_30, x_9); -x_13 = x_31; -goto block_22; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_11); -x_32 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_32, x_9); -x_13 = x_33; -goto block_22; -} -block_22: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; -x_16 = lean_unsigned_to_nat(1u); -x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); -x_18 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__1; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_17, x_18, x_12, x_8); -return x_19; -} -else -{ -lean_object* x_20; lean_object* x_21; -lean_dec(x_14); -lean_dec(x_1); -x_20 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__1; -x_21 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_20, x_12, x_8); -return x_21; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_9, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__2; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_27, x_8); +x_12 = x_28; +goto block_21; +} +else +{ +lean_dec(x_8); +x_12 = x_9; +goto block_21; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_29, x_8); +x_12 = x_30; +goto block_21; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_10); +x_31 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__5; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_31, x_8); +x_12 = x_32; +goto block_21; +} +block_21: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = l_Lean_Parser_regBuiltinTacticParserAttr___closed__4; +x_15 = lean_unsigned_to_nat(1u); +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); +x_17 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__1; +x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_17, x_11, x_7); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_19 = l_Lean_Parser_Tactic_orelse___elambda__1___closed__1; +x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_19, x_11, x_7); +return x_20; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -13292,6 +13691,8 @@ l_Lean_Parser_Tactic_intro___closed__6 = _init_l_Lean_Parser_Tactic_intro___clos lean_mark_persistent(l_Lean_Parser_Tactic_intro___closed__6); l_Lean_Parser_Tactic_intro___closed__7 = _init_l_Lean_Parser_Tactic_intro___closed__7(); lean_mark_persistent(l_Lean_Parser_Tactic_intro___closed__7); +l_Lean_Parser_Tactic_intro___closed__8 = _init_l_Lean_Parser_Tactic_intro___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic_intro___closed__8); l_Lean_Parser_Tactic_intro = _init_l_Lean_Parser_Tactic_intro(); lean_mark_persistent(l_Lean_Parser_Tactic_intro); res = l___regBuiltinParser_Lean_Parser_Tactic_intro(lean_io_mk_world()); @@ -13327,6 +13728,8 @@ l_Lean_Parser_Tactic_intros___closed__6 = _init_l_Lean_Parser_Tactic_intros___cl lean_mark_persistent(l_Lean_Parser_Tactic_intros___closed__6); l_Lean_Parser_Tactic_intros___closed__7 = _init_l_Lean_Parser_Tactic_intros___closed__7(); lean_mark_persistent(l_Lean_Parser_Tactic_intros___closed__7); +l_Lean_Parser_Tactic_intros___closed__8 = _init_l_Lean_Parser_Tactic_intros___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic_intros___closed__8); l_Lean_Parser_Tactic_intros = _init_l_Lean_Parser_Tactic_intros(); lean_mark_persistent(l_Lean_Parser_Tactic_intros); res = l___regBuiltinParser_Lean_Parser_Tactic_intros(lean_io_mk_world()); @@ -13360,6 +13763,8 @@ l_Lean_Parser_Tactic_revert___closed__5 = _init_l_Lean_Parser_Tactic_revert___cl lean_mark_persistent(l_Lean_Parser_Tactic_revert___closed__5); l_Lean_Parser_Tactic_revert___closed__6 = _init_l_Lean_Parser_Tactic_revert___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_revert___closed__6); +l_Lean_Parser_Tactic_revert___closed__7 = _init_l_Lean_Parser_Tactic_revert___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_revert___closed__7); l_Lean_Parser_Tactic_revert = _init_l_Lean_Parser_Tactic_revert(); lean_mark_persistent(l_Lean_Parser_Tactic_revert); res = l___regBuiltinParser_Lean_Parser_Tactic_revert(lean_io_mk_world()); @@ -13393,6 +13798,8 @@ l_Lean_Parser_Tactic_clear___closed__5 = _init_l_Lean_Parser_Tactic_clear___clos lean_mark_persistent(l_Lean_Parser_Tactic_clear___closed__5); l_Lean_Parser_Tactic_clear___closed__6 = _init_l_Lean_Parser_Tactic_clear___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_clear___closed__6); +l_Lean_Parser_Tactic_clear___closed__7 = _init_l_Lean_Parser_Tactic_clear___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_clear___closed__7); l_Lean_Parser_Tactic_clear = _init_l_Lean_Parser_Tactic_clear(); lean_mark_persistent(l_Lean_Parser_Tactic_clear); res = l___regBuiltinParser_Lean_Parser_Tactic_clear(lean_io_mk_world()); @@ -13424,6 +13831,8 @@ l_Lean_Parser_Tactic_subst___closed__5 = _init_l_Lean_Parser_Tactic_subst___clos lean_mark_persistent(l_Lean_Parser_Tactic_subst___closed__5); l_Lean_Parser_Tactic_subst___closed__6 = _init_l_Lean_Parser_Tactic_subst___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_subst___closed__6); +l_Lean_Parser_Tactic_subst___closed__7 = _init_l_Lean_Parser_Tactic_subst___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_subst___closed__7); l_Lean_Parser_Tactic_subst = _init_l_Lean_Parser_Tactic_subst(); lean_mark_persistent(l_Lean_Parser_Tactic_subst); res = l___regBuiltinParser_Lean_Parser_Tactic_subst(lean_io_mk_world()); @@ -13453,6 +13862,8 @@ l_Lean_Parser_Tactic_assumption___closed__4 = _init_l_Lean_Parser_Tactic_assumpt lean_mark_persistent(l_Lean_Parser_Tactic_assumption___closed__4); l_Lean_Parser_Tactic_assumption___closed__5 = _init_l_Lean_Parser_Tactic_assumption___closed__5(); lean_mark_persistent(l_Lean_Parser_Tactic_assumption___closed__5); +l_Lean_Parser_Tactic_assumption___closed__6 = _init_l_Lean_Parser_Tactic_assumption___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_assumption___closed__6); l_Lean_Parser_Tactic_assumption = _init_l_Lean_Parser_Tactic_assumption(); lean_mark_persistent(l_Lean_Parser_Tactic_assumption); res = l___regBuiltinParser_Lean_Parser_Tactic_assumption(lean_io_mk_world()); @@ -13486,6 +13897,8 @@ l_Lean_Parser_Tactic_apply___closed__5 = _init_l_Lean_Parser_Tactic_apply___clos lean_mark_persistent(l_Lean_Parser_Tactic_apply___closed__5); l_Lean_Parser_Tactic_apply___closed__6 = _init_l_Lean_Parser_Tactic_apply___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_apply___closed__6); +l_Lean_Parser_Tactic_apply___closed__7 = _init_l_Lean_Parser_Tactic_apply___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_apply___closed__7); l_Lean_Parser_Tactic_apply = _init_l_Lean_Parser_Tactic_apply(); lean_mark_persistent(l_Lean_Parser_Tactic_apply); res = l___regBuiltinParser_Lean_Parser_Tactic_apply(lean_io_mk_world()); @@ -13519,6 +13932,8 @@ l_Lean_Parser_Tactic_exact___closed__5 = _init_l_Lean_Parser_Tactic_exact___clos lean_mark_persistent(l_Lean_Parser_Tactic_exact___closed__5); l_Lean_Parser_Tactic_exact___closed__6 = _init_l_Lean_Parser_Tactic_exact___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_exact___closed__6); +l_Lean_Parser_Tactic_exact___closed__7 = _init_l_Lean_Parser_Tactic_exact___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_exact___closed__7); l_Lean_Parser_Tactic_exact = _init_l_Lean_Parser_Tactic_exact(); lean_mark_persistent(l_Lean_Parser_Tactic_exact); res = l___regBuiltinParser_Lean_Parser_Tactic_exact(lean_io_mk_world()); @@ -13552,6 +13967,8 @@ l_Lean_Parser_Tactic_refine___closed__5 = _init_l_Lean_Parser_Tactic_refine___cl lean_mark_persistent(l_Lean_Parser_Tactic_refine___closed__5); l_Lean_Parser_Tactic_refine___closed__6 = _init_l_Lean_Parser_Tactic_refine___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_refine___closed__6); +l_Lean_Parser_Tactic_refine___closed__7 = _init_l_Lean_Parser_Tactic_refine___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_refine___closed__7); l_Lean_Parser_Tactic_refine = _init_l_Lean_Parser_Tactic_refine(); lean_mark_persistent(l_Lean_Parser_Tactic_refine); res = l___regBuiltinParser_Lean_Parser_Tactic_refine(lean_io_mk_world()); @@ -13585,6 +14002,8 @@ l_Lean_Parser_Tactic_case___closed__6 = _init_l_Lean_Parser_Tactic_case___closed lean_mark_persistent(l_Lean_Parser_Tactic_case___closed__6); l_Lean_Parser_Tactic_case___closed__7 = _init_l_Lean_Parser_Tactic_case___closed__7(); lean_mark_persistent(l_Lean_Parser_Tactic_case___closed__7); +l_Lean_Parser_Tactic_case___closed__8 = _init_l_Lean_Parser_Tactic_case___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic_case___closed__8); l_Lean_Parser_Tactic_case = _init_l_Lean_Parser_Tactic_case(); lean_mark_persistent(l_Lean_Parser_Tactic_case); res = l___regBuiltinParser_Lean_Parser_Tactic_case(lean_io_mk_world()); @@ -13618,6 +14037,8 @@ l_Lean_Parser_Tactic_allGoals___closed__5 = _init_l_Lean_Parser_Tactic_allGoals_ lean_mark_persistent(l_Lean_Parser_Tactic_allGoals___closed__5); l_Lean_Parser_Tactic_allGoals___closed__6 = _init_l_Lean_Parser_Tactic_allGoals___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_allGoals___closed__6); +l_Lean_Parser_Tactic_allGoals___closed__7 = _init_l_Lean_Parser_Tactic_allGoals___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_allGoals___closed__7); l_Lean_Parser_Tactic_allGoals = _init_l_Lean_Parser_Tactic_allGoals(); lean_mark_persistent(l_Lean_Parser_Tactic_allGoals); res = l___regBuiltinParser_Lean_Parser_Tactic_allGoals(lean_io_mk_world()); @@ -13647,6 +14068,8 @@ l_Lean_Parser_Tactic_skip___closed__4 = _init_l_Lean_Parser_Tactic_skip___closed lean_mark_persistent(l_Lean_Parser_Tactic_skip___closed__4); l_Lean_Parser_Tactic_skip___closed__5 = _init_l_Lean_Parser_Tactic_skip___closed__5(); lean_mark_persistent(l_Lean_Parser_Tactic_skip___closed__5); +l_Lean_Parser_Tactic_skip___closed__6 = _init_l_Lean_Parser_Tactic_skip___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_skip___closed__6); l_Lean_Parser_Tactic_skip = _init_l_Lean_Parser_Tactic_skip(); lean_mark_persistent(l_Lean_Parser_Tactic_skip); res = l___regBuiltinParser_Lean_Parser_Tactic_skip(lean_io_mk_world()); @@ -13676,6 +14099,8 @@ l_Lean_Parser_Tactic_traceState___closed__4 = _init_l_Lean_Parser_Tactic_traceSt lean_mark_persistent(l_Lean_Parser_Tactic_traceState___closed__4); l_Lean_Parser_Tactic_traceState___closed__5 = _init_l_Lean_Parser_Tactic_traceState___closed__5(); lean_mark_persistent(l_Lean_Parser_Tactic_traceState___closed__5); +l_Lean_Parser_Tactic_traceState___closed__6 = _init_l_Lean_Parser_Tactic_traceState___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_traceState___closed__6); l_Lean_Parser_Tactic_traceState = _init_l_Lean_Parser_Tactic_traceState(); lean_mark_persistent(l_Lean_Parser_Tactic_traceState); res = l___regBuiltinParser_Lean_Parser_Tactic_traceState(lean_io_mk_world()); @@ -13709,6 +14134,8 @@ l_Lean_Parser_Tactic_failIfSuccess___closed__5 = _init_l_Lean_Parser_Tactic_fail lean_mark_persistent(l_Lean_Parser_Tactic_failIfSuccess___closed__5); l_Lean_Parser_Tactic_failIfSuccess___closed__6 = _init_l_Lean_Parser_Tactic_failIfSuccess___closed__6(); lean_mark_persistent(l_Lean_Parser_Tactic_failIfSuccess___closed__6); +l_Lean_Parser_Tactic_failIfSuccess___closed__7 = _init_l_Lean_Parser_Tactic_failIfSuccess___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_failIfSuccess___closed__7); l_Lean_Parser_Tactic_failIfSuccess = _init_l_Lean_Parser_Tactic_failIfSuccess(); lean_mark_persistent(l_Lean_Parser_Tactic_failIfSuccess); res = l___regBuiltinParser_Lean_Parser_Tactic_failIfSuccess(lean_io_mk_world()); @@ -13736,8 +14163,6 @@ l_Lean_Parser_Tactic_generalize___elambda__1___closed__10 = _init_l_Lean_Parser_ lean_mark_persistent(l_Lean_Parser_Tactic_generalize___elambda__1___closed__10); l_Lean_Parser_Tactic_generalize___elambda__1___closed__11 = _init_l_Lean_Parser_Tactic_generalize___elambda__1___closed__11(); lean_mark_persistent(l_Lean_Parser_Tactic_generalize___elambda__1___closed__11); -l_Lean_Parser_Tactic_generalize___elambda__1___closed__12 = _init_l_Lean_Parser_Tactic_generalize___elambda__1___closed__12(); -lean_mark_persistent(l_Lean_Parser_Tactic_generalize___elambda__1___closed__12); l_Lean_Parser_Tactic_generalize___closed__1 = _init_l_Lean_Parser_Tactic_generalize___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_generalize___closed__1); l_Lean_Parser_Tactic_generalize___closed__2 = _init_l_Lean_Parser_Tactic_generalize___closed__2(); @@ -13760,6 +14185,8 @@ l_Lean_Parser_Tactic_generalize___closed__10 = _init_l_Lean_Parser_Tactic_genera lean_mark_persistent(l_Lean_Parser_Tactic_generalize___closed__10); l_Lean_Parser_Tactic_generalize___closed__11 = _init_l_Lean_Parser_Tactic_generalize___closed__11(); lean_mark_persistent(l_Lean_Parser_Tactic_generalize___closed__11); +l_Lean_Parser_Tactic_generalize___closed__12 = _init_l_Lean_Parser_Tactic_generalize___closed__12(); +lean_mark_persistent(l_Lean_Parser_Tactic_generalize___closed__12); l_Lean_Parser_Tactic_generalize = _init_l_Lean_Parser_Tactic_generalize(); lean_mark_persistent(l_Lean_Parser_Tactic_generalize); res = l___regBuiltinParser_Lean_Parser_Tactic_generalize(lean_io_mk_world()); @@ -13783,6 +14210,8 @@ l_Lean_Parser_Tactic_majorPremise___closed__4 = _init_l_Lean_Parser_Tactic_major lean_mark_persistent(l_Lean_Parser_Tactic_majorPremise___closed__4); l_Lean_Parser_Tactic_majorPremise___closed__5 = _init_l_Lean_Parser_Tactic_majorPremise___closed__5(); lean_mark_persistent(l_Lean_Parser_Tactic_majorPremise___closed__5); +l_Lean_Parser_Tactic_majorPremise___closed__6 = _init_l_Lean_Parser_Tactic_majorPremise___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_majorPremise___closed__6); l_Lean_Parser_Tactic_majorPremise = _init_l_Lean_Parser_Tactic_majorPremise(); lean_mark_persistent(l_Lean_Parser_Tactic_majorPremise); l_Lean_Parser_Tactic_inductionAlt___closed__1 = _init_l_Lean_Parser_Tactic_inductionAlt___closed__1(); @@ -13919,6 +14348,8 @@ l_Lean_Parser_Tactic_induction___closed__8 = _init_l_Lean_Parser_Tactic_inductio lean_mark_persistent(l_Lean_Parser_Tactic_induction___closed__8); l_Lean_Parser_Tactic_induction___closed__9 = _init_l_Lean_Parser_Tactic_induction___closed__9(); lean_mark_persistent(l_Lean_Parser_Tactic_induction___closed__9); +l_Lean_Parser_Tactic_induction___closed__10 = _init_l_Lean_Parser_Tactic_induction___closed__10(); +lean_mark_persistent(l_Lean_Parser_Tactic_induction___closed__10); l_Lean_Parser_Tactic_induction = _init_l_Lean_Parser_Tactic_induction(); lean_mark_persistent(l_Lean_Parser_Tactic_induction); res = l___regBuiltinParser_Lean_Parser_Tactic_induction(lean_io_mk_world()); @@ -13954,6 +14385,8 @@ l_Lean_Parser_Tactic_cases___closed__6 = _init_l_Lean_Parser_Tactic_cases___clos lean_mark_persistent(l_Lean_Parser_Tactic_cases___closed__6); l_Lean_Parser_Tactic_cases___closed__7 = _init_l_Lean_Parser_Tactic_cases___closed__7(); lean_mark_persistent(l_Lean_Parser_Tactic_cases___closed__7); +l_Lean_Parser_Tactic_cases___closed__8 = _init_l_Lean_Parser_Tactic_cases___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic_cases___closed__8); l_Lean_Parser_Tactic_cases = _init_l_Lean_Parser_Tactic_cases(); lean_mark_persistent(l_Lean_Parser_Tactic_cases); res = l___regBuiltinParser_Lean_Parser_Tactic_cases(lean_io_mk_world()); @@ -13999,6 +14432,8 @@ l_Lean_Parser_Tactic_injection___closed__6 = _init_l_Lean_Parser_Tactic_injectio lean_mark_persistent(l_Lean_Parser_Tactic_injection___closed__6); l_Lean_Parser_Tactic_injection___closed__7 = _init_l_Lean_Parser_Tactic_injection___closed__7(); lean_mark_persistent(l_Lean_Parser_Tactic_injection___closed__7); +l_Lean_Parser_Tactic_injection___closed__8 = _init_l_Lean_Parser_Tactic_injection___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic_injection___closed__8); l_Lean_Parser_Tactic_injection = _init_l_Lean_Parser_Tactic_injection(); lean_mark_persistent(l_Lean_Parser_Tactic_injection); res = l___regBuiltinParser_Lean_Parser_Tactic_injection(lean_io_mk_world()); diff --git a/stage0/stdlib/Lean/Parser/Term.c b/stage0/stdlib/Lean/Parser/Term.c index 6ef45216d2..301886f62b 100644 --- a/stage0/stdlib/Lean/Parser/Term.c +++ b/stage0/stdlib/Lean/Parser/Term.c @@ -18,6 +18,7 @@ lean_object* l_Lean_Parser_Term_subst___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_do___closed__4; lean_object* l_Lean_Parser_Term_match___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_fcomp___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_le___closed__4; lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Term_ne(lean_object*); lean_object* l_Lean_Parser_Term_explicitUniv___closed__7; @@ -45,6 +46,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_suffices(lean_object*); lean_object* l_Lean_Parser_Term_tacticStxQuot___closed__7; lean_object* l_Lean_Parser_Term_arrayLit___closed__3; lean_object* l_Lean_Parser_Term_explicit___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_doLet___closed__6; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_subst; lean_object* l_Lean_Parser_darrow___elambda__1___closed__2; @@ -58,6 +60,7 @@ lean_object* l_Lean_Parser_Term_if___closed__13; lean_object* l___regBuiltinParser_Lean_Parser_Term_sub(lean_object*); lean_object* l_Lean_Parser_Term_andthen___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__10; +lean_object* l_Lean_Parser_Term_structInstArrayRef___closed__9; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; lean_object* l_Lean_Parser_Term_or___closed__1; lean_object* l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(uint8_t, lean_object*, lean_object*); @@ -84,6 +87,7 @@ lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parse lean_object* l_Lean_Parser_Term_structInstField___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_optIdent___closed__3; lean_object* l_Lean_Parser_Term_lt___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_seqLeft___closed__4; lean_object* l_Lean_Parser_Term_tupleTail___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_not___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_nativeDecide___closed__6; @@ -146,6 +150,7 @@ lean_object* l_Lean_Parser_Term_matchAlts(uint8_t); lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__7; lean_object* l_Lean_Parser_Tactic_nonEmptySeq___closed__2; lean_object* l_Lean_Parser_Term_structInstArrayRef___closed__4; +lean_object* l_Lean_Parser_Term_simpleBinder___closed__5; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__12; lean_object* l_Lean_Parser_Term_lt___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_namedArgument___closed__7; @@ -210,6 +215,7 @@ lean_object* l_Lean_Parser_Term_do___closed__8; lean_object* l___regBuiltinParser_Lean_Parser_Term_lt(lean_object*); lean_object* l_Lean_Parser_Term_explicitUniv; extern lean_object* l_Int_repr___closed__1; +lean_object* l_Lean_Parser_Term_mul___closed__4; extern lean_object* l_Lean_Parser_charLit; lean_object* l_Lean_Parser_Term_bnot___closed__1; lean_object* l_Lean_Parser_Term_andthen___elambda__1___closed__3; @@ -314,6 +320,7 @@ lean_object* l_Lean_Parser_Term_show___elambda__1___closed__6; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_letIdLhs___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_optIdent___closed__1; +lean_object* l_Lean_Parser_Term_heq___closed__4; lean_object* l_Lean_Parser_Term_lt___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_arrow___closed__1; lean_object* l_Lean_Parser_Term_forall___closed__3; @@ -347,6 +354,7 @@ lean_object* l_Lean_Parser_Term_heq___closed__2; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__1(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_do___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_cons___closed__4; lean_object* l_Lean_Parser_Term_andM___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_seq___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(uint8_t, uint8_t, lean_object*, lean_object*); @@ -471,10 +479,11 @@ extern lean_object* l_List_repr___rarg___closed__3; lean_object* l_Lean_Parser_Term_liftMethod___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_quotedName___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; -lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_anonymousCtor___closed__9; lean_object* l_Lean_Parser_Term_sorry___closed__1; lean_object* l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__1; +lean_object* l_Lean_Parser_Term_explicitBinder___closed__10; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_let_x21___closed__6; lean_object* l_Lean_Parser_Term_ge___elambda__1___closed__4; @@ -485,6 +494,7 @@ lean_object* l_Lean_Parser_Tactic_nonEmptySeq; lean_object* l_Lean_Parser_Term_proj___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_bnot___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_bnot___closed__7; +lean_object* l_Lean_Parser_Term_instBinder___closed__7; lean_object* lean_string_utf8_byte_size(lean_object*); lean_object* l_Lean_Parser_Term_if; lean_object* l_Lean_Parser_Term_paren; @@ -497,6 +507,7 @@ lean_object* l_Lean_Parser_Term_andM___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_mul___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_fun___elambda__1___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_doId___closed__8; lean_object* l_Lean_Parser_Term_binderType(uint8_t); lean_object* l_Lean_Parser_Term_cons___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_letDecl___closed__2; @@ -531,6 +542,7 @@ lean_object* l_Lean_Parser_Term_suffices___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_borrowed; +lean_object* l_Lean_Parser_Term_fcomp___closed__4; lean_object* l_Lean_Parser_Term_and___closed__1; lean_object* l_Lean_Parser_Term_paren___closed__7; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__1; @@ -542,6 +554,7 @@ lean_object* l_Lean_Parser_Term_explicit___closed__4; lean_object* l_Lean_Parser_Term_cdot___closed__1; lean_object* l_Lean_Parser_Term_namedPattern___closed__7; extern lean_object* l_Lean_Parser_fieldIdx___closed__4; +lean_object* l_Lean_Parser_Term_mapConstRev___closed__4; lean_object* l_Lean_Parser_Term_fromTerm___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__13; extern lean_object* l_Sigma_HasRepr___rarg___closed__2; @@ -550,7 +563,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_nativeDecide(lean_object*); lean_object* l_Lean_Parser_Term_letPatDecl___closed__6; lean_object* l_Lean_Parser_Term_bor___closed__1; lean_object* l_Lean_Parser_Term_match___elambda__1___closed__7; -lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_checkPrecFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_parser_x21___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_doElem___closed__5; lean_object* lean_nat_add(lean_object*, lean_object*); @@ -586,6 +599,7 @@ lean_object* l_Lean_Parser_Term_decide___closed__5; lean_object* l_Lean_Parser_Term_structInstLVal___closed__5; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_listLit___elambda__1___spec__2___closed__3; lean_object* l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +lean_object* l_Lean_Parser_Term_eq___closed__4; lean_object* l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_depArrow___closed__8; lean_object* l_Lean_Parser_Term_dollarProj___elambda__1___closed__3; @@ -655,6 +669,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_arrayLit(lean_object*); lean_object* l_Lean_Parser_Term_do___closed__1; lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__11; lean_object* l_Lean_Parser_Term_bracketedDoSeq; +lean_object* l_Lean_Parser_Term_or___closed__4; lean_object* l_Lean_Parser_Term_paren___closed__3; lean_object* l_Lean_Parser_Term_eq; lean_object* l_Lean_Parser_Term_structInst___elambda__1___closed__5; @@ -678,6 +693,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_parser_x21(lean_object*); lean_object* l_Lean_Parser_Term_fromTerm___closed__1; lean_object* l_Lean_Parser_Term_anonymousCtor___closed__5; lean_object* l_Lean_Parser_Term_subtype___closed__7; +lean_object* l_Lean_Parser_Term_orM___closed__4; lean_object* l_Lean_Parser_Term_quotedName___closed__2; lean_object* l_Lean_Parser_Term_namedPattern; lean_object* l_Lean_Parser_Term_seqLeft___elambda__1___closed__3; @@ -686,6 +702,7 @@ lean_object* l_Lean_Parser_Term_anonymousCtor___closed__3; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__2; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrow; +lean_object* l_Lean_Parser_Term_arrow___closed__4; lean_object* l_Lean_Parser_Term_letIdLhs___closed__5; lean_object* l_Lean_Parser_Term_byTactic___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__1; @@ -734,6 +751,7 @@ lean_object* l_Lean_Parser_Term_bracketedDoSeq___closed__5; lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__11; lean_object* l_Lean_Parser_Term_band___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__8; +lean_object* l_Lean_Parser_Term_ge___closed__4; lean_object* l_Lean_Parser_Term_nomatch; lean_object* l_Lean_Parser_Term_namedHole___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_parenSpecial; @@ -760,6 +778,7 @@ lean_object* l_Lean_Parser_Term_let___closed__4; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_nomatch___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_decide___closed__7; lean_object* l_Lean_Parser_Term_ge___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_have___closed__11; lean_object* l_Lean_Parser_Term_doSeq___closed__1; @@ -807,9 +826,11 @@ lean_object* l_Lean_Parser_Term_ne___elambda__1___closed__1; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__3; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_mul___elambda__1___closed__2; +lean_object* l_Lean_Parser_Term_haveAssign___closed__7; lean_object* l_Lean_Parser_Term_add___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_nativeDecide___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_beq; +lean_object* l_Lean_Parser_Term_mapRev___closed__4; lean_object* l_Lean_Parser_Term_prop___closed__2; lean_object* l_Lean_Parser_Term_let___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_bne; @@ -818,6 +839,7 @@ lean_object* l_Lean_Parser_Term_subtype___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_explicitBinder___closed__7; lean_object* l_Lean_Parser_Term_match___closed__5; lean_object* l_Lean_Parser_checkWsBeforeFn(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_ne___closed__4; lean_object* l_Lean_Parser_Term_le___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_div___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_borrowed___elambda__1(lean_object*, lean_object*); @@ -839,6 +861,7 @@ lean_object* l_Lean_Parser_Term_explicitUniv___closed__5; lean_object* l_Lean_Parser_Term_let___closed__6; lean_object* l_Lean_Parser_Term_byTactic___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_funBinderStxQuot___closed__6; +lean_object* l_Lean_Parser_Term_seqRight___closed__4; lean_object* l_Lean_Parser_Term_lt___closed__2; lean_object* l_Lean_Parser_Term_sorry___closed__3; lean_object* l_Lean_Parser_Term_instBinder___elambda__1___closed__2; @@ -850,6 +873,7 @@ lean_object* l_Lean_Parser_Term_have; lean_object* l_Lean_Parser_Term_letIdLhs___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Term_tacticStxQuot(lean_object*); lean_object* l_Lean_Parser_Term_namedPattern___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_doPat___closed__11; lean_object* l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_typeSpec; lean_object* l_Lean_Parser_Term_orM___closed__2; @@ -926,6 +950,7 @@ lean_object* l_Lean_Parser_Term_explicitUniv___closed__3; lean_object* l___regBuiltinParser_Lean_Parser_Term_bne(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_inaccessible(lean_object*); lean_object* l_Lean_Parser_Term_depArrow___closed__2; +lean_object* l_Lean_Parser_Term_div___closed__4; lean_object* l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_structInst___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__13; @@ -960,6 +985,7 @@ lean_object* l_Lean_Parser_Term_inaccessible___closed__6; lean_object* l_Lean_Parser_Term_structInst___closed__5; lean_object* l_Lean_Parser_Term_le___closed__3; lean_object* l_Lean_Parser_Term_fcomp; +lean_object* l_Lean_Parser_Term_tupleTail___closed__7; lean_object* l_Lean_Parser_Term_fromTerm___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_structInst___closed__14; lean_object* l_Lean_Parser_Term_depArrow___closed__4; @@ -982,6 +1008,7 @@ lean_object* l_Lean_Parser_Term_match___elambda__1___closed__12; lean_object* l_Lean_Parser_checkNoWsBeforeFn(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_seqLeft; lean_object* l_Lean_Parser_Term_have___closed__6; +lean_object* l_Lean_Parser_Term_andthen___closed__4; lean_object* l_Lean_Parser_Term_mod___closed__3; lean_object* l_Lean_Parser_Term_id___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_nativeRefl___elambda__1___closed__7; @@ -1058,7 +1085,9 @@ lean_object* l_Lean_Parser_Term_uminus___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_uminus___closed__5; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_fcomp___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_fromTerm___closed__7; lean_object* l_Lean_Parser_Term_mapConst; +lean_object* l_Lean_Parser_Term_andM___closed__4; lean_object* l_Lean_Parser_Term_andM___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_band___elambda__1___closed__4; @@ -1071,6 +1100,7 @@ lean_object* l_Lean_Parser_Term_binderDefault___elambda__1___closed__3; lean_object* l_Lean_Parser_pushNone___elambda__1___rarg(lean_object*); lean_object* l_Lean_Parser_Term_arrayRef___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_darrow___elambda__1___closed__5; +lean_object* l_Lean_Parser_Term_beq___closed__4; lean_object* l_Lean_Parser_Term_orM___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_nativeDecide___closed__2; lean_object* l___regBuiltinParser_Lean_Parser_Term_anonymousCtor(lean_object*); @@ -1133,6 +1163,7 @@ lean_object* l_Lean_Parser_Term_namedHole___elambda__1___closed__3; lean_object* l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_leftArrow___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_char___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_pow___closed__4; lean_object* l_Lean_Parser_Term_explicitBinder___closed__1; lean_object* l_Lean_Parser_Term_let_x21___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_dollarProj___closed__1; @@ -1170,6 +1201,7 @@ lean_object* l_Lean_Parser_Term_explicitUniv___closed__4; lean_object* l_Lean_Parser_Term_append___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_proj___closed__2; lean_object* l_Lean_Parser_Term_let_x21___elambda__1___closed__5; +lean_object* l_Lean_Parser_Term_iff___closed__4; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_fun___closed__4; lean_object* l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__3; @@ -1178,6 +1210,7 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_heq(lean_object*); lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_namedArgument___closed__1; lean_object* l_Lean_Parser_Term_namedHole___elambda__1___closed__5; +lean_object* l_Lean_Parser_Term_mod___closed__4; lean_object* l_Lean_Parser_Term_arrow___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_uminus___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_namedPattern___closed__5; @@ -1286,7 +1319,6 @@ lean_object* l_Lean_Parser_Term_tacticBlock___closed__9; lean_object* l_Lean_Parser_Term_have___closed__10; lean_object* l_Lean_Parser_Term_cdot___closed__6; lean_object* l_Lean_Parser_Term_arrayRef___closed__6; -lean_object* l_Lean_Parser_Term_depArrow___elambda__1___closed__15; lean_object* l_Lean_Parser_Term_borrowed___closed__7; lean_object* l_Lean_Parser_Term_doLet___closed__5; lean_object* l___regBuiltinParser_Lean_Parser_Term_prod(lean_object*); @@ -1313,6 +1345,7 @@ lean_object* l_Lean_Parser_Term_letIdLhs___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_equiv(lean_object*); lean_object* l_Lean_Parser_Term_sort___closed__5; lean_object* l_Lean_Parser_Term_optType___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_bindOp___closed__4; lean_object* l_Lean_Parser_Term_sorry___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_where___elambda__1___spec__1(uint8_t, uint8_t, lean_object*, lean_object*); @@ -1338,6 +1371,7 @@ lean_object* l_Lean_Parser_Term_structInstField___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_andM; lean_object* l_Lean_Parser_Term_binderType___closed__5; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_namedPattern___closed__9; lean_object* l_Lean_Parser_Term_have___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_fromTerm___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_namedHole___elambda__1___closed__7; @@ -1352,6 +1386,7 @@ lean_object* l_Lean_Parser_Term_binderDefault___closed__4; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_str___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_heq___elambda__1___closed__2; +lean_object* l_Lean_Parser_Term_sub___closed__4; lean_object* l_Lean_Parser_Term_structInstLVal___closed__2; lean_object* l_Lean_Parser_Term_if___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__1; @@ -1362,6 +1397,7 @@ lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_fun___closed__9; lean_object* l_Lean_Parser_sepBy1Info(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_borrowed___elambda__1___closed__8; +lean_object* l_Lean_Parser_Term_typeAscription___closed__7; lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_nomatch___closed__1; lean_object* l_Lean_Parser_Term_matchAlt___closed__10; @@ -1399,6 +1435,7 @@ lean_object* l_Lean_Parser_Term_arrayRef___closed__2; lean_object* l_Lean_Parser_Term_namedHole___closed__7; extern lean_object* l_Lean_Parser_appPrec; lean_object* l_Lean_Parser_Term_bnot___elambda__1___closed__1; +lean_object* l_Lean_Parser_Term_namedArgument___closed__8; lean_object* l_Lean_Parser_Term_arrayRef___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_do___elambda__1___closed__7; @@ -1448,11 +1485,13 @@ lean_object* l_Lean_Parser_Term_forall___closed__1; lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__10; lean_object* l_Lean_Parser_Term_num___closed__5; lean_object* l_Lean_Parser_Term_haveAssign___closed__1; +lean_object* l_Lean_Parser_Term_binderTactic___closed__8; lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_modN___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_map___elambda__1(lean_object*, lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_le(lean_object*); lean_object* l_Lean_Parser_Term_seqRight; +lean_object* l_Lean_Parser_Term_nativeRefl___closed__7; lean_object* l_Lean_Parser_Term_bindOp; lean_object* l_Lean_Parser_Term_doPat___closed__10; lean_object* l_Lean_Parser_Term_simpleBinder; @@ -1491,6 +1530,7 @@ lean_object* l_Lean_Parser_Term_match___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_append___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_le___closed__1; +lean_object* l_Lean_Parser_Term_and___closed__4; lean_object* l_Lean_Parser_Term_sorry; lean_object* l_Lean_Parser_Term_tparser_x21___closed__3; lean_object* l_Lean_Parser_Term_structInstLVal___closed__4; @@ -1517,11 +1557,11 @@ lean_object* l_Lean_Parser_Term_cdot___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; lean_object* l_Lean_Parser_Term_structInstLVal___closed__1; lean_object* l_Lean_Parser_Term_have___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_mapConst___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Term_orelse(lean_object*); lean_object* l_Lean_Parser_Term_match___elambda__1___closed__2; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_tupleTail___closed__6; -extern lean_object* l___private_Lean_Parser_Parser_10__precErrorMsg; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__2; lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_uminus___closed__8; @@ -1600,8 +1640,11 @@ lean_object* l_Lean_Parser_Term_tacticBlock___elambda__1___closed__10; lean_object* l_Lean_Parser_Term_doId___closed__7; lean_object* l_Lean_Parser_Term_explicitBinder___closed__2; lean_object* l_Lean_Parser_Term_have___elambda__1___closed__9; +lean_object* l_Lean_Parser_Term_lt___closed__4; lean_object* l_Lean_Parser_Term_have___closed__1; lean_object* l_Lean_Parser_darrow___closed__2; +lean_object* l_Lean_Parser_Term_typeSpec___closed__5; +lean_object* l_Lean_Parser_Term_structInstField___closed__6; lean_object* l_Lean_Parser_Term_show___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__6; lean_object* l___regBuiltinParser_Lean_Parser_Term_uminus(lean_object*); @@ -1612,6 +1655,7 @@ lean_object* l_Lean_Parser_Term_div___closed__2; lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_mapConst___closed__2; lean_object* l_Lean_Parser_Term_emptyC___closed__3; +lean_object* l_Lean_Parser_Term_append___closed__4; lean_object* l_Lean_Parser_Term_tparser_x21___closed__7; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_sub___closed__3; @@ -1624,6 +1668,7 @@ lean_object* l_Lean_Parser_symbolInfo(lean_object*); lean_object* l_Lean_Parser_Term_match___closed__9; lean_object* l_Lean_Parser_Term_tupleTail___closed__5; lean_object* l_Lean_Parser_Term_mapRev___elambda__1___closed__2; +lean_object* l_Lean_Parser_Term_add___closed__4; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2(uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_id___closed__7; lean_object* l_Lean_Parser_Term_bracketedDoSeq___closed__6; @@ -1632,6 +1677,7 @@ lean_object* l_Lean_Parser_Term_str___closed__1; lean_object* l___regBuiltinParser_Lean_Parser_Term_and(lean_object*); lean_object* l_Lean_Parser_Term_fun___closed__5; lean_object* l_Lean_Parser_Term_seqRight___elambda__1___closed__4; +lean_object* l_Lean_Parser_Term_bor___closed__4; lean_object* l_Lean_Parser_Term_explicitUniv___closed__2; extern lean_object* l_Lean_Parser_epsilonInfo; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1___closed__7; @@ -1692,6 +1738,7 @@ lean_object* l_Lean_Parser_Term_dollar___closed__4; lean_object* l___regBuiltinParser_Lean_Parser_Term_decide(lean_object*); lean_object* l_Lean_Parser_Term_arrayRef___closed__1; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_matchAlts___elambda__1___spec__2___closed__4; +lean_object* l_Lean_Parser_Term_band___closed__4; lean_object* l_Lean_Parser_Term_fromTerm___closed__5; lean_object* l_Lean_Parser_Term_nativeRefl___elambda__1___closed__1; lean_object* l_Lean_Parser_dollarSymbol___elambda__1(lean_object*, lean_object*); @@ -1712,6 +1759,7 @@ lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1 lean_object* l_Lean_Parser_Term_borrowed___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_if___closed__6; lean_object* l_Lean_Parser_Term_letIdDecl___closed__2; +lean_object* l_Lean_Parser_Term_bne___closed__4; lean_object* l_Lean_Parser_Term_char; lean_object* l_Lean_Parser_Term_let_x21___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_structInstField___closed__5; @@ -1762,6 +1810,7 @@ lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__3; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__17(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_tacticStxQuot___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_nativeRefl___elambda__1___closed__8; +lean_object* l_Lean_Parser_Term_prod___closed__4; lean_object* l_Lean_Parser_Term_haveAssign___closed__5; lean_object* l_Lean_Parser_Term_letIdDecl___closed__1; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; @@ -1773,6 +1822,7 @@ lean_object* l_Lean_Parser_Term_parenSpecial___closed__2; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_funBinder___closed__1; lean_object* l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; +lean_object* l_Lean_Parser_Term_explicitUniv___closed__12; lean_object* l_String_trim(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_prop(lean_object*); lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_tupleTail___elambda__1___spec__2(uint8_t, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*); @@ -1811,6 +1861,7 @@ lean_object* l_Lean_Parser_Term_matchAlts___closed__1; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__4; lean_object* l_Lean_Parser_Term_structInst___closed__7; lean_object* l_Lean_Parser_Term_haveAssign___elambda__1___closed__6; +lean_object* l_Lean_Parser_Term_nativeDecide___closed__7; lean_object* l_Lean_Parser_Term_doLet___closed__4; lean_object* l_Lean_Parser_Term_tparser_x21___closed__1; lean_object* l_Lean_Parser_Tactic_seq___closed__2; @@ -1883,9 +1934,11 @@ lean_object* l_Lean_Parser_mkAntiquot(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Parser_Term_funBinder___closed__2; lean_object* l_Lean_Parser_Term_dollarProj___elambda__1___closed__6; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_gt___closed__4; lean_object* l_Lean_Parser_Term_tacticBlock___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_let_x21___elambda__1___closed__6; lean_object* l_Lean_Parser_Term_explicit; +lean_object* l_Lean_Parser_Term_equiv___closed__4; lean_object* l_Lean_Parser_Term_match__syntax___elambda__1___closed__7; lean_object* l___regBuiltinParser_Lean_Parser_Term_arrow(lean_object*); lean_object* l_Lean_Parser_Term_modN___closed__3; @@ -1951,6 +2004,7 @@ lean_object* l_Lean_Parser_Term_fun___closed__2; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__5; lean_object* l___regBuiltinParser_Lean_Parser_Term_hole(lean_object*); lean_object* l_Lean_Parser_Term_iff___closed__2; +lean_object* l_Lean_Parser_Term_orelse___closed__4; lean_object* l_Lean_Parser_Term_if___elambda__1___closed__12; lean_object* l_Lean_Parser_Term_subst___closed__7; lean_object* l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; @@ -2096,6 +2150,7 @@ lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1 lean_object* l___regBuiltinParser_Lean_Parser_Term_paren(lean_object*); lean_object* l___regBuiltinParser_Lean_Parser_Term_if(lean_object*); lean_object* l_Lean_Parser_Term_arrow___closed__3; +lean_object* l_Lean_Parser_Term_modN___closed__4; lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; lean_object* l_Lean_Parser_Tactic_seq___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__6; @@ -2109,12 +2164,15 @@ lean_object* l_Lean_Parser_Term_sort___closed__7; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_unicodeInfixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_emptyC___elambda__1___closed__7; +lean_object* l_Lean_Parser_Term_binderDefault___closed__5; lean_object* l_Lean_Parser_Term_dollar___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_unicodeInfixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_subtype___closed__11; lean_object* l_Lean_Parser_unicodeSymbolFnAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_map___closed__4; lean_object* l_Lean_Parser_Term_levelStxQuot___closed__2; +lean_object* l_Lean_Parser_Term_seq___closed__4; lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__7; lean_object* l_Lean_Parser_Term_namedArgument___closed__4; lean_object* l_Lean_Parser_Term_dollar___closed__2; @@ -2130,6 +2188,7 @@ lean_object* l_Lean_Parser_Term_dollar___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_char___elambda__1___closed__1; lean_object* l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_listLit___elambda__1___spec__2___closed__4; lean_object* l_Lean_Parser_Term_bnot___elambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Term_doExpr___closed__5; lean_object* l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_matchAlts___elambda__1___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_let; lean_object* l_Lean_Parser_Term_bracketedBinder___boxed(lean_object*); @@ -2942,42 +3001,40 @@ return x_5; lean_object* l_Lean_Parser_Term_unicodeInfixR(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_inc(x_3); -x_5 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_5, 0, x_3); -lean_closure_set(x_5, 1, x_4); -x_6 = l_String_trim(x_1); -x_7 = l_String_trim(x_2); -lean_inc(x_7); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_4, 0, x_3); +x_5 = l_String_trim(x_1); +x_6 = l_String_trim(x_2); lean_inc(x_6); -x_8 = l_Lean_Parser_unicodeSymbolInfo(x_6, x_7); -x_9 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___boxed), 4, 2); -lean_closure_set(x_9, 0, x_6); -lean_closure_set(x_9, 1, x_7); -x_10 = l_Lean_Parser_termParser___closed__2; +lean_inc(x_5); +x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6); +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___boxed), 4, 2); +lean_closure_set(x_8, 0, x_5); +lean_closure_set(x_8, 1, x_6); +x_9 = l_Lean_Parser_termParser___closed__2; lean_inc(x_3); -x_11 = l_Lean_Parser_categoryParser(x_10, x_3); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -lean_dec(x_11); -x_13 = l_Lean_Parser_andthenInfo(x_8, x_12); -x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); -lean_closure_set(x_14, 0, x_10); -lean_closure_set(x_14, 1, x_3); -x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_15, 0, x_9); -lean_closure_set(x_15, 1, x_14); -x_16 = l_Lean_Parser_epsilonInfo; -x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); -x_18 = lean_alloc_closure((void*)(l_Lean_Parser_Term_unicodeInfixR___elambda__1), 4, 2); -lean_closure_set(x_18, 0, x_5); -lean_closure_set(x_18, 1, x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; +x_10 = l_Lean_Parser_categoryParser(x_9, x_3); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = l_Lean_Parser_andthenInfo(x_7, x_11); +x_13 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); +lean_closure_set(x_13, 0, x_9); +lean_closure_set(x_13, 1, x_3); +x_14 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_14, 0, x_8); +lean_closure_set(x_14, 1, x_13); +x_15 = l_Lean_Parser_epsilonInfo; +x_16 = l_Lean_Parser_andthenInfo(x_15, x_12); +x_17 = lean_alloc_closure((void*)(l_Lean_Parser_Term_unicodeInfixR___elambda__1), 4, 2); +lean_closure_set(x_17, 0, x_4); +lean_closure_set(x_17, 1, x_14); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; } } lean_object* l_Lean_Parser_Term_unicodeInfixR___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -3016,39 +3073,37 @@ return x_5; lean_object* l_Lean_Parser_Term_infixR(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_3 = l___private_Lean_Parser_Parser_10__precErrorMsg; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_inc(x_2); -x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_4, 0, x_2); -lean_closure_set(x_4, 1, x_3); -x_5 = l_String_trim(x_1); -lean_inc(x_5); -x_6 = l_Lean_Parser_symbolInfo(x_5); -x_7 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); -lean_closure_set(x_7, 0, x_5); -x_8 = l_Lean_Parser_termParser___closed__2; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_3, 0, x_2); +x_4 = l_String_trim(x_1); +lean_inc(x_4); +x_5 = l_Lean_Parser_symbolInfo(x_4); +x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); +lean_closure_set(x_6, 0, x_4); +x_7 = l_Lean_Parser_termParser___closed__2; lean_inc(x_2); -x_9 = l_Lean_Parser_categoryParser(x_8, x_2); -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -lean_dec(x_9); -x_11 = l_Lean_Parser_andthenInfo(x_6, x_10); -x_12 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); -lean_closure_set(x_12, 0, x_8); -lean_closure_set(x_12, 1, x_2); -x_13 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_13, 0, x_7); -lean_closure_set(x_13, 1, x_12); -x_14 = l_Lean_Parser_epsilonInfo; -x_15 = l_Lean_Parser_andthenInfo(x_14, x_11); -x_16 = lean_alloc_closure((void*)(l_Lean_Parser_Term_infixR___elambda__1), 4, 2); -lean_closure_set(x_16, 0, x_4); -lean_closure_set(x_16, 1, x_13); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_15); -lean_ctor_set(x_17, 1, x_16); -return x_17; +x_8 = l_Lean_Parser_categoryParser(x_7, x_2); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +lean_dec(x_8); +x_10 = l_Lean_Parser_andthenInfo(x_5, x_9); +x_11 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); +lean_closure_set(x_11, 0, x_7); +lean_closure_set(x_11, 1, x_2); +x_12 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_12, 0, x_6); +lean_closure_set(x_12, 1, x_11); +x_13 = l_Lean_Parser_epsilonInfo; +x_14 = l_Lean_Parser_andthenInfo(x_13, x_10); +x_15 = lean_alloc_closure((void*)(l_Lean_Parser_Term_infixR___elambda__1), 4, 2); +lean_closure_set(x_15, 0, x_3); +lean_closure_set(x_15, 1, x_12); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; } } lean_object* l_Lean_Parser_Term_infixR___boxed(lean_object* x_1, lean_object* x_2) { @@ -3086,45 +3141,43 @@ return x_5; lean_object* l_Lean_Parser_Term_unicodeInfixL(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_inc(x_3); -x_5 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_5, 0, x_3); -lean_closure_set(x_5, 1, x_4); -x_6 = l_String_trim(x_1); -x_7 = l_String_trim(x_2); -lean_inc(x_7); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_4, 0, x_3); +x_5 = l_String_trim(x_1); +x_6 = l_String_trim(x_2); lean_inc(x_6); -x_8 = l_Lean_Parser_unicodeSymbolInfo(x_6, x_7); -x_9 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___boxed), 4, 2); -lean_closure_set(x_9, 0, x_6); -lean_closure_set(x_9, 1, x_7); -x_10 = lean_unsigned_to_nat(1u); -x_11 = lean_nat_add(x_3, x_10); +lean_inc(x_5); +x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6); +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___boxed), 4, 2); +lean_closure_set(x_8, 0, x_5); +lean_closure_set(x_8, 1, x_6); +x_9 = lean_unsigned_to_nat(1u); +x_10 = lean_nat_add(x_3, x_9); lean_dec(x_3); -x_12 = l_Lean_Parser_termParser___closed__2; -lean_inc(x_11); -x_13 = l_Lean_Parser_categoryParser(x_12, x_11); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -lean_dec(x_13); -x_15 = l_Lean_Parser_andthenInfo(x_8, x_14); -x_16 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); -lean_closure_set(x_16, 0, x_12); -lean_closure_set(x_16, 1, x_11); -x_17 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_17, 0, x_9); -lean_closure_set(x_17, 1, x_16); -x_18 = l_Lean_Parser_epsilonInfo; -x_19 = l_Lean_Parser_andthenInfo(x_18, x_15); -x_20 = lean_alloc_closure((void*)(l_Lean_Parser_Term_unicodeInfixL___elambda__1), 4, 2); -lean_closure_set(x_20, 0, x_5); -lean_closure_set(x_20, 1, x_17); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; +x_11 = l_Lean_Parser_termParser___closed__2; +lean_inc(x_10); +x_12 = l_Lean_Parser_categoryParser(x_11, x_10); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = l_Lean_Parser_andthenInfo(x_7, x_13); +x_15 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); +lean_closure_set(x_15, 0, x_11); +lean_closure_set(x_15, 1, x_10); +x_16 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_16, 0, x_8); +lean_closure_set(x_16, 1, x_15); +x_17 = l_Lean_Parser_epsilonInfo; +x_18 = l_Lean_Parser_andthenInfo(x_17, x_14); +x_19 = lean_alloc_closure((void*)(l_Lean_Parser_Term_unicodeInfixL___elambda__1), 4, 2); +lean_closure_set(x_19, 0, x_4); +lean_closure_set(x_19, 1, x_16); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +return x_20; } } lean_object* l_Lean_Parser_Term_unicodeInfixL___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -3163,42 +3216,40 @@ return x_5; lean_object* l_Lean_Parser_Term_infixL(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_3 = l___private_Lean_Parser_Parser_10__precErrorMsg; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_inc(x_2); -x_4 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 4, 2); -lean_closure_set(x_4, 0, x_2); -lean_closure_set(x_4, 1, x_3); -x_5 = l_String_trim(x_1); -lean_inc(x_5); -x_6 = l_Lean_Parser_symbolInfo(x_5); -x_7 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); -lean_closure_set(x_7, 0, x_5); -x_8 = lean_unsigned_to_nat(1u); -x_9 = lean_nat_add(x_2, x_8); +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_3, 0, x_2); +x_4 = l_String_trim(x_1); +lean_inc(x_4); +x_5 = l_Lean_Parser_symbolInfo(x_4); +x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); +lean_closure_set(x_6, 0, x_4); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_add(x_2, x_7); lean_dec(x_2); -x_10 = l_Lean_Parser_termParser___closed__2; -lean_inc(x_9); -x_11 = l_Lean_Parser_categoryParser(x_10, x_9); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -lean_dec(x_11); -x_13 = l_Lean_Parser_andthenInfo(x_6, x_12); -x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); -lean_closure_set(x_14, 0, x_10); -lean_closure_set(x_14, 1, x_9); -x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_15, 0, x_7); -lean_closure_set(x_15, 1, x_14); -x_16 = l_Lean_Parser_epsilonInfo; -x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); -x_18 = lean_alloc_closure((void*)(l_Lean_Parser_Term_infixL___elambda__1), 4, 2); -lean_closure_set(x_18, 0, x_4); -lean_closure_set(x_18, 1, x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; +x_9 = l_Lean_Parser_termParser___closed__2; +lean_inc(x_8); +x_10 = l_Lean_Parser_categoryParser(x_9, x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = l_Lean_Parser_andthenInfo(x_5, x_11); +x_13 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1), 4, 2); +lean_closure_set(x_13, 0, x_9); +lean_closure_set(x_13, 1, x_8); +x_14 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_14, 0, x_6); +lean_closure_set(x_14, 1, x_13); +x_15 = l_Lean_Parser_epsilonInfo; +x_16 = l_Lean_Parser_andthenInfo(x_15, x_12); +x_17 = lean_alloc_closure((void*)(l_Lean_Parser_Term_infixL___elambda__1), 4, 2); +lean_closure_set(x_17, 0, x_3); +lean_closure_set(x_17, 1, x_14); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; } } lean_object* l_Lean_Parser_Term_infixL___boxed(lean_object* x_1, lean_object* x_2) { @@ -3651,379 +3702,410 @@ lean_inc(x_1); x_8 = l_Lean_Parser_tryAnti(x_1, x_6); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_dec(x_4); -x_9 = lean_ctor_get(x_6, 0); -lean_inc(x_9); -x_10 = lean_array_get_size(x_9); -lean_dec(x_9); -x_43 = lean_ctor_get(x_6, 1); -lean_inc(x_43); -lean_inc(x_1); -x_44 = l_Lean_Parser_tokenFn(x_1, x_6); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) +x_9 = lean_unsigned_to_nat(1024u); +x_10 = l_Lean_Parser_checkPrecFn(x_9, x_1, x_6); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) { -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); -lean_dec(x_46); -if (lean_obj_tag(x_47) == 2) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -lean_dec(x_47); -x_49 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; -x_50 = lean_string_dec_eq(x_48, x_49); -lean_dec(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); -x_11 = x_52; -goto block_42; -} -else -{ -lean_dec(x_43); -x_11 = x_44; -goto block_42; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_47); -x_53 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); -x_11 = x_54; -goto block_42; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_45); -x_55 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); -x_11 = x_56; -goto block_42; -} -block_42: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_12 = lean_ctor_get(x_10, 0); lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -uint8_t x_13; lean_object* x_14; lean_object* x_15; -x_13 = 0; +x_13 = lean_array_get_size(x_12); +lean_dec(x_12); +x_46 = lean_ctor_get(x_10, 1); +lean_inc(x_46); lean_inc(x_1); -x_14 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__1(x_13, x_13, x_1, x_11); +x_47 = l_Lean_Parser_tokenFn(x_1, x_10); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_49); +lean_dec(x_49); +if (lean_obj_tag(x_50) == 2) +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_50, 1); +lean_inc(x_51); +lean_dec(x_50); +x_52 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; +x_53 = lean_string_dec_eq(x_51, x_52); +lean_dec(x_51); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_54, x_46); +x_14 = x_55; +goto block_45; +} +else +{ +lean_dec(x_46); +x_14 = x_47; +goto block_45; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_50); +x_56 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_56, x_46); +x_14 = x_57; +goto block_45; +} +} +else +{ +lean_object* x_58; lean_object* x_59; +lean_dec(x_48); +x_58 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_58, x_46); +x_14 = x_59; +goto block_45; +} +block_45: +{ +lean_object* x_15; x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +uint8_t x_16; lean_object* x_17; lean_object* x_18; +x_16 = 0; +lean_inc(x_1); +x_17 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__1(x_16, x_16, x_1, x_14); x_18 = lean_ctor_get(x_17, 3); lean_inc(x_18); if (lean_obj_tag(x_18) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 1); lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); +x_20 = l_Lean_Parser_tokenFn(x_1, x_17); +x_21 = lean_ctor_get(x_20, 3); lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_23 = lean_string_dec_eq(x_21, x_22); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_27 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_29 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_13); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_31 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_20, x_31, x_13); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_33, x_19); +x_35 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_13); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); -return x_29; +x_37 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_37, x_19); +x_39 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_13); +return x_40; } } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_object* x_41; lean_object* x_42; lean_dec(x_18); -x_34 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); -return x_37; +lean_dec(x_1); +x_41 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_17, x_41, x_13); +return x_42; } } else { -lean_object* x_38; lean_object* x_39; +lean_object* x_43; lean_object* x_44; lean_dec(x_15); lean_dec(x_1); -x_38 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); -return x_39; +x_43 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_14, x_43, x_13); +return x_44; +} } } else { -lean_object* x_40; lean_object* x_41; -lean_dec(x_12); +lean_dec(x_11); lean_dec(x_1); -x_40 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); -return x_41; -} +return x_10; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_6, 0); -lean_inc(x_57); -x_58 = lean_array_get_size(x_57); -lean_dec(x_57); -x_59 = lean_ctor_get(x_6, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = lean_apply_2(x_4, x_1, x_6); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_1); -return x_60; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_60 = lean_ctor_get(x_6, 0); +lean_inc(x_60); +x_61 = lean_array_get_size(x_60); +lean_dec(x_60); +x_62 = lean_ctor_get(x_6, 1); lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_59); -lean_dec(x_63); -if (x_64 == 0) +lean_inc(x_1); +x_63 = lean_apply_2(x_4, x_1, x_6); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) { lean_dec(x_62); -lean_dec(x_59); -lean_dec(x_58); +lean_dec(x_61); lean_dec(x_1); -return x_60; +return x_63; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_106; lean_object* x_107; -lean_inc(x_59); -x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); -lean_dec(x_58); -x_66 = lean_ctor_get(x_65, 0); +lean_object* x_65; lean_object* x_66; uint8_t x_67; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +lean_dec(x_64); +x_66 = lean_ctor_get(x_63, 1); lean_inc(x_66); -x_67 = lean_array_get_size(x_66); +x_67 = lean_nat_dec_eq(x_66, x_62); lean_dec(x_66); +if (x_67 == 0) +{ +lean_dec(x_65); +lean_dec(x_62); +lean_dec(x_61); +lean_dec(x_1); +return x_63; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_inc(x_62); +x_68 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); +lean_dec(x_61); +x_69 = lean_unsigned_to_nat(1024u); +x_70 = l_Lean_Parser_checkPrecFn(x_69, x_1, x_68); +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_72 = lean_ctor_get(x_70, 0); +lean_inc(x_72); +x_73 = lean_array_get_size(x_72); +lean_dec(x_72); +x_112 = lean_ctor_get(x_70, 1); +lean_inc(x_112); lean_inc(x_1); -x_106 = l_Lean_Parser_tokenFn(x_1, x_65); -x_107 = lean_ctor_get(x_106, 3); -lean_inc(x_107); -if (lean_obj_tag(x_107) == 0) -{ -lean_object* x_108; lean_object* x_109; -x_108 = lean_ctor_get(x_106, 0); -lean_inc(x_108); -x_109 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_108); -lean_dec(x_108); -if (lean_obj_tag(x_109) == 2) -{ -lean_object* x_110; lean_object* x_111; uint8_t x_112; -x_110 = lean_ctor_get(x_109, 1); -lean_inc(x_110); -lean_dec(x_109); -x_111 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; -x_112 = lean_string_dec_eq(x_110, x_111); -lean_dec(x_110); -if (x_112 == 0) -{ -lean_object* x_113; lean_object* x_114; -x_113 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_59); -x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_113, x_59); -x_68 = x_114; -goto block_105; -} -else -{ -x_68 = x_106; -goto block_105; -} -} -else +x_113 = l_Lean_Parser_tokenFn(x_1, x_70); +x_114 = lean_ctor_get(x_113, 3); +lean_inc(x_114); +if (lean_obj_tag(x_114) == 0) { lean_object* x_115; lean_object* x_116; -lean_dec(x_109); -x_115 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_59); -x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_115, x_59); -x_68 = x_116; -goto block_105; +x_115 = lean_ctor_get(x_113, 0); +lean_inc(x_115); +x_116 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_115); +lean_dec(x_115); +if (lean_obj_tag(x_116) == 2) +{ +lean_object* x_117; lean_object* x_118; uint8_t x_119; +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +lean_dec(x_116); +x_118 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__6; +x_119 = lean_string_dec_eq(x_117, x_118); +lean_dec(x_117); +if (x_119 == 0) +{ +lean_object* x_120; lean_object* x_121; +x_120 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_121 = l_Lean_Parser_ParserState_mkErrorsAt(x_113, x_120, x_112); +x_74 = x_121; +goto block_111; +} +else +{ +lean_dec(x_112); +x_74 = x_113; +goto block_111; } } else { -lean_object* x_117; lean_object* x_118; -lean_dec(x_107); -x_117 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; -lean_inc(x_59); -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_117, x_59); -x_68 = x_118; -goto block_105; +lean_object* x_122; lean_object* x_123; +lean_dec(x_116); +x_122 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_123 = l_Lean_Parser_ParserState_mkErrorsAt(x_113, x_122, x_112); +x_74 = x_123; +goto block_111; } -block_105: +} +else { -lean_object* x_69; -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) +lean_object* x_124; lean_object* x_125; +lean_dec(x_114); +x_124 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__14; +x_125 = l_Lean_Parser_ParserState_mkErrorsAt(x_113, x_124, x_112); +x_74 = x_125; +goto block_111; +} +block_111: { -uint8_t x_70; lean_object* x_71; lean_object* x_72; -x_70 = 0; -lean_inc(x_1); -x_71 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__1(x_70, x_70, x_1, x_68); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_73 = lean_ctor_get(x_71, 1); -lean_inc(x_73); -x_74 = l_Lean_Parser_tokenFn(x_1, x_71); +lean_object* x_75; x_75 = lean_ctor_get(x_74, 3); lean_inc(x_75); if (lean_obj_tag(x_75) == 0) { -lean_object* x_76; lean_object* x_77; -x_76 = lean_ctor_get(x_74, 0); -lean_inc(x_76); -x_77 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_76); -lean_dec(x_76); -if (lean_obj_tag(x_77) == 2) -{ -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_77, 1); +uint8_t x_76; lean_object* x_77; lean_object* x_78; +x_76 = 0; +lean_inc(x_1); +x_77 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__1(x_76, x_76, x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); lean_inc(x_78); -lean_dec(x_77); -x_79 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_80 = lean_string_dec_eq(x_78, x_79); -lean_dec(x_78); -if (x_80 == 0) +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_81 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_81, x_73); -x_83 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_82, x_83, x_67); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_62, x_59); -lean_dec(x_59); -return x_85; +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_77, 1); +lean_inc(x_79); +x_80 = l_Lean_Parser_tokenFn(x_1, x_77); +x_81 = lean_ctor_get(x_80, 3); +lean_inc(x_81); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; +x_82 = lean_ctor_get(x_80, 0); +lean_inc(x_82); +x_83 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_82); +lean_dec(x_82); +if (lean_obj_tag(x_83) == 2) +{ +lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_84 = lean_ctor_get(x_83, 1); +lean_inc(x_84); +lean_dec(x_83); +x_85 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_86 = lean_string_dec_eq(x_84, x_85); +lean_dec(x_84); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_87 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_87, x_79); +x_89 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_73); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_65, x_62); +lean_dec(x_62); +return x_91; } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; -lean_dec(x_73); -x_86 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_74, x_86, x_67); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); -lean_dec(x_59); -return x_88; +lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_79); +x_92 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_80, x_92, x_73); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_65, x_62); +lean_dec(x_62); +return x_94; } } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_77); -x_89 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_90 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_89, x_73); -x_91 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_90, x_91, x_67); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_62, x_59); -lean_dec(x_59); -return x_93; +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_83); +x_95 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_95, x_79); +x_97 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_73); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_65, x_62); +lean_dec(x_62); +return x_99; } } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_75); -x_94 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_74, x_94, x_73); -x_96 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_67); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_62, x_59); -lean_dec(x_59); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_72); -lean_dec(x_1); -x_99 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_71, x_99, x_67); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); -lean_dec(x_59); -return x_101; -} -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_69); -lean_dec(x_1); +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_81); +x_100 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_100, x_79); x_102 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_68, x_102, x_67); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); -lean_dec(x_59); +x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_73); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_65, x_62); +lean_dec(x_62); return x_104; } } +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_78); +lean_dec(x_1); +x_105 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_77, x_105, x_73); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_65, x_62); +lean_dec(x_62); +return x_107; +} +} +else +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_dec(x_75); +lean_dec(x_1); +x_108 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_74, x_108, x_73); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_65, x_62); +lean_dec(x_62); +return x_110; +} +} +} +else +{ +lean_object* x_126; +lean_dec(x_71); +lean_dec(x_1); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_70, x_65, x_62); +lean_dec(x_62); +return x_126; +} } } } @@ -4109,26 +4191,36 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__8() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__4; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_explicitUniv___closed__7; -x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_explicitUniv___closed__7; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_explicitUniv___closed__8; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_epsilonInfo; -x_2 = l_Lean_Parser_Term_explicitUniv___closed__8; +x_2 = l_Lean_Parser_Term_explicitUniv___closed__9; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } } -lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__10() { +lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__11() { _start: { lean_object* x_1; @@ -4136,12 +4228,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_explicitUniv___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__11() { +lean_object* _init_l_Lean_Parser_Term_explicitUniv___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_explicitUniv___closed__9; -x_2 = l_Lean_Parser_Term_explicitUniv___closed__10; +x_1 = l_Lean_Parser_Term_explicitUniv___closed__10; +x_2 = l_Lean_Parser_Term_explicitUniv___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4152,7 +4244,7 @@ lean_object* _init_l_Lean_Parser_Term_explicitUniv() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_explicitUniv___closed__11; +x_1 = l_Lean_Parser_Term_explicitUniv___closed__12; return x_1; } } @@ -4297,228 +4389,259 @@ lean_inc(x_1); x_8 = l_Lean_Parser_tryAnti(x_1, x_6); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_dec(x_4); -x_9 = lean_ctor_get(x_6, 0); -lean_inc(x_9); -x_10 = lean_array_get_size(x_9); -lean_dec(x_9); -x_21 = lean_ctor_get(x_6, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = l_Lean_Parser_tokenFn(x_1, x_6); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) +x_9 = lean_unsigned_to_nat(1024u); +x_10 = l_Lean_Parser_checkPrecFn(x_9, x_1, x_6); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) { -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_22, 0); -lean_inc(x_24); -x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); -lean_dec(x_24); -if (lean_obj_tag(x_25) == 2) -{ -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; -x_28 = lean_string_dec_eq(x_26, x_27); -lean_dec(x_26); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; -x_29 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); -x_11 = x_30; -goto block_20; -} -else -{ -lean_dec(x_21); -x_11 = x_22; -goto block_20; -} -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_25); -x_31 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); -x_11 = x_32; -goto block_20; -} -} -else -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_23); -x_33 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); -x_11 = x_34; -goto block_20; -} -block_20: -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 3); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_12 = lean_ctor_get(x_10, 0); lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = l_Lean_Parser_termParser___closed__2; -x_14 = l_Lean_Parser_appPrec; -x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); -x_16 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; +x_13 = lean_array_get_size(x_12); lean_dec(x_12); -lean_dec(x_1); -x_18 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); -return x_19; -} -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_6, 0); -lean_inc(x_35); -x_36 = lean_array_get_size(x_35); -lean_dec(x_35); -x_37 = lean_ctor_get(x_6, 1); -lean_inc(x_37); +x_24 = lean_ctor_get(x_10, 1); +lean_inc(x_24); lean_inc(x_1); -x_38 = lean_apply_2(x_4, x_1, x_6); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) +x_25 = l_Lean_Parser_tokenFn(x_1, x_10); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_1); -return x_38; +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_27); +lean_dec(x_27); +if (lean_obj_tag(x_28) == 2) +{ +lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +x_30 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; +x_31 = lean_string_dec_eq(x_29, x_30); +lean_dec(x_29); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; +x_32 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_32, x_24); +x_14 = x_33; +goto block_23; } else { -lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_40 = lean_ctor_get(x_39, 0); +lean_dec(x_24); +x_14 = x_25; +goto block_23; +} +} +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_28); +x_34 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_34, x_24); +x_14 = x_35; +goto block_23; +} +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_26); +x_36 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_25, x_36, x_24); +x_14 = x_37; +goto block_23; +} +block_23: +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = l_Lean_Parser_termParser___closed__2; +x_17 = l_Lean_Parser_appPrec; +x_18 = l_Lean_Parser_categoryParser___elambda__1(x_16, x_17, x_1, x_14); +x_19 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; +x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_13); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_15); +lean_dec(x_1); +x_21 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_14, x_21, x_13); +return x_22; +} +} +} +else +{ +lean_dec(x_11); +lean_dec(x_1); +return x_10; +} +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_38 = lean_ctor_get(x_6, 0); +lean_inc(x_38); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = lean_ctor_get(x_6, 1); lean_inc(x_40); -lean_dec(x_39); -x_41 = lean_ctor_get(x_38, 1); -lean_inc(x_41); -x_42 = lean_nat_dec_eq(x_41, x_37); -lean_dec(x_41); -if (x_42 == 0) +lean_inc(x_1); +x_41 = lean_apply_2(x_4, x_1, x_6); +x_42 = lean_ctor_get(x_41, 3); +lean_inc(x_42); +if (lean_obj_tag(x_42) == 0) { lean_dec(x_40); -lean_dec(x_37); -lean_dec(x_36); +lean_dec(x_39); lean_dec(x_1); -return x_38; +return x_41; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_58; lean_object* x_59; -lean_inc(x_37); -x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); -lean_dec(x_36); -x_44 = lean_ctor_get(x_43, 0); +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +lean_dec(x_42); +x_44 = lean_ctor_get(x_41, 1); lean_inc(x_44); -x_45 = lean_array_get_size(x_44); +x_45 = lean_nat_dec_eq(x_44, x_40); lean_dec(x_44); +if (x_45 == 0) +{ +lean_dec(x_43); +lean_dec(x_40); +lean_dec(x_39); +lean_dec(x_1); +return x_41; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_inc(x_40); +x_46 = l_Lean_Parser_ParserState_restore(x_41, x_39, x_40); +lean_dec(x_39); +x_47 = lean_unsigned_to_nat(1024u); +x_48 = l_Lean_Parser_checkPrecFn(x_47, x_1, x_46); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_64 = lean_ctor_get(x_48, 1); +lean_inc(x_64); lean_inc(x_1); -x_58 = l_Lean_Parser_tokenFn(x_1, x_43); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); -lean_dec(x_60); -if (lean_obj_tag(x_61) == 2) -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 1); -lean_inc(x_62); -lean_dec(x_61); -x_63 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; -x_64 = lean_string_dec_eq(x_62, x_63); -lean_dec(x_62); -if (x_64 == 0) -{ -lean_object* x_65; lean_object* x_66; -x_65 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -lean_inc(x_37); -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_37); -x_46 = x_66; -goto block_57; -} -else -{ -x_46 = x_58; -goto block_57; -} -} -else +x_65 = l_Lean_Parser_tokenFn(x_1, x_48); +x_66 = lean_ctor_get(x_65, 3); +lean_inc(x_66); +if (lean_obj_tag(x_66) == 0) { lean_object* x_67; lean_object* x_68; -lean_dec(x_61); -x_67 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -lean_inc(x_37); -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_37); -x_46 = x_68; -goto block_57; +x_67 = lean_ctor_get(x_65, 0); +lean_inc(x_67); +x_68 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_67); +lean_dec(x_67); +if (lean_obj_tag(x_68) == 2) +{ +lean_object* x_69; lean_object* x_70; uint8_t x_71; +x_69 = lean_ctor_get(x_68, 1); +lean_inc(x_69); +lean_dec(x_68); +x_70 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; +x_71 = lean_string_dec_eq(x_69, x_70); +lean_dec(x_69); +if (x_71 == 0) +{ +lean_object* x_72; lean_object* x_73; +x_72 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_65, x_72, x_64); +x_52 = x_73; +goto block_63; +} +else +{ +lean_dec(x_64); +x_52 = x_65; +goto block_63; } } else { -lean_object* x_69; lean_object* x_70; -lean_dec(x_59); -x_69 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -lean_inc(x_37); -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_37); -x_46 = x_70; -goto block_57; +lean_object* x_74; lean_object* x_75; +lean_dec(x_68); +x_74 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_65, x_74, x_64); +x_52 = x_75; +goto block_63; } -block_57: -{ -lean_object* x_47; -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_48 = l_Lean_Parser_termParser___closed__2; -x_49 = l_Lean_Parser_appPrec; -x_50 = l_Lean_Parser_categoryParser___elambda__1(x_48, x_49, x_1, x_46); -x_51 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_50, x_51, x_45); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_40, x_37); -lean_dec(x_37); -return x_53; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_47); +lean_object* x_76; lean_object* x_77; +lean_dec(x_66); +x_76 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_65, x_76, x_64); +x_52 = x_77; +goto block_63; +} +block_63: +{ +lean_object* x_53; +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_54 = l_Lean_Parser_termParser___closed__2; +x_55 = l_Lean_Parser_appPrec; +x_56 = l_Lean_Parser_categoryParser___elambda__1(x_54, x_55, x_1, x_52); +x_57 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_51); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_43, x_40); +lean_dec(x_40); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_53); lean_dec(x_1); -x_54 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_46, x_54, x_45); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); -lean_dec(x_37); -return x_56; +x_60 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_52, x_60, x_51); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_43, x_40); +lean_dec(x_40); +return x_62; } } } +else +{ +lean_object* x_78; +lean_dec(x_49); +lean_dec(x_1); +x_78 = l_Lean_Parser_mergeOrElseErrors(x_48, x_43, x_40); +lean_dec(x_40); +return x_78; +} +} } } } @@ -4575,26 +4698,36 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__4; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Term_namedPattern___closed__4; -x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_namedPattern___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_namedPattern___closed__5; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_epsilonInfo; -x_2 = l_Lean_Parser_Term_namedPattern___closed__5; +x_2 = l_Lean_Parser_Term_namedPattern___closed__6; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } } -lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__7() { +lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__8() { _start: { lean_object* x_1; @@ -4602,12 +4735,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_namedPattern___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__8() { +lean_object* _init_l_Lean_Parser_Term_namedPattern___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_namedPattern___closed__6; -x_2 = l_Lean_Parser_Term_namedPattern___closed__7; +x_1 = l_Lean_Parser_Term_namedPattern___closed__7; +x_2 = l_Lean_Parser_Term_namedPattern___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4618,7 +4751,7 @@ lean_object* _init_l_Lean_Parser_Term_namedPattern() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_namedPattern___closed__8; +x_1 = l_Lean_Parser_Term_namedPattern___closed__9; return x_1; } } @@ -4655,325 +4788,323 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -lean_inc(x_1); -x_12 = l_Lean_Parser_ident___elambda__1(x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_Term_explicitUniv___elambda__1(x_1, x_12); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -lean_dec(x_16); -lean_dec(x_1); -x_19 = l_Lean_nullKind; -x_20 = l_Lean_Parser_ParserState_mkNode(x_17, x_19, x_15); -x_21 = l_Lean_mkTermIdFromIdent___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_11); -return x_22; -} -else -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_18, 0); -lean_inc(x_23); -lean_dec(x_18); -x_24 = lean_ctor_get(x_17, 1); -lean_inc(x_24); -x_25 = lean_nat_dec_eq(x_24, x_16); -lean_dec(x_24); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_23); -lean_dec(x_16); -lean_dec(x_1); -x_26 = l_Lean_nullKind; -x_27 = l_Lean_Parser_ParserState_mkNode(x_17, x_26, x_15); -x_28 = l_Lean_mkTermIdFromIdent___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_16); -x_30 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); -x_31 = l_Lean_Parser_Term_namedPattern___elambda__1(x_1, x_30); -x_32 = l_Lean_Parser_mergeOrElseErrors(x_31, x_23, x_16); -x_33 = lean_ctor_get(x_32, 3); -lean_inc(x_33); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_16); -x_34 = l_Lean_nullKind; -x_35 = l_Lean_Parser_ParserState_mkNode(x_32, x_34, x_15); -x_36 = l_Lean_mkTermIdFromIdent___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -else -{ -lean_object* x_38; uint8_t x_39; -lean_dec(x_33); -x_38 = lean_ctor_get(x_32, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_16); -lean_dec(x_38); -if (x_39 == 0) -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_dec(x_16); -x_40 = l_Lean_nullKind; -x_41 = l_Lean_Parser_ParserState_mkNode(x_32, x_40, x_15); -x_42 = l_Lean_mkTermIdFromIdent___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_11); -return x_43; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = l_Lean_Parser_ParserState_restore(x_32, x_15, x_16); -x_45 = l_Lean_nullKind; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_15); -x_47 = l_Lean_mkTermIdFromIdent___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_11); -return x_48; -} -} -} -} -} -else -{ -lean_object* x_49; lean_object* x_50; -lean_dec(x_13); -lean_dec(x_1); -x_49 = l_Lean_mkTermIdFromIdent___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_12, x_49, x_11); -return x_50; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +lean_inc(x_1); +x_11 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_Term_explicitUniv___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_15); lean_dec(x_1); -return x_8; +x_18 = l_Lean_nullKind; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_14); +x_20 = l_Lean_mkTermIdFromIdent___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +lean_dec(x_17); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +x_24 = lean_nat_dec_eq(x_23, x_15); +lean_dec(x_23); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_22); +lean_dec(x_15); +lean_dec(x_1); +x_25 = l_Lean_nullKind; +x_26 = l_Lean_Parser_ParserState_mkNode(x_16, x_25, x_14); +x_27 = l_Lean_mkTermIdFromIdent___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_inc(x_15); +x_29 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +x_30 = l_Lean_Parser_Term_namedPattern___elambda__1(x_1, x_29); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_22, x_15); +x_32 = lean_ctor_get(x_31, 3); +lean_inc(x_32); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_15); +x_33 = l_Lean_nullKind; +x_34 = l_Lean_Parser_ParserState_mkNode(x_31, x_33, x_14); +x_35 = l_Lean_mkTermIdFromIdent___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +else +{ +lean_object* x_37; uint8_t x_38; +lean_dec(x_32); +x_37 = lean_ctor_get(x_31, 1); +lean_inc(x_37); +x_38 = lean_nat_dec_eq(x_37, x_15); +lean_dec(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_15); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_31, x_39, x_14); +x_41 = l_Lean_mkTermIdFromIdent___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_10); +return x_42; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = l_Lean_Parser_ParserState_restore(x_31, x_14, x_15); +x_44 = l_Lean_nullKind; +x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_14); +x_46 = l_Lean_mkTermIdFromIdent___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +} +} } } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_51 = lean_ctor_get(x_2, 0); -lean_inc(x_51); -x_52 = lean_array_get_size(x_51); +lean_object* x_48; lean_object* x_49; +lean_dec(x_12); +lean_dec(x_1); +x_48 = l_Lean_mkTermIdFromIdent___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_11, x_48, x_10); +return x_49; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_2, 0); +lean_inc(x_50); +x_51 = lean_array_get_size(x_50); +lean_dec(x_50); +x_52 = lean_ctor_get(x_2, 1); +lean_inc(x_52); +lean_inc(x_1); +x_53 = lean_apply_2(x_4, x_1, x_2); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_dec(x_52); lean_dec(x_51); -x_53 = lean_ctor_get(x_2, 1); -lean_inc(x_53); -lean_inc(x_1); -x_54 = lean_apply_2(x_4, x_1, x_2); -x_55 = lean_ctor_get(x_54, 3); +lean_dec(x_1); +return x_53; +} +else +{ +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 0); lean_inc(x_55); -if (lean_obj_tag(x_55) == 0) -{ -lean_dec(x_53); -lean_dec(x_52); -lean_dec(x_1); -return x_54; -} -else -{ -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 0); +lean_dec(x_54); +x_56 = lean_ctor_get(x_53, 1); lean_inc(x_56); -lean_dec(x_55); -x_57 = lean_ctor_get(x_54, 1); -lean_inc(x_57); -x_58 = lean_nat_dec_eq(x_57, x_53); -lean_dec(x_57); -if (x_58 == 0) -{ +x_57 = lean_nat_dec_eq(x_56, x_52); lean_dec(x_56); -lean_dec(x_53); +if (x_57 == 0) +{ +lean_dec(x_55); lean_dec(x_52); +lean_dec(x_51); lean_dec(x_1); -return x_54; +return x_53; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_inc(x_53); -x_59 = l_Lean_Parser_ParserState_restore(x_54, x_52, x_53); -lean_dec(x_52); -x_60 = l_Lean_Parser_appPrec; -x_61 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_62 = l_Lean_Parser_checkPrecFn(x_60, x_61, x_1, x_59); -x_63 = lean_ctor_get(x_62, 3); -lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_inc(x_52); +x_58 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); +lean_dec(x_51); +x_59 = l_Lean_Parser_appPrec; +x_60 = l_Lean_Parser_checkPrecFn(x_59, x_1, x_58); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_64 = lean_ctor_get(x_62, 0); -lean_inc(x_64); -x_65 = lean_array_get_size(x_64); -lean_dec(x_64); +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = lean_array_get_size(x_62); +lean_dec(x_62); lean_inc(x_1); -x_66 = l_Lean_Parser_ident___elambda__1(x_1, x_62); -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) +x_64 = l_Lean_Parser_ident___elambda__1(x_1, x_60); +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_68 = lean_ctor_get(x_66, 0); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_66 = lean_ctor_get(x_64, 0); +lean_inc(x_66); +x_67 = lean_array_get_size(x_66); +lean_dec(x_66); +x_68 = lean_ctor_get(x_64, 1); lean_inc(x_68); -x_69 = lean_array_get_size(x_68); -lean_dec(x_68); -x_70 = lean_ctor_get(x_66, 1); -lean_inc(x_70); lean_inc(x_1); -x_71 = l_Lean_Parser_Term_explicitUniv___elambda__1(x_1, x_66); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_70); -lean_dec(x_1); -x_73 = l_Lean_nullKind; -x_74 = l_Lean_Parser_ParserState_mkNode(x_71, x_73, x_69); -x_75 = l_Lean_mkTermIdFromIdent___closed__2; -x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_65); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_56, x_53); -lean_dec(x_53); -return x_77; -} -else -{ -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_72, 0); -lean_inc(x_78); -lean_dec(x_72); -x_79 = lean_ctor_get(x_71, 1); -lean_inc(x_79); -x_80 = lean_nat_dec_eq(x_79, x_70); -lean_dec(x_79); -if (x_80 == 0) -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_78); -lean_dec(x_70); -lean_dec(x_1); -x_81 = l_Lean_nullKind; -x_82 = l_Lean_Parser_ParserState_mkNode(x_71, x_81, x_69); -x_83 = l_Lean_mkTermIdFromIdent___closed__2; -x_84 = l_Lean_Parser_ParserState_mkNode(x_82, x_83, x_65); -x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_56, x_53); -lean_dec(x_53); -return x_85; -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_69 = l_Lean_Parser_Term_explicitUniv___elambda__1(x_1, x_64); +x_70 = lean_ctor_get(x_69, 3); lean_inc(x_70); -x_86 = l_Lean_Parser_ParserState_restore(x_71, x_69, x_70); -x_87 = l_Lean_Parser_Term_namedPattern___elambda__1(x_1, x_86); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_78, x_70); -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) +if (lean_obj_tag(x_70) == 0) { -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -lean_dec(x_70); -x_90 = l_Lean_nullKind; -x_91 = l_Lean_Parser_ParserState_mkNode(x_88, x_90, x_69); -x_92 = l_Lean_mkTermIdFromIdent___closed__2; -x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_65); -x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_56, x_53); -lean_dec(x_53); -return x_94; -} -else -{ -lean_object* x_95; uint8_t x_96; -lean_dec(x_89); -x_95 = lean_ctor_get(x_88, 1); -lean_inc(x_95); -x_96 = lean_nat_dec_eq(x_95, x_70); -lean_dec(x_95); -if (x_96 == 0) -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_70); -x_97 = l_Lean_nullKind; -x_98 = l_Lean_Parser_ParserState_mkNode(x_88, x_97, x_69); -x_99 = l_Lean_mkTermIdFromIdent___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_65); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_56, x_53); -lean_dec(x_53); -return x_101; -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; -x_102 = l_Lean_Parser_ParserState_restore(x_88, x_69, x_70); -x_103 = l_Lean_nullKind; -x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_69); -x_105 = l_Lean_mkTermIdFromIdent___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_65); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_56, x_53); -lean_dec(x_53); -return x_107; -} -} -} -} -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_67); +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_dec(x_68); lean_dec(x_1); -x_108 = l_Lean_mkTermIdFromIdent___closed__2; -x_109 = l_Lean_Parser_ParserState_mkNode(x_66, x_108, x_65); -x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_56, x_53); -lean_dec(x_53); -return x_110; +x_71 = l_Lean_nullKind; +x_72 = l_Lean_Parser_ParserState_mkNode(x_69, x_71, x_67); +x_73 = l_Lean_mkTermIdFromIdent___closed__2; +x_74 = l_Lean_Parser_ParserState_mkNode(x_72, x_73, x_63); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_74, x_55, x_52); +lean_dec(x_52); +return x_75; +} +else +{ +lean_object* x_76; lean_object* x_77; uint8_t x_78; +x_76 = lean_ctor_get(x_70, 0); +lean_inc(x_76); +lean_dec(x_70); +x_77 = lean_ctor_get(x_69, 1); +lean_inc(x_77); +x_78 = lean_nat_dec_eq(x_77, x_68); +lean_dec(x_77); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_76); +lean_dec(x_68); +lean_dec(x_1); +x_79 = l_Lean_nullKind; +x_80 = l_Lean_Parser_ParserState_mkNode(x_69, x_79, x_67); +x_81 = l_Lean_mkTermIdFromIdent___closed__2; +x_82 = l_Lean_Parser_ParserState_mkNode(x_80, x_81, x_63); +x_83 = l_Lean_Parser_mergeOrElseErrors(x_82, x_55, x_52); +lean_dec(x_52); +return x_83; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_inc(x_68); +x_84 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); +x_85 = l_Lean_Parser_Term_namedPattern___elambda__1(x_1, x_84); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_76, x_68); +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_68); +x_88 = l_Lean_nullKind; +x_89 = l_Lean_Parser_ParserState_mkNode(x_86, x_88, x_67); +x_90 = l_Lean_mkTermIdFromIdent___closed__2; +x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_63); +x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_55, x_52); +lean_dec(x_52); +return x_92; +} +else +{ +lean_object* x_93; uint8_t x_94; +lean_dec(x_87); +x_93 = lean_ctor_get(x_86, 1); +lean_inc(x_93); +x_94 = lean_nat_dec_eq(x_93, x_68); +lean_dec(x_93); +if (x_94 == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_68); +x_95 = l_Lean_nullKind; +x_96 = l_Lean_Parser_ParserState_mkNode(x_86, x_95, x_67); +x_97 = l_Lean_mkTermIdFromIdent___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_63); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_55, x_52); +lean_dec(x_52); +return x_99; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_100 = l_Lean_Parser_ParserState_restore(x_86, x_67, x_68); +x_101 = l_Lean_nullKind; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_67); +x_103 = l_Lean_mkTermIdFromIdent___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_63); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_55, x_52); +lean_dec(x_52); +return x_105; +} +} +} } } else { -lean_object* x_111; -lean_dec(x_63); +lean_object* x_106; lean_object* x_107; lean_object* x_108; +lean_dec(x_65); lean_dec(x_1); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_62, x_56, x_53); -lean_dec(x_53); -return x_111; +x_106 = l_Lean_mkTermIdFromIdent___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_64, x_106, x_63); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_55, x_52); +lean_dec(x_52); +return x_108; +} +} +else +{ +lean_object* x_109; +lean_dec(x_61); +lean_dec(x_1); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_60, x_55, x_52); +lean_dec(x_52); +return x_109; } } } @@ -5120,103 +5251,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_numLit___elambda__1(x_1, x_8); -x_13 = l_Lean_Nat_HasQuote___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_numLit___elambda__1(x_1, x_7); +x_12 = l_Lean_Nat_HasQuote___closed__2; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_numLit___elambda__1(x_1, x_26); -x_31 = l_Lean_Nat_HasQuote___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_numLit___elambda__1(x_1, x_24); +x_29 = l_Lean_Nat_HasQuote___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -5330,103 +5459,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_strLit___elambda__1(x_1, x_8); -x_13 = l_Lean_String_HasQuote___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_strLit___elambda__1(x_1, x_7); +x_12 = l_Lean_String_HasQuote___closed__2; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_strLit___elambda__1(x_1, x_26); -x_31 = l_Lean_String_HasQuote___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_strLit___elambda__1(x_1, x_24); +x_29 = l_Lean_String_HasQuote___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -5558,103 +5685,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_charLit___elambda__1(x_1, x_8); -x_13 = l_Lean_Parser_Term_char___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_charLit___elambda__1(x_1, x_7); +x_12 = l_Lean_Parser_Term_char___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_charLit___elambda__1(x_1, x_26); -x_31 = l_Lean_Parser_Term_char___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_charLit___elambda__1(x_1, x_24); +x_29 = l_Lean_Parser_Term_char___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -5835,429 +5960,427 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_52 = lean_ctor_get(x_8, 1); -lean_inc(x_52); -lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_8); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l_Lean_Parser_Term_type___elambda__1___closed__6; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_52); -x_12 = x_61; -goto block_51; -} -else -{ -lean_dec(x_52); -x_12 = x_53; -goto block_51; -} -} -else -{ -lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_52); -x_12 = x_63; -goto block_51; -} -} -else -{ -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_52); -x_12 = x_65; -goto block_51; -} -block_51: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_Term_leadPrec___closed__1; -x_18 = l_Lean_Parser_checkPrecFn(x_17, x_7, x_1, x_12); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_21 = l_Lean_Parser_categoryParser___elambda__1(x_20, x_6, x_1, x_18); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_16); -x_23 = l_Lean_nullKind; -x_24 = l_Lean_Parser_ParserState_mkNode(x_21, x_23, x_15); -x_25 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_11); -return x_26; -} -else -{ -lean_object* x_27; uint8_t x_28; -lean_dec(x_22); -x_27 = lean_ctor_get(x_21, 1); -lean_inc(x_27); -x_28 = lean_nat_dec_eq(x_27, x_16); -lean_dec(x_27); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_16); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_15); -x_31 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_11); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_33 = l_Lean_Parser_ParserState_restore(x_21, x_15, x_16); -x_34 = l_Lean_nullKind; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_15); -x_36 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -} -else -{ -lean_object* x_38; uint8_t x_39; -lean_dec(x_19); -lean_dec(x_1); -x_38 = lean_ctor_get(x_18, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_16); -lean_dec(x_38); -if (x_39 == 0) -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_dec(x_16); -x_40 = l_Lean_nullKind; -x_41 = l_Lean_Parser_ParserState_mkNode(x_18, x_40, x_15); -x_42 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_11); -return x_43; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = l_Lean_Parser_ParserState_restore(x_18, x_15, x_16); -x_45 = l_Lean_nullKind; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_15); -x_47 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_11); -return x_48; -} -} -} -else -{ -lean_object* x_49; lean_object* x_50; -lean_dec(x_13); -lean_dec(x_1); -x_49 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_12, x_49, x_11); -return x_50; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_51 = lean_ctor_get(x_7, 1); +lean_inc(x_51); +lean_inc(x_1); +x_52 = l_Lean_Parser_tokenFn(x_1, x_7); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +lean_inc(x_54); +x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); +lean_dec(x_54); +if (lean_obj_tag(x_55) == 2) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_57 = l_Lean_Parser_Term_type___elambda__1___closed__6; +x_58 = lean_string_dec_eq(x_56, x_57); +lean_dec(x_56); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_Term_type___elambda__1___closed__9; +x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_51); +x_11 = x_60; +goto block_50; +} +else +{ +lean_dec(x_51); +x_11 = x_52; +goto block_50; } } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_66 = lean_ctor_get(x_2, 0); -lean_inc(x_66); -x_67 = lean_array_get_size(x_66); +lean_object* x_61; lean_object* x_62; +lean_dec(x_55); +x_61 = l_Lean_Parser_Term_type___elambda__1___closed__9; +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_51); +x_11 = x_62; +goto block_50; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_53); +x_63 = l_Lean_Parser_Term_type___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_51); +x_11 = x_64; +goto block_50; +} +block_50: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_Term_leadPrec___closed__1; +x_17 = l_Lean_Parser_checkPrecFn(x_16, x_1, x_11); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_20 = l_Lean_Parser_categoryParser___elambda__1(x_19, x_6, x_1, x_17); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_15); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_20, x_22, x_14); +x_24 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +else +{ +lean_object* x_26; uint8_t x_27; +lean_dec(x_21); +x_26 = lean_ctor_get(x_20, 1); +lean_inc(x_26); +x_27 = lean_nat_dec_eq(x_26, x_15); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_15); +x_28 = l_Lean_nullKind; +x_29 = l_Lean_Parser_ParserState_mkNode(x_20, x_28, x_14); +x_30 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = l_Lean_Parser_ParserState_restore(x_20, x_14, x_15); +x_33 = l_Lean_nullKind; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_14); +x_35 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +} +else +{ +lean_object* x_37; uint8_t x_38; +lean_dec(x_18); +lean_dec(x_1); +x_37 = lean_ctor_get(x_17, 1); +lean_inc(x_37); +x_38 = lean_nat_dec_eq(x_37, x_15); +lean_dec(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_15); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_17, x_39, x_14); +x_41 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_10); +return x_42; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = l_Lean_Parser_ParserState_restore(x_17, x_14, x_15); +x_44 = l_Lean_nullKind; +x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_14); +x_46 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_12); +lean_dec(x_1); +x_48 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_11, x_48, x_10); +return x_49; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_65 = lean_ctor_get(x_2, 0); +lean_inc(x_65); +x_66 = lean_array_get_size(x_65); +lean_dec(x_65); +x_67 = lean_ctor_get(x_2, 1); +lean_inc(x_67); +lean_inc(x_1); +x_68 = lean_apply_2(x_4, x_1, x_2); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) +{ +lean_dec(x_67); lean_dec(x_66); -x_68 = lean_ctor_get(x_2, 1); -lean_inc(x_68); -lean_inc(x_1); -x_69 = lean_apply_2(x_4, x_1, x_2); -x_70 = lean_ctor_get(x_69, 3); +lean_dec(x_1); +return x_68; +} +else +{ +lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_70 = lean_ctor_get(x_69, 0); lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_1); -return x_69; -} -else -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 0); +lean_dec(x_69); +x_71 = lean_ctor_get(x_68, 1); lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_69, 1); -lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_68); -lean_dec(x_72); -if (x_73 == 0) -{ +x_72 = lean_nat_dec_eq(x_71, x_67); lean_dec(x_71); -lean_dec(x_68); +if (x_72 == 0) +{ +lean_dec(x_70); lean_dec(x_67); +lean_dec(x_66); lean_dec(x_1); -return x_69; +return x_68; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_inc(x_68); -x_74 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); -lean_dec(x_67); -x_75 = l_Lean_Parser_appPrec; -x_76 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_77 = l_Lean_Parser_checkPrecFn(x_75, x_76, x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_inc(x_67); +x_73 = l_Lean_Parser_ParserState_restore(x_68, x_66, x_67); +lean_dec(x_66); +x_74 = l_Lean_Parser_appPrec; +x_75 = l_Lean_Parser_checkPrecFn(x_74, x_1, x_73); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_79 = lean_ctor_get(x_77, 0); -lean_inc(x_79); -x_80 = lean_array_get_size(x_79); -lean_dec(x_79); -x_127 = lean_ctor_get(x_77, 1); -lean_inc(x_127); +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = lean_array_get_size(x_77); +lean_dec(x_77); +x_125 = lean_ctor_get(x_75, 1); +lean_inc(x_125); lean_inc(x_1); -x_128 = l_Lean_Parser_tokenFn(x_1, x_77); -x_129 = lean_ctor_get(x_128, 3); -lean_inc(x_129); -if (lean_obj_tag(x_129) == 0) +x_126 = l_Lean_Parser_tokenFn(x_1, x_75); +x_127 = lean_ctor_get(x_126, 3); +lean_inc(x_127); +if (lean_obj_tag(x_127) == 0) { -lean_object* x_130; lean_object* x_131; -x_130 = lean_ctor_get(x_128, 0); +lean_object* x_128; lean_object* x_129; +x_128 = lean_ctor_get(x_126, 0); +lean_inc(x_128); +x_129 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_128); +lean_dec(x_128); +if (lean_obj_tag(x_129) == 2) +{ +lean_object* x_130; lean_object* x_131; uint8_t x_132; +x_130 = lean_ctor_get(x_129, 1); lean_inc(x_130); -x_131 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_130); +lean_dec(x_129); +x_131 = l_Lean_Parser_Term_type___elambda__1___closed__6; +x_132 = lean_string_dec_eq(x_130, x_131); lean_dec(x_130); -if (lean_obj_tag(x_131) == 2) +if (x_132 == 0) { -lean_object* x_132; lean_object* x_133; uint8_t x_134; -x_132 = lean_ctor_get(x_131, 1); -lean_inc(x_132); -lean_dec(x_131); -x_133 = l_Lean_Parser_Term_type___elambda__1___closed__6; -x_134 = lean_string_dec_eq(x_132, x_133); -lean_dec(x_132); -if (x_134 == 0) +lean_object* x_133; lean_object* x_134; +x_133 = l_Lean_Parser_Term_type___elambda__1___closed__9; +x_134 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_133, x_125); +x_79 = x_134; +goto block_124; +} +else +{ +lean_dec(x_125); +x_79 = x_126; +goto block_124; +} +} +else { lean_object* x_135; lean_object* x_136; +lean_dec(x_129); x_135 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_135, x_127); -x_81 = x_136; -goto block_126; -} -else -{ -lean_dec(x_127); -x_81 = x_128; -goto block_126; +x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_135, x_125); +x_79 = x_136; +goto block_124; } } else { lean_object* x_137; lean_object* x_138; -lean_dec(x_131); +lean_dec(x_127); x_137 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_137, x_127); -x_81 = x_138; -goto block_126; +x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_137, x_125); +x_79 = x_138; +goto block_124; } -} -else +block_124: { -lean_object* x_139; lean_object* x_140; -lean_dec(x_129); -x_139 = l_Lean_Parser_Term_type___elambda__1___closed__9; -x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_139, x_127); -x_81 = x_140; -goto block_126; -} -block_126: +lean_object* x_80; +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_82; -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_83 = lean_ctor_get(x_81, 0); +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = lean_array_get_size(x_81); +lean_dec(x_81); +x_83 = lean_ctor_get(x_79, 1); lean_inc(x_83); -x_84 = lean_array_get_size(x_83); +x_84 = l_Lean_Parser_Term_leadPrec___closed__1; +x_85 = l_Lean_Parser_checkPrecFn(x_84, x_1, x_79); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_87 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_88 = l_Lean_Parser_categoryParser___elambda__1(x_87, x_74, x_1, x_85); +x_89 = lean_ctor_get(x_88, 3); +lean_inc(x_89); +if (lean_obj_tag(x_89) == 0) +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_dec(x_83); -x_85 = lean_ctor_get(x_81, 1); -lean_inc(x_85); -x_86 = l_Lean_Parser_Term_leadPrec___closed__1; -x_87 = l_Lean_Parser_checkPrecFn(x_86, x_76, x_1, x_81); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_90 = l_Lean_Parser_categoryParser___elambda__1(x_89, x_75, x_1, x_87); -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_85); -x_92 = l_Lean_nullKind; -x_93 = l_Lean_Parser_ParserState_mkNode(x_90, x_92, x_84); -x_94 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_80); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_71, x_68); -lean_dec(x_68); -return x_96; +x_90 = l_Lean_nullKind; +x_91 = l_Lean_Parser_ParserState_mkNode(x_88, x_90, x_82); +x_92 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_78); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_70, x_67); +lean_dec(x_67); +return x_94; } else { -lean_object* x_97; uint8_t x_98; -lean_dec(x_91); -x_97 = lean_ctor_get(x_90, 1); -lean_inc(x_97); -x_98 = lean_nat_dec_eq(x_97, x_85); -lean_dec(x_97); -if (x_98 == 0) +lean_object* x_95; uint8_t x_96; +lean_dec(x_89); +x_95 = lean_ctor_get(x_88, 1); +lean_inc(x_95); +x_96 = lean_nat_dec_eq(x_95, x_83); +lean_dec(x_95); +if (x_96 == 0) { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_85); -x_99 = l_Lean_nullKind; -x_100 = l_Lean_Parser_ParserState_mkNode(x_90, x_99, x_84); -x_101 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_80); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_71, x_68); -lean_dec(x_68); -return x_103; +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_83); +x_97 = l_Lean_nullKind; +x_98 = l_Lean_Parser_ParserState_mkNode(x_88, x_97, x_82); +x_99 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_78); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_70, x_67); +lean_dec(x_67); +return x_101; } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_104 = l_Lean_Parser_ParserState_restore(x_90, x_84, x_85); -x_105 = l_Lean_nullKind; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_84); -x_107 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_80); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_71, x_68); -lean_dec(x_68); -return x_109; +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_102 = l_Lean_Parser_ParserState_restore(x_88, x_82, x_83); +x_103 = l_Lean_nullKind; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_82); +x_105 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_78); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_70, x_67); +lean_dec(x_67); +return x_107; } } } else { -lean_object* x_110; uint8_t x_111; -lean_dec(x_88); +lean_object* x_108; uint8_t x_109; +lean_dec(x_86); lean_dec(x_1); -x_110 = lean_ctor_get(x_87, 1); -lean_inc(x_110); -x_111 = lean_nat_dec_eq(x_110, x_85); -lean_dec(x_110); -if (x_111 == 0) +x_108 = lean_ctor_get(x_85, 1); +lean_inc(x_108); +x_109 = lean_nat_dec_eq(x_108, x_83); +lean_dec(x_108); +if (x_109 == 0) { -lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_85); -x_112 = l_Lean_nullKind; -x_113 = l_Lean_Parser_ParserState_mkNode(x_87, x_112, x_84); -x_114 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_115 = l_Lean_Parser_ParserState_mkNode(x_113, x_114, x_80); -x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_71, x_68); -lean_dec(x_68); -return x_116; +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_83); +x_110 = l_Lean_nullKind; +x_111 = l_Lean_Parser_ParserState_mkNode(x_85, x_110, x_82); +x_112 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_78); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_70, x_67); +lean_dec(x_67); +return x_114; } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_117 = l_Lean_Parser_ParserState_restore(x_87, x_84, x_85); -x_118 = l_Lean_nullKind; -x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_84); -x_120 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_80); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_71, x_68); -lean_dec(x_68); -return x_122; +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_115 = l_Lean_Parser_ParserState_restore(x_85, x_82, x_83); +x_116 = l_Lean_nullKind; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_82); +x_118 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_78); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_70, x_67); +lean_dec(x_67); +return x_120; } } } else { -lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_dec(x_82); +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_80); lean_dec(x_1); -x_123 = l_Lean_Parser_Term_type___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_81, x_123, x_80); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_71, x_68); -lean_dec(x_68); -return x_125; +x_121 = l_Lean_Parser_Term_type___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_79, x_121, x_78); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_70, x_67); +lean_dec(x_67); +return x_123; } } } else { -lean_object* x_141; -lean_dec(x_78); +lean_object* x_139; +lean_dec(x_76); lean_dec(x_1); -x_141 = l_Lean_Parser_mergeOrElseErrors(x_77, x_71, x_68); -lean_dec(x_68); -return x_141; +x_139 = l_Lean_Parser_mergeOrElseErrors(x_75, x_70, x_67); +lean_dec(x_67); +return x_139; } } } @@ -6476,429 +6599,427 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_52 = lean_ctor_get(x_8, 1); -lean_inc(x_52); -lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_8); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l_Lean_Parser_Term_sort___elambda__1___closed__6; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_52); -x_12 = x_61; -goto block_51; -} -else -{ -lean_dec(x_52); -x_12 = x_53; -goto block_51; -} -} -else -{ -lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_52); -x_12 = x_63; -goto block_51; -} -} -else -{ -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_52); -x_12 = x_65; -goto block_51; -} -block_51: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_Term_leadPrec___closed__1; -x_18 = l_Lean_Parser_checkPrecFn(x_17, x_7, x_1, x_12); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_21 = l_Lean_Parser_categoryParser___elambda__1(x_20, x_6, x_1, x_18); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_16); -x_23 = l_Lean_nullKind; -x_24 = l_Lean_Parser_ParserState_mkNode(x_21, x_23, x_15); -x_25 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_11); -return x_26; -} -else -{ -lean_object* x_27; uint8_t x_28; -lean_dec(x_22); -x_27 = lean_ctor_get(x_21, 1); -lean_inc(x_27); -x_28 = lean_nat_dec_eq(x_27, x_16); -lean_dec(x_27); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_16); -x_29 = l_Lean_nullKind; -x_30 = l_Lean_Parser_ParserState_mkNode(x_21, x_29, x_15); -x_31 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_11); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_33 = l_Lean_Parser_ParserState_restore(x_21, x_15, x_16); -x_34 = l_Lean_nullKind; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_15); -x_36 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -} -else -{ -lean_object* x_38; uint8_t x_39; -lean_dec(x_19); -lean_dec(x_1); -x_38 = lean_ctor_get(x_18, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_16); -lean_dec(x_38); -if (x_39 == 0) -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_dec(x_16); -x_40 = l_Lean_nullKind; -x_41 = l_Lean_Parser_ParserState_mkNode(x_18, x_40, x_15); -x_42 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_11); -return x_43; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = l_Lean_Parser_ParserState_restore(x_18, x_15, x_16); -x_45 = l_Lean_nullKind; -x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_15); -x_47 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_11); -return x_48; -} -} -} -else -{ -lean_object* x_49; lean_object* x_50; -lean_dec(x_13); -lean_dec(x_1); -x_49 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_12, x_49, x_11); -return x_50; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_51 = lean_ctor_get(x_7, 1); +lean_inc(x_51); +lean_inc(x_1); +x_52 = l_Lean_Parser_tokenFn(x_1, x_7); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +lean_inc(x_54); +x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); +lean_dec(x_54); +if (lean_obj_tag(x_55) == 2) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_57 = l_Lean_Parser_Term_sort___elambda__1___closed__6; +x_58 = lean_string_dec_eq(x_56, x_57); +lean_dec(x_56); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_Term_sort___elambda__1___closed__9; +x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_51); +x_11 = x_60; +goto block_50; +} +else +{ +lean_dec(x_51); +x_11 = x_52; +goto block_50; } } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_66 = lean_ctor_get(x_2, 0); -lean_inc(x_66); -x_67 = lean_array_get_size(x_66); +lean_object* x_61; lean_object* x_62; +lean_dec(x_55); +x_61 = l_Lean_Parser_Term_sort___elambda__1___closed__9; +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_51); +x_11 = x_62; +goto block_50; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_53); +x_63 = l_Lean_Parser_Term_sort___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_51); +x_11 = x_64; +goto block_50; +} +block_50: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_Term_leadPrec___closed__1; +x_17 = l_Lean_Parser_checkPrecFn(x_16, x_1, x_11); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_20 = l_Lean_Parser_categoryParser___elambda__1(x_19, x_6, x_1, x_17); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_15); +x_22 = l_Lean_nullKind; +x_23 = l_Lean_Parser_ParserState_mkNode(x_20, x_22, x_14); +x_24 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_10); +return x_25; +} +else +{ +lean_object* x_26; uint8_t x_27; +lean_dec(x_21); +x_26 = lean_ctor_get(x_20, 1); +lean_inc(x_26); +x_27 = lean_nat_dec_eq(x_26, x_15); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_15); +x_28 = l_Lean_nullKind; +x_29 = l_Lean_Parser_ParserState_mkNode(x_20, x_28, x_14); +x_30 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = l_Lean_Parser_ParserState_restore(x_20, x_14, x_15); +x_33 = l_Lean_nullKind; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_14); +x_35 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +} +else +{ +lean_object* x_37; uint8_t x_38; +lean_dec(x_18); +lean_dec(x_1); +x_37 = lean_ctor_get(x_17, 1); +lean_inc(x_37); +x_38 = lean_nat_dec_eq(x_37, x_15); +lean_dec(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_15); +x_39 = l_Lean_nullKind; +x_40 = l_Lean_Parser_ParserState_mkNode(x_17, x_39, x_14); +x_41 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_10); +return x_42; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = l_Lean_Parser_ParserState_restore(x_17, x_14, x_15); +x_44 = l_Lean_nullKind; +x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_14); +x_46 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_10); +return x_47; +} +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_12); +lean_dec(x_1); +x_48 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_11, x_48, x_10); +return x_49; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_65 = lean_ctor_get(x_2, 0); +lean_inc(x_65); +x_66 = lean_array_get_size(x_65); +lean_dec(x_65); +x_67 = lean_ctor_get(x_2, 1); +lean_inc(x_67); +lean_inc(x_1); +x_68 = lean_apply_2(x_4, x_1, x_2); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) +{ +lean_dec(x_67); lean_dec(x_66); -x_68 = lean_ctor_get(x_2, 1); -lean_inc(x_68); -lean_inc(x_1); -x_69 = lean_apply_2(x_4, x_1, x_2); -x_70 = lean_ctor_get(x_69, 3); +lean_dec(x_1); +return x_68; +} +else +{ +lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_70 = lean_ctor_get(x_69, 0); lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_1); -return x_69; -} -else -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 0); +lean_dec(x_69); +x_71 = lean_ctor_get(x_68, 1); lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_69, 1); -lean_inc(x_72); -x_73 = lean_nat_dec_eq(x_72, x_68); -lean_dec(x_72); -if (x_73 == 0) -{ +x_72 = lean_nat_dec_eq(x_71, x_67); lean_dec(x_71); -lean_dec(x_68); +if (x_72 == 0) +{ +lean_dec(x_70); lean_dec(x_67); +lean_dec(x_66); lean_dec(x_1); -return x_69; +return x_68; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_inc(x_68); -x_74 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); -lean_dec(x_67); -x_75 = l_Lean_Parser_appPrec; -x_76 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_77 = l_Lean_Parser_checkPrecFn(x_75, x_76, x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_inc(x_67); +x_73 = l_Lean_Parser_ParserState_restore(x_68, x_66, x_67); +lean_dec(x_66); +x_74 = l_Lean_Parser_appPrec; +x_75 = l_Lean_Parser_checkPrecFn(x_74, x_1, x_73); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_79 = lean_ctor_get(x_77, 0); -lean_inc(x_79); -x_80 = lean_array_get_size(x_79); -lean_dec(x_79); -x_127 = lean_ctor_get(x_77, 1); -lean_inc(x_127); +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = lean_array_get_size(x_77); +lean_dec(x_77); +x_125 = lean_ctor_get(x_75, 1); +lean_inc(x_125); lean_inc(x_1); -x_128 = l_Lean_Parser_tokenFn(x_1, x_77); -x_129 = lean_ctor_get(x_128, 3); -lean_inc(x_129); -if (lean_obj_tag(x_129) == 0) +x_126 = l_Lean_Parser_tokenFn(x_1, x_75); +x_127 = lean_ctor_get(x_126, 3); +lean_inc(x_127); +if (lean_obj_tag(x_127) == 0) { -lean_object* x_130; lean_object* x_131; -x_130 = lean_ctor_get(x_128, 0); +lean_object* x_128; lean_object* x_129; +x_128 = lean_ctor_get(x_126, 0); +lean_inc(x_128); +x_129 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_128); +lean_dec(x_128); +if (lean_obj_tag(x_129) == 2) +{ +lean_object* x_130; lean_object* x_131; uint8_t x_132; +x_130 = lean_ctor_get(x_129, 1); lean_inc(x_130); -x_131 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_130); +lean_dec(x_129); +x_131 = l_Lean_Parser_Term_sort___elambda__1___closed__6; +x_132 = lean_string_dec_eq(x_130, x_131); lean_dec(x_130); -if (lean_obj_tag(x_131) == 2) +if (x_132 == 0) { -lean_object* x_132; lean_object* x_133; uint8_t x_134; -x_132 = lean_ctor_get(x_131, 1); -lean_inc(x_132); -lean_dec(x_131); -x_133 = l_Lean_Parser_Term_sort___elambda__1___closed__6; -x_134 = lean_string_dec_eq(x_132, x_133); -lean_dec(x_132); -if (x_134 == 0) +lean_object* x_133; lean_object* x_134; +x_133 = l_Lean_Parser_Term_sort___elambda__1___closed__9; +x_134 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_133, x_125); +x_79 = x_134; +goto block_124; +} +else +{ +lean_dec(x_125); +x_79 = x_126; +goto block_124; +} +} +else { lean_object* x_135; lean_object* x_136; +lean_dec(x_129); x_135 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_135, x_127); -x_81 = x_136; -goto block_126; -} -else -{ -lean_dec(x_127); -x_81 = x_128; -goto block_126; +x_136 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_135, x_125); +x_79 = x_136; +goto block_124; } } else { lean_object* x_137; lean_object* x_138; -lean_dec(x_131); +lean_dec(x_127); x_137 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_137, x_127); -x_81 = x_138; -goto block_126; +x_138 = l_Lean_Parser_ParserState_mkErrorsAt(x_126, x_137, x_125); +x_79 = x_138; +goto block_124; } -} -else +block_124: { -lean_object* x_139; lean_object* x_140; -lean_dec(x_129); -x_139 = l_Lean_Parser_Term_sort___elambda__1___closed__9; -x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_128, x_139, x_127); -x_81 = x_140; -goto block_126; -} -block_126: +lean_object* x_80; +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_82; -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_83 = lean_ctor_get(x_81, 0); +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = lean_array_get_size(x_81); +lean_dec(x_81); +x_83 = lean_ctor_get(x_79, 1); lean_inc(x_83); -x_84 = lean_array_get_size(x_83); +x_84 = l_Lean_Parser_Term_leadPrec___closed__1; +x_85 = l_Lean_Parser_checkPrecFn(x_84, x_1, x_79); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_87 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_88 = l_Lean_Parser_categoryParser___elambda__1(x_87, x_74, x_1, x_85); +x_89 = lean_ctor_get(x_88, 3); +lean_inc(x_89); +if (lean_obj_tag(x_89) == 0) +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_dec(x_83); -x_85 = lean_ctor_get(x_81, 1); -lean_inc(x_85); -x_86 = l_Lean_Parser_Term_leadPrec___closed__1; -x_87 = l_Lean_Parser_checkPrecFn(x_86, x_76, x_1, x_81); -x_88 = lean_ctor_get(x_87, 3); -lean_inc(x_88); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_90 = l_Lean_Parser_categoryParser___elambda__1(x_89, x_75, x_1, x_87); -x_91 = lean_ctor_get(x_90, 3); -lean_inc(x_91); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_85); -x_92 = l_Lean_nullKind; -x_93 = l_Lean_Parser_ParserState_mkNode(x_90, x_92, x_84); -x_94 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_80); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_71, x_68); -lean_dec(x_68); -return x_96; +x_90 = l_Lean_nullKind; +x_91 = l_Lean_Parser_ParserState_mkNode(x_88, x_90, x_82); +x_92 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_78); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_70, x_67); +lean_dec(x_67); +return x_94; } else { -lean_object* x_97; uint8_t x_98; -lean_dec(x_91); -x_97 = lean_ctor_get(x_90, 1); -lean_inc(x_97); -x_98 = lean_nat_dec_eq(x_97, x_85); -lean_dec(x_97); -if (x_98 == 0) +lean_object* x_95; uint8_t x_96; +lean_dec(x_89); +x_95 = lean_ctor_get(x_88, 1); +lean_inc(x_95); +x_96 = lean_nat_dec_eq(x_95, x_83); +lean_dec(x_95); +if (x_96 == 0) { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_85); -x_99 = l_Lean_nullKind; -x_100 = l_Lean_Parser_ParserState_mkNode(x_90, x_99, x_84); -x_101 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_80); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_71, x_68); -lean_dec(x_68); -return x_103; +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_83); +x_97 = l_Lean_nullKind; +x_98 = l_Lean_Parser_ParserState_mkNode(x_88, x_97, x_82); +x_99 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_78); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_70, x_67); +lean_dec(x_67); +return x_101; } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_104 = l_Lean_Parser_ParserState_restore(x_90, x_84, x_85); -x_105 = l_Lean_nullKind; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_84); -x_107 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_80); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_71, x_68); -lean_dec(x_68); -return x_109; +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_102 = l_Lean_Parser_ParserState_restore(x_88, x_82, x_83); +x_103 = l_Lean_nullKind; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_82); +x_105 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_78); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_70, x_67); +lean_dec(x_67); +return x_107; } } } else { -lean_object* x_110; uint8_t x_111; -lean_dec(x_88); +lean_object* x_108; uint8_t x_109; +lean_dec(x_86); lean_dec(x_1); -x_110 = lean_ctor_get(x_87, 1); -lean_inc(x_110); -x_111 = lean_nat_dec_eq(x_110, x_85); -lean_dec(x_110); -if (x_111 == 0) +x_108 = lean_ctor_get(x_85, 1); +lean_inc(x_108); +x_109 = lean_nat_dec_eq(x_108, x_83); +lean_dec(x_108); +if (x_109 == 0) { -lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_85); -x_112 = l_Lean_nullKind; -x_113 = l_Lean_Parser_ParserState_mkNode(x_87, x_112, x_84); -x_114 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_115 = l_Lean_Parser_ParserState_mkNode(x_113, x_114, x_80); -x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_71, x_68); -lean_dec(x_68); -return x_116; +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_83); +x_110 = l_Lean_nullKind; +x_111 = l_Lean_Parser_ParserState_mkNode(x_85, x_110, x_82); +x_112 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_78); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_70, x_67); +lean_dec(x_67); +return x_114; } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_117 = l_Lean_Parser_ParserState_restore(x_87, x_84, x_85); -x_118 = l_Lean_nullKind; -x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_84); -x_120 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_80); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_71, x_68); -lean_dec(x_68); -return x_122; +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_115 = l_Lean_Parser_ParserState_restore(x_85, x_82, x_83); +x_116 = l_Lean_nullKind; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_82); +x_118 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_78); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_70, x_67); +lean_dec(x_67); +return x_120; } } } else { -lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_dec(x_82); +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_80); lean_dec(x_1); -x_123 = l_Lean_Parser_Term_sort___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_81, x_123, x_80); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_71, x_68); -lean_dec(x_68); -return x_125; +x_121 = l_Lean_Parser_Term_sort___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_79, x_121, x_78); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_70, x_67); +lean_dec(x_67); +return x_123; } } } else { -lean_object* x_141; -lean_dec(x_78); +lean_object* x_139; +lean_dec(x_76); lean_dec(x_1); -x_141 = l_Lean_Parser_mergeOrElseErrors(x_77, x_71, x_68); -lean_dec(x_68); -return x_141; +x_139 = l_Lean_Parser_mergeOrElseErrors(x_75, x_70, x_67); +lean_dec(x_67); +return x_139; } } } @@ -7096,221 +7217,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_prop___elambda__1___closed__6; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Term_prop___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Term_prop___elambda__1___closed__6; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Term_prop___elambda__1___closed__9; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_Parser_Term_prop___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Term_prop___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Term_prop___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Term_prop___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -7431,221 +7550,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Level_hole___elambda__1___closed__4; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_mkHole___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_mkHole___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_mkHole___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_mkHole___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Level_hole___elambda__1___closed__4; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_mkHole___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_mkHole___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_mkHole___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_mkHole___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Level_hole___elambda__1___closed__4; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_mkHole___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_mkHole___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_mkHole___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Level_hole___elambda__1___closed__7; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_mkHole___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Level_hole___elambda__1___closed__4; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_mkHole___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_mkHole___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_mkHole___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Level_hole___elambda__1___closed__7; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_mkHole___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -7816,255 +7933,253 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_20 = lean_ctor_get(x_8, 1); -lean_inc(x_20); -lean_inc(x_1); -x_21 = l_Lean_Parser_tokenFn(x_1, x_8); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); -x_12 = x_29; -goto block_19; -} -else -{ -lean_dec(x_20); -x_12 = x_21; -goto block_19; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); -x_12 = x_31; -goto block_19; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_22); -x_32 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); -x_12 = x_33; -goto block_19; -} -block_19: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_ident___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_11); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_11); -return x_18; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); +lean_inc(x_1); +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; +} +else +{ +lean_dec(x_19); +x_11 = x_20; +goto block_18; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_ident___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); -lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_59 = lean_ctor_get(x_45, 1); -lean_inc(x_59); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_45); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; +x_64 = lean_string_dec_eq(x_62, x_63); lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) +if (x_64 == 0) { -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Term_namedHole___elambda__1___closed__5; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; +} +} +else { lean_object* x_67; lean_object* x_68; +lean_dec(x_61); x_67 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); -x_49 = x_68; -goto block_58; -} -else -{ -lean_dec(x_59); -x_49 = x_60; -goto block_58; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } } else { lean_object* x_69; lean_object* x_70; -lean_dec(x_63); +lean_dec(x_59); x_69 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); -x_49 = x_70; -goto block_58; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; } +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_ident___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; } else { -lean_object* x_71; lean_object* x_72; -lean_dec(x_61); -x_71 = l_Lean_Parser_Term_namedHole___elambda__1___closed__8; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); -x_49 = x_72; -goto block_58; -} -block_58: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = l_Lean_Parser_ident___elambda__1(x_1, x_49); -x_52 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; -x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_48); -x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_39, x_36); -lean_dec(x_36); -return x_54; -} -else -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_50); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_55 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; -x_56 = l_Lean_Parser_ParserState_mkNode(x_49, x_55, x_48); -x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_39, x_36); -lean_dec(x_36); -return x_57; +x_53 = l_Lean_Parser_Term_namedHole___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } else { -lean_object* x_73; -lean_dec(x_46); +lean_object* x_71; +lean_dec(x_44); lean_dec(x_1); -x_73 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_73; +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; } } } @@ -8256,221 +8371,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_sorry___elambda__1___closed__5; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Term_sorry___elambda__1___closed__5; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Term_sorry___elambda__1___closed__5; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Term_sorry___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Term_sorry___elambda__1___closed__8; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Term_sorry___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -8658,221 +8771,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_cdot___elambda__1___closed__6; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Term_cdot___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Term_cdot___elambda__1___closed__6; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Term_cdot___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Term_cdot___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Term_cdot___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -9060,221 +9171,219 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_8, 1); -lean_inc(x_12); -x_13 = l_Lean_Parser_tokenFn(x_1, x_8); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); -lean_dec(x_15); -if (lean_obj_tag(x_16) == 2) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = l_Lean_Parser_Term_emptyC___elambda__1___closed__6; -x_19 = lean_string_dec_eq(x_17, x_18); -lean_dec(x_17); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); -x_22 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_12); -x_24 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_11); -return x_25; -} -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_26 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); -x_28 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_14); -x_30 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); -x_32 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +x_12 = l_Lean_Parser_tokenFn(x_1, x_7); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_14); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 2) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Parser_Term_emptyC___elambda__1___closed__6; +x_18 = lean_string_dec_eq(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_20 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_19, x_11); +x_21 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +x_23 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_10); +return x_24; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); -lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_25 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_25, x_11); +x_27 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_13); +x_29 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_29, x_11); +x_31 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_appPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_appPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_49 = lean_ctor_get(x_45, 1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_43); +x_49 = lean_ctor_get(x_48, 3); lean_inc(x_49); -x_50 = l_Lean_Parser_tokenFn(x_1, x_45); -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) +if (lean_obj_tag(x_49) == 0) { -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); -x_53 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_52); -lean_dec(x_52); -if (lean_obj_tag(x_53) == 2) -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Parser_Term_emptyC___elambda__1___closed__6; -x_56 = lean_string_dec_eq(x_54, x_55); -lean_dec(x_54); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_57, x_49); -x_59 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_48); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_39, x_36); -lean_dec(x_36); -return x_61; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_49); -x_62 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_50, x_62, x_48); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_39, x_36); -lean_dec(x_36); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -x_65 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_65, x_49); -x_67 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_48); -x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); -lean_dec(x_36); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_dec(x_51); -x_70 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; -x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_50, x_70, x_49); -x_72 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_48); -x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_39, x_36); -lean_dec(x_36); -return x_74; +x_53 = l_Lean_Parser_Term_emptyC___elambda__1___closed__6; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_57 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_46); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_38, x_35); +lean_dec(x_35); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_60 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_48, x_60, x_46); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_38, x_35); +lean_dec(x_35); +return x_62; } } else { -lean_object* x_75; -lean_dec(x_46); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_51); +x_63 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_63, x_47); +x_65 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_46); +x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_38, x_35); +lean_dec(x_35); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +x_68 = l_Lean_Parser_Term_emptyC___elambda__1___closed__9; +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_68, x_47); +x_70 = l_Lean_Parser_Term_emptyC___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_69, x_70, x_46); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_38, x_35); +lean_dec(x_35); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_44); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_73; } } } @@ -9454,228 +9563,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -9714,16 +9854,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_typeAscription___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_typeAscription___closed__3; +x_3 = l_Lean_Parser_Term_typeAscription___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__5() { +lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__6() { _start: { lean_object* x_1; @@ -9731,12 +9881,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_typeAscription___elambda__1) return x_1; } } -lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__6() { +lean_object* _init_l_Lean_Parser_Term_typeAscription___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_typeAscription___closed__4; -x_2 = l_Lean_Parser_Term_typeAscription___closed__5; +x_1 = l_Lean_Parser_Term_typeAscription___closed__5; +x_2 = l_Lean_Parser_Term_typeAscription___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -9747,7 +9897,7 @@ lean_object* _init_l_Lean_Parser_Term_typeAscription() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_typeAscription___closed__6; +x_1 = l_Lean_Parser_Term_typeAscription___closed__7; return x_1; } } @@ -10028,226 +10178,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); -lean_inc(x_1); -x_18 = l_Lean_Parser_tokenFn(x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_8 = x_26; -goto block_16; -} -else -{ -lean_dec(x_17); -x_8 = x_18; -goto block_16; -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_21); -x_27 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_27, x_17); -x_8 = x_28; -goto block_16; -} -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_19); -x_29 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_29, x_17); -x_8 = x_30; -goto block_16; -} -block_16: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -uint8_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = 0; -x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_10, x_10, x_1, x_8); -x_12 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; -x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_7); -return x_13; -} -else -{ -lean_object* x_14; lean_object* x_15; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_14 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; -x_15 = l_Lean_Parser_ParserState_mkNode(x_8, x_14, x_7); -return x_15; -} -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_2, 0); -lean_inc(x_31); -x_32 = lean_array_get_size(x_31); -lean_dec(x_31); -x_33 = lean_ctor_get(x_2, 1); -lean_inc(x_33); +x_20 = lean_ctor_get(x_7, 1); +lean_inc(x_20); lean_inc(x_1); -x_34 = lean_apply_2(x_4, x_1, x_2); -x_35 = lean_ctor_get(x_34, 3); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +x_21 = l_Lean_Parser_tokenFn(x_1, x_7); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) { -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_1); -return x_34; +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); +lean_dec(x_23); +if (lean_obj_tag(x_24) == 2) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_24, 1); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; +x_27 = lean_string_dec_eq(x_25, x_26); +lean_dec(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; +x_28 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); +x_11 = x_29; +goto block_19; } else { -lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_36 = lean_ctor_get(x_35, 0); +lean_dec(x_20); +x_11 = x_21; +goto block_19; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_24); +x_30 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); +x_11 = x_31; +goto block_19; +} +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_22); +x_32 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); +x_11 = x_33; +goto block_19; +} +block_19: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = 0; +x_14 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_13, x_13, x_1, x_11); +x_15 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; +x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_10); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_12); +lean_dec(x_1); +x_17 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkNode(x_11, x_17, x_10); +return x_18; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_2, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_2, 1); lean_inc(x_36); -lean_dec(x_35); -x_37 = lean_ctor_get(x_34, 1); -lean_inc(x_37); -x_38 = lean_nat_dec_eq(x_37, x_33); -lean_dec(x_37); -if (x_38 == 0) +lean_inc(x_1); +x_37 = lean_apply_2(x_4, x_1, x_2); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) { lean_dec(x_36); -lean_dec(x_33); -lean_dec(x_32); +lean_dec(x_35); lean_dec(x_1); -return x_34; +return x_37; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_53; lean_object* x_54; -lean_inc(x_33); -x_39 = l_Lean_Parser_ParserState_restore(x_34, x_32, x_33); -lean_dec(x_32); -x_40 = lean_ctor_get(x_39, 0); +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +lean_dec(x_38); +x_40 = lean_ctor_get(x_37, 1); lean_inc(x_40); -x_41 = lean_array_get_size(x_40); +x_41 = lean_nat_dec_eq(x_40, x_36); lean_dec(x_40); +if (x_41 == 0) +{ +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_1); +return x_37; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_inc(x_36); +x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); +lean_dec(x_35); +x_43 = lean_unsigned_to_nat(1024u); +x_44 = l_Lean_Parser_checkPrecFn(x_43, x_1, x_42); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_array_get_size(x_46); +lean_dec(x_46); +x_59 = lean_ctor_get(x_44, 1); +lean_inc(x_59); lean_inc(x_1); -x_53 = l_Lean_Parser_tokenFn(x_1, x_39); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -x_56 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_55); -lean_dec(x_55); -if (lean_obj_tag(x_56) == 2) -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; -x_59 = lean_string_dec_eq(x_57, x_58); -lean_dec(x_57); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -x_60 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -lean_inc(x_33); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_60, x_33); -x_42 = x_61; -goto block_52; -} -else -{ -x_42 = x_53; -goto block_52; -} -} -else +x_60 = l_Lean_Parser_tokenFn(x_1, x_44); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { lean_object* x_62; lean_object* x_63; -lean_dec(x_56); -x_62 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -lean_inc(x_33); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_62, x_33); -x_42 = x_63; -goto block_52; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_62); +if (lean_obj_tag(x_63) == 2) +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; +x_66 = lean_string_dec_eq(x_64, x_65); +lean_dec(x_64); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; +x_67 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); +x_48 = x_68; +goto block_58; +} +else +{ +lean_dec(x_59); +x_48 = x_60; +goto block_58; } } else { -lean_object* x_64; lean_object* x_65; -lean_dec(x_54); -x_64 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -lean_inc(x_33); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_53, x_64, x_33); -x_42 = x_65; -goto block_52; +lean_object* x_69; lean_object* x_70; +lean_dec(x_63); +x_69 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); +x_48 = x_70; +goto block_58; } -block_52: -{ -lean_object* x_43; -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) -{ -uint8_t x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = 0; -x_45 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_44, x_44, x_1, x_42); -x_46 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_41); -x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_36, x_33); -lean_dec(x_33); -return x_48; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_43); +lean_object* x_71; lean_object* x_72; +lean_dec(x_61); +x_71 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); +x_48 = x_72; +goto block_58; +} +block_58: +{ +lean_object* x_49; +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +uint8_t x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = 0; +x_51 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_50, x_50, x_1, x_48); +x_52 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_47); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_39, x_36); +lean_dec(x_36); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_49); lean_dec(x_1); -x_49 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_42, x_49, x_41); -x_51 = l_Lean_Parser_mergeOrElseErrors(x_50, x_36, x_33); -lean_dec(x_33); -return x_51; +x_55 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_48, x_55, x_47); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_39, x_36); +lean_dec(x_36); +return x_57; } } } +else +{ +lean_object* x_73; +lean_dec(x_45); +lean_dec(x_1); +x_73 = l_Lean_Parser_mergeOrElseErrors(x_44, x_39, x_36); +lean_dec(x_36); +return x_73; +} +} } } } @@ -10287,16 +10468,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_tupleTail___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_tupleTail___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_tupleTail___closed__3; +x_3 = l_Lean_Parser_Term_tupleTail___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__5() { +lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__6() { _start: { lean_object* x_1; @@ -10304,12 +10495,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_tupleTail___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__6() { +lean_object* _init_l_Lean_Parser_Term_tupleTail___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_tupleTail___closed__4; -x_2 = l_Lean_Parser_Term_tupleTail___closed__5; +x_1 = l_Lean_Parser_Term_tupleTail___closed__5; +x_2 = l_Lean_Parser_Term_tupleTail___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10320,7 +10511,7 @@ lean_object* _init_l_Lean_Parser_Term_tupleTail() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_tupleTail___closed__6; +x_1 = l_Lean_Parser_Term_tupleTail___closed__7; return x_1; } } @@ -10533,579 +10724,577 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_39; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_69 = lean_ctor_get(x_8, 1); -lean_inc(x_69); -lean_inc(x_1); -x_70 = l_Lean_Parser_tokenFn(x_1, x_8); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; lean_object* x_73; -x_72 = lean_ctor_get(x_70, 0); -lean_inc(x_72); -x_73 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_72); -lean_dec(x_72); -if (lean_obj_tag(x_73) == 2) -{ -lean_object* x_74; lean_object* x_75; uint8_t x_76; -x_74 = lean_ctor_get(x_73, 1); -lean_inc(x_74); -lean_dec(x_73); -x_75 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_76 = lean_string_dec_eq(x_74, x_75); -lean_dec(x_74); -if (x_76 == 0) -{ -lean_object* x_77; lean_object* x_78; -x_77 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_77, x_69); -x_39 = x_78; -goto block_68; -} -else -{ -lean_dec(x_69); -x_39 = x_70; -goto block_68; -} -} -else -{ -lean_object* x_79; lean_object* x_80; -lean_dec(x_73); -x_79 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_79, x_69); -x_39 = x_80; -goto block_68; -} -} -else -{ -lean_object* x_81; lean_object* x_82; -lean_dec(x_71); -x_81 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_81, x_69); -x_39 = x_82; -goto block_68; -} -block_38: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_11); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_16); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_13); -lean_dec(x_1); -x_36 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_11); -return x_37; -} -} -block_68: -{ -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); -x_43 = lean_ctor_get(x_39, 1); -lean_inc(x_43); -x_44 = l_Lean_Parser_termParser___closed__2; -x_45 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_46 = l_Lean_Parser_categoryParser___elambda__1(x_44, x_45, x_1, x_39); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; -lean_inc(x_1); -x_48 = l_Lean_Parser_Term_parenSpecial___elambda__1(x_1, x_46); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -if (lean_obj_tag(x_49) == 0) -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_43); -x_50 = l_Lean_nullKind; -x_51 = l_Lean_Parser_ParserState_mkNode(x_48, x_50, x_42); -x_12 = x_51; -goto block_38; -} -else -{ -lean_object* x_52; uint8_t x_53; -lean_dec(x_49); -x_52 = lean_ctor_get(x_48, 1); -lean_inc(x_52); -x_53 = lean_nat_dec_eq(x_52, x_43); -lean_dec(x_52); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_43); -x_54 = l_Lean_nullKind; -x_55 = l_Lean_Parser_ParserState_mkNode(x_48, x_54, x_42); -x_12 = x_55; -goto block_38; -} -else -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_56 = l_Lean_Parser_ParserState_restore(x_48, x_42, x_43); -x_57 = l_Lean_nullKind; -x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_42); -x_12 = x_58; -goto block_38; -} -} -} -else -{ -lean_object* x_59; uint8_t x_60; -lean_dec(x_47); -x_59 = lean_ctor_get(x_46, 1); -lean_inc(x_59); -x_60 = lean_nat_dec_eq(x_59, x_43); -lean_dec(x_59); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_43); -x_61 = l_Lean_nullKind; -x_62 = l_Lean_Parser_ParserState_mkNode(x_46, x_61, x_42); -x_12 = x_62; -goto block_38; -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = l_Lean_Parser_ParserState_restore(x_46, x_42, x_43); -x_64 = l_Lean_nullKind; -x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_42); -x_12 = x_65; -goto block_38; -} -} -} -else -{ -lean_object* x_66; lean_object* x_67; -lean_dec(x_40); -lean_dec(x_1); -x_66 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_67 = l_Lean_Parser_ParserState_mkNode(x_39, x_66, x_11); -return x_67; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_68 = lean_ctor_get(x_7, 1); +lean_inc(x_68); +lean_inc(x_1); +x_69 = l_Lean_Parser_tokenFn(x_1, x_7); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); +lean_dec(x_71); +if (lean_obj_tag(x_72) == 2) +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_74 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_75 = lean_string_dec_eq(x_73, x_74); +lean_dec(x_73); +if (x_75 == 0) +{ +lean_object* x_76; lean_object* x_77; +x_76 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_68); +x_38 = x_77; +goto block_67; +} +else +{ +lean_dec(x_68); +x_38 = x_69; +goto block_67; } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_83 = lean_ctor_get(x_2, 0); -lean_inc(x_83); -x_84 = lean_array_get_size(x_83); +lean_object* x_78; lean_object* x_79; +lean_dec(x_72); +x_78 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_68); +x_38 = x_79; +goto block_67; +} +} +else +{ +lean_object* x_80; lean_object* x_81; +lean_dec(x_70); +x_80 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_68); +x_38 = x_81; +goto block_67; +} +block_37: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_12); +lean_dec(x_1); +x_35 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; +} +} +block_67: +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +x_42 = lean_ctor_get(x_38, 1); +lean_inc(x_42); +x_43 = l_Lean_Parser_termParser___closed__2; +x_44 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_45 = l_Lean_Parser_categoryParser___elambda__1(x_43, x_44, x_1, x_38); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_inc(x_1); +x_47 = l_Lean_Parser_Term_parenSpecial___elambda__1(x_1, x_45); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_42); +x_49 = l_Lean_nullKind; +x_50 = l_Lean_Parser_ParserState_mkNode(x_47, x_49, x_41); +x_11 = x_50; +goto block_37; +} +else +{ +lean_object* x_51; uint8_t x_52; +lean_dec(x_48); +x_51 = lean_ctor_get(x_47, 1); +lean_inc(x_51); +x_52 = lean_nat_dec_eq(x_51, x_42); +lean_dec(x_51); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_42); +x_53 = l_Lean_nullKind; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_41); +x_11 = x_54; +goto block_37; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = l_Lean_Parser_ParserState_restore(x_47, x_41, x_42); +x_56 = l_Lean_nullKind; +x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_41); +x_11 = x_57; +goto block_37; +} +} +} +else +{ +lean_object* x_58; uint8_t x_59; +lean_dec(x_46); +x_58 = lean_ctor_get(x_45, 1); +lean_inc(x_58); +x_59 = lean_nat_dec_eq(x_58, x_42); +lean_dec(x_58); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; +lean_dec(x_42); +x_60 = l_Lean_nullKind; +x_61 = l_Lean_Parser_ParserState_mkNode(x_45, x_60, x_41); +x_11 = x_61; +goto block_37; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = l_Lean_Parser_ParserState_restore(x_45, x_41, x_42); +x_63 = l_Lean_nullKind; +x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_41); +x_11 = x_64; +goto block_37; +} +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_39); +lean_dec(x_1); +x_65 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_66 = l_Lean_Parser_ParserState_mkNode(x_38, x_65, x_10); +return x_66; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = lean_ctor_get(x_2, 0); +lean_inc(x_82); +x_83 = lean_array_get_size(x_82); +lean_dec(x_82); +x_84 = lean_ctor_get(x_2, 1); +lean_inc(x_84); +lean_inc(x_1); +x_85 = lean_apply_2(x_4, x_1, x_2); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) +{ +lean_dec(x_84); lean_dec(x_83); -x_85 = lean_ctor_get(x_2, 1); -lean_inc(x_85); -lean_inc(x_1); -x_86 = lean_apply_2(x_4, x_1, x_2); -x_87 = lean_ctor_get(x_86, 3); +lean_dec(x_1); +return x_85; +} +else +{ +lean_object* x_87; lean_object* x_88; uint8_t x_89; +x_87 = lean_ctor_get(x_86, 0); lean_inc(x_87); -if (lean_obj_tag(x_87) == 0) -{ -lean_dec(x_85); -lean_dec(x_84); -lean_dec(x_1); -return x_86; -} -else -{ -lean_object* x_88; lean_object* x_89; uint8_t x_90; -x_88 = lean_ctor_get(x_87, 0); +lean_dec(x_86); +x_88 = lean_ctor_get(x_85, 1); lean_inc(x_88); -lean_dec(x_87); -x_89 = lean_ctor_get(x_86, 1); -lean_inc(x_89); -x_90 = lean_nat_dec_eq(x_89, x_85); -lean_dec(x_89); -if (x_90 == 0) -{ +x_89 = lean_nat_dec_eq(x_88, x_84); lean_dec(x_88); -lean_dec(x_85); +if (x_89 == 0) +{ +lean_dec(x_87); lean_dec(x_84); +lean_dec(x_83); lean_dec(x_1); -return x_86; +return x_85; } else { -lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -lean_inc(x_85); -x_91 = l_Lean_Parser_ParserState_restore(x_86, x_84, x_85); -lean_dec(x_84); -x_92 = l_Lean_Parser_appPrec; -x_93 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_94 = l_Lean_Parser_checkPrecFn(x_92, x_93, x_1, x_91); -x_95 = lean_ctor_get(x_94, 3); -lean_inc(x_95); -if (lean_obj_tag(x_95) == 0) +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_inc(x_84); +x_90 = l_Lean_Parser_ParserState_restore(x_85, x_83, x_84); +lean_dec(x_83); +x_91 = l_Lean_Parser_appPrec; +x_92 = l_Lean_Parser_checkPrecFn(x_91, x_1, x_90); +x_93 = lean_ctor_get(x_92, 3); +lean_inc(x_93); +if (lean_obj_tag(x_93) == 0) { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_130; lean_object* x_161; lean_object* x_162; lean_object* x_163; -x_96 = lean_ctor_get(x_94, 0); -lean_inc(x_96); -x_97 = lean_array_get_size(x_96); -lean_dec(x_96); -x_161 = lean_ctor_get(x_94, 1); -lean_inc(x_161); +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_128; lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_94 = lean_ctor_get(x_92, 0); +lean_inc(x_94); +x_95 = lean_array_get_size(x_94); +lean_dec(x_94); +x_159 = lean_ctor_get(x_92, 1); +lean_inc(x_159); lean_inc(x_1); -x_162 = l_Lean_Parser_tokenFn(x_1, x_94); -x_163 = lean_ctor_get(x_162, 3); -lean_inc(x_163); -if (lean_obj_tag(x_163) == 0) +x_160 = l_Lean_Parser_tokenFn(x_1, x_92); +x_161 = lean_ctor_get(x_160, 3); +lean_inc(x_161); +if (lean_obj_tag(x_161) == 0) { -lean_object* x_164; lean_object* x_165; -x_164 = lean_ctor_get(x_162, 0); +lean_object* x_162; lean_object* x_163; +x_162 = lean_ctor_get(x_160, 0); +lean_inc(x_162); +x_163 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_162); +lean_dec(x_162); +if (lean_obj_tag(x_163) == 2) +{ +lean_object* x_164; lean_object* x_165; uint8_t x_166; +x_164 = lean_ctor_get(x_163, 1); lean_inc(x_164); -x_165 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_164); +lean_dec(x_163); +x_165 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_166 = lean_string_dec_eq(x_164, x_165); lean_dec(x_164); -if (lean_obj_tag(x_165) == 2) +if (x_166 == 0) { -lean_object* x_166; lean_object* x_167; uint8_t x_168; -x_166 = lean_ctor_get(x_165, 1); -lean_inc(x_166); -lean_dec(x_165); -x_167 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_168 = lean_string_dec_eq(x_166, x_167); -lean_dec(x_166); -if (x_168 == 0) +lean_object* x_167; lean_object* x_168; +x_167 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_167, x_159); +x_128 = x_168; +goto block_158; +} +else +{ +lean_dec(x_159); +x_128 = x_160; +goto block_158; +} +} +else { lean_object* x_169; lean_object* x_170; +lean_dec(x_163); x_169 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_169, x_161); -x_130 = x_170; -goto block_160; -} -else -{ -lean_dec(x_161); -x_130 = x_162; -goto block_160; +x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_169, x_159); +x_128 = x_170; +goto block_158; } } else { lean_object* x_171; lean_object* x_172; -lean_dec(x_165); +lean_dec(x_161); x_171 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_172 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_171, x_161); -x_130 = x_172; -goto block_160; +x_172 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_171, x_159); +x_128 = x_172; +goto block_158; } -} -else +block_127: { -lean_object* x_173; lean_object* x_174; -lean_dec(x_163); -x_173 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_173, x_161); -x_130 = x_174; -goto block_160; -} -block_129: +lean_object* x_97; +x_97 = lean_ctor_get(x_96, 3); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) { -lean_object* x_99; -x_99 = lean_ctor_get(x_98, 3); -lean_inc(x_99); -if (lean_obj_tag(x_99) == 0) -{ -lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_100 = lean_ctor_get(x_98, 1); +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +x_99 = l_Lean_Parser_tokenFn(x_1, x_96); +x_100 = lean_ctor_get(x_99, 3); lean_inc(x_100); -x_101 = l_Lean_Parser_tokenFn(x_1, x_98); -x_102 = lean_ctor_get(x_101, 3); -lean_inc(x_102); -if (lean_obj_tag(x_102) == 0) +if (lean_obj_tag(x_100) == 0) { -lean_object* x_103; lean_object* x_104; -x_103 = lean_ctor_get(x_101, 0); +lean_object* x_101; lean_object* x_102; +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +x_102 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_101); +lean_dec(x_101); +if (lean_obj_tag(x_102) == 2) +{ +lean_object* x_103; lean_object* x_104; uint8_t x_105; +x_103 = lean_ctor_get(x_102, 1); lean_inc(x_103); -x_104 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_103); -lean_dec(x_103); -if (lean_obj_tag(x_104) == 2) -{ -lean_object* x_105; lean_object* x_106; uint8_t x_107; -x_105 = lean_ctor_get(x_104, 1); -lean_inc(x_105); -lean_dec(x_104); -x_106 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_107 = lean_string_dec_eq(x_105, x_106); -lean_dec(x_105); -if (x_107 == 0) -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_108 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_108, x_100); -x_110 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_97); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_88, x_85); -lean_dec(x_85); -return x_112; -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; -lean_dec(x_100); -x_113 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_114 = l_Lean_Parser_ParserState_mkNode(x_101, x_113, x_97); -x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_88, x_85); -lean_dec(x_85); -return x_115; -} -} -else -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_104); -x_116 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_116, x_100); -x_118 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_97); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_88, x_85); -lean_dec(x_85); -return x_120; -} -} -else -{ -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_dec(x_102); -x_121 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_101, x_121, x_100); -x_123 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_97); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_88, x_85); -lean_dec(x_85); -return x_125; +x_104 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_105 = lean_string_dec_eq(x_103, x_104); +lean_dec(x_103); +if (x_105 == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_106 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_107 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_106, x_98); +x_108 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_109 = l_Lean_Parser_ParserState_mkNode(x_107, x_108, x_95); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_87, x_84); +lean_dec(x_84); +return x_110; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_98); +x_111 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_112 = l_Lean_Parser_ParserState_mkNode(x_99, x_111, x_95); +x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_87, x_84); +lean_dec(x_84); +return x_113; } } else { -lean_object* x_126; lean_object* x_127; lean_object* x_128; -lean_dec(x_99); +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_102); +x_114 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_114, x_98); +x_116 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_95); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_87, x_84); +lean_dec(x_84); +return x_118; +} +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_100); +x_119 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_99, x_119, x_98); +x_121 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_122 = l_Lean_Parser_ParserState_mkNode(x_120, x_121, x_95); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_87, x_84); +lean_dec(x_84); +return x_123; +} +} +else +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_97); lean_dec(x_1); -x_126 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_127 = l_Lean_Parser_ParserState_mkNode(x_98, x_126, x_97); -x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_88, x_85); -lean_dec(x_85); -return x_128; +x_124 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_125 = l_Lean_Parser_ParserState_mkNode(x_96, x_124, x_95); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_87, x_84); +lean_dec(x_84); +return x_126; } } -block_160: +block_158: { -lean_object* x_131; -x_131 = lean_ctor_get(x_130, 3); -lean_inc(x_131); -if (lean_obj_tag(x_131) == 0) +lean_object* x_129; +x_129 = lean_ctor_get(x_128, 3); +lean_inc(x_129); +if (lean_obj_tag(x_129) == 0) { -lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -x_132 = lean_ctor_get(x_130, 0); +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_130 = lean_ctor_get(x_128, 0); +lean_inc(x_130); +x_131 = lean_array_get_size(x_130); +lean_dec(x_130); +x_132 = lean_ctor_get(x_128, 1); lean_inc(x_132); -x_133 = lean_array_get_size(x_132); -lean_dec(x_132); -x_134 = lean_ctor_get(x_130, 1); -lean_inc(x_134); -x_135 = l_Lean_Parser_termParser___closed__2; -x_136 = lean_unsigned_to_nat(0u); +x_133 = l_Lean_Parser_termParser___closed__2; +x_134 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_137 = l_Lean_Parser_categoryParser___elambda__1(x_135, x_136, x_1, x_130); +x_135 = l_Lean_Parser_categoryParser___elambda__1(x_133, x_134, x_1, x_128); +x_136 = lean_ctor_get(x_135, 3); +lean_inc(x_136); +if (lean_obj_tag(x_136) == 0) +{ +lean_object* x_137; lean_object* x_138; +lean_inc(x_1); +x_137 = l_Lean_Parser_Term_parenSpecial___elambda__1(x_1, x_135); x_138 = lean_ctor_get(x_137, 3); lean_inc(x_138); if (lean_obj_tag(x_138) == 0) { lean_object* x_139; lean_object* x_140; -lean_inc(x_1); -x_139 = l_Lean_Parser_Term_parenSpecial___elambda__1(x_1, x_137); -x_140 = lean_ctor_get(x_139, 3); -lean_inc(x_140); -if (lean_obj_tag(x_140) == 0) -{ -lean_object* x_141; lean_object* x_142; -lean_dec(x_134); -x_141 = l_Lean_nullKind; -x_142 = l_Lean_Parser_ParserState_mkNode(x_139, x_141, x_133); -x_98 = x_142; -goto block_129; +lean_dec(x_132); +x_139 = l_Lean_nullKind; +x_140 = l_Lean_Parser_ParserState_mkNode(x_137, x_139, x_131); +x_96 = x_140; +goto block_127; } else { -lean_object* x_143; uint8_t x_144; -lean_dec(x_140); -x_143 = lean_ctor_get(x_139, 1); -lean_inc(x_143); -x_144 = lean_nat_dec_eq(x_143, x_134); -lean_dec(x_143); -if (x_144 == 0) -{ -lean_object* x_145; lean_object* x_146; -lean_dec(x_134); -x_145 = l_Lean_nullKind; -x_146 = l_Lean_Parser_ParserState_mkNode(x_139, x_145, x_133); -x_98 = x_146; -goto block_129; -} -else -{ -lean_object* x_147; lean_object* x_148; lean_object* x_149; -x_147 = l_Lean_Parser_ParserState_restore(x_139, x_133, x_134); -x_148 = l_Lean_nullKind; -x_149 = l_Lean_Parser_ParserState_mkNode(x_147, x_148, x_133); -x_98 = x_149; -goto block_129; -} -} -} -else -{ -lean_object* x_150; uint8_t x_151; +lean_object* x_141; uint8_t x_142; lean_dec(x_138); -x_150 = lean_ctor_get(x_137, 1); -lean_inc(x_150); -x_151 = lean_nat_dec_eq(x_150, x_134); -lean_dec(x_150); -if (x_151 == 0) +x_141 = lean_ctor_get(x_137, 1); +lean_inc(x_141); +x_142 = lean_nat_dec_eq(x_141, x_132); +lean_dec(x_141); +if (x_142 == 0) { -lean_object* x_152; lean_object* x_153; -lean_dec(x_134); -x_152 = l_Lean_nullKind; -x_153 = l_Lean_Parser_ParserState_mkNode(x_137, x_152, x_133); -x_98 = x_153; -goto block_129; +lean_object* x_143; lean_object* x_144; +lean_dec(x_132); +x_143 = l_Lean_nullKind; +x_144 = l_Lean_Parser_ParserState_mkNode(x_137, x_143, x_131); +x_96 = x_144; +goto block_127; } else { -lean_object* x_154; lean_object* x_155; lean_object* x_156; -x_154 = l_Lean_Parser_ParserState_restore(x_137, x_133, x_134); -x_155 = l_Lean_nullKind; -x_156 = l_Lean_Parser_ParserState_mkNode(x_154, x_155, x_133); -x_98 = x_156; -goto block_129; +lean_object* x_145; lean_object* x_146; lean_object* x_147; +x_145 = l_Lean_Parser_ParserState_restore(x_137, x_131, x_132); +x_146 = l_Lean_nullKind; +x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_131); +x_96 = x_147; +goto block_127; } } } else { -lean_object* x_157; lean_object* x_158; lean_object* x_159; -lean_dec(x_131); +lean_object* x_148; uint8_t x_149; +lean_dec(x_136); +x_148 = lean_ctor_get(x_135, 1); +lean_inc(x_148); +x_149 = lean_nat_dec_eq(x_148, x_132); +lean_dec(x_148); +if (x_149 == 0) +{ +lean_object* x_150; lean_object* x_151; +lean_dec(x_132); +x_150 = l_Lean_nullKind; +x_151 = l_Lean_Parser_ParserState_mkNode(x_135, x_150, x_131); +x_96 = x_151; +goto block_127; +} +else +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_152 = l_Lean_Parser_ParserState_restore(x_135, x_131, x_132); +x_153 = l_Lean_nullKind; +x_154 = l_Lean_Parser_ParserState_mkNode(x_152, x_153, x_131); +x_96 = x_154; +goto block_127; +} +} +} +else +{ +lean_object* x_155; lean_object* x_156; lean_object* x_157; +lean_dec(x_129); lean_dec(x_1); -x_157 = l_Lean_Parser_Term_paren___elambda__1___closed__1; -x_158 = l_Lean_Parser_ParserState_mkNode(x_130, x_157, x_97); -x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_88, x_85); -lean_dec(x_85); -return x_159; +x_155 = l_Lean_Parser_Term_paren___elambda__1___closed__1; +x_156 = l_Lean_Parser_ParserState_mkNode(x_128, x_155, x_95); +x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_87, x_84); +lean_dec(x_84); +return x_157; } } } else { -lean_object* x_175; -lean_dec(x_95); +lean_object* x_173; +lean_dec(x_93); lean_dec(x_1); -x_175 = l_Lean_Parser_mergeOrElseErrors(x_94, x_88, x_85); -lean_dec(x_85); -return x_175; +x_173 = l_Lean_Parser_mergeOrElseErrors(x_92, x_87, x_84); +lean_dec(x_84); +return x_173; } } } @@ -11374,411 +11563,409 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_44 = lean_ctor_get(x_8, 1); -lean_inc(x_44); -lean_inc(x_1); -x_45 = l_Lean_Parser_tokenFn(x_1, x_8); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); -lean_dec(x_47); -if (lean_obj_tag(x_48) == 2) -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__5; -x_51 = lean_string_dec_eq(x_49, x_50); -lean_dec(x_49); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); -x_12 = x_53; -goto block_43; -} -else -{ -lean_dec(x_44); -x_12 = x_45; -goto block_43; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -x_54 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); -x_12 = x_55; -goto block_43; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_46); -x_56 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); -x_12 = x_57; -goto block_43; -} -block_43: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; lean_object* x_15; lean_object* x_16; -x_14 = 0; -lean_inc(x_1); -x_15 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_anonymousCtor___elambda__1___spec__1(x_14, x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -x_18 = l_Lean_Parser_tokenFn(x_1, x_15); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__6; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_27 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_11); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_29 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_11); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_21); -x_31 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); -x_33 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_19); -x_35 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); -x_37 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_16); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_13); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_12, x_41, x_11); -return x_42; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_43 = lean_ctor_get(x_7, 1); +lean_inc(x_43); +lean_inc(x_1); +x_44 = l_Lean_Parser_tokenFn(x_1, x_7); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__5; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); +x_11 = x_52; +goto block_42; +} +else +{ +lean_dec(x_43); +x_11 = x_44; +goto block_42; } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_58 = lean_ctor_get(x_2, 0); -lean_inc(x_58); -x_59 = lean_array_get_size(x_58); +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); +x_11 = x_54; +goto block_42; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); +x_11 = x_56; +goto block_42; +} +block_42: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 0; +lean_inc(x_1); +x_14 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_anonymousCtor___elambda__1___spec__1(x_13, x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__6; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_28 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_20); +x_30 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); +x_32 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_18); +x_34 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); +x_36 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_15); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_12); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); +return x_41; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_2, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_2, 1); +lean_inc(x_59); +lean_inc(x_1); +x_60 = lean_apply_2(x_4, x_1, x_2); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_dec(x_59); lean_dec(x_58); -x_60 = lean_ctor_get(x_2, 1); -lean_inc(x_60); -lean_inc(x_1); -x_61 = lean_apply_2(x_4, x_1, x_2); -x_62 = lean_ctor_get(x_61, 3); +lean_dec(x_1); +return x_60; +} +else +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_dec(x_60); -lean_dec(x_59); -lean_dec(x_1); -return x_61; -} -else -{ -lean_object* x_63; lean_object* x_64; uint8_t x_65; -x_63 = lean_ctor_get(x_62, 0); +lean_dec(x_61); +x_63 = lean_ctor_get(x_60, 1); lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -x_65 = lean_nat_dec_eq(x_64, x_60); -lean_dec(x_64); -if (x_65 == 0) -{ +x_64 = lean_nat_dec_eq(x_63, x_59); lean_dec(x_63); -lean_dec(x_60); +if (x_64 == 0) +{ +lean_dec(x_62); lean_dec(x_59); +lean_dec(x_58); lean_dec(x_1); -return x_61; +return x_60; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_inc(x_60); -x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); -lean_dec(x_59); -x_67 = l_Lean_Parser_appPrec; -x_68 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_69 = l_Lean_Parser_checkPrecFn(x_67, x_68, x_1, x_66); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_inc(x_59); +x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +lean_dec(x_58); +x_66 = l_Lean_Parser_appPrec; +x_67 = l_Lean_Parser_checkPrecFn(x_66, x_1, x_65); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -x_111 = lean_ctor_get(x_69, 1); -lean_inc(x_111); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_109 = lean_ctor_get(x_67, 1); +lean_inc(x_109); lean_inc(x_1); -x_112 = l_Lean_Parser_tokenFn(x_1, x_69); -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +x_110 = l_Lean_Parser_tokenFn(x_1, x_67); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { -lean_object* x_114; lean_object* x_115; -x_114 = lean_ctor_get(x_112, 0); +lean_object* x_112; lean_object* x_113; +x_112 = lean_ctor_get(x_110, 0); +lean_inc(x_112); +x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_112); +if (lean_obj_tag(x_113) == 2) +{ +lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_114 = lean_ctor_get(x_113, 1); lean_inc(x_114); -x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_113); +x_115 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__5; +x_116 = lean_string_dec_eq(x_114, x_115); lean_dec(x_114); -if (lean_obj_tag(x_115) == 2) +if (x_116 == 0) { -lean_object* x_116; lean_object* x_117; uint8_t x_118; -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -lean_dec(x_115); -x_117 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__5; -x_118 = lean_string_dec_eq(x_116, x_117); -lean_dec(x_116); -if (x_118 == 0) +lean_object* x_117; lean_object* x_118; +x_117 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); +x_71 = x_118; +goto block_108; +} +else +{ +lean_dec(x_109); +x_71 = x_110; +goto block_108; +} +} +else { lean_object* x_119; lean_object* x_120; +lean_dec(x_113); x_119 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); -x_73 = x_120; -goto block_110; -} -else -{ -lean_dec(x_111); -x_73 = x_112; -goto block_110; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); +x_71 = x_120; +goto block_108; } } else { lean_object* x_121; lean_object* x_122; -lean_dec(x_115); +lean_dec(x_111); x_121 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); -x_73 = x_122; -goto block_110; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); +x_71 = x_122; +goto block_108; } -} -else +block_108: { -lean_object* x_123; lean_object* x_124; -lean_dec(x_113); -x_123 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__12; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); -x_73 = x_124; -goto block_110; -} -block_110: +lean_object* x_72; +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_74; -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -uint8_t x_75; lean_object* x_76; lean_object* x_77; -x_75 = 0; +uint8_t x_73; lean_object* x_74; lean_object* x_75; +x_73 = 0; lean_inc(x_1); -x_76 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_anonymousCtor___elambda__1___spec__1(x_75, x_1, x_73); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +x_74 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_anonymousCtor___elambda__1___spec__1(x_73, x_1, x_71); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_76, 1); +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +x_77 = l_Lean_Parser_tokenFn(x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); lean_inc(x_78); -x_79 = l_Lean_Parser_tokenFn(x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); +lean_dec(x_79); +if (lean_obj_tag(x_80) == 2) +{ +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 1); lean_inc(x_81); -x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__6; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); -x_88 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_72); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); -lean_dec(x_60); -return x_90; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_78); -x_91 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_72); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); -lean_dec(x_60); -return x_93; -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_82); -x_94 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); -x_96 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_72); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); -lean_dec(x_60); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_dec(x_80); -x_99 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); -x_101 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_72); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); -lean_dec(x_60); -return x_103; +x_82 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__6; +x_83 = lean_string_dec_eq(x_81, x_82); +lean_dec(x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); +x_86 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_70); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); +lean_dec(x_59); +return x_88; +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_76); +x_89 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_70); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); +lean_dec(x_59); +return x_91; } } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_77); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_72); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); -lean_dec(x_60); -return x_106; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_80); +x_92 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); +x_94 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_70); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); +lean_dec(x_59); +return x_96; } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_74); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_78); +x_97 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__9; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); +x_99 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_70); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); +lean_dec(x_59); +return x_101; +} +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_75); lean_dec(x_1); -x_107 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_73, x_107, x_72); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); -lean_dec(x_60); -return x_109; +x_102 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_70); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); +lean_dec(x_59); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_72); +lean_dec(x_1); +x_105 = l_Lean_Parser_Term_anonymousCtor___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_71, x_105, x_70); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); +lean_dec(x_59); +return x_107; } } } else { -lean_object* x_125; -lean_dec(x_70); +lean_object* x_123; +lean_dec(x_68); lean_dec(x_1); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_69, x_63, x_60); -lean_dec(x_60); -return x_125; +x_123 = l_Lean_Parser_mergeOrElseErrors(x_67, x_62, x_59); +lean_dec(x_59); +return x_123; } } } @@ -12366,651 +12553,649 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_45; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_46; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_75 = lean_ctor_get(x_8, 1); -lean_inc(x_75); -lean_inc(x_1); -x_76 = l_Lean_Parser_tokenFn(x_1, x_8); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) -{ -lean_object* x_78; lean_object* x_79; -x_78 = lean_ctor_get(x_76, 0); -lean_inc(x_78); -x_79 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_78); -lean_dec(x_78); -if (lean_obj_tag(x_79) == 2) -{ -lean_object* x_80; lean_object* x_81; uint8_t x_82; -x_80 = lean_ctor_get(x_79, 1); -lean_inc(x_80); -lean_dec(x_79); -x_81 = l_Lean_Parser_Term_if___elambda__1___closed__6; -x_82 = lean_string_dec_eq(x_80, x_81); -lean_dec(x_80); -if (x_82 == 0) -{ -lean_object* x_83; lean_object* x_84; -x_83 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_83, x_75); -x_46 = x_84; -goto block_74; -} -else -{ -lean_dec(x_75); -x_46 = x_76; -goto block_74; -} -} -else -{ -lean_object* x_85; lean_object* x_86; -lean_dec(x_79); -x_85 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_85, x_75); -x_46 = x_86; -goto block_74; -} -} -else -{ -lean_object* x_87; lean_object* x_88; -lean_dec(x_77); -x_87 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_76, x_87, x_75); -x_46 = x_88; -goto block_74; -} -block_45: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_16); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_if___elambda__1___closed__10; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_1); -x_26 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_28 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_18); -x_30 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_19); -x_31 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_11); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_22); -lean_dec(x_1); -x_33 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_33, x_18); -x_35 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_11); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_20); -lean_dec(x_1); -x_37 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_37, x_18); -x_39 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_17); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_16, x_41, x_11); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_13); -lean_dec(x_1); -x_43 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_12, x_43, x_11); -return x_44; -} -} -block_74: -{ -lean_object* x_47; -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; -lean_inc(x_1); -x_48 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_46); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -if (lean_obj_tag(x_49) == 0) -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_50 = l_Lean_Parser_termParser___closed__2; -x_51 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_52 = l_Lean_Parser_categoryParser___elambda__1(x_50, x_51, x_1, x_48); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_52); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_if___elambda__1___closed__8; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_54); -x_12 = x_63; -goto block_45; -} -else -{ -lean_dec(x_54); -x_12 = x_55; -goto block_45; -} -} -else -{ -lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_54); -x_12 = x_65; -goto block_45; -} -} -else -{ -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_54); -x_12 = x_67; -goto block_45; -} -} -else -{ -lean_object* x_68; lean_object* x_69; -lean_dec(x_53); -lean_dec(x_1); -x_68 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_52, x_68, x_11); -return x_69; -} -} -else -{ -lean_object* x_70; lean_object* x_71; -lean_dec(x_49); -lean_dec(x_1); -x_70 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_71 = l_Lean_Parser_ParserState_mkNode(x_48, x_70, x_11); -return x_71; -} -} -else -{ -lean_object* x_72; lean_object* x_73; -lean_dec(x_47); -lean_dec(x_1); -x_72 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_73 = l_Lean_Parser_ParserState_mkNode(x_46, x_72, x_11); -return x_73; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_74 = lean_ctor_get(x_7, 1); +lean_inc(x_74); +lean_inc(x_1); +x_75 = l_Lean_Parser_tokenFn(x_1, x_7); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) +{ +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); +lean_inc(x_79); +lean_dec(x_78); +x_80 = l_Lean_Parser_Term_if___elambda__1___closed__6; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; +x_82 = l_Lean_Parser_Term_if___elambda__1___closed__19; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_45 = x_83; +goto block_73; +} +else +{ +lean_dec(x_74); +x_45 = x_75; +goto block_73; } } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_89 = lean_ctor_get(x_2, 0); -lean_inc(x_89); -x_90 = lean_array_get_size(x_89); +lean_object* x_84; lean_object* x_85; +lean_dec(x_78); +x_84 = l_Lean_Parser_Term_if___elambda__1___closed__19; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_84, x_74); +x_45 = x_85; +goto block_73; +} +} +else +{ +lean_object* x_86; lean_object* x_87; +lean_dec(x_76); +x_86 = l_Lean_Parser_Term_if___elambda__1___closed__19; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_86, x_74); +x_45 = x_87; +goto block_73; +} +block_44: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_inc(x_1); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_Term_if___elambda__1___closed__10; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_1); +x_25 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); +x_27 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_17); +x_29 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_18); +x_30 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_21); +lean_dec(x_1); +x_32 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_32, x_17); +x_34 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_19); +lean_dec(x_1); +x_36 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_36, x_17); +x_38 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_16); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_15, x_40, x_10); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_12); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_11, x_42, x_10); +return x_43; +} +} +block_73: +{ +lean_object* x_46; +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_inc(x_1); +x_47 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_45); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_termParser___closed__2; +x_50 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_51 = l_Lean_Parser_categoryParser___elambda__1(x_49, x_50, x_1, x_47); +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_inc(x_1); +x_54 = l_Lean_Parser_tokenFn(x_1, x_51); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; +x_56 = lean_ctor_get(x_54, 0); +lean_inc(x_56); +x_57 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_56); +lean_dec(x_56); +if (lean_obj_tag(x_57) == 2) +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +lean_dec(x_57); +x_59 = l_Lean_Parser_Term_if___elambda__1___closed__8; +x_60 = lean_string_dec_eq(x_58, x_59); +lean_dec(x_58); +if (x_60 == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = l_Lean_Parser_Term_if___elambda__1___closed__16; +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_61, x_53); +x_11 = x_62; +goto block_44; +} +else +{ +lean_dec(x_53); +x_11 = x_54; +goto block_44; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_57); +x_63 = l_Lean_Parser_Term_if___elambda__1___closed__16; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_63, x_53); +x_11 = x_64; +goto block_44; +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_55); +x_65 = l_Lean_Parser_Term_if___elambda__1___closed__16; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_65, x_53); +x_11 = x_66; +goto block_44; +} +} +else +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_52); +lean_dec(x_1); +x_67 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_68 = l_Lean_Parser_ParserState_mkNode(x_51, x_67, x_10); +return x_68; +} +} +else +{ +lean_object* x_69; lean_object* x_70; +lean_dec(x_48); +lean_dec(x_1); +x_69 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_70 = l_Lean_Parser_ParserState_mkNode(x_47, x_69, x_10); +return x_70; +} +} +else +{ +lean_object* x_71; lean_object* x_72; +lean_dec(x_46); +lean_dec(x_1); +x_71 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_72 = l_Lean_Parser_ParserState_mkNode(x_45, x_71, x_10); +return x_72; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_88 = lean_ctor_get(x_2, 0); +lean_inc(x_88); +x_89 = lean_array_get_size(x_88); +lean_dec(x_88); +x_90 = lean_ctor_get(x_2, 1); +lean_inc(x_90); +lean_inc(x_1); +x_91 = lean_apply_2(x_4, x_1, x_2); +x_92 = lean_ctor_get(x_91, 3); +lean_inc(x_92); +if (lean_obj_tag(x_92) == 0) +{ +lean_dec(x_90); lean_dec(x_89); -x_91 = lean_ctor_get(x_2, 1); -lean_inc(x_91); -lean_inc(x_1); -x_92 = lean_apply_2(x_4, x_1, x_2); -x_93 = lean_ctor_get(x_92, 3); +lean_dec(x_1); +return x_91; +} +else +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; +x_93 = lean_ctor_get(x_92, 0); lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) -{ -lean_dec(x_91); -lean_dec(x_90); -lean_dec(x_1); -return x_92; -} -else -{ -lean_object* x_94; lean_object* x_95; uint8_t x_96; -x_94 = lean_ctor_get(x_93, 0); +lean_dec(x_92); +x_94 = lean_ctor_get(x_91, 1); lean_inc(x_94); -lean_dec(x_93); -x_95 = lean_ctor_get(x_92, 1); -lean_inc(x_95); -x_96 = lean_nat_dec_eq(x_95, x_91); -lean_dec(x_95); -if (x_96 == 0) -{ +x_95 = lean_nat_dec_eq(x_94, x_90); lean_dec(x_94); -lean_dec(x_91); +if (x_95 == 0) +{ +lean_dec(x_93); lean_dec(x_90); +lean_dec(x_89); lean_dec(x_1); -return x_92; +return x_91; } else { -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_inc(x_91); -x_97 = l_Lean_Parser_ParserState_restore(x_92, x_90, x_91); -lean_dec(x_90); -x_98 = l_Lean_Parser_Term_leadPrec; -x_99 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_100 = l_Lean_Parser_checkPrecFn(x_98, x_99, x_1, x_97); -x_101 = lean_ctor_get(x_100, 3); -lean_inc(x_101); -if (lean_obj_tag(x_101) == 0) +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_inc(x_90); +x_96 = l_Lean_Parser_ParserState_restore(x_91, x_89, x_90); +lean_dec(x_89); +x_97 = l_Lean_Parser_Term_leadPrec; +x_98 = l_Lean_Parser_checkPrecFn(x_97, x_1, x_96); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_144; lean_object* x_176; lean_object* x_177; lean_object* x_178; -x_102 = lean_ctor_get(x_100, 0); -lean_inc(x_102); -x_103 = lean_array_get_size(x_102); -lean_dec(x_102); -x_176 = lean_ctor_get(x_100, 1); -lean_inc(x_176); +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_142; lean_object* x_174; lean_object* x_175; lean_object* x_176; +x_100 = lean_ctor_get(x_98, 0); +lean_inc(x_100); +x_101 = lean_array_get_size(x_100); +lean_dec(x_100); +x_174 = lean_ctor_get(x_98, 1); +lean_inc(x_174); lean_inc(x_1); -x_177 = l_Lean_Parser_tokenFn(x_1, x_100); -x_178 = lean_ctor_get(x_177, 3); -lean_inc(x_178); -if (lean_obj_tag(x_178) == 0) +x_175 = l_Lean_Parser_tokenFn(x_1, x_98); +x_176 = lean_ctor_get(x_175, 3); +lean_inc(x_176); +if (lean_obj_tag(x_176) == 0) { -lean_object* x_179; lean_object* x_180; -x_179 = lean_ctor_get(x_177, 0); +lean_object* x_177; lean_object* x_178; +x_177 = lean_ctor_get(x_175, 0); +lean_inc(x_177); +x_178 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_177); +lean_dec(x_177); +if (lean_obj_tag(x_178) == 2) +{ +lean_object* x_179; lean_object* x_180; uint8_t x_181; +x_179 = lean_ctor_get(x_178, 1); lean_inc(x_179); -x_180 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_179); +lean_dec(x_178); +x_180 = l_Lean_Parser_Term_if___elambda__1___closed__6; +x_181 = lean_string_dec_eq(x_179, x_180); lean_dec(x_179); -if (lean_obj_tag(x_180) == 2) +if (x_181 == 0) { -lean_object* x_181; lean_object* x_182; uint8_t x_183; -x_181 = lean_ctor_get(x_180, 1); -lean_inc(x_181); -lean_dec(x_180); -x_182 = l_Lean_Parser_Term_if___elambda__1___closed__6; -x_183 = lean_string_dec_eq(x_181, x_182); -lean_dec(x_181); -if (x_183 == 0) +lean_object* x_182; lean_object* x_183; +x_182 = l_Lean_Parser_Term_if___elambda__1___closed__19; +x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_182, x_174); +x_142 = x_183; +goto block_173; +} +else +{ +lean_dec(x_174); +x_142 = x_175; +goto block_173; +} +} +else { lean_object* x_184; lean_object* x_185; +lean_dec(x_178); x_184 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_177, x_184, x_176); -x_144 = x_185; -goto block_175; -} -else -{ -lean_dec(x_176); -x_144 = x_177; -goto block_175; +x_185 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_184, x_174); +x_142 = x_185; +goto block_173; } } else { lean_object* x_186; lean_object* x_187; -lean_dec(x_180); +lean_dec(x_176); x_186 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_187 = l_Lean_Parser_ParserState_mkErrorsAt(x_177, x_186, x_176); -x_144 = x_187; -goto block_175; +x_187 = l_Lean_Parser_ParserState_mkErrorsAt(x_175, x_186, x_174); +x_142 = x_187; +goto block_173; } -} -else +block_141: { -lean_object* x_188; lean_object* x_189; -lean_dec(x_178); -x_188 = l_Lean_Parser_Term_if___elambda__1___closed__19; -x_189 = l_Lean_Parser_ParserState_mkErrorsAt(x_177, x_188, x_176); -x_144 = x_189; -goto block_175; -} -block_143: +lean_object* x_103; +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_105; -x_105 = lean_ctor_get(x_104, 3); -lean_inc(x_105); -if (lean_obj_tag(x_105) == 0) -{ -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_106 = l_Lean_Parser_termParser___closed__2; -x_107 = lean_unsigned_to_nat(0u); +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_104 = l_Lean_Parser_termParser___closed__2; +x_105 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_108 = l_Lean_Parser_categoryParser___elambda__1(x_106, x_107, x_1, x_104); -x_109 = lean_ctor_get(x_108, 3); -lean_inc(x_109); -if (lean_obj_tag(x_109) == 0) +x_106 = l_Lean_Parser_categoryParser___elambda__1(x_104, x_105, x_1, x_102); +x_107 = lean_ctor_get(x_106, 3); +lean_inc(x_107); +if (lean_obj_tag(x_107) == 0) { -lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_110 = lean_ctor_get(x_108, 1); +lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +lean_inc(x_1); +x_109 = l_Lean_Parser_tokenFn(x_1, x_106); +x_110 = lean_ctor_get(x_109, 3); lean_inc(x_110); -lean_inc(x_1); -x_111 = l_Lean_Parser_tokenFn(x_1, x_108); -x_112 = lean_ctor_get(x_111, 3); -lean_inc(x_112); -if (lean_obj_tag(x_112) == 0) +if (lean_obj_tag(x_110) == 0) { -lean_object* x_113; lean_object* x_114; -x_113 = lean_ctor_get(x_111, 0); +lean_object* x_111; lean_object* x_112; +x_111 = lean_ctor_get(x_109, 0); +lean_inc(x_111); +x_112 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_111); +lean_dec(x_111); +if (lean_obj_tag(x_112) == 2) +{ +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = lean_ctor_get(x_112, 1); lean_inc(x_113); -x_114 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_113); +lean_dec(x_112); +x_114 = l_Lean_Parser_Term_if___elambda__1___closed__10; +x_115 = lean_string_dec_eq(x_113, x_114); lean_dec(x_113); -if (lean_obj_tag(x_114) == 2) +if (x_115 == 0) { -lean_object* x_115; lean_object* x_116; uint8_t x_117; -x_115 = lean_ctor_get(x_114, 1); -lean_inc(x_115); -lean_dec(x_114); -x_116 = l_Lean_Parser_Term_if___elambda__1___closed__10; -x_117 = lean_string_dec_eq(x_115, x_116); -lean_dec(x_115); -if (x_117 == 0) -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_dec(x_1); -x_118 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_119 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_118, x_110); -x_120 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_103); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_94, x_91); -lean_dec(x_91); -return x_122; +x_116 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_116, x_108); +x_118 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_101); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_93, x_90); +lean_dec(x_90); +return x_120; } else { -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; -lean_dec(x_110); -x_123 = l_Lean_Parser_categoryParser___elambda__1(x_106, x_107, x_1, x_111); -x_124 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_125 = l_Lean_Parser_ParserState_mkNode(x_123, x_124, x_103); -x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_94, x_91); -lean_dec(x_91); -return x_126; +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; +lean_dec(x_108); +x_121 = l_Lean_Parser_categoryParser___elambda__1(x_104, x_105, x_1, x_109); +x_122 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_123 = l_Lean_Parser_ParserState_mkNode(x_121, x_122, x_101); +x_124 = l_Lean_Parser_mergeOrElseErrors(x_123, x_93, x_90); +lean_dec(x_90); +return x_124; } } else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; -lean_dec(x_114); -lean_dec(x_1); -x_127 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_128 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_127, x_110); -x_129 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_130 = l_Lean_Parser_ParserState_mkNode(x_128, x_129, x_103); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_94, x_91); -lean_dec(x_91); -return x_131; -} -} -else -{ -lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_dec(x_112); lean_dec(x_1); -x_132 = l_Lean_Parser_Term_if___elambda__1___closed__13; -x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_111, x_132, x_110); -x_134 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_103); -x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_94, x_91); -lean_dec(x_91); -return x_136; +x_125 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_125, x_108); +x_127 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_126, x_127, x_101); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_93, x_90); +lean_dec(x_90); +return x_129; } } else { -lean_object* x_137; lean_object* x_138; lean_object* x_139; -lean_dec(x_109); +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_dec(x_110); lean_dec(x_1); -x_137 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_138 = l_Lean_Parser_ParserState_mkNode(x_108, x_137, x_103); -x_139 = l_Lean_Parser_mergeOrElseErrors(x_138, x_94, x_91); -lean_dec(x_91); -return x_139; +x_130 = l_Lean_Parser_Term_if___elambda__1___closed__13; +x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_109, x_130, x_108); +x_132 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_101); +x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_93, x_90); +lean_dec(x_90); +return x_134; } } else { -lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_105); +lean_object* x_135; lean_object* x_136; lean_object* x_137; +lean_dec(x_107); lean_dec(x_1); -x_140 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_141 = l_Lean_Parser_ParserState_mkNode(x_104, x_140, x_103); -x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_94, x_91); -lean_dec(x_91); -return x_142; +x_135 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_136 = l_Lean_Parser_ParserState_mkNode(x_106, x_135, x_101); +x_137 = l_Lean_Parser_mergeOrElseErrors(x_136, x_93, x_90); +lean_dec(x_90); +return x_137; } } -block_175: +else { -lean_object* x_145; +lean_object* x_138; lean_object* x_139; lean_object* x_140; +lean_dec(x_103); +lean_dec(x_1); +x_138 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_139 = l_Lean_Parser_ParserState_mkNode(x_102, x_138, x_101); +x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_93, x_90); +lean_dec(x_90); +return x_140; +} +} +block_173: +{ +lean_object* x_143; +x_143 = lean_ctor_get(x_142, 3); +lean_inc(x_143); +if (lean_obj_tag(x_143) == 0) +{ +lean_object* x_144; lean_object* x_145; +lean_inc(x_1); +x_144 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_142); x_145 = lean_ctor_get(x_144, 3); lean_inc(x_145); if (lean_obj_tag(x_145) == 0) { -lean_object* x_146; lean_object* x_147; +lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_146 = l_Lean_Parser_termParser___closed__2; +x_147 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_146 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_144); -x_147 = lean_ctor_get(x_146, 3); -lean_inc(x_147); -if (lean_obj_tag(x_147) == 0) +x_148 = l_Lean_Parser_categoryParser___elambda__1(x_146, x_147, x_1, x_144); +x_149 = lean_ctor_get(x_148, 3); +lean_inc(x_149); +if (lean_obj_tag(x_149) == 0) { -lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; -x_148 = l_Lean_Parser_termParser___closed__2; -x_149 = lean_unsigned_to_nat(0u); +lean_object* x_150; lean_object* x_151; lean_object* x_152; +x_150 = lean_ctor_get(x_148, 1); +lean_inc(x_150); lean_inc(x_1); -x_150 = l_Lean_Parser_categoryParser___elambda__1(x_148, x_149, x_1, x_146); -x_151 = lean_ctor_get(x_150, 3); -lean_inc(x_151); -if (lean_obj_tag(x_151) == 0) -{ -lean_object* x_152; lean_object* x_153; lean_object* x_154; -x_152 = lean_ctor_get(x_150, 1); +x_151 = l_Lean_Parser_tokenFn(x_1, x_148); +x_152 = lean_ctor_get(x_151, 3); lean_inc(x_152); -lean_inc(x_1); -x_153 = l_Lean_Parser_tokenFn(x_1, x_150); -x_154 = lean_ctor_get(x_153, 3); -lean_inc(x_154); -if (lean_obj_tag(x_154) == 0) +if (lean_obj_tag(x_152) == 0) { -lean_object* x_155; lean_object* x_156; -x_155 = lean_ctor_get(x_153, 0); +lean_object* x_153; lean_object* x_154; +x_153 = lean_ctor_get(x_151, 0); +lean_inc(x_153); +x_154 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_153); +lean_dec(x_153); +if (lean_obj_tag(x_154) == 2) +{ +lean_object* x_155; lean_object* x_156; uint8_t x_157; +x_155 = lean_ctor_get(x_154, 1); lean_inc(x_155); -x_156 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_155); +lean_dec(x_154); +x_156 = l_Lean_Parser_Term_if___elambda__1___closed__8; +x_157 = lean_string_dec_eq(x_155, x_156); lean_dec(x_155); -if (lean_obj_tag(x_156) == 2) +if (x_157 == 0) { -lean_object* x_157; lean_object* x_158; uint8_t x_159; -x_157 = lean_ctor_get(x_156, 1); -lean_inc(x_157); -lean_dec(x_156); -x_158 = l_Lean_Parser_Term_if___elambda__1___closed__8; -x_159 = lean_string_dec_eq(x_157, x_158); -lean_dec(x_157); -if (x_159 == 0) -{ -lean_object* x_160; lean_object* x_161; -x_160 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_160, x_152); -x_104 = x_161; -goto block_143; +lean_object* x_158; lean_object* x_159; +x_158 = l_Lean_Parser_Term_if___elambda__1___closed__16; +x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_158, x_150); +x_102 = x_159; +goto block_141; } else { -lean_dec(x_152); -x_104 = x_153; -goto block_143; +lean_dec(x_150); +x_102 = x_151; +goto block_141; +} +} +else +{ +lean_object* x_160; lean_object* x_161; +lean_dec(x_154); +x_160 = l_Lean_Parser_Term_if___elambda__1___closed__16; +x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_160, x_150); +x_102 = x_161; +goto block_141; } } else { lean_object* x_162; lean_object* x_163; -lean_dec(x_156); +lean_dec(x_152); x_162 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_162, x_152); -x_104 = x_163; -goto block_143; +x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_151, x_162, x_150); +x_102 = x_163; +goto block_141; } } else { -lean_object* x_164; lean_object* x_165; -lean_dec(x_154); -x_164 = l_Lean_Parser_Term_if___elambda__1___closed__16; -x_165 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_164, x_152); -x_104 = x_165; -goto block_143; -} -} -else -{ -lean_object* x_166; lean_object* x_167; lean_object* x_168; -lean_dec(x_151); +lean_object* x_164; lean_object* x_165; lean_object* x_166; +lean_dec(x_149); lean_dec(x_1); -x_166 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_167 = l_Lean_Parser_ParserState_mkNode(x_150, x_166, x_103); -x_168 = l_Lean_Parser_mergeOrElseErrors(x_167, x_94, x_91); -lean_dec(x_91); -return x_168; +x_164 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_165 = l_Lean_Parser_ParserState_mkNode(x_148, x_164, x_101); +x_166 = l_Lean_Parser_mergeOrElseErrors(x_165, x_93, x_90); +lean_dec(x_90); +return x_166; } } else { -lean_object* x_169; lean_object* x_170; lean_object* x_171; -lean_dec(x_147); -lean_dec(x_1); -x_169 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_170 = l_Lean_Parser_ParserState_mkNode(x_146, x_169, x_103); -x_171 = l_Lean_Parser_mergeOrElseErrors(x_170, x_94, x_91); -lean_dec(x_91); -return x_171; -} -} -else -{ -lean_object* x_172; lean_object* x_173; lean_object* x_174; +lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_dec(x_145); lean_dec(x_1); -x_172 = l_Lean_Parser_Term_if___elambda__1___closed__2; -x_173 = l_Lean_Parser_ParserState_mkNode(x_144, x_172, x_103); -x_174 = l_Lean_Parser_mergeOrElseErrors(x_173, x_94, x_91); -lean_dec(x_91); -return x_174; +x_167 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_168 = l_Lean_Parser_ParserState_mkNode(x_144, x_167, x_101); +x_169 = l_Lean_Parser_mergeOrElseErrors(x_168, x_93, x_90); +lean_dec(x_90); +return x_169; +} +} +else +{ +lean_object* x_170; lean_object* x_171; lean_object* x_172; +lean_dec(x_143); +lean_dec(x_1); +x_170 = l_Lean_Parser_Term_if___elambda__1___closed__2; +x_171 = l_Lean_Parser_ParserState_mkNode(x_142, x_170, x_101); +x_172 = l_Lean_Parser_mergeOrElseErrors(x_171, x_93, x_90); +lean_dec(x_90); +return x_172; } } } else { -lean_object* x_190; -lean_dec(x_101); +lean_object* x_188; +lean_dec(x_99); lean_dec(x_1); -x_190 = l_Lean_Parser_mergeOrElseErrors(x_100, x_94, x_91); -lean_dec(x_91); -return x_190; +x_188 = l_Lean_Parser_mergeOrElseErrors(x_98, x_93, x_90); +lean_dec(x_90); +return x_188; } } } @@ -13284,228 +13469,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -13544,16 +13760,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_fromTerm___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_fromTerm___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_fromTerm___closed__3; +x_3 = l_Lean_Parser_Term_fromTerm___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__5() { +lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__6() { _start: { lean_object* x_1; @@ -13561,12 +13787,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_fromTerm___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__6() { +lean_object* _init_l_Lean_Parser_Term_fromTerm___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_fromTerm___closed__4; -x_2 = l_Lean_Parser_Term_fromTerm___closed__5; +x_1 = l_Lean_Parser_Term_fromTerm___closed__5; +x_2 = l_Lean_Parser_Term_fromTerm___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -13577,7 +13803,7 @@ lean_object* _init_l_Lean_Parser_Term_fromTerm() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_fromTerm___closed__6; +x_1 = l_Lean_Parser_Term_fromTerm___closed__7; return x_1; } } @@ -13673,228 +13899,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -13933,16 +14190,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_haveAssign___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_haveAssign___closed__3; +x_3 = l_Lean_Parser_Term_haveAssign___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__5() { +lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__6() { _start: { lean_object* x_1; @@ -13950,12 +14217,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_haveAssign___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__6() { +lean_object* _init_l_Lean_Parser_Term_haveAssign___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_haveAssign___closed__4; -x_2 = l_Lean_Parser_Term_haveAssign___closed__5; +x_1 = l_Lean_Parser_Term_haveAssign___closed__5; +x_2 = l_Lean_Parser_Term_haveAssign___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -13966,7 +14233,7 @@ lean_object* _init_l_Lean_Parser_Term_haveAssign() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_haveAssign___closed__6; +x_1 = l_Lean_Parser_Term_haveAssign___closed__7; return x_1; } } @@ -14070,601 +14337,599 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_41; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_42; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_68 = lean_ctor_get(x_8, 1); -lean_inc(x_68); -lean_inc(x_1); -x_69 = l_Lean_Parser_tokenFn(x_1, x_8); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_71); -lean_dec(x_71); -if (lean_obj_tag(x_72) == 2) -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Term_have___elambda__1___closed__6; -x_75 = lean_string_dec_eq(x_73, x_74); -lean_dec(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_76, x_68); -x_42 = x_77; -goto block_67; -} -else -{ -lean_dec(x_68); -x_42 = x_69; -goto block_67; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_72); -x_78 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_78, x_68); -x_42 = x_79; -goto block_67; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_70); -x_80 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_69, x_80, x_68); -x_42 = x_81; -goto block_67; -} -block_41: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_inc(x_1); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_1); -x_22 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_14); -x_26 = l_Lean_Parser_termParser___closed__2; -x_27 = lean_unsigned_to_nat(0u); -x_28 = l_Lean_Parser_categoryParser___elambda__1(x_26, x_27, x_1, x_15); -x_29 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_11); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_18); -lean_dec(x_1); -x_31 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_31, x_14); -x_33 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_16); -lean_dec(x_1); -x_35 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_35, x_14); -x_37 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_13); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_12, x_39, x_11); -return x_40; -} -} -block_67: -{ -lean_object* x_43; -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; lean_object* x_45; -lean_inc(x_1); -x_44 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_42); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_46 = l_Lean_Parser_termParser___closed__2; -x_47 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_48 = l_Lean_Parser_categoryParser___elambda__1(x_46, x_47, x_1, x_44); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -if (lean_obj_tag(x_49) == 0) -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_50 = lean_ctor_get(x_48, 0); -lean_inc(x_50); -x_51 = lean_array_get_size(x_50); -lean_dec(x_50); -x_52 = lean_ctor_get(x_48, 1); -lean_inc(x_52); -lean_inc(x_1); -x_53 = l_Lean_Parser_Term_haveAssign___elambda__1(x_1, x_48); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_dec(x_52); -lean_dec(x_51); -x_12 = x_53; -goto block_41; -} -else -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 0); -lean_inc(x_55); -lean_dec(x_54); -x_56 = lean_ctor_get(x_53, 1); -lean_inc(x_56); -x_57 = lean_nat_dec_eq(x_56, x_52); -lean_dec(x_56); -if (x_57 == 0) -{ -lean_dec(x_55); -lean_dec(x_52); -lean_dec(x_51); -x_12 = x_53; -goto block_41; -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -lean_inc(x_52); -x_58 = l_Lean_Parser_ParserState_restore(x_53, x_51, x_52); -lean_dec(x_51); -lean_inc(x_1); -x_59 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_58); -x_60 = l_Lean_Parser_mergeOrElseErrors(x_59, x_55, x_52); -lean_dec(x_52); -x_12 = x_60; -goto block_41; -} -} -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_49); -lean_dec(x_1); -x_61 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_62 = l_Lean_Parser_ParserState_mkNode(x_48, x_61, x_11); -return x_62; -} -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_45); -lean_dec(x_1); -x_63 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_44, x_63, x_11); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_43); -lean_dec(x_1); -x_65 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_42, x_65, x_11); -return x_66; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_67 = lean_ctor_get(x_7, 1); +lean_inc(x_67); +lean_inc(x_1); +x_68 = l_Lean_Parser_tokenFn(x_1, x_7); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_70); +lean_dec(x_70); +if (lean_obj_tag(x_71) == 2) +{ +lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_72 = lean_ctor_get(x_71, 1); +lean_inc(x_72); +lean_dec(x_71); +x_73 = l_Lean_Parser_Term_have___elambda__1___closed__6; +x_74 = lean_string_dec_eq(x_72, x_73); +lean_dec(x_72); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; +x_75 = l_Lean_Parser_Term_have___elambda__1___closed__9; +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_75, x_67); +x_41 = x_76; +goto block_66; +} +else +{ +lean_dec(x_67); +x_41 = x_68; +goto block_66; } } else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_82 = lean_ctor_get(x_2, 0); -lean_inc(x_82); -x_83 = lean_array_get_size(x_82); +lean_object* x_77; lean_object* x_78; +lean_dec(x_71); +x_77 = l_Lean_Parser_Term_have___elambda__1___closed__9; +x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_77, x_67); +x_41 = x_78; +goto block_66; +} +} +else +{ +lean_object* x_79; lean_object* x_80; +lean_dec(x_69); +x_79 = l_Lean_Parser_Term_have___elambda__1___closed__9; +x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_68, x_79, x_67); +x_41 = x_80; +goto block_66; +} +block_40: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_inc(x_1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_1); +x_21 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_13); +x_25 = l_Lean_Parser_termParser___closed__2; +x_26 = lean_unsigned_to_nat(0u); +x_27 = l_Lean_Parser_categoryParser___elambda__1(x_25, x_26, x_1, x_14); +x_28 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_17); +lean_dec(x_1); +x_30 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_30, x_13); +x_32 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_15); +lean_dec(x_1); +x_34 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_34, x_13); +x_36 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_12); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_11, x_38, x_10); +return x_39; +} +} +block_66: +{ +lean_object* x_42; +x_42 = lean_ctor_get(x_41, 3); +lean_inc(x_42); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_inc(x_1); +x_43 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_45 = l_Lean_Parser_termParser___closed__2; +x_46 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_47, 0); +lean_inc(x_49); +x_50 = lean_array_get_size(x_49); +lean_dec(x_49); +x_51 = lean_ctor_get(x_47, 1); +lean_inc(x_51); +lean_inc(x_1); +x_52 = l_Lean_Parser_Term_haveAssign___elambda__1(x_1, x_47); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_dec(x_51); +lean_dec(x_50); +x_11 = x_52; +goto block_40; +} +else +{ +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +lean_dec(x_53); +x_55 = lean_ctor_get(x_52, 1); +lean_inc(x_55); +x_56 = lean_nat_dec_eq(x_55, x_51); +lean_dec(x_55); +if (x_56 == 0) +{ +lean_dec(x_54); +lean_dec(x_51); +lean_dec(x_50); +x_11 = x_52; +goto block_40; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_inc(x_51); +x_57 = l_Lean_Parser_ParserState_restore(x_52, x_50, x_51); +lean_dec(x_50); +lean_inc(x_1); +x_58 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_57); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_54, x_51); +lean_dec(x_51); +x_11 = x_59; +goto block_40; +} +} +} +else +{ +lean_object* x_60; lean_object* x_61; +lean_dec(x_48); +lean_dec(x_1); +x_60 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_47, x_60, x_10); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_44); +lean_dec(x_1); +x_62 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_63 = l_Lean_Parser_ParserState_mkNode(x_43, x_62, x_10); +return x_63; +} +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_42); +lean_dec(x_1); +x_64 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_65 = l_Lean_Parser_ParserState_mkNode(x_41, x_64, x_10); +return x_65; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_81 = lean_ctor_get(x_2, 0); +lean_inc(x_81); +x_82 = lean_array_get_size(x_81); +lean_dec(x_81); +x_83 = lean_ctor_get(x_2, 1); +lean_inc(x_83); +lean_inc(x_1); +x_84 = lean_apply_2(x_4, x_1, x_2); +x_85 = lean_ctor_get(x_84, 3); +lean_inc(x_85); +if (lean_obj_tag(x_85) == 0) +{ +lean_dec(x_83); lean_dec(x_82); -x_84 = lean_ctor_get(x_2, 1); -lean_inc(x_84); -lean_inc(x_1); -x_85 = lean_apply_2(x_4, x_1, x_2); -x_86 = lean_ctor_get(x_85, 3); +lean_dec(x_1); +return x_84; +} +else +{ +lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_86 = lean_ctor_get(x_85, 0); lean_inc(x_86); -if (lean_obj_tag(x_86) == 0) -{ -lean_dec(x_84); -lean_dec(x_83); -lean_dec(x_1); -return x_85; -} -else -{ -lean_object* x_87; lean_object* x_88; uint8_t x_89; -x_87 = lean_ctor_get(x_86, 0); +lean_dec(x_85); +x_87 = lean_ctor_get(x_84, 1); lean_inc(x_87); -lean_dec(x_86); -x_88 = lean_ctor_get(x_85, 1); -lean_inc(x_88); -x_89 = lean_nat_dec_eq(x_88, x_84); -lean_dec(x_88); -if (x_89 == 0) -{ +x_88 = lean_nat_dec_eq(x_87, x_83); lean_dec(x_87); -lean_dec(x_84); +if (x_88 == 0) +{ +lean_dec(x_86); lean_dec(x_83); +lean_dec(x_82); lean_dec(x_1); -return x_85; +return x_84; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -lean_inc(x_84); -x_90 = l_Lean_Parser_ParserState_restore(x_85, x_83, x_84); -lean_dec(x_83); -x_91 = l_Lean_Parser_Term_leadPrec; -x_92 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_93 = l_Lean_Parser_checkPrecFn(x_91, x_92, x_1, x_90); -x_94 = lean_ctor_get(x_93, 3); -lean_inc(x_94); -if (lean_obj_tag(x_94) == 0) +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_inc(x_83); +x_89 = l_Lean_Parser_ParserState_restore(x_84, x_82, x_83); +lean_dec(x_82); +x_90 = l_Lean_Parser_Term_leadPrec; +x_91 = l_Lean_Parser_checkPrecFn(x_90, x_1, x_89); +x_92 = lean_ctor_get(x_91, 3); +lean_inc(x_92); +if (lean_obj_tag(x_92) == 0) { -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_132; lean_object* x_161; lean_object* x_162; lean_object* x_163; -x_95 = lean_ctor_get(x_93, 0); -lean_inc(x_95); -x_96 = lean_array_get_size(x_95); -lean_dec(x_95); -x_161 = lean_ctor_get(x_93, 1); -lean_inc(x_161); +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_130; lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_93 = lean_ctor_get(x_91, 0); +lean_inc(x_93); +x_94 = lean_array_get_size(x_93); +lean_dec(x_93); +x_159 = lean_ctor_get(x_91, 1); +lean_inc(x_159); lean_inc(x_1); -x_162 = l_Lean_Parser_tokenFn(x_1, x_93); -x_163 = lean_ctor_get(x_162, 3); -lean_inc(x_163); -if (lean_obj_tag(x_163) == 0) +x_160 = l_Lean_Parser_tokenFn(x_1, x_91); +x_161 = lean_ctor_get(x_160, 3); +lean_inc(x_161); +if (lean_obj_tag(x_161) == 0) { -lean_object* x_164; lean_object* x_165; -x_164 = lean_ctor_get(x_162, 0); +lean_object* x_162; lean_object* x_163; +x_162 = lean_ctor_get(x_160, 0); +lean_inc(x_162); +x_163 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_162); +lean_dec(x_162); +if (lean_obj_tag(x_163) == 2) +{ +lean_object* x_164; lean_object* x_165; uint8_t x_166; +x_164 = lean_ctor_get(x_163, 1); lean_inc(x_164); -x_165 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_164); +lean_dec(x_163); +x_165 = l_Lean_Parser_Term_have___elambda__1___closed__6; +x_166 = lean_string_dec_eq(x_164, x_165); lean_dec(x_164); -if (lean_obj_tag(x_165) == 2) +if (x_166 == 0) { -lean_object* x_166; lean_object* x_167; uint8_t x_168; -x_166 = lean_ctor_get(x_165, 1); -lean_inc(x_166); -lean_dec(x_165); -x_167 = l_Lean_Parser_Term_have___elambda__1___closed__6; -x_168 = lean_string_dec_eq(x_166, x_167); -lean_dec(x_166); -if (x_168 == 0) +lean_object* x_167; lean_object* x_168; +x_167 = l_Lean_Parser_Term_have___elambda__1___closed__9; +x_168 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_167, x_159); +x_130 = x_168; +goto block_158; +} +else +{ +lean_dec(x_159); +x_130 = x_160; +goto block_158; +} +} +else { lean_object* x_169; lean_object* x_170; +lean_dec(x_163); x_169 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_169, x_161); -x_132 = x_170; -goto block_160; -} -else -{ -lean_dec(x_161); -x_132 = x_162; -goto block_160; +x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_169, x_159); +x_130 = x_170; +goto block_158; } } else { lean_object* x_171; lean_object* x_172; -lean_dec(x_165); +lean_dec(x_161); x_171 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_172 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_171, x_161); -x_132 = x_172; -goto block_160; +x_172 = l_Lean_Parser_ParserState_mkErrorsAt(x_160, x_171, x_159); +x_130 = x_172; +goto block_158; } -} -else +block_129: { -lean_object* x_173; lean_object* x_174; -lean_dec(x_163); -x_173 = l_Lean_Parser_Term_have___elambda__1___closed__9; -x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_173, x_161); -x_132 = x_174; -goto block_160; -} -block_131: +lean_object* x_96; +x_96 = lean_ctor_get(x_95, 3); +lean_inc(x_96); +if (lean_obj_tag(x_96) == 0) { -lean_object* x_98; -x_98 = lean_ctor_get(x_97, 3); -lean_inc(x_98); -if (lean_obj_tag(x_98) == 0) -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_97, 1); -lean_inc(x_99); +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_95, 1); +lean_inc(x_97); lean_inc(x_1); -x_100 = l_Lean_Parser_tokenFn(x_1, x_97); -x_101 = lean_ctor_get(x_100, 3); -lean_inc(x_101); -if (lean_obj_tag(x_101) == 0) +x_98 = l_Lean_Parser_tokenFn(x_1, x_95); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { -lean_object* x_102; lean_object* x_103; -x_102 = lean_ctor_get(x_100, 0); +lean_object* x_100; lean_object* x_101; +x_100 = lean_ctor_get(x_98, 0); +lean_inc(x_100); +x_101 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_100); +lean_dec(x_100); +if (lean_obj_tag(x_101) == 2) +{ +lean_object* x_102; lean_object* x_103; uint8_t x_104; +x_102 = lean_ctor_get(x_101, 1); lean_inc(x_102); -x_103 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_102); +lean_dec(x_101); +x_103 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_104 = lean_string_dec_eq(x_102, x_103); lean_dec(x_102); -if (lean_obj_tag(x_103) == 2) +if (x_104 == 0) { -lean_object* x_104; lean_object* x_105; uint8_t x_106; -x_104 = lean_ctor_get(x_103, 1); -lean_inc(x_104); -lean_dec(x_103); -x_105 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_106 = lean_string_dec_eq(x_104, x_105); -lean_dec(x_104); -if (x_106 == 0) -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_dec(x_1); -x_107 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_107, x_99); -x_109 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_96); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_87, x_84); -lean_dec(x_84); -return x_111; +x_105 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_105, x_97); +x_107 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_94); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_86, x_83); +lean_dec(x_83); +return x_109; } else { -lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; -lean_dec(x_99); -x_112 = l_Lean_Parser_termParser___closed__2; -x_113 = lean_unsigned_to_nat(0u); -x_114 = l_Lean_Parser_categoryParser___elambda__1(x_112, x_113, x_1, x_100); -x_115 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_96); -x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_87, x_84); -lean_dec(x_84); -return x_117; +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_97); +x_110 = l_Lean_Parser_termParser___closed__2; +x_111 = lean_unsigned_to_nat(0u); +x_112 = l_Lean_Parser_categoryParser___elambda__1(x_110, x_111, x_1, x_98); +x_113 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_114 = l_Lean_Parser_ParserState_mkNode(x_112, x_113, x_94); +x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_86, x_83); +lean_dec(x_83); +return x_115; } } else { -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_103); -lean_dec(x_1); -x_118 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_119 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_118, x_99); -x_120 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_119, x_120, x_96); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_87, x_84); -lean_dec(x_84); -return x_122; -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_dec(x_101); lean_dec(x_1); -x_123 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_100, x_123, x_99); -x_125 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_96); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_87, x_84); -lean_dec(x_84); -return x_127; +x_116 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_116, x_97); +x_118 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_94); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_86, x_83); +lean_dec(x_83); +return x_120; } } else { -lean_object* x_128; lean_object* x_129; lean_object* x_130; -lean_dec(x_98); +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +lean_dec(x_99); lean_dec(x_1); -x_128 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_129 = l_Lean_Parser_ParserState_mkNode(x_97, x_128, x_96); -x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_87, x_84); -lean_dec(x_84); -return x_130; +x_121 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_98, x_121, x_97); +x_123 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_94); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_86, x_83); +lean_dec(x_83); +return x_125; } } -block_160: +else { -lean_object* x_133; +lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_96); +lean_dec(x_1); +x_126 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_127 = l_Lean_Parser_ParserState_mkNode(x_95, x_126, x_94); +x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_86, x_83); +lean_dec(x_83); +return x_128; +} +} +block_158: +{ +lean_object* x_131; +x_131 = lean_ctor_get(x_130, 3); +lean_inc(x_131); +if (lean_obj_tag(x_131) == 0) +{ +lean_object* x_132; lean_object* x_133; +lean_inc(x_1); +x_132 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_130); x_133 = lean_ctor_get(x_132, 3); lean_inc(x_133); if (lean_obj_tag(x_133) == 0) { -lean_object* x_134; lean_object* x_135; +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_134 = l_Lean_Parser_termParser___closed__2; +x_135 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_134 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_132); -x_135 = lean_ctor_get(x_134, 3); -lean_inc(x_135); -if (lean_obj_tag(x_135) == 0) +x_136 = l_Lean_Parser_categoryParser___elambda__1(x_134, x_135, x_1, x_132); +x_137 = lean_ctor_get(x_136, 3); +lean_inc(x_137); +if (lean_obj_tag(x_137) == 0) { -lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; -x_136 = l_Lean_Parser_termParser___closed__2; -x_137 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_138 = l_Lean_Parser_categoryParser___elambda__1(x_136, x_137, x_1, x_134); -x_139 = lean_ctor_get(x_138, 3); -lean_inc(x_139); -if (lean_obj_tag(x_139) == 0) -{ -lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; -x_140 = lean_ctor_get(x_138, 0); +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_138 = lean_ctor_get(x_136, 0); +lean_inc(x_138); +x_139 = lean_array_get_size(x_138); +lean_dec(x_138); +x_140 = lean_ctor_get(x_136, 1); lean_inc(x_140); -x_141 = lean_array_get_size(x_140); +lean_inc(x_1); +x_141 = l_Lean_Parser_Term_haveAssign___elambda__1(x_1, x_136); +x_142 = lean_ctor_get(x_141, 3); +lean_inc(x_142); +if (lean_obj_tag(x_142) == 0) +{ lean_dec(x_140); -x_142 = lean_ctor_get(x_138, 1); -lean_inc(x_142); -lean_inc(x_1); -x_143 = l_Lean_Parser_Term_haveAssign___elambda__1(x_1, x_138); -x_144 = lean_ctor_get(x_143, 3); -lean_inc(x_144); -if (lean_obj_tag(x_144) == 0) -{ -lean_dec(x_142); -lean_dec(x_141); -x_97 = x_143; -goto block_131; -} -else -{ -lean_object* x_145; lean_object* x_146; uint8_t x_147; -x_145 = lean_ctor_get(x_144, 0); -lean_inc(x_145); -lean_dec(x_144); -x_146 = lean_ctor_get(x_143, 1); -lean_inc(x_146); -x_147 = lean_nat_dec_eq(x_146, x_142); -lean_dec(x_146); -if (x_147 == 0) -{ -lean_dec(x_145); -lean_dec(x_142); -lean_dec(x_141); -x_97 = x_143; -goto block_131; -} -else -{ -lean_object* x_148; lean_object* x_149; lean_object* x_150; -lean_inc(x_142); -x_148 = l_Lean_Parser_ParserState_restore(x_143, x_141, x_142); -lean_dec(x_141); -lean_inc(x_1); -x_149 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_148); -x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_145, x_142); -lean_dec(x_142); -x_97 = x_150; -goto block_131; -} -} -} -else -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_dec(x_139); -lean_dec(x_1); -x_151 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_152 = l_Lean_Parser_ParserState_mkNode(x_138, x_151, x_96); -x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_87, x_84); -lean_dec(x_84); -return x_153; +x_95 = x_141; +goto block_129; +} +else +{ +lean_object* x_143; lean_object* x_144; uint8_t x_145; +x_143 = lean_ctor_get(x_142, 0); +lean_inc(x_143); +lean_dec(x_142); +x_144 = lean_ctor_get(x_141, 1); +lean_inc(x_144); +x_145 = lean_nat_dec_eq(x_144, x_140); +lean_dec(x_144); +if (x_145 == 0) +{ +lean_dec(x_143); +lean_dec(x_140); +lean_dec(x_139); +x_95 = x_141; +goto block_129; +} +else +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_inc(x_140); +x_146 = l_Lean_Parser_ParserState_restore(x_141, x_139, x_140); +lean_dec(x_139); +lean_inc(x_1); +x_147 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_146); +x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_143, x_140); +lean_dec(x_140); +x_95 = x_148; +goto block_129; +} } } else { -lean_object* x_154; lean_object* x_155; lean_object* x_156; -lean_dec(x_135); +lean_object* x_149; lean_object* x_150; lean_object* x_151; +lean_dec(x_137); lean_dec(x_1); -x_154 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_155 = l_Lean_Parser_ParserState_mkNode(x_134, x_154, x_96); -x_156 = l_Lean_Parser_mergeOrElseErrors(x_155, x_87, x_84); -lean_dec(x_84); -return x_156; +x_149 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_150 = l_Lean_Parser_ParserState_mkNode(x_136, x_149, x_94); +x_151 = l_Lean_Parser_mergeOrElseErrors(x_150, x_86, x_83); +lean_dec(x_83); +return x_151; } } else { -lean_object* x_157; lean_object* x_158; lean_object* x_159; +lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_dec(x_133); lean_dec(x_1); -x_157 = l_Lean_Parser_Term_have___elambda__1___closed__2; -x_158 = l_Lean_Parser_ParserState_mkNode(x_132, x_157, x_96); -x_159 = l_Lean_Parser_mergeOrElseErrors(x_158, x_87, x_84); -lean_dec(x_84); -return x_159; +x_152 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_153 = l_Lean_Parser_ParserState_mkNode(x_132, x_152, x_94); +x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_86, x_83); +lean_dec(x_83); +return x_154; +} +} +else +{ +lean_object* x_155; lean_object* x_156; lean_object* x_157; +lean_dec(x_131); +lean_dec(x_1); +x_155 = l_Lean_Parser_Term_have___elambda__1___closed__2; +x_156 = l_Lean_Parser_ParserState_mkNode(x_130, x_155, x_94); +x_157 = l_Lean_Parser_mergeOrElseErrors(x_156, x_86, x_83); +lean_dec(x_83); +return x_157; } } } else { -lean_object* x_175; -lean_dec(x_94); +lean_object* x_173; +lean_dec(x_92); lean_dec(x_1); -x_175 = l_Lean_Parser_mergeOrElseErrors(x_93, x_87, x_84); -lean_dec(x_84); -return x_175; +x_173 = l_Lean_Parser_mergeOrElseErrors(x_91, x_86, x_83); +lean_dec(x_83); +return x_173; } } } @@ -14922,495 +15187,493 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_54 = lean_ctor_get(x_8, 1); -lean_inc(x_54); -lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_8); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_suffices___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_54); -x_12 = x_63; -goto block_53; -} -else -{ -lean_dec(x_54); -x_12 = x_55; -goto block_53; -} -} -else -{ -lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_54); -x_12 = x_65; -goto block_53; -} -} -else -{ -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_54); -x_12 = x_67; -goto block_53; -} -block_53: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_termParser___closed__2; -x_17 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_18 = l_Lean_Parser_categoryParser___elambda__1(x_16, x_17, x_1, x_14); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -lean_inc(x_1); -x_20 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_18); -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_20); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_1); -x_30 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_32 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_22); -x_34 = l_Lean_Parser_categoryParser___elambda__1(x_16, x_17, x_1, x_23); -x_35 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_11); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_26); -lean_dec(x_1); -x_37 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_37, x_22); -x_39 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_24); -lean_dec(x_1); -x_41 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_42 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_41, x_22); -x_43 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_11); -return x_44; -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_21); -lean_dec(x_1); -x_45 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_20, x_45, x_11); -return x_46; -} -} -else -{ -lean_object* x_47; lean_object* x_48; -lean_dec(x_19); -lean_dec(x_1); -x_47 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_18, x_47, x_11); -return x_48; -} -} -else -{ -lean_object* x_49; lean_object* x_50; -lean_dec(x_15); -lean_dec(x_1); -x_49 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_50 = l_Lean_Parser_ParserState_mkNode(x_14, x_49, x_11); -return x_50; -} -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_13); -lean_dec(x_1); -x_51 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_12, x_51, x_11); -return x_52; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_53 = lean_ctor_get(x_7, 1); +lean_inc(x_53); +lean_inc(x_1); +x_54 = l_Lean_Parser_tokenFn(x_1, x_7); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; +x_56 = lean_ctor_get(x_54, 0); +lean_inc(x_56); +x_57 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_56); +lean_dec(x_56); +if (lean_obj_tag(x_57) == 2) +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +lean_dec(x_57); +x_59 = l_Lean_Parser_Term_suffices___elambda__1___closed__6; +x_60 = lean_string_dec_eq(x_58, x_59); +lean_dec(x_58); +if (x_60 == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_61, x_53); +x_11 = x_62; +goto block_52; +} +else +{ +lean_dec(x_53); +x_11 = x_54; +goto block_52; } } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_68 = lean_ctor_get(x_2, 0); -lean_inc(x_68); -x_69 = lean_array_get_size(x_68); +lean_object* x_63; lean_object* x_64; +lean_dec(x_57); +x_63 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_63, x_53); +x_11 = x_64; +goto block_52; +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_55); +x_65 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_65, x_53); +x_11 = x_66; +goto block_52; +} +block_52: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_inc(x_1); +x_19 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_17); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_19); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_1); +x_29 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_31 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_21); +x_33 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_22); +x_34 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_25); +lean_dec(x_1); +x_36 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_36, x_21); +x_38 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_dec(x_23); +lean_dec(x_1); +x_40 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_40, x_21); +x_42 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_10); +return x_43; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_20); +lean_dec(x_1); +x_44 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_19, x_44, x_10); +return x_45; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_18); +lean_dec(x_1); +x_46 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_17, x_46, x_10); +return x_47; +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_14); +lean_dec(x_1); +x_48 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_49 = l_Lean_Parser_ParserState_mkNode(x_13, x_48, x_10); +return x_49; +} +} +else +{ +lean_object* x_50; lean_object* x_51; +lean_dec(x_12); +lean_dec(x_1); +x_50 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_11, x_50, x_10); +return x_51; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_67 = lean_ctor_get(x_2, 0); +lean_inc(x_67); +x_68 = lean_array_get_size(x_67); +lean_dec(x_67); +x_69 = lean_ctor_get(x_2, 1); +lean_inc(x_69); +lean_inc(x_1); +x_70 = lean_apply_2(x_4, x_1, x_2); +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) +{ +lean_dec(x_69); lean_dec(x_68); -x_70 = lean_ctor_get(x_2, 1); -lean_inc(x_70); -lean_inc(x_1); -x_71 = lean_apply_2(x_4, x_1, x_2); -x_72 = lean_ctor_get(x_71, 3); +lean_dec(x_1); +return x_70; +} +else +{ +lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_72 = lean_ctor_get(x_71, 0); lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) -{ -lean_dec(x_70); -lean_dec(x_69); -lean_dec(x_1); -return x_71; -} -else -{ -lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_73 = lean_ctor_get(x_72, 0); +lean_dec(x_71); +x_73 = lean_ctor_get(x_70, 1); lean_inc(x_73); -lean_dec(x_72); -x_74 = lean_ctor_get(x_71, 1); -lean_inc(x_74); -x_75 = lean_nat_dec_eq(x_74, x_70); -lean_dec(x_74); -if (x_75 == 0) -{ +x_74 = lean_nat_dec_eq(x_73, x_69); lean_dec(x_73); -lean_dec(x_70); +if (x_74 == 0) +{ +lean_dec(x_72); lean_dec(x_69); +lean_dec(x_68); lean_dec(x_1); -return x_71; +return x_70; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -lean_inc(x_70); -x_76 = l_Lean_Parser_ParserState_restore(x_71, x_69, x_70); -lean_dec(x_69); -x_77 = l_Lean_Parser_Term_leadPrec; -x_78 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_79 = l_Lean_Parser_checkPrecFn(x_77, x_78, x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_inc(x_69); +x_75 = l_Lean_Parser_ParserState_restore(x_70, x_68, x_69); +lean_dec(x_68); +x_76 = l_Lean_Parser_Term_leadPrec; +x_77 = l_Lean_Parser_checkPrecFn(x_76, x_1, x_75); +x_78 = lean_ctor_get(x_77, 3); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_133; lean_object* x_134; lean_object* x_135; -x_81 = lean_ctor_get(x_79, 0); -lean_inc(x_81); -x_82 = lean_array_get_size(x_81); -lean_dec(x_81); -x_133 = lean_ctor_get(x_79, 1); -lean_inc(x_133); +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = lean_array_get_size(x_79); +lean_dec(x_79); +x_131 = lean_ctor_get(x_77, 1); +lean_inc(x_131); lean_inc(x_1); -x_134 = l_Lean_Parser_tokenFn(x_1, x_79); -x_135 = lean_ctor_get(x_134, 3); -lean_inc(x_135); -if (lean_obj_tag(x_135) == 0) +x_132 = l_Lean_Parser_tokenFn(x_1, x_77); +x_133 = lean_ctor_get(x_132, 3); +lean_inc(x_133); +if (lean_obj_tag(x_133) == 0) { -lean_object* x_136; lean_object* x_137; -x_136 = lean_ctor_get(x_134, 0); +lean_object* x_134; lean_object* x_135; +x_134 = lean_ctor_get(x_132, 0); +lean_inc(x_134); +x_135 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_134); +lean_dec(x_134); +if (lean_obj_tag(x_135) == 2) +{ +lean_object* x_136; lean_object* x_137; uint8_t x_138; +x_136 = lean_ctor_get(x_135, 1); lean_inc(x_136); -x_137 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_136); +lean_dec(x_135); +x_137 = l_Lean_Parser_Term_suffices___elambda__1___closed__6; +x_138 = lean_string_dec_eq(x_136, x_137); lean_dec(x_136); -if (lean_obj_tag(x_137) == 2) +if (x_138 == 0) { -lean_object* x_138; lean_object* x_139; uint8_t x_140; -x_138 = lean_ctor_get(x_137, 1); -lean_inc(x_138); -lean_dec(x_137); -x_139 = l_Lean_Parser_Term_suffices___elambda__1___closed__6; -x_140 = lean_string_dec_eq(x_138, x_139); -lean_dec(x_138); -if (x_140 == 0) +lean_object* x_139; lean_object* x_140; +x_139 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; +x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_139, x_131); +x_81 = x_140; +goto block_130; +} +else +{ +lean_dec(x_131); +x_81 = x_132; +goto block_130; +} +} +else { lean_object* x_141; lean_object* x_142; +lean_dec(x_135); x_141 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_141, x_133); -x_83 = x_142; -goto block_132; -} -else -{ -lean_dec(x_133); -x_83 = x_134; -goto block_132; +x_142 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_141, x_131); +x_81 = x_142; +goto block_130; } } else { lean_object* x_143; lean_object* x_144; -lean_dec(x_137); +lean_dec(x_133); x_143 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_144 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_143, x_133); -x_83 = x_144; -goto block_132; +x_144 = l_Lean_Parser_ParserState_mkErrorsAt(x_132, x_143, x_131); +x_81 = x_144; +goto block_130; } -} -else +block_130: { -lean_object* x_145; lean_object* x_146; -lean_dec(x_135); -x_145 = l_Lean_Parser_Term_suffices___elambda__1___closed__9; -x_146 = l_Lean_Parser_ParserState_mkErrorsAt(x_134, x_145, x_133); -x_83 = x_146; -goto block_132; -} -block_132: +lean_object* x_82; +x_82 = lean_ctor_get(x_81, 3); +lean_inc(x_82); +if (lean_obj_tag(x_82) == 0) { -lean_object* x_84; +lean_object* x_83; lean_object* x_84; +lean_inc(x_1); +x_83 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_81); x_84 = lean_ctor_get(x_83, 3); lean_inc(x_84); if (lean_obj_tag(x_84) == 0) { -lean_object* x_85; lean_object* x_86; +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_85 = l_Lean_Parser_termParser___closed__2; +x_86 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_85 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_83); -x_86 = lean_ctor_get(x_85, 3); -lean_inc(x_86); -if (lean_obj_tag(x_86) == 0) +x_87 = l_Lean_Parser_categoryParser___elambda__1(x_85, x_86, x_1, x_83); +x_88 = lean_ctor_get(x_87, 3); +lean_inc(x_88); +if (lean_obj_tag(x_88) == 0) { -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_87 = l_Lean_Parser_termParser___closed__2; -x_88 = lean_unsigned_to_nat(0u); +lean_object* x_89; lean_object* x_90; lean_inc(x_1); -x_89 = l_Lean_Parser_categoryParser___elambda__1(x_87, x_88, x_1, x_85); +x_89 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_87); x_90 = lean_ctor_get(x_89, 3); lean_inc(x_90); if (lean_obj_tag(x_90) == 0) { -lean_object* x_91; lean_object* x_92; +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_89, 1); +lean_inc(x_91); lean_inc(x_1); -x_91 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_89); -x_92 = lean_ctor_get(x_91, 3); -lean_inc(x_92); -if (lean_obj_tag(x_92) == 0) -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_93 = lean_ctor_get(x_91, 1); +x_92 = l_Lean_Parser_tokenFn(x_1, x_89); +x_93 = lean_ctor_get(x_92, 3); lean_inc(x_93); -lean_inc(x_1); -x_94 = l_Lean_Parser_tokenFn(x_1, x_91); -x_95 = lean_ctor_get(x_94, 3); -lean_inc(x_95); -if (lean_obj_tag(x_95) == 0) +if (lean_obj_tag(x_93) == 0) { -lean_object* x_96; lean_object* x_97; -x_96 = lean_ctor_get(x_94, 0); +lean_object* x_94; lean_object* x_95; +x_94 = lean_ctor_get(x_92, 0); +lean_inc(x_94); +x_95 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_94); +lean_dec(x_94); +if (lean_obj_tag(x_95) == 2) +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = lean_ctor_get(x_95, 1); lean_inc(x_96); -x_97 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_96); +lean_dec(x_95); +x_97 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_98 = lean_string_dec_eq(x_96, x_97); lean_dec(x_96); -if (lean_obj_tag(x_97) == 2) +if (x_98 == 0) { -lean_object* x_98; lean_object* x_99; uint8_t x_100; -x_98 = lean_ctor_get(x_97, 1); -lean_inc(x_98); -lean_dec(x_97); -x_99 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_100 = lean_string_dec_eq(x_98, x_99); -lean_dec(x_98); -if (x_100 == 0) -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_dec(x_1); -x_101 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_101, x_93); -x_103 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_82); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_73, x_70); -lean_dec(x_70); -return x_105; +x_99 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_99, x_91); +x_101 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_80); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_72, x_69); +lean_dec(x_69); +return x_103; } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_93); -x_106 = l_Lean_Parser_categoryParser___elambda__1(x_87, x_88, x_1, x_94); -x_107 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_82); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_73, x_70); -lean_dec(x_70); -return x_109; +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_91); +x_104 = l_Lean_Parser_categoryParser___elambda__1(x_85, x_86, x_1, x_92); +x_105 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_80); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_72, x_69); +lean_dec(x_69); +return x_107; } } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_dec(x_97); -lean_dec(x_1); -x_110 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_110, x_93); -x_112 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_113 = l_Lean_Parser_ParserState_mkNode(x_111, x_112, x_82); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_73, x_70); -lean_dec(x_70); -return x_114; -} -} -else -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_dec(x_95); lean_dec(x_1); -x_115 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_94, x_115, x_93); -x_117 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_118 = l_Lean_Parser_ParserState_mkNode(x_116, x_117, x_82); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_73, x_70); -lean_dec(x_70); -return x_119; +x_108 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_109 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_108, x_91); +x_110 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_111 = l_Lean_Parser_ParserState_mkNode(x_109, x_110, x_80); +x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_72, x_69); +lean_dec(x_69); +return x_112; } } else { -lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_92); +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_93); lean_dec(x_1); -x_120 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_91, x_120, x_82); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_73, x_70); -lean_dec(x_70); -return x_122; +x_113 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_113, x_91); +x_115 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_80); +x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_72, x_69); +lean_dec(x_69); +return x_117; } } else { -lean_object* x_123; lean_object* x_124; lean_object* x_125; +lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_dec(x_90); lean_dec(x_1); -x_123 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_124 = l_Lean_Parser_ParserState_mkNode(x_89, x_123, x_82); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_73, x_70); -lean_dec(x_70); -return x_125; +x_118 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_89, x_118, x_80); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_72, x_69); +lean_dec(x_69); +return x_120; } } else { -lean_object* x_126; lean_object* x_127; lean_object* x_128; -lean_dec(x_86); +lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_88); lean_dec(x_1); -x_126 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_127 = l_Lean_Parser_ParserState_mkNode(x_85, x_126, x_82); -x_128 = l_Lean_Parser_mergeOrElseErrors(x_127, x_73, x_70); -lean_dec(x_70); -return x_128; +x_121 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_122 = l_Lean_Parser_ParserState_mkNode(x_87, x_121, x_80); +x_123 = l_Lean_Parser_mergeOrElseErrors(x_122, x_72, x_69); +lean_dec(x_69); +return x_123; } } else { -lean_object* x_129; lean_object* x_130; lean_object* x_131; +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_dec(x_84); lean_dec(x_1); -x_129 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; -x_130 = l_Lean_Parser_ParserState_mkNode(x_83, x_129, x_82); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_130, x_73, x_70); -lean_dec(x_70); -return x_131; +x_124 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_125 = l_Lean_Parser_ParserState_mkNode(x_83, x_124, x_80); +x_126 = l_Lean_Parser_mergeOrElseErrors(x_125, x_72, x_69); +lean_dec(x_69); +return x_126; +} +} +else +{ +lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_82); +lean_dec(x_1); +x_127 = l_Lean_Parser_Term_suffices___elambda__1___closed__2; +x_128 = l_Lean_Parser_ParserState_mkNode(x_81, x_127, x_80); +x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_72, x_69); +lean_dec(x_69); +return x_129; } } } else { -lean_object* x_147; -lean_dec(x_80); +lean_object* x_145; +lean_dec(x_78); lean_dec(x_1); -x_147 = l_Lean_Parser_mergeOrElseErrors(x_79, x_73, x_70); -lean_dec(x_70); -return x_147; +x_145 = l_Lean_Parser_mergeOrElseErrors(x_77, x_72, x_69); +lean_dec(x_69); +return x_145; } } } @@ -15644,295 +15907,293 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_26 = lean_ctor_get(x_8, 1); -lean_inc(x_26); -lean_inc(x_1); -x_27 = l_Lean_Parser_tokenFn(x_1, x_8); -x_28 = lean_ctor_get(x_27, 3); -lean_inc(x_28); -if (lean_obj_tag(x_28) == 0) -{ -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_27, 0); -lean_inc(x_29); -x_30 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_29); -lean_dec(x_29); -if (lean_obj_tag(x_30) == 2) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = l_Lean_Parser_Term_show___elambda__1___closed__6; -x_33 = lean_string_dec_eq(x_31, x_32); -lean_dec(x_31); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; -x_34 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_34, x_26); -x_12 = x_35; -goto block_25; -} -else -{ -lean_dec(x_26); -x_12 = x_27; -goto block_25; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_30); -x_36 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_36, x_26); -x_12 = x_37; -goto block_25; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_28); -x_38 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_38, x_26); -x_12 = x_39; -goto block_25; -} -block_25: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_16); -x_19 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_18, x_19, x_11); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; -lean_dec(x_17); -lean_dec(x_1); -x_21 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_16, x_21, x_11); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_13); -lean_dec(x_1); -x_23 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_12, x_23, x_11); -return x_24; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_25 = lean_ctor_get(x_7, 1); +lean_inc(x_25); +lean_inc(x_1); +x_26 = l_Lean_Parser_tokenFn(x_1, x_7); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_28); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 2) +{ +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = l_Lean_Parser_Term_show___elambda__1___closed__6; +x_32 = lean_string_dec_eq(x_30, x_31); +lean_dec(x_30); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = l_Lean_Parser_Term_show___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_33, x_25); +x_11 = x_34; +goto block_24; +} +else +{ +lean_dec(x_25); +x_11 = x_26; +goto block_24; } } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_40 = lean_ctor_get(x_2, 0); -lean_inc(x_40); -x_41 = lean_array_get_size(x_40); +lean_object* x_35; lean_object* x_36; +lean_dec(x_29); +x_35 = l_Lean_Parser_Term_show___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_35, x_25); +x_11 = x_36; +goto block_24; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_27); +x_37 = l_Lean_Parser_Term_show___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_26, x_37, x_25); +x_11 = x_38; +goto block_24; +} +block_24: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_15); +x_18 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_15, x_20, x_10); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_12); +lean_dec(x_1); +x_22 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_11, x_22, x_10); +return x_23; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_2, 0); +lean_inc(x_39); +x_40 = lean_array_get_size(x_39); +lean_dec(x_39); +x_41 = lean_ctor_get(x_2, 1); +lean_inc(x_41); +lean_inc(x_1); +x_42 = lean_apply_2(x_4, x_1, x_2); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_dec(x_41); lean_dec(x_40); -x_42 = lean_ctor_get(x_2, 1); -lean_inc(x_42); -lean_inc(x_1); -x_43 = lean_apply_2(x_4, x_1, x_2); -x_44 = lean_ctor_get(x_43, 3); +lean_dec(x_1); +return x_42; +} +else +{ +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = lean_ctor_get(x_43, 0); lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_dec(x_42); -lean_dec(x_41); -lean_dec(x_1); -return x_43; -} -else -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 0); +lean_dec(x_43); +x_45 = lean_ctor_get(x_42, 1); lean_inc(x_45); -lean_dec(x_44); -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); -x_47 = lean_nat_dec_eq(x_46, x_42); -lean_dec(x_46); -if (x_47 == 0) -{ +x_46 = lean_nat_dec_eq(x_45, x_41); lean_dec(x_45); -lean_dec(x_42); +if (x_46 == 0) +{ +lean_dec(x_44); lean_dec(x_41); +lean_dec(x_40); lean_dec(x_1); -return x_43; +return x_42; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -lean_inc(x_42); -x_48 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); -lean_dec(x_41); -x_49 = l_Lean_Parser_Term_leadPrec; -x_50 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_51 = l_Lean_Parser_checkPrecFn(x_49, x_50, x_1, x_48); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_inc(x_41); +x_47 = l_Lean_Parser_ParserState_restore(x_42, x_40, x_41); +lean_dec(x_40); +x_48 = l_Lean_Parser_Term_leadPrec; +x_49 = l_Lean_Parser_checkPrecFn(x_48, x_1, x_47); +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = lean_array_get_size(x_53); -lean_dec(x_53); -x_72 = lean_ctor_get(x_51, 1); -lean_inc(x_72); +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_51 = lean_ctor_get(x_49, 0); +lean_inc(x_51); +x_52 = lean_array_get_size(x_51); +lean_dec(x_51); +x_70 = lean_ctor_get(x_49, 1); +lean_inc(x_70); lean_inc(x_1); -x_73 = l_Lean_Parser_tokenFn(x_1, x_51); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) +x_71 = l_Lean_Parser_tokenFn(x_1, x_49); +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_73, 0); +lean_object* x_73; lean_object* x_74; +x_73 = lean_ctor_get(x_71, 0); +lean_inc(x_73); +x_74 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_73); +lean_dec(x_73); +if (lean_obj_tag(x_74) == 2) +{ +lean_object* x_75; lean_object* x_76; uint8_t x_77; +x_75 = lean_ctor_get(x_74, 1); lean_inc(x_75); -x_76 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_75); +lean_dec(x_74); +x_76 = l_Lean_Parser_Term_show___elambda__1___closed__6; +x_77 = lean_string_dec_eq(x_75, x_76); lean_dec(x_75); -if (lean_obj_tag(x_76) == 2) +if (x_77 == 0) { -lean_object* x_77; lean_object* x_78; uint8_t x_79; -x_77 = lean_ctor_get(x_76, 1); -lean_inc(x_77); -lean_dec(x_76); -x_78 = l_Lean_Parser_Term_show___elambda__1___closed__6; -x_79 = lean_string_dec_eq(x_77, x_78); -lean_dec(x_77); -if (x_79 == 0) +lean_object* x_78; lean_object* x_79; +x_78 = l_Lean_Parser_Term_show___elambda__1___closed__9; +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_78, x_70); +x_53 = x_79; +goto block_69; +} +else +{ +lean_dec(x_70); +x_53 = x_71; +goto block_69; +} +} +else { lean_object* x_80; lean_object* x_81; +lean_dec(x_74); x_80 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_80, x_72); -x_55 = x_81; -goto block_71; -} -else -{ -lean_dec(x_72); -x_55 = x_73; -goto block_71; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_80, x_70); +x_53 = x_81; +goto block_69; } } else { lean_object* x_82; lean_object* x_83; -lean_dec(x_76); +lean_dec(x_72); x_82 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_82, x_72); -x_55 = x_83; -goto block_71; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_71, x_82, x_70); +x_53 = x_83; +goto block_69; } -} -else +block_69: { -lean_object* x_84; lean_object* x_85; -lean_dec(x_74); -x_84 = l_Lean_Parser_Term_show___elambda__1___closed__9; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_84, x_72); -x_55 = x_85; -goto block_71; -} -block_71: +lean_object* x_54; +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) { -lean_object* x_56; -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_57 = l_Lean_Parser_termParser___closed__2; -x_58 = lean_unsigned_to_nat(0u); +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Parser_termParser___closed__2; +x_56 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_59 = l_Lean_Parser_categoryParser___elambda__1(x_57, x_58, x_1, x_55); -x_60 = lean_ctor_get(x_59, 3); -lean_inc(x_60); -if (lean_obj_tag(x_60) == 0) +x_57 = l_Lean_Parser_categoryParser___elambda__1(x_55, x_56, x_1, x_53); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_61 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_59); -x_62 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_54); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_45, x_42); -lean_dec(x_42); -return x_64; +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_59 = l_Lean_Parser_Term_fromTerm___elambda__1(x_1, x_57); +x_60 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_52); +x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_44, x_41); +lean_dec(x_41); +return x_62; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_60); +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_58); lean_dec(x_1); -x_65 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_59, x_65, x_54); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_45, x_42); -lean_dec(x_42); -return x_67; +x_63 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_64 = l_Lean_Parser_ParserState_mkNode(x_57, x_63, x_52); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_44, x_41); +lean_dec(x_41); +return x_65; } } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_56); +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_54); lean_dec(x_1); -x_68 = l_Lean_Parser_Term_show___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_55, x_68, x_54); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_45, x_42); -lean_dec(x_42); -return x_70; +x_66 = l_Lean_Parser_Term_show___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_53, x_66, x_52); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_44, x_41); +lean_dec(x_41); +return x_68; } } } else { -lean_object* x_86; -lean_dec(x_52); +lean_object* x_84; +lean_dec(x_50); lean_dec(x_1); -x_86 = l_Lean_Parser_mergeOrElseErrors(x_51, x_45, x_42); -lean_dec(x_42); -return x_86; +x_84 = l_Lean_Parser_mergeOrElseErrors(x_49, x_44, x_41); +lean_dec(x_41); +return x_84; } } } @@ -16177,381 +16438,412 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_41 = lean_ctor_get(x_2, 1); -lean_inc(x_41); -lean_inc(x_1); -x_42 = l_Lean_Parser_tokenFn(x_1, x_2); -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_42, 0); -lean_inc(x_44); -x_45 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_44); -lean_dec(x_44); -if (lean_obj_tag(x_45) == 2) -{ -lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_46 = lean_ctor_get(x_45, 1); -lean_inc(x_46); -lean_dec(x_45); -x_47 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_48 = lean_string_dec_eq(x_46, x_47); -lean_dec(x_46); -if (x_48 == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_49, x_41); -x_8 = x_50; -goto block_40; -} -else -{ -lean_dec(x_41); -x_8 = x_42; -goto block_40; -} -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_45); -x_51 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_51, x_41); -x_8 = x_52; -goto block_40; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_43); -x_53 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_53, x_41); -x_8 = x_54; -goto block_40; -} -block_40: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_44 = lean_ctor_get(x_7, 1); +lean_inc(x_44); lean_inc(x_1); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_45 = l_Lean_Parser_tokenFn(x_1, x_7); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 2) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_51 = lean_string_dec_eq(x_49, x_50); +lean_dec(x_49); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); +x_11 = x_53; +goto block_43; +} +else +{ +lean_dec(x_44); +x_11 = x_45; +goto block_43; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +x_54 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); +x_11 = x_55; +goto block_43; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_46); +x_56 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); +x_11 = x_57; +goto block_43; +} +block_43: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); x_16 = lean_ctor_get(x_15, 3); lean_inc(x_16); if (lean_obj_tag(x_16) == 0) { -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_21 = lean_string_dec_eq(x_19, x_20); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); +x_27 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_29 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_21); +x_31 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); +x_33 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_7); -return x_27; +x_35 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); +x_37 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; } } else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_object* x_39; lean_object* x_40; lean_dec(x_16); -x_32 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_13); lean_dec(x_1); -x_36 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_7); -return x_37; +x_39 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_10); +return x_40; } } else { -lean_object* x_38; lean_object* x_39; -lean_dec(x_9); +lean_object* x_41; lean_object* x_42; +lean_dec(x_12); lean_dec(x_1); -x_38 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_8, x_38, x_7); -return x_39; +x_41 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; } } } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_55 = lean_ctor_get(x_2, 0); -lean_inc(x_55); -x_56 = lean_array_get_size(x_55); -lean_dec(x_55); -x_57 = lean_ctor_get(x_2, 1); -lean_inc(x_57); -lean_inc(x_1); -x_58 = lean_apply_2(x_4, x_1, x_2); -x_59 = lean_ctor_get(x_58, 3); -lean_inc(x_59); -if (lean_obj_tag(x_59) == 0) -{ -lean_dec(x_57); -lean_dec(x_56); +lean_dec(x_8); lean_dec(x_1); -return x_58; +return x_7; +} } else { -lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_60 = lean_ctor_get(x_59, 0); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_58 = lean_ctor_get(x_2, 0); +lean_inc(x_58); +x_59 = lean_array_get_size(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_2, 1); lean_inc(x_60); -lean_dec(x_59); -x_61 = lean_ctor_get(x_58, 1); -lean_inc(x_61); -x_62 = lean_nat_dec_eq(x_61, x_57); -lean_dec(x_61); -if (x_62 == 0) +lean_inc(x_1); +x_61 = lean_apply_2(x_4, x_1, x_2); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { lean_dec(x_60); -lean_dec(x_57); -lean_dec(x_56); +lean_dec(x_59); lean_dec(x_1); -return x_58; +return x_61; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_105; lean_object* x_106; -lean_inc(x_57); -x_63 = l_Lean_Parser_ParserState_restore(x_58, x_56, x_57); -lean_dec(x_56); -x_64 = lean_ctor_get(x_63, 0); +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +lean_dec(x_62); +x_64 = lean_ctor_get(x_61, 1); lean_inc(x_64); -x_65 = lean_array_get_size(x_64); +x_65 = lean_nat_dec_eq(x_64, x_60); lean_dec(x_64); +if (x_65 == 0) +{ +lean_dec(x_63); +lean_dec(x_60); +lean_dec(x_59); +lean_dec(x_1); +return x_61; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_inc(x_60); +x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); +lean_dec(x_59); +x_67 = lean_unsigned_to_nat(1024u); +x_68 = l_Lean_Parser_checkPrecFn(x_67, x_1, x_66); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); +x_111 = lean_ctor_get(x_68, 1); +lean_inc(x_111); lean_inc(x_1); -x_105 = l_Lean_Parser_tokenFn(x_1, x_63); -x_106 = lean_ctor_get(x_105, 3); -lean_inc(x_106); -if (lean_obj_tag(x_106) == 0) -{ -lean_object* x_107; lean_object* x_108; -x_107 = lean_ctor_get(x_105, 0); -lean_inc(x_107); -x_108 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_107); -lean_dec(x_107); -if (lean_obj_tag(x_108) == 2) -{ -lean_object* x_109; lean_object* x_110; uint8_t x_111; -x_109 = lean_ctor_get(x_108, 1); -lean_inc(x_109); -lean_dec(x_108); -x_110 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_111 = lean_string_dec_eq(x_109, x_110); -lean_dec(x_109); -if (x_111 == 0) -{ -lean_object* x_112; lean_object* x_113; -x_112 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_57); -x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_112, x_57); -x_66 = x_113; -goto block_104; -} -else -{ -x_66 = x_105; -goto block_104; -} -} -else +x_112 = l_Lean_Parser_tokenFn(x_1, x_68); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) { lean_object* x_114; lean_object* x_115; -lean_dec(x_108); -x_114 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_57); -x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_114, x_57); -x_66 = x_115; -goto block_104; +x_114 = lean_ctor_get(x_112, 0); +lean_inc(x_114); +x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_114); +if (lean_obj_tag(x_115) == 2) +{ +lean_object* x_116; lean_object* x_117; uint8_t x_118; +x_116 = lean_ctor_get(x_115, 1); +lean_inc(x_116); +lean_dec(x_115); +x_117 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_118 = lean_string_dec_eq(x_116, x_117); +lean_dec(x_116); +if (x_118 == 0) +{ +lean_object* x_119; lean_object* x_120; +x_119 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); +x_72 = x_120; +goto block_110; +} +else +{ +lean_dec(x_111); +x_72 = x_112; +goto block_110; } } else { -lean_object* x_116; lean_object* x_117; -lean_dec(x_106); -x_116 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_57); -x_117 = l_Lean_Parser_ParserState_mkErrorsAt(x_105, x_116, x_57); -x_66 = x_117; -goto block_104; +lean_object* x_121; lean_object* x_122; +lean_dec(x_115); +x_121 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); +x_72 = x_122; +goto block_110; } -block_104: +} +else { -lean_object* x_67; -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) +lean_object* x_123; lean_object* x_124; +lean_dec(x_113); +x_123 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); +x_72 = x_124; +goto block_110; +} +block_110: { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_68 = l_Lean_Parser_termParser___closed__2; -x_69 = lean_unsigned_to_nat(0u); +lean_object* x_73; +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_74 = l_Lean_Parser_termParser___closed__2; +x_75 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_70 = l_Lean_Parser_categoryParser___elambda__1(x_68, x_69, x_1, x_66); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_72 = lean_ctor_get(x_70, 1); -lean_inc(x_72); -x_73 = l_Lean_Parser_tokenFn(x_1, x_70); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_73, 0); -lean_inc(x_75); -x_76 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_75); -lean_dec(x_75); -if (lean_obj_tag(x_76) == 2) -{ -lean_object* x_77; lean_object* x_78; uint8_t x_79; -x_77 = lean_ctor_get(x_76, 1); +x_76 = l_Lean_Parser_categoryParser___elambda__1(x_74, x_75, x_1, x_72); +x_77 = lean_ctor_get(x_76, 3); lean_inc(x_77); -lean_dec(x_76); -x_78 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_79 = lean_string_dec_eq(x_77, x_78); -lean_dec(x_77); -if (x_79 == 0) +if (lean_obj_tag(x_77) == 0) { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_80 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_80, x_72); -x_82 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_65); -x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_60, x_57); -lean_dec(x_57); -return x_84; +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_76, 1); +lean_inc(x_78); +x_79 = l_Lean_Parser_tokenFn(x_1, x_76); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) +{ +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); +lean_dec(x_81); +if (lean_obj_tag(x_82) == 2) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_83 = lean_ctor_get(x_82, 1); +lean_inc(x_83); +lean_dec(x_82); +x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_85 = lean_string_dec_eq(x_83, x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_86 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); +x_88 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_71); +x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); +lean_dec(x_60); +return x_90; } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_72); -x_85 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_73, x_85, x_65); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_60, x_57); -lean_dec(x_57); -return x_87; +lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_78); +x_91 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_71); +x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); +lean_dec(x_60); +return x_93; } } else { -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; -lean_dec(x_76); -x_88 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_88, x_72); -x_90 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_65); -x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_60, x_57); -lean_dec(x_57); -return x_92; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_82); +x_94 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); +x_96 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_71); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); +lean_dec(x_60); +return x_98; } } else { -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_74); -x_93 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_93, x_72); -x_95 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_65); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_60, x_57); -lean_dec(x_57); -return x_97; -} -} -else -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_71); -lean_dec(x_1); -x_98 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_99 = l_Lean_Parser_ParserState_mkNode(x_70, x_98, x_65); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_60, x_57); -lean_dec(x_57); -return x_100; -} -} -else -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_67); -lean_dec(x_1); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_80); +x_99 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); x_101 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_66, x_101, x_65); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_60, x_57); -lean_dec(x_57); +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_71); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); +lean_dec(x_60); return x_103; } } +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_77); +lean_dec(x_1); +x_104 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_71); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); +lean_dec(x_60); +return x_106; +} +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_73); +lean_dec(x_1); +x_107 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_72, x_107, x_71); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); +lean_dec(x_60); +return x_109; +} +} +} +else +{ +lean_object* x_125; +lean_dec(x_69); +lean_dec(x_1); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_68, x_63, x_60); +lean_dec(x_60); +return x_125; +} } } } @@ -16610,16 +16902,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__6() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_structInstArrayRef___closed__5; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__7() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_structInstArrayRef___closed__5; +x_3 = l_Lean_Parser_Term_structInstArrayRef___closed__6; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__7() { +lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__8() { _start: { lean_object* x_1; @@ -16627,12 +16929,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_structInstArrayRef___elambda return x_1; } } -lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__8() { +lean_object* _init_l_Lean_Parser_Term_structInstArrayRef___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_structInstArrayRef___closed__6; -x_2 = l_Lean_Parser_Term_structInstArrayRef___closed__7; +x_1 = l_Lean_Parser_Term_structInstArrayRef___closed__7; +x_2 = l_Lean_Parser_Term_structInstArrayRef___closed__8; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -16643,7 +16945,7 @@ lean_object* _init_l_Lean_Parser_Term_structInstArrayRef() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_structInstArrayRef___closed__8; +x_1 = l_Lean_Parser_Term_structInstArrayRef___closed__9; return x_1; } } @@ -17341,238 +17643,269 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_Term_structInstLVal___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); -lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_11 = l_Lean_Parser_tokenFn(x_1, x_8); +x_11 = l_Lean_Parser_Term_structInstLVal___elambda__1(x_1, x_7); x_12 = lean_ctor_get(x_11, 3); lean_inc(x_12); if (lean_obj_tag(x_12) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_11, 0); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_13); -lean_dec(x_13); -if (lean_obj_tag(x_14) == 2) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_1); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_17 = lean_string_dec_eq(x_15, x_16); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_1); +x_21 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_13); +x_25 = l_Lean_Parser_termParser___closed__2; +x_26 = lean_unsigned_to_nat(0u); +x_27 = l_Lean_Parser_categoryParser___elambda__1(x_25, x_26, x_1, x_14); +x_28 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_17); +lean_dec(x_1); +x_30 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_30, x_13); +x_32 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_dec(x_15); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_dec(x_1); -x_18 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_19 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_18, x_10); -x_20 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_10); -x_22 = l_Lean_Parser_termParser___closed__2; -x_23 = lean_unsigned_to_nat(0u); -x_24 = l_Lean_Parser_categoryParser___elambda__1(x_22, x_23, x_1, x_11); -x_25 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_7); -return x_26; +x_34 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_34, x_13); +x_36 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; } } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_14); -lean_dec(x_1); -x_27 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_27, x_10); -x_29 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_7); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_object* x_38; lean_object* x_39; lean_dec(x_12); lean_dec(x_1); -x_31 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_31, x_10); -x_33 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_7); -return x_34; +x_38 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_11, x_38, x_10); +return x_39; } } else { -lean_object* x_35; lean_object* x_36; -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -x_35 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_8, x_35, x_7); -return x_36; +return x_7; } } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = lean_ctor_get(x_2, 0); -lean_inc(x_37); -x_38 = lean_array_get_size(x_37); -lean_dec(x_37); -x_39 = lean_ctor_get(x_2, 1); -lean_inc(x_39); -lean_inc(x_1); -x_40 = lean_apply_2(x_4, x_1, x_2); -x_41 = lean_ctor_get(x_40, 3); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) -{ -lean_dec(x_39); -lean_dec(x_38); -lean_dec(x_1); -return x_40; -} -else -{ -lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_42 = lean_ctor_get(x_41, 0); +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_40 = lean_ctor_get(x_2, 0); +lean_inc(x_40); +x_41 = lean_array_get_size(x_40); +lean_dec(x_40); +x_42 = lean_ctor_get(x_2, 1); lean_inc(x_42); -lean_dec(x_41); -x_43 = lean_ctor_get(x_40, 1); -lean_inc(x_43); -x_44 = lean_nat_dec_eq(x_43, x_39); -lean_dec(x_43); -if (x_44 == 0) +lean_inc(x_1); +x_43 = lean_apply_2(x_4, x_1, x_2); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { lean_dec(x_42); -lean_dec(x_39); -lean_dec(x_38); +lean_dec(x_41); lean_dec(x_1); -return x_40; +return x_43; } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_inc(x_39); -x_45 = l_Lean_Parser_ParserState_restore(x_40, x_38, x_39); -lean_dec(x_38); -x_46 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +lean_dec(x_44); +x_46 = lean_ctor_get(x_43, 1); lean_inc(x_46); -x_47 = lean_array_get_size(x_46); +x_47 = lean_nat_dec_eq(x_46, x_42); lean_dec(x_46); -lean_inc(x_1); -x_48 = l_Lean_Parser_Term_structInstLVal___elambda__1(x_1, x_45); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -if (lean_obj_tag(x_49) == 0) +if (x_47 == 0) { -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_48, 1); -lean_inc(x_50); -lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_48); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_45); +lean_dec(x_42); +lean_dec(x_41); lean_dec(x_1); -x_58 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_50); -x_60 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_47); -x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_42, x_39); -lean_dec(x_39); -return x_62; +return x_43; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; -lean_dec(x_50); -x_63 = l_Lean_Parser_termParser___closed__2; -x_64 = lean_unsigned_to_nat(0u); -x_65 = l_Lean_Parser_categoryParser___elambda__1(x_63, x_64, x_1, x_51); +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_inc(x_42); +x_48 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); +lean_dec(x_41); +x_49 = lean_unsigned_to_nat(1024u); +x_50 = l_Lean_Parser_checkPrecFn(x_49, x_1, x_48); +x_51 = lean_ctor_get(x_50, 3); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_52 = lean_ctor_get(x_50, 0); +lean_inc(x_52); +x_53 = lean_array_get_size(x_52); +lean_dec(x_52); +lean_inc(x_1); +x_54 = l_Lean_Parser_Term_structInstLVal___elambda__1(x_1, x_50); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_54, 1); +lean_inc(x_56); +lean_inc(x_1); +x_57 = l_Lean_Parser_tokenFn(x_1, x_54); +x_58 = lean_ctor_get(x_57, 3); +lean_inc(x_58); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_59); +lean_dec(x_59); +if (lean_obj_tag(x_60) == 2) +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 1); +lean_inc(x_61); +lean_dec(x_60); +x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_63 = lean_string_dec_eq(x_61, x_62); +lean_dec(x_61); +if (x_63 == 0) +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_1); +x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_56); x_66 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_47); -x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_42, x_39); -lean_dec(x_39); +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_53); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_45, x_42); +lean_dec(x_42); return x_68; } -} else { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_54); -lean_dec(x_1); -x_69 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_69, x_50); -x_71 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_72 = l_Lean_Parser_ParserState_mkNode(x_70, x_71, x_47); -x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_42, x_39); -lean_dec(x_39); -return x_73; +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_dec(x_56); +x_69 = l_Lean_Parser_termParser___closed__2; +x_70 = lean_unsigned_to_nat(0u); +x_71 = l_Lean_Parser_categoryParser___elambda__1(x_69, x_70, x_1, x_57); +x_72 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_73 = l_Lean_Parser_ParserState_mkNode(x_71, x_72, x_53); +x_74 = l_Lean_Parser_mergeOrElseErrors(x_73, x_45, x_42); +lean_dec(x_42); +return x_74; } } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_dec(x_52); +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_dec(x_60); lean_dec(x_1); -x_74 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_74, x_50); -x_76 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_77 = l_Lean_Parser_ParserState_mkNode(x_75, x_76, x_47); -x_78 = l_Lean_Parser_mergeOrElseErrors(x_77, x_42, x_39); -lean_dec(x_39); -return x_78; +x_75 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_75, x_56); +x_77 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_78 = l_Lean_Parser_ParserState_mkNode(x_76, x_77, x_53); +x_79 = l_Lean_Parser_mergeOrElseErrors(x_78, x_45, x_42); +lean_dec(x_42); +return x_79; } } else { -lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_49); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +lean_dec(x_58); lean_dec(x_1); -x_79 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; -x_80 = l_Lean_Parser_ParserState_mkNode(x_48, x_79, x_47); -x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_42, x_39); -lean_dec(x_39); -return x_81; +x_80 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_80, x_56); +x_82 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_53); +x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_45, x_42); +lean_dec(x_42); +return x_84; +} +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_55); +lean_dec(x_1); +x_85 = l_Lean_Parser_Term_structInstField___elambda__1___closed__2; +x_86 = l_Lean_Parser_ParserState_mkNode(x_54, x_85, x_53); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_45, x_42); +lean_dec(x_42); +return x_87; +} +} +else +{ +lean_object* x_88; +lean_dec(x_51); +lean_dec(x_1); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_50, x_45, x_42); +lean_dec(x_42); +return x_88; } } } @@ -17604,16 +17937,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_structInstField___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_structInstField___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_structInstField___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_structInstField___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_structInstField___closed__2; +x_3 = l_Lean_Parser_Term_structInstField___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_structInstField___closed__4() { +lean_object* _init_l_Lean_Parser_Term_structInstField___closed__5() { _start: { lean_object* x_1; @@ -17621,12 +17964,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_structInstField___elambda__1 return x_1; } } -lean_object* _init_l_Lean_Parser_Term_structInstField___closed__5() { +lean_object* _init_l_Lean_Parser_Term_structInstField___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_structInstField___closed__3; -x_2 = l_Lean_Parser_Term_structInstField___closed__4; +x_1 = l_Lean_Parser_Term_structInstField___closed__4; +x_2 = l_Lean_Parser_Term_structInstField___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -17637,7 +17980,7 @@ lean_object* _init_l_Lean_Parser_Term_structInstField() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_structInstField___closed__5; +x_1 = l_Lean_Parser_Term_structInstField___closed__6; return x_1; } } @@ -18048,1427 +18391,1425 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_38; lean_object* x_82; lean_object* x_120; lean_object* x_184; lean_object* x_185; lean_object* x_186; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_39; lean_object* x_83; lean_object* x_121; lean_object* x_185; lean_object* x_186; lean_object* x_187; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_185 = lean_ctor_get(x_8, 1); -lean_inc(x_185); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_184 = lean_ctor_get(x_7, 1); +lean_inc(x_184); lean_inc(x_1); -x_186 = l_Lean_Parser_tokenFn(x_1, x_8); -x_187 = lean_ctor_get(x_186, 3); +x_185 = l_Lean_Parser_tokenFn(x_1, x_7); +x_186 = lean_ctor_get(x_185, 3); +lean_inc(x_186); +if (lean_obj_tag(x_186) == 0) +{ +lean_object* x_187; lean_object* x_188; +x_187 = lean_ctor_get(x_185, 0); lean_inc(x_187); -if (lean_obj_tag(x_187) == 0) -{ -lean_object* x_188; lean_object* x_189; -x_188 = lean_ctor_get(x_186, 0); -lean_inc(x_188); -x_189 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_188); -lean_dec(x_188); -if (lean_obj_tag(x_189) == 2) -{ -lean_object* x_190; lean_object* x_191; uint8_t x_192; -x_190 = lean_ctor_get(x_189, 1); -lean_inc(x_190); -lean_dec(x_189); -x_191 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_192 = lean_string_dec_eq(x_190, x_191); -lean_dec(x_190); -if (x_192 == 0) -{ -lean_object* x_193; lean_object* x_194; -x_193 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_194 = l_Lean_Parser_ParserState_mkErrorsAt(x_186, x_193, x_185); -x_121 = x_194; -goto block_184; -} -else -{ -lean_dec(x_185); -x_121 = x_186; -goto block_184; -} -} -else -{ -lean_object* x_195; lean_object* x_196; -lean_dec(x_189); -x_195 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_196 = l_Lean_Parser_ParserState_mkErrorsAt(x_186, x_195, x_185); -x_121 = x_196; -goto block_184; -} -} -else -{ -lean_object* x_197; lean_object* x_198; +x_188 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_187); lean_dec(x_187); -x_197 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_198 = l_Lean_Parser_ParserState_mkErrorsAt(x_186, x_197, x_185); -x_121 = x_198; -goto block_184; -} -block_38: +if (lean_obj_tag(x_188) == 2) { -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); +lean_object* x_189; lean_object* x_190; uint8_t x_191; +x_189 = lean_ctor_get(x_188, 1); +lean_inc(x_189); +lean_dec(x_188); +x_190 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_191 = lean_string_dec_eq(x_189, x_190); +lean_dec(x_189); +if (x_191 == 0) +{ +lean_object* x_192; lean_object* x_193; +x_192 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_193 = l_Lean_Parser_ParserState_mkErrorsAt(x_185, x_192, x_184); +x_120 = x_193; +goto block_183; +} +else +{ +lean_dec(x_184); +x_120 = x_185; +goto block_183; +} +} +else +{ +lean_object* x_194; lean_object* x_195; +lean_dec(x_188); +x_194 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_195 = l_Lean_Parser_ParserState_mkErrorsAt(x_185, x_194, x_184); +x_120 = x_195; +goto block_183; +} +} +else +{ +lean_object* x_196; lean_object* x_197; +lean_dec(x_186); +x_196 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_197 = l_Lean_Parser_ParserState_mkErrorsAt(x_185, x_196, x_184); +x_120 = x_197; +goto block_183; +} +block_37: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_11); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); lean_dec(x_16); -x_32 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_10); +return x_24; } else { -lean_object* x_36; lean_object* x_37; +lean_object* x_25; lean_object* x_26; lean_dec(x_13); -lean_dec(x_1); -x_36 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_11); -return x_37; +x_25 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_10); +return x_26; } } -block_82: +else { -lean_object* x_40; -x_40 = lean_ctor_get(x_39, 3); +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_31 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_12); +lean_dec(x_1); +x_35 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_10); +return x_36; +} +} +block_81: +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_66; lean_object* x_67; +x_40 = lean_ctor_get(x_38, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_67; lean_object* x_68; -x_41 = lean_ctor_get(x_39, 0); -lean_inc(x_41); -x_42 = lean_array_get_size(x_41); -lean_dec(x_41); -x_43 = lean_ctor_get(x_39, 1); -lean_inc(x_43); -lean_inc(x_1); -x_67 = l_Lean_Parser_tokenFn(x_1, x_39); -x_68 = lean_ctor_get(x_67, 3); -lean_inc(x_68); -if (lean_obj_tag(x_68) == 0) -{ -lean_object* x_69; lean_object* x_70; -x_69 = lean_ctor_get(x_67, 0); -lean_inc(x_69); -x_70 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_69); -lean_dec(x_69); -if (lean_obj_tag(x_70) == 2) -{ -lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_71 = lean_ctor_get(x_70, 1); -lean_inc(x_71); -lean_dec(x_70); -x_72 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_73 = lean_string_dec_eq(x_71, x_72); -lean_dec(x_71); -if (x_73 == 0) -{ -lean_object* x_74; lean_object* x_75; -x_74 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_43); -x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_43); -x_44 = x_75; -goto block_66; -} -else -{ -x_44 = x_67; -goto block_66; -} -} -else -{ -lean_object* x_76; lean_object* x_77; -lean_dec(x_70); -x_76 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_43); -x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_43); -x_44 = x_77; -goto block_66; -} -} -else -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_68); -x_78 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_43); -x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_43); -x_44 = x_79; -goto block_66; -} -block_66: -{ -lean_object* x_45; -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_46 = l_Lean_Parser_termParser___closed__2; -x_47 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_48 = l_Lean_Parser_categoryParser___elambda__1(x_46, x_47, x_1, x_44); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -if (lean_obj_tag(x_49) == 0) -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_43); -x_50 = l_Lean_nullKind; -x_51 = l_Lean_Parser_ParserState_mkNode(x_48, x_50, x_42); -x_12 = x_51; -goto block_38; -} -else -{ -lean_object* x_52; uint8_t x_53; -lean_dec(x_49); -x_52 = lean_ctor_get(x_48, 1); -lean_inc(x_52); -x_53 = lean_nat_dec_eq(x_52, x_43); -lean_dec(x_52); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_43); -x_54 = l_Lean_nullKind; -x_55 = l_Lean_Parser_ParserState_mkNode(x_48, x_54, x_42); -x_12 = x_55; -goto block_38; -} -else -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_56 = l_Lean_Parser_ParserState_restore(x_48, x_42, x_43); -x_57 = l_Lean_nullKind; -x_58 = l_Lean_Parser_ParserState_mkNode(x_56, x_57, x_42); -x_12 = x_58; -goto block_38; -} -} -} -else -{ -lean_object* x_59; uint8_t x_60; -lean_dec(x_45); -x_59 = lean_ctor_get(x_44, 1); -lean_inc(x_59); -x_60 = lean_nat_dec_eq(x_59, x_43); -lean_dec(x_59); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_43); -x_61 = l_Lean_nullKind; -x_62 = l_Lean_Parser_ParserState_mkNode(x_44, x_61, x_42); -x_12 = x_62; -goto block_38; -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = l_Lean_Parser_ParserState_restore(x_44, x_42, x_43); -x_64 = l_Lean_nullKind; -x_65 = l_Lean_Parser_ParserState_mkNode(x_63, x_64, x_42); -x_12 = x_65; -goto block_38; -} -} -} -} -else -{ -lean_object* x_80; lean_object* x_81; +x_41 = lean_array_get_size(x_40); lean_dec(x_40); -lean_dec(x_1); -x_80 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_81 = l_Lean_Parser_ParserState_mkNode(x_39, x_80, x_11); -return x_81; -} -} -block_120: -{ -lean_object* x_84; -x_84 = lean_ctor_get(x_83, 3); -lean_inc(x_84); -if (lean_obj_tag(x_84) == 0) -{ -uint8_t x_85; lean_object* x_86; lean_object* x_87; -x_85 = 1; +x_42 = lean_ctor_get(x_38, 1); +lean_inc(x_42); lean_inc(x_1); -x_86 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1(x_85, x_1, x_83); -x_87 = lean_ctor_get(x_86, 3); +x_66 = l_Lean_Parser_tokenFn(x_1, x_38); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) +{ +lean_object* x_68; lean_object* x_69; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_68); +lean_dec(x_68); +if (lean_obj_tag(x_69) == 2) +{ +lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +lean_dec(x_69); +x_71 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_72 = lean_string_dec_eq(x_70, x_71); +lean_dec(x_70); +if (x_72 == 0) +{ +lean_object* x_73; lean_object* x_74; +x_73 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +lean_inc(x_42); +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_73, x_42); +x_43 = x_74; +goto block_65; +} +else +{ +x_43 = x_66; +goto block_65; +} +} +else +{ +lean_object* x_75; lean_object* x_76; +lean_dec(x_69); +x_75 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +lean_inc(x_42); +x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_75, x_42); +x_43 = x_76; +goto block_65; +} +} +else +{ +lean_object* x_77; lean_object* x_78; +lean_dec(x_67); +x_77 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +lean_inc(x_42); +x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_66, x_77, x_42); +x_43 = x_78; +goto block_65; +} +block_65: +{ +lean_object* x_44; +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_45 = l_Lean_Parser_termParser___closed__2; +x_46 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_42); +x_49 = l_Lean_nullKind; +x_50 = l_Lean_Parser_ParserState_mkNode(x_47, x_49, x_41); +x_11 = x_50; +goto block_37; +} +else +{ +lean_object* x_51; uint8_t x_52; +lean_dec(x_48); +x_51 = lean_ctor_get(x_47, 1); +lean_inc(x_51); +x_52 = lean_nat_dec_eq(x_51, x_42); +lean_dec(x_51); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_42); +x_53 = l_Lean_nullKind; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_41); +x_11 = x_54; +goto block_37; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = l_Lean_Parser_ParserState_restore(x_47, x_41, x_42); +x_56 = l_Lean_nullKind; +x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_41); +x_11 = x_57; +goto block_37; +} +} +} +else +{ +lean_object* x_58; uint8_t x_59; +lean_dec(x_44); +x_58 = lean_ctor_get(x_43, 1); +lean_inc(x_58); +x_59 = lean_nat_dec_eq(x_58, x_42); +lean_dec(x_58); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; +lean_dec(x_42); +x_60 = l_Lean_nullKind; +x_61 = l_Lean_Parser_ParserState_mkNode(x_43, x_60, x_41); +x_11 = x_61; +goto block_37; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = l_Lean_Parser_ParserState_restore(x_43, x_41, x_42); +x_63 = l_Lean_nullKind; +x_64 = l_Lean_Parser_ParserState_mkNode(x_62, x_63, x_41); +x_11 = x_64; +goto block_37; +} +} +} +} +else +{ +lean_object* x_79; lean_object* x_80; +lean_dec(x_39); +lean_dec(x_1); +x_79 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_80 = l_Lean_Parser_ParserState_mkNode(x_38, x_79, x_10); +return x_80; +} +} +block_119: +{ +lean_object* x_83; +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) +{ +uint8_t x_84; lean_object* x_85; lean_object* x_86; +x_84 = 1; +lean_inc(x_1); +x_85 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1(x_84, x_1, x_82); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_102; lean_object* x_103; +x_87 = lean_ctor_get(x_85, 0); lean_inc(x_87); -if (lean_obj_tag(x_87) == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_103; lean_object* x_104; -x_88 = lean_ctor_get(x_86, 0); -lean_inc(x_88); -x_89 = lean_array_get_size(x_88); -lean_dec(x_88); -x_90 = lean_ctor_get(x_86, 1); -lean_inc(x_90); -lean_inc(x_1); -x_103 = l_Lean_Parser_tokenFn(x_1, x_86); -x_104 = lean_ctor_get(x_103, 3); -lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) -{ -lean_object* x_105; lean_object* x_106; -x_105 = lean_ctor_get(x_103, 0); -lean_inc(x_105); -x_106 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_105); -lean_dec(x_105); -if (lean_obj_tag(x_106) == 2) -{ -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = lean_ctor_get(x_106, 1); -lean_inc(x_107); -lean_dec(x_106); -x_108 = l_Lean_Parser_Term_structInst___elambda__1___closed__8; -x_109 = lean_string_dec_eq(x_107, x_108); -lean_dec(x_107); -if (x_109 == 0) -{ -lean_object* x_110; lean_object* x_111; -x_110 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; -lean_inc(x_90); -x_111 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_110, x_90); -x_91 = x_111; -goto block_102; -} -else -{ -x_91 = x_103; -goto block_102; -} -} -else -{ -lean_object* x_112; lean_object* x_113; -lean_dec(x_106); -x_112 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; -lean_inc(x_90); -x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_112, x_90); -x_91 = x_113; -goto block_102; -} -} -else -{ -lean_object* x_114; lean_object* x_115; -lean_dec(x_104); -x_114 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; -lean_inc(x_90); -x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_103, x_114, x_90); -x_91 = x_115; -goto block_102; -} -block_102: -{ -lean_object* x_92; -x_92 = lean_ctor_get(x_91, 3); -lean_inc(x_92); -if (lean_obj_tag(x_92) == 0) -{ -lean_object* x_93; lean_object* x_94; -lean_dec(x_90); -x_93 = l_Lean_nullKind; -x_94 = l_Lean_Parser_ParserState_mkNode(x_91, x_93, x_89); -x_39 = x_94; -goto block_82; -} -else -{ -lean_object* x_95; uint8_t x_96; -lean_dec(x_92); -x_95 = lean_ctor_get(x_91, 1); -lean_inc(x_95); -x_96 = lean_nat_dec_eq(x_95, x_90); -lean_dec(x_95); -if (x_96 == 0) -{ -lean_object* x_97; lean_object* x_98; -lean_dec(x_90); -x_97 = l_Lean_nullKind; -x_98 = l_Lean_Parser_ParserState_mkNode(x_91, x_97, x_89); -x_39 = x_98; -goto block_82; -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = l_Lean_Parser_ParserState_restore(x_91, x_89, x_90); -x_100 = l_Lean_nullKind; -x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_89); -x_39 = x_101; -goto block_82; -} -} -} -} -else -{ -lean_object* x_116; lean_object* x_117; +x_88 = lean_array_get_size(x_87); lean_dec(x_87); -lean_dec(x_1); -x_116 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_117 = l_Lean_Parser_ParserState_mkNode(x_86, x_116, x_11); -return x_117; +x_89 = lean_ctor_get(x_85, 1); +lean_inc(x_89); +lean_inc(x_1); +x_102 = l_Lean_Parser_tokenFn(x_1, x_85); +x_103 = lean_ctor_get(x_102, 3); +lean_inc(x_103); +if (lean_obj_tag(x_103) == 0) +{ +lean_object* x_104; lean_object* x_105; +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_104); +lean_dec(x_104); +if (lean_obj_tag(x_105) == 2) +{ +lean_object* x_106; lean_object* x_107; uint8_t x_108; +x_106 = lean_ctor_get(x_105, 1); +lean_inc(x_106); +lean_dec(x_105); +x_107 = l_Lean_Parser_Term_structInst___elambda__1___closed__8; +x_108 = lean_string_dec_eq(x_106, x_107); +lean_dec(x_106); +if (x_108 == 0) +{ +lean_object* x_109; lean_object* x_110; +x_109 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_inc(x_89); +x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_109, x_89); +x_90 = x_110; +goto block_101; +} +else +{ +x_90 = x_102; +goto block_101; } } else { -lean_object* x_118; lean_object* x_119; -lean_dec(x_84); +lean_object* x_111; lean_object* x_112; +lean_dec(x_105); +x_111 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_inc(x_89); +x_112 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_111, x_89); +x_90 = x_112; +goto block_101; +} +} +else +{ +lean_object* x_113; lean_object* x_114; +lean_dec(x_103); +x_113 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_inc(x_89); +x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_113, x_89); +x_90 = x_114; +goto block_101; +} +block_101: +{ +lean_object* x_91; +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; +lean_dec(x_89); +x_92 = l_Lean_nullKind; +x_93 = l_Lean_Parser_ParserState_mkNode(x_90, x_92, x_88); +x_38 = x_93; +goto block_81; +} +else +{ +lean_object* x_94; uint8_t x_95; +lean_dec(x_91); +x_94 = lean_ctor_get(x_90, 1); +lean_inc(x_94); +x_95 = lean_nat_dec_eq(x_94, x_89); +lean_dec(x_94); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; +lean_dec(x_89); +x_96 = l_Lean_nullKind; +x_97 = l_Lean_Parser_ParserState_mkNode(x_90, x_96, x_88); +x_38 = x_97; +goto block_81; +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = l_Lean_Parser_ParserState_restore(x_90, x_88, x_89); +x_99 = l_Lean_nullKind; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_88); +x_38 = x_100; +goto block_81; +} +} +} +} +else +{ +lean_object* x_115; lean_object* x_116; +lean_dec(x_86); lean_dec(x_1); -x_118 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_83, x_118, x_11); -return x_119; +x_115 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_85, x_115, x_10); +return x_116; } } -block_184: +else { -lean_object* x_122; -x_122 = lean_ctor_get(x_121, 3); +lean_object* x_117; lean_object* x_118; +lean_dec(x_83); +lean_dec(x_1); +x_117 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_118 = l_Lean_Parser_ParserState_mkNode(x_82, x_117, x_10); +return x_118; +} +} +block_183: +{ +lean_object* x_121; +x_121 = lean_ctor_get(x_120, 3); +lean_inc(x_121); +if (lean_obj_tag(x_121) == 0) +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; +x_122 = lean_ctor_get(x_120, 0); lean_inc(x_122); -if (lean_obj_tag(x_122) == 0) -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; -x_123 = lean_ctor_get(x_121, 0); +x_123 = lean_ctor_get(x_120, 1); lean_inc(x_123); -x_124 = lean_ctor_get(x_121, 1); -lean_inc(x_124); -x_125 = lean_array_get_size(x_123); -lean_dec(x_123); -x_149 = l_Lean_Parser_termParser___closed__2; -x_150 = lean_unsigned_to_nat(0u); +x_124 = lean_array_get_size(x_122); +lean_dec(x_122); +x_148 = l_Lean_Parser_termParser___closed__2; +x_149 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_151 = l_Lean_Parser_categoryParser___elambda__1(x_149, x_150, x_1, x_121); -x_152 = lean_ctor_get(x_151, 3); +x_150 = l_Lean_Parser_categoryParser___elambda__1(x_148, x_149, x_1, x_120); +x_151 = lean_ctor_get(x_150, 3); +lean_inc(x_151); +if (lean_obj_tag(x_151) == 0) +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_152 = lean_ctor_get(x_150, 1); lean_inc(x_152); -if (lean_obj_tag(x_152) == 0) -{ -lean_object* x_153; lean_object* x_154; lean_object* x_155; -x_153 = lean_ctor_get(x_151, 1); -lean_inc(x_153); lean_inc(x_1); -x_154 = l_Lean_Parser_tokenFn(x_1, x_151); -x_155 = lean_ctor_get(x_154, 3); +x_153 = l_Lean_Parser_tokenFn(x_1, x_150); +x_154 = lean_ctor_get(x_153, 3); +lean_inc(x_154); +if (lean_obj_tag(x_154) == 0) +{ +lean_object* x_155; lean_object* x_156; +x_155 = lean_ctor_get(x_153, 0); lean_inc(x_155); -if (lean_obj_tag(x_155) == 0) +x_156 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_155); +lean_dec(x_155); +if (lean_obj_tag(x_156) == 2) { -lean_object* x_156; lean_object* x_157; -x_156 = lean_ctor_get(x_154, 0); -lean_inc(x_156); -x_157 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_156); +lean_object* x_157; lean_object* x_158; uint8_t x_159; +x_157 = lean_ctor_get(x_156, 1); +lean_inc(x_157); lean_dec(x_156); -if (lean_obj_tag(x_157) == 2) -{ -lean_object* x_158; lean_object* x_159; uint8_t x_160; -x_158 = lean_ctor_get(x_157, 1); -lean_inc(x_158); +x_158 = l_Lean_Parser_Term_structInst___elambda__1___closed__7; +x_159 = lean_string_dec_eq(x_157, x_158); lean_dec(x_157); -x_159 = l_Lean_Parser_Term_structInst___elambda__1___closed__7; -x_160 = lean_string_dec_eq(x_158, x_159); -lean_dec(x_158); -if (x_160 == 0) +if (x_159 == 0) { -lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; -x_161 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_162 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_161, x_153); -x_163 = lean_ctor_get(x_162, 0); +lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +x_160 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_161 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_160, x_152); +x_162 = lean_ctor_get(x_161, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_161, 2); lean_inc(x_163); -x_164 = lean_ctor_get(x_162, 2); +x_164 = lean_ctor_get(x_161, 3); lean_inc(x_164); -x_165 = lean_ctor_get(x_162, 3); -lean_inc(x_165); +x_125 = x_161; x_126 = x_162; x_127 = x_163; x_128 = x_164; -x_129 = x_165; -goto block_148; +goto block_147; } else { -lean_object* x_166; lean_object* x_167; lean_object* x_168; -lean_dec(x_153); -x_166 = lean_ctor_get(x_154, 0); +lean_object* x_165; lean_object* x_166; lean_object* x_167; +lean_dec(x_152); +x_165 = lean_ctor_get(x_153, 0); +lean_inc(x_165); +x_166 = lean_ctor_get(x_153, 2); lean_inc(x_166); -x_167 = lean_ctor_get(x_154, 2); +x_167 = lean_ctor_get(x_153, 3); lean_inc(x_167); -x_168 = lean_ctor_get(x_154, 3); -lean_inc(x_168); -x_126 = x_154; +x_125 = x_153; +x_126 = x_165; x_127 = x_166; x_128 = x_167; -x_129 = x_168; -goto block_148; +goto block_147; } } else { -lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; -lean_dec(x_157); -x_169 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_169, x_153); -x_171 = lean_ctor_get(x_170, 0); +lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; +lean_dec(x_156); +x_168 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_169 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_168, x_152); +x_170 = lean_ctor_get(x_169, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_169, 2); lean_inc(x_171); -x_172 = lean_ctor_get(x_170, 2); +x_172 = lean_ctor_get(x_169, 3); lean_inc(x_172); -x_173 = lean_ctor_get(x_170, 3); -lean_inc(x_173); +x_125 = x_169; x_126 = x_170; x_127 = x_171; x_128 = x_172; -x_129 = x_173; -goto block_148; +goto block_147; } } else { -lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; -lean_dec(x_155); -x_174 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_175 = l_Lean_Parser_ParserState_mkErrorsAt(x_154, x_174, x_153); -x_176 = lean_ctor_get(x_175, 0); +lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_154); +x_173 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_174 = l_Lean_Parser_ParserState_mkErrorsAt(x_153, x_173, x_152); +x_175 = lean_ctor_get(x_174, 0); +lean_inc(x_175); +x_176 = lean_ctor_get(x_174, 2); lean_inc(x_176); -x_177 = lean_ctor_get(x_175, 2); +x_177 = lean_ctor_get(x_174, 3); lean_inc(x_177); -x_178 = lean_ctor_get(x_175, 3); -lean_inc(x_178); +x_125 = x_174; x_126 = x_175; x_127 = x_176; x_128 = x_177; -x_129 = x_178; -goto block_148; +goto block_147; } } else { -lean_object* x_179; lean_object* x_180; lean_object* x_181; -lean_dec(x_152); -x_179 = lean_ctor_get(x_151, 0); +lean_object* x_178; lean_object* x_179; lean_object* x_180; +lean_dec(x_151); +x_178 = lean_ctor_get(x_150, 0); +lean_inc(x_178); +x_179 = lean_ctor_get(x_150, 2); lean_inc(x_179); -x_180 = lean_ctor_get(x_151, 2); +x_180 = lean_ctor_get(x_150, 3); lean_inc(x_180); -x_181 = lean_ctor_get(x_151, 3); -lean_inc(x_181); -x_126 = x_151; +x_125 = x_150; +x_126 = x_178; x_127 = x_179; x_128 = x_180; -x_129 = x_181; -goto block_148; +goto block_147; } -block_148: +block_147: { +if (lean_obj_tag(x_128) == 0) +{ +lean_object* x_129; +lean_dec(x_127); +lean_dec(x_126); +x_129 = lean_ctor_get(x_125, 3); +lean_inc(x_129); if (lean_obj_tag(x_129) == 0) { -lean_object* x_130; -lean_dec(x_128); -lean_dec(x_127); -x_130 = lean_ctor_get(x_126, 3); -lean_inc(x_130); -if (lean_obj_tag(x_130) == 0) -{ -lean_object* x_131; lean_object* x_132; -lean_dec(x_124); -x_131 = l_Lean_nullKind; -x_132 = l_Lean_Parser_ParserState_mkNode(x_126, x_131, x_125); -x_83 = x_132; -goto block_120; +lean_object* x_130; lean_object* x_131; +lean_dec(x_123); +x_130 = l_Lean_nullKind; +x_131 = l_Lean_Parser_ParserState_mkNode(x_125, x_130, x_124); +x_82 = x_131; +goto block_119; } else { -lean_object* x_133; uint8_t x_134; -lean_dec(x_130); -x_133 = lean_ctor_get(x_126, 1); -lean_inc(x_133); -x_134 = lean_nat_dec_eq(x_133, x_124); -lean_dec(x_133); -if (x_134 == 0) +lean_object* x_132; uint8_t x_133; +lean_dec(x_129); +x_132 = lean_ctor_get(x_125, 1); +lean_inc(x_132); +x_133 = lean_nat_dec_eq(x_132, x_123); +lean_dec(x_132); +if (x_133 == 0) { -lean_object* x_135; lean_object* x_136; -lean_dec(x_124); -x_135 = l_Lean_nullKind; -x_136 = l_Lean_Parser_ParserState_mkNode(x_126, x_135, x_125); -x_83 = x_136; -goto block_120; +lean_object* x_134; lean_object* x_135; +lean_dec(x_123); +x_134 = l_Lean_nullKind; +x_135 = l_Lean_Parser_ParserState_mkNode(x_125, x_134, x_124); +x_82 = x_135; +goto block_119; } else { -lean_object* x_137; lean_object* x_138; lean_object* x_139; -x_137 = l_Lean_Parser_ParserState_restore(x_126, x_125, x_124); -x_138 = l_Lean_nullKind; -x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_125); -x_83 = x_139; -goto block_120; +lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_136 = l_Lean_Parser_ParserState_restore(x_125, x_124, x_123); +x_137 = l_Lean_nullKind; +x_138 = l_Lean_Parser_ParserState_mkNode(x_136, x_137, x_124); +x_82 = x_138; +goto block_119; } } } else { -lean_object* x_140; lean_object* x_141; uint8_t x_142; -lean_dec(x_126); -x_140 = l_Array_shrink___main___rarg(x_127, x_125); -lean_inc(x_124); -x_141 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_141, 0, x_140); -lean_ctor_set(x_141, 1, x_124); -lean_ctor_set(x_141, 2, x_128); -lean_ctor_set(x_141, 3, x_129); -x_142 = lean_nat_dec_eq(x_124, x_124); -if (x_142 == 0) +lean_object* x_139; lean_object* x_140; uint8_t x_141; +lean_dec(x_125); +x_139 = l_Array_shrink___main___rarg(x_126, x_124); +lean_inc(x_123); +x_140 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_140, 0, x_139); +lean_ctor_set(x_140, 1, x_123); +lean_ctor_set(x_140, 2, x_127); +lean_ctor_set(x_140, 3, x_128); +x_141 = lean_nat_dec_eq(x_123, x_123); +if (x_141 == 0) { -lean_object* x_143; lean_object* x_144; -lean_dec(x_124); -x_143 = l_Lean_nullKind; -x_144 = l_Lean_Parser_ParserState_mkNode(x_141, x_143, x_125); -x_83 = x_144; -goto block_120; +lean_object* x_142; lean_object* x_143; +lean_dec(x_123); +x_142 = l_Lean_nullKind; +x_143 = l_Lean_Parser_ParserState_mkNode(x_140, x_142, x_124); +x_82 = x_143; +goto block_119; } else { -lean_object* x_145; lean_object* x_146; lean_object* x_147; -x_145 = l_Lean_Parser_ParserState_restore(x_141, x_125, x_124); -x_146 = l_Lean_nullKind; -x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_125); -x_83 = x_147; -goto block_120; +lean_object* x_144; lean_object* x_145; lean_object* x_146; +x_144 = l_Lean_Parser_ParserState_restore(x_140, x_124, x_123); +x_145 = l_Lean_nullKind; +x_146 = l_Lean_Parser_ParserState_mkNode(x_144, x_145, x_124); +x_82 = x_146; +goto block_119; } } } } else { -lean_object* x_182; lean_object* x_183; -lean_dec(x_122); +lean_object* x_181; lean_object* x_182; +lean_dec(x_121); lean_dec(x_1); -x_182 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_183 = l_Lean_Parser_ParserState_mkNode(x_121, x_182, x_11); -return x_183; +x_181 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_182 = l_Lean_Parser_ParserState_mkNode(x_120, x_181, x_10); +return x_182; } } } else { -lean_dec(x_9); +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; -x_199 = lean_ctor_get(x_2, 0); -lean_inc(x_199); -x_200 = lean_array_get_size(x_199); +lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; +x_198 = lean_ctor_get(x_2, 0); +lean_inc(x_198); +x_199 = lean_array_get_size(x_198); +lean_dec(x_198); +x_200 = lean_ctor_get(x_2, 1); +lean_inc(x_200); +lean_inc(x_1); +x_201 = lean_apply_2(x_4, x_1, x_2); +x_202 = lean_ctor_get(x_201, 3); +lean_inc(x_202); +if (lean_obj_tag(x_202) == 0) +{ +lean_dec(x_200); lean_dec(x_199); -x_201 = lean_ctor_get(x_2, 1); -lean_inc(x_201); -lean_inc(x_1); -x_202 = lean_apply_2(x_4, x_1, x_2); -x_203 = lean_ctor_get(x_202, 3); +lean_dec(x_1); +return x_201; +} +else +{ +lean_object* x_203; lean_object* x_204; uint8_t x_205; +x_203 = lean_ctor_get(x_202, 0); lean_inc(x_203); -if (lean_obj_tag(x_203) == 0) -{ -lean_dec(x_201); -lean_dec(x_200); -lean_dec(x_1); -return x_202; -} -else -{ -lean_object* x_204; lean_object* x_205; uint8_t x_206; -x_204 = lean_ctor_get(x_203, 0); +lean_dec(x_202); +x_204 = lean_ctor_get(x_201, 1); lean_inc(x_204); -lean_dec(x_203); -x_205 = lean_ctor_get(x_202, 1); -lean_inc(x_205); -x_206 = lean_nat_dec_eq(x_205, x_201); -lean_dec(x_205); -if (x_206 == 0) -{ +x_205 = lean_nat_dec_eq(x_204, x_200); lean_dec(x_204); -lean_dec(x_201); +if (x_205 == 0) +{ +lean_dec(x_203); lean_dec(x_200); +lean_dec(x_199); lean_dec(x_1); -return x_202; +return x_201; } else { -lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; -lean_inc(x_201); -x_207 = l_Lean_Parser_ParserState_restore(x_202, x_200, x_201); -lean_dec(x_200); -x_208 = l_Lean_Parser_appPrec; -x_209 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_210 = l_Lean_Parser_checkPrecFn(x_208, x_209, x_1, x_207); -x_211 = lean_ctor_get(x_210, 3); -lean_inc(x_211); -if (lean_obj_tag(x_211) == 0) +lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; +lean_inc(x_200); +x_206 = l_Lean_Parser_ParserState_restore(x_201, x_199, x_200); +lean_dec(x_199); +x_207 = l_Lean_Parser_appPrec; +x_208 = l_Lean_Parser_checkPrecFn(x_207, x_1, x_206); +x_209 = lean_ctor_get(x_208, 3); +lean_inc(x_209); +if (lean_obj_tag(x_209) == 0) { -lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_246; lean_object* x_291; lean_object* x_331; lean_object* x_396; lean_object* x_397; lean_object* x_398; -x_212 = lean_ctor_get(x_210, 0); -lean_inc(x_212); -x_213 = lean_array_get_size(x_212); -lean_dec(x_212); -x_396 = lean_ctor_get(x_210, 1); -lean_inc(x_396); +lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_244; lean_object* x_289; lean_object* x_329; lean_object* x_394; lean_object* x_395; lean_object* x_396; +x_210 = lean_ctor_get(x_208, 0); +lean_inc(x_210); +x_211 = lean_array_get_size(x_210); +lean_dec(x_210); +x_394 = lean_ctor_get(x_208, 1); +lean_inc(x_394); lean_inc(x_1); -x_397 = l_Lean_Parser_tokenFn(x_1, x_210); -x_398 = lean_ctor_get(x_397, 3); -lean_inc(x_398); -if (lean_obj_tag(x_398) == 0) +x_395 = l_Lean_Parser_tokenFn(x_1, x_208); +x_396 = lean_ctor_get(x_395, 3); +lean_inc(x_396); +if (lean_obj_tag(x_396) == 0) { -lean_object* x_399; lean_object* x_400; -x_399 = lean_ctor_get(x_397, 0); +lean_object* x_397; lean_object* x_398; +x_397 = lean_ctor_get(x_395, 0); +lean_inc(x_397); +x_398 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_397); +lean_dec(x_397); +if (lean_obj_tag(x_398) == 2) +{ +lean_object* x_399; lean_object* x_400; uint8_t x_401; +x_399 = lean_ctor_get(x_398, 1); lean_inc(x_399); -x_400 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_399); +lean_dec(x_398); +x_400 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_401 = lean_string_dec_eq(x_399, x_400); lean_dec(x_399); -if (lean_obj_tag(x_400) == 2) +if (x_401 == 0) { -lean_object* x_401; lean_object* x_402; uint8_t x_403; -x_401 = lean_ctor_get(x_400, 1); -lean_inc(x_401); -lean_dec(x_400); -x_402 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_403 = lean_string_dec_eq(x_401, x_402); -lean_dec(x_401); -if (x_403 == 0) +lean_object* x_402; lean_object* x_403; +x_402 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_403 = l_Lean_Parser_ParserState_mkErrorsAt(x_395, x_402, x_394); +x_329 = x_403; +goto block_393; +} +else +{ +lean_dec(x_394); +x_329 = x_395; +goto block_393; +} +} +else { lean_object* x_404; lean_object* x_405; +lean_dec(x_398); x_404 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_405 = l_Lean_Parser_ParserState_mkErrorsAt(x_397, x_404, x_396); -x_331 = x_405; -goto block_395; -} -else -{ -lean_dec(x_396); -x_331 = x_397; -goto block_395; +x_405 = l_Lean_Parser_ParserState_mkErrorsAt(x_395, x_404, x_394); +x_329 = x_405; +goto block_393; } } else { lean_object* x_406; lean_object* x_407; -lean_dec(x_400); +lean_dec(x_396); x_406 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_407 = l_Lean_Parser_ParserState_mkErrorsAt(x_397, x_406, x_396); -x_331 = x_407; -goto block_395; +x_407 = l_Lean_Parser_ParserState_mkErrorsAt(x_395, x_406, x_394); +x_329 = x_407; +goto block_393; } -} -else +block_243: { -lean_object* x_408; lean_object* x_409; -lean_dec(x_398); -x_408 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_409 = l_Lean_Parser_ParserState_mkErrorsAt(x_397, x_408, x_396); -x_331 = x_409; -goto block_395; -} -block_245: +lean_object* x_213; +x_213 = lean_ctor_get(x_212, 3); +lean_inc(x_213); +if (lean_obj_tag(x_213) == 0) { -lean_object* x_215; -x_215 = lean_ctor_get(x_214, 3); -lean_inc(x_215); -if (lean_obj_tag(x_215) == 0) -{ -lean_object* x_216; lean_object* x_217; lean_object* x_218; -x_216 = lean_ctor_get(x_214, 1); +lean_object* x_214; lean_object* x_215; lean_object* x_216; +x_214 = lean_ctor_get(x_212, 1); +lean_inc(x_214); +x_215 = l_Lean_Parser_tokenFn(x_1, x_212); +x_216 = lean_ctor_get(x_215, 3); lean_inc(x_216); -x_217 = l_Lean_Parser_tokenFn(x_1, x_214); -x_218 = lean_ctor_get(x_217, 3); -lean_inc(x_218); -if (lean_obj_tag(x_218) == 0) +if (lean_obj_tag(x_216) == 0) { -lean_object* x_219; lean_object* x_220; -x_219 = lean_ctor_get(x_217, 0); +lean_object* x_217; lean_object* x_218; +x_217 = lean_ctor_get(x_215, 0); +lean_inc(x_217); +x_218 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_217); +lean_dec(x_217); +if (lean_obj_tag(x_218) == 2) +{ +lean_object* x_219; lean_object* x_220; uint8_t x_221; +x_219 = lean_ctor_get(x_218, 1); lean_inc(x_219); -x_220 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_219); -lean_dec(x_219); -if (lean_obj_tag(x_220) == 2) -{ -lean_object* x_221; lean_object* x_222; uint8_t x_223; -x_221 = lean_ctor_get(x_220, 1); -lean_inc(x_221); -lean_dec(x_220); -x_222 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_223 = lean_string_dec_eq(x_221, x_222); -lean_dec(x_221); -if (x_223 == 0) -{ -lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; -x_224 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_225 = l_Lean_Parser_ParserState_mkErrorsAt(x_217, x_224, x_216); -x_226 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_227 = l_Lean_Parser_ParserState_mkNode(x_225, x_226, x_213); -x_228 = l_Lean_Parser_mergeOrElseErrors(x_227, x_204, x_201); -lean_dec(x_201); -return x_228; -} -else -{ -lean_object* x_229; lean_object* x_230; lean_object* x_231; -lean_dec(x_216); -x_229 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_230 = l_Lean_Parser_ParserState_mkNode(x_217, x_229, x_213); -x_231 = l_Lean_Parser_mergeOrElseErrors(x_230, x_204, x_201); -lean_dec(x_201); -return x_231; -} -} -else -{ -lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; -lean_dec(x_220); -x_232 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_233 = l_Lean_Parser_ParserState_mkErrorsAt(x_217, x_232, x_216); -x_234 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_235 = l_Lean_Parser_ParserState_mkNode(x_233, x_234, x_213); -x_236 = l_Lean_Parser_mergeOrElseErrors(x_235, x_204, x_201); -lean_dec(x_201); -return x_236; -} -} -else -{ -lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_dec(x_218); -x_237 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_238 = l_Lean_Parser_ParserState_mkErrorsAt(x_217, x_237, x_216); -x_239 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_240 = l_Lean_Parser_ParserState_mkNode(x_238, x_239, x_213); -x_241 = l_Lean_Parser_mergeOrElseErrors(x_240, x_204, x_201); -lean_dec(x_201); -return x_241; +x_220 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_221 = lean_string_dec_eq(x_219, x_220); +lean_dec(x_219); +if (x_221 == 0) +{ +lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; +x_222 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_223 = l_Lean_Parser_ParserState_mkErrorsAt(x_215, x_222, x_214); +x_224 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_225 = l_Lean_Parser_ParserState_mkNode(x_223, x_224, x_211); +x_226 = l_Lean_Parser_mergeOrElseErrors(x_225, x_203, x_200); +lean_dec(x_200); +return x_226; +} +else +{ +lean_object* x_227; lean_object* x_228; lean_object* x_229; +lean_dec(x_214); +x_227 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_228 = l_Lean_Parser_ParserState_mkNode(x_215, x_227, x_211); +x_229 = l_Lean_Parser_mergeOrElseErrors(x_228, x_203, x_200); +lean_dec(x_200); +return x_229; } } else { -lean_object* x_242; lean_object* x_243; lean_object* x_244; -lean_dec(x_215); +lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; +lean_dec(x_218); +x_230 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_231 = l_Lean_Parser_ParserState_mkErrorsAt(x_215, x_230, x_214); +x_232 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_233 = l_Lean_Parser_ParserState_mkNode(x_231, x_232, x_211); +x_234 = l_Lean_Parser_mergeOrElseErrors(x_233, x_203, x_200); +lean_dec(x_200); +return x_234; +} +} +else +{ +lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; +lean_dec(x_216); +x_235 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_236 = l_Lean_Parser_ParserState_mkErrorsAt(x_215, x_235, x_214); +x_237 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_238 = l_Lean_Parser_ParserState_mkNode(x_236, x_237, x_211); +x_239 = l_Lean_Parser_mergeOrElseErrors(x_238, x_203, x_200); +lean_dec(x_200); +return x_239; +} +} +else +{ +lean_object* x_240; lean_object* x_241; lean_object* x_242; +lean_dec(x_213); lean_dec(x_1); -x_242 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_243 = l_Lean_Parser_ParserState_mkNode(x_214, x_242, x_213); -x_244 = l_Lean_Parser_mergeOrElseErrors(x_243, x_204, x_201); -lean_dec(x_201); -return x_244; +x_240 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_241 = l_Lean_Parser_ParserState_mkNode(x_212, x_240, x_211); +x_242 = l_Lean_Parser_mergeOrElseErrors(x_241, x_203, x_200); +lean_dec(x_200); +return x_242; } } -block_290: +block_288: { -lean_object* x_247; -x_247 = lean_ctor_get(x_246, 3); -lean_inc(x_247); -if (lean_obj_tag(x_247) == 0) +lean_object* x_245; +x_245 = lean_ctor_get(x_244, 3); +lean_inc(x_245); +if (lean_obj_tag(x_245) == 0) { -lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_274; lean_object* x_275; -x_248 = lean_ctor_get(x_246, 0); +lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_272; lean_object* x_273; +x_246 = lean_ctor_get(x_244, 0); +lean_inc(x_246); +x_247 = lean_array_get_size(x_246); +lean_dec(x_246); +x_248 = lean_ctor_get(x_244, 1); lean_inc(x_248); -x_249 = lean_array_get_size(x_248); -lean_dec(x_248); -x_250 = lean_ctor_get(x_246, 1); -lean_inc(x_250); lean_inc(x_1); -x_274 = l_Lean_Parser_tokenFn(x_1, x_246); -x_275 = lean_ctor_get(x_274, 3); -lean_inc(x_275); -if (lean_obj_tag(x_275) == 0) +x_272 = l_Lean_Parser_tokenFn(x_1, x_244); +x_273 = lean_ctor_get(x_272, 3); +lean_inc(x_273); +if (lean_obj_tag(x_273) == 0) { -lean_object* x_276; lean_object* x_277; -x_276 = lean_ctor_get(x_274, 0); +lean_object* x_274; lean_object* x_275; +x_274 = lean_ctor_get(x_272, 0); +lean_inc(x_274); +x_275 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_274); +lean_dec(x_274); +if (lean_obj_tag(x_275) == 2) +{ +lean_object* x_276; lean_object* x_277; uint8_t x_278; +x_276 = lean_ctor_get(x_275, 1); lean_inc(x_276); -x_277 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_276); +lean_dec(x_275); +x_277 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_278 = lean_string_dec_eq(x_276, x_277); lean_dec(x_276); -if (lean_obj_tag(x_277) == 2) +if (x_278 == 0) { -lean_object* x_278; lean_object* x_279; uint8_t x_280; -x_278 = lean_ctor_get(x_277, 1); -lean_inc(x_278); -lean_dec(x_277); -x_279 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_280 = lean_string_dec_eq(x_278, x_279); -lean_dec(x_278); -if (x_280 == 0) +lean_object* x_279; lean_object* x_280; +x_279 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +lean_inc(x_248); +x_280 = l_Lean_Parser_ParserState_mkErrorsAt(x_272, x_279, x_248); +x_249 = x_280; +goto block_271; +} +else +{ +x_249 = x_272; +goto block_271; +} +} +else { lean_object* x_281; lean_object* x_282; +lean_dec(x_275); x_281 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_250); -x_282 = l_Lean_Parser_ParserState_mkErrorsAt(x_274, x_281, x_250); -x_251 = x_282; -goto block_273; -} -else -{ -x_251 = x_274; -goto block_273; +lean_inc(x_248); +x_282 = l_Lean_Parser_ParserState_mkErrorsAt(x_272, x_281, x_248); +x_249 = x_282; +goto block_271; } } else { lean_object* x_283; lean_object* x_284; -lean_dec(x_277); +lean_dec(x_273); x_283 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +lean_inc(x_248); +x_284 = l_Lean_Parser_ParserState_mkErrorsAt(x_272, x_283, x_248); +x_249 = x_284; +goto block_271; +} +block_271: +{ +lean_object* x_250; +x_250 = lean_ctor_get(x_249, 3); lean_inc(x_250); -x_284 = l_Lean_Parser_ParserState_mkErrorsAt(x_274, x_283, x_250); -x_251 = x_284; -goto block_273; -} -} -else +if (lean_obj_tag(x_250) == 0) { -lean_object* x_285; lean_object* x_286; -lean_dec(x_275); -x_285 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_250); -x_286 = l_Lean_Parser_ParserState_mkErrorsAt(x_274, x_285, x_250); -x_251 = x_286; -goto block_273; -} -block_273: -{ -lean_object* x_252; -x_252 = lean_ctor_get(x_251, 3); -lean_inc(x_252); -if (lean_obj_tag(x_252) == 0) -{ -lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; -x_253 = l_Lean_Parser_termParser___closed__2; -x_254 = lean_unsigned_to_nat(0u); +lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; +x_251 = l_Lean_Parser_termParser___closed__2; +x_252 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_255 = l_Lean_Parser_categoryParser___elambda__1(x_253, x_254, x_1, x_251); -x_256 = lean_ctor_get(x_255, 3); -lean_inc(x_256); -if (lean_obj_tag(x_256) == 0) +x_253 = l_Lean_Parser_categoryParser___elambda__1(x_251, x_252, x_1, x_249); +x_254 = lean_ctor_get(x_253, 3); +lean_inc(x_254); +if (lean_obj_tag(x_254) == 0) { -lean_object* x_257; lean_object* x_258; +lean_object* x_255; lean_object* x_256; +lean_dec(x_248); +x_255 = l_Lean_nullKind; +x_256 = l_Lean_Parser_ParserState_mkNode(x_253, x_255, x_247); +x_212 = x_256; +goto block_243; +} +else +{ +lean_object* x_257; uint8_t x_258; +lean_dec(x_254); +x_257 = lean_ctor_get(x_253, 1); +lean_inc(x_257); +x_258 = lean_nat_dec_eq(x_257, x_248); +lean_dec(x_257); +if (x_258 == 0) +{ +lean_object* x_259; lean_object* x_260; +lean_dec(x_248); +x_259 = l_Lean_nullKind; +x_260 = l_Lean_Parser_ParserState_mkNode(x_253, x_259, x_247); +x_212 = x_260; +goto block_243; +} +else +{ +lean_object* x_261; lean_object* x_262; lean_object* x_263; +x_261 = l_Lean_Parser_ParserState_restore(x_253, x_247, x_248); +x_262 = l_Lean_nullKind; +x_263 = l_Lean_Parser_ParserState_mkNode(x_261, x_262, x_247); +x_212 = x_263; +goto block_243; +} +} +} +else +{ +lean_object* x_264; uint8_t x_265; lean_dec(x_250); -x_257 = l_Lean_nullKind; -x_258 = l_Lean_Parser_ParserState_mkNode(x_255, x_257, x_249); -x_214 = x_258; -goto block_245; +x_264 = lean_ctor_get(x_249, 1); +lean_inc(x_264); +x_265 = lean_nat_dec_eq(x_264, x_248); +lean_dec(x_264); +if (x_265 == 0) +{ +lean_object* x_266; lean_object* x_267; +lean_dec(x_248); +x_266 = l_Lean_nullKind; +x_267 = l_Lean_Parser_ParserState_mkNode(x_249, x_266, x_247); +x_212 = x_267; +goto block_243; } else { -lean_object* x_259; uint8_t x_260; -lean_dec(x_256); -x_259 = lean_ctor_get(x_255, 1); -lean_inc(x_259); -x_260 = lean_nat_dec_eq(x_259, x_250); -lean_dec(x_259); -if (x_260 == 0) -{ -lean_object* x_261; lean_object* x_262; -lean_dec(x_250); -x_261 = l_Lean_nullKind; -x_262 = l_Lean_Parser_ParserState_mkNode(x_255, x_261, x_249); -x_214 = x_262; -goto block_245; -} -else -{ -lean_object* x_263; lean_object* x_264; lean_object* x_265; -x_263 = l_Lean_Parser_ParserState_restore(x_255, x_249, x_250); -x_264 = l_Lean_nullKind; -x_265 = l_Lean_Parser_ParserState_mkNode(x_263, x_264, x_249); -x_214 = x_265; -goto block_245; -} -} -} -else -{ -lean_object* x_266; uint8_t x_267; -lean_dec(x_252); -x_266 = lean_ctor_get(x_251, 1); -lean_inc(x_266); -x_267 = lean_nat_dec_eq(x_266, x_250); -lean_dec(x_266); -if (x_267 == 0) -{ -lean_object* x_268; lean_object* x_269; -lean_dec(x_250); -x_268 = l_Lean_nullKind; -x_269 = l_Lean_Parser_ParserState_mkNode(x_251, x_268, x_249); -x_214 = x_269; -goto block_245; -} -else -{ -lean_object* x_270; lean_object* x_271; lean_object* x_272; -x_270 = l_Lean_Parser_ParserState_restore(x_251, x_249, x_250); -x_271 = l_Lean_nullKind; -x_272 = l_Lean_Parser_ParserState_mkNode(x_270, x_271, x_249); -x_214 = x_272; -goto block_245; +lean_object* x_268; lean_object* x_269; lean_object* x_270; +x_268 = l_Lean_Parser_ParserState_restore(x_249, x_247, x_248); +x_269 = l_Lean_nullKind; +x_270 = l_Lean_Parser_ParserState_mkNode(x_268, x_269, x_247); +x_212 = x_270; +goto block_243; } } } } else { -lean_object* x_287; lean_object* x_288; lean_object* x_289; -lean_dec(x_247); +lean_object* x_285; lean_object* x_286; lean_object* x_287; +lean_dec(x_245); lean_dec(x_1); -x_287 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_288 = l_Lean_Parser_ParserState_mkNode(x_246, x_287, x_213); -x_289 = l_Lean_Parser_mergeOrElseErrors(x_288, x_204, x_201); -lean_dec(x_201); -return x_289; +x_285 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_286 = l_Lean_Parser_ParserState_mkNode(x_244, x_285, x_211); +x_287 = l_Lean_Parser_mergeOrElseErrors(x_286, x_203, x_200); +lean_dec(x_200); +return x_287; } } -block_330: +block_328: { -lean_object* x_292; -x_292 = lean_ctor_get(x_291, 3); -lean_inc(x_292); -if (lean_obj_tag(x_292) == 0) +lean_object* x_290; +x_290 = lean_ctor_get(x_289, 3); +lean_inc(x_290); +if (lean_obj_tag(x_290) == 0) { -uint8_t x_293; lean_object* x_294; lean_object* x_295; -x_293 = 1; +uint8_t x_291; lean_object* x_292; lean_object* x_293; +x_291 = 1; lean_inc(x_1); -x_294 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1(x_293, x_1, x_291); -x_295 = lean_ctor_get(x_294, 3); -lean_inc(x_295); -if (lean_obj_tag(x_295) == 0) +x_292 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1(x_291, x_1, x_289); +x_293 = lean_ctor_get(x_292, 3); +lean_inc(x_293); +if (lean_obj_tag(x_293) == 0) { -lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_311; lean_object* x_312; -x_296 = lean_ctor_get(x_294, 0); +lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_309; lean_object* x_310; +x_294 = lean_ctor_get(x_292, 0); +lean_inc(x_294); +x_295 = lean_array_get_size(x_294); +lean_dec(x_294); +x_296 = lean_ctor_get(x_292, 1); lean_inc(x_296); -x_297 = lean_array_get_size(x_296); -lean_dec(x_296); -x_298 = lean_ctor_get(x_294, 1); -lean_inc(x_298); lean_inc(x_1); -x_311 = l_Lean_Parser_tokenFn(x_1, x_294); -x_312 = lean_ctor_get(x_311, 3); -lean_inc(x_312); -if (lean_obj_tag(x_312) == 0) +x_309 = l_Lean_Parser_tokenFn(x_1, x_292); +x_310 = lean_ctor_get(x_309, 3); +lean_inc(x_310); +if (lean_obj_tag(x_310) == 0) { -lean_object* x_313; lean_object* x_314; -x_313 = lean_ctor_get(x_311, 0); +lean_object* x_311; lean_object* x_312; +x_311 = lean_ctor_get(x_309, 0); +lean_inc(x_311); +x_312 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_311); +lean_dec(x_311); +if (lean_obj_tag(x_312) == 2) +{ +lean_object* x_313; lean_object* x_314; uint8_t x_315; +x_313 = lean_ctor_get(x_312, 1); lean_inc(x_313); -x_314 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_313); +lean_dec(x_312); +x_314 = l_Lean_Parser_Term_structInst___elambda__1___closed__8; +x_315 = lean_string_dec_eq(x_313, x_314); lean_dec(x_313); -if (lean_obj_tag(x_314) == 2) +if (x_315 == 0) { -lean_object* x_315; lean_object* x_316; uint8_t x_317; -x_315 = lean_ctor_get(x_314, 1); -lean_inc(x_315); -lean_dec(x_314); -x_316 = l_Lean_Parser_Term_structInst___elambda__1___closed__8; -x_317 = lean_string_dec_eq(x_315, x_316); -lean_dec(x_315); -if (x_317 == 0) +lean_object* x_316; lean_object* x_317; +x_316 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_inc(x_296); +x_317 = l_Lean_Parser_ParserState_mkErrorsAt(x_309, x_316, x_296); +x_297 = x_317; +goto block_308; +} +else +{ +x_297 = x_309; +goto block_308; +} +} +else { lean_object* x_318; lean_object* x_319; +lean_dec(x_312); x_318 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; -lean_inc(x_298); -x_319 = l_Lean_Parser_ParserState_mkErrorsAt(x_311, x_318, x_298); -x_299 = x_319; -goto block_310; -} -else -{ -x_299 = x_311; -goto block_310; +lean_inc(x_296); +x_319 = l_Lean_Parser_ParserState_mkErrorsAt(x_309, x_318, x_296); +x_297 = x_319; +goto block_308; } } else { lean_object* x_320; lean_object* x_321; -lean_dec(x_314); +lean_dec(x_310); x_320 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; +lean_inc(x_296); +x_321 = l_Lean_Parser_ParserState_mkErrorsAt(x_309, x_320, x_296); +x_297 = x_321; +goto block_308; +} +block_308: +{ +lean_object* x_298; +x_298 = lean_ctor_get(x_297, 3); lean_inc(x_298); -x_321 = l_Lean_Parser_ParserState_mkErrorsAt(x_311, x_320, x_298); -x_299 = x_321; -goto block_310; -} +if (lean_obj_tag(x_298) == 0) +{ +lean_object* x_299; lean_object* x_300; +lean_dec(x_296); +x_299 = l_Lean_nullKind; +x_300 = l_Lean_Parser_ParserState_mkNode(x_297, x_299, x_295); +x_244 = x_300; +goto block_288; } else { -lean_object* x_322; lean_object* x_323; -lean_dec(x_312); -x_322 = l_Lean_Parser_Term_structInst___elambda__1___closed__11; -lean_inc(x_298); -x_323 = l_Lean_Parser_ParserState_mkErrorsAt(x_311, x_322, x_298); -x_299 = x_323; -goto block_310; -} -block_310: -{ -lean_object* x_300; -x_300 = lean_ctor_get(x_299, 3); -lean_inc(x_300); -if (lean_obj_tag(x_300) == 0) -{ -lean_object* x_301; lean_object* x_302; +lean_object* x_301; uint8_t x_302; lean_dec(x_298); -x_301 = l_Lean_nullKind; -x_302 = l_Lean_Parser_ParserState_mkNode(x_299, x_301, x_297); -x_246 = x_302; -goto block_290; +x_301 = lean_ctor_get(x_297, 1); +lean_inc(x_301); +x_302 = lean_nat_dec_eq(x_301, x_296); +lean_dec(x_301); +if (x_302 == 0) +{ +lean_object* x_303; lean_object* x_304; +lean_dec(x_296); +x_303 = l_Lean_nullKind; +x_304 = l_Lean_Parser_ParserState_mkNode(x_297, x_303, x_295); +x_244 = x_304; +goto block_288; } else { -lean_object* x_303; uint8_t x_304; -lean_dec(x_300); -x_303 = lean_ctor_get(x_299, 1); -lean_inc(x_303); -x_304 = lean_nat_dec_eq(x_303, x_298); -lean_dec(x_303); -if (x_304 == 0) -{ -lean_object* x_305; lean_object* x_306; -lean_dec(x_298); -x_305 = l_Lean_nullKind; -x_306 = l_Lean_Parser_ParserState_mkNode(x_299, x_305, x_297); -x_246 = x_306; -goto block_290; -} -else -{ -lean_object* x_307; lean_object* x_308; lean_object* x_309; -x_307 = l_Lean_Parser_ParserState_restore(x_299, x_297, x_298); -x_308 = l_Lean_nullKind; -x_309 = l_Lean_Parser_ParserState_mkNode(x_307, x_308, x_297); -x_246 = x_309; -goto block_290; +lean_object* x_305; lean_object* x_306; lean_object* x_307; +x_305 = l_Lean_Parser_ParserState_restore(x_297, x_295, x_296); +x_306 = l_Lean_nullKind; +x_307 = l_Lean_Parser_ParserState_mkNode(x_305, x_306, x_295); +x_244 = x_307; +goto block_288; } } } } else { -lean_object* x_324; lean_object* x_325; lean_object* x_326; -lean_dec(x_295); +lean_object* x_322; lean_object* x_323; lean_object* x_324; +lean_dec(x_293); lean_dec(x_1); -x_324 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_325 = l_Lean_Parser_ParserState_mkNode(x_294, x_324, x_213); -x_326 = l_Lean_Parser_mergeOrElseErrors(x_325, x_204, x_201); -lean_dec(x_201); -return x_326; +x_322 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_323 = l_Lean_Parser_ParserState_mkNode(x_292, x_322, x_211); +x_324 = l_Lean_Parser_mergeOrElseErrors(x_323, x_203, x_200); +lean_dec(x_200); +return x_324; } } else { -lean_object* x_327; lean_object* x_328; lean_object* x_329; -lean_dec(x_292); +lean_object* x_325; lean_object* x_326; lean_object* x_327; +lean_dec(x_290); lean_dec(x_1); -x_327 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_328 = l_Lean_Parser_ParserState_mkNode(x_291, x_327, x_213); -x_329 = l_Lean_Parser_mergeOrElseErrors(x_328, x_204, x_201); -lean_dec(x_201); -return x_329; +x_325 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_326 = l_Lean_Parser_ParserState_mkNode(x_289, x_325, x_211); +x_327 = l_Lean_Parser_mergeOrElseErrors(x_326, x_203, x_200); +lean_dec(x_200); +return x_327; } } -block_395: +block_393: { -lean_object* x_332; -x_332 = lean_ctor_get(x_331, 3); +lean_object* x_330; +x_330 = lean_ctor_get(x_329, 3); +lean_inc(x_330); +if (lean_obj_tag(x_330) == 0) +{ +lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; +x_331 = lean_ctor_get(x_329, 0); +lean_inc(x_331); +x_332 = lean_ctor_get(x_329, 1); lean_inc(x_332); -if (lean_obj_tag(x_332) == 0) -{ -lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; -x_333 = lean_ctor_get(x_331, 0); -lean_inc(x_333); -x_334 = lean_ctor_get(x_331, 1); -lean_inc(x_334); -x_335 = lean_array_get_size(x_333); -lean_dec(x_333); -x_359 = l_Lean_Parser_termParser___closed__2; -x_360 = lean_unsigned_to_nat(0u); +x_333 = lean_array_get_size(x_331); +lean_dec(x_331); +x_357 = l_Lean_Parser_termParser___closed__2; +x_358 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_361 = l_Lean_Parser_categoryParser___elambda__1(x_359, x_360, x_1, x_331); -x_362 = lean_ctor_get(x_361, 3); -lean_inc(x_362); -if (lean_obj_tag(x_362) == 0) +x_359 = l_Lean_Parser_categoryParser___elambda__1(x_357, x_358, x_1, x_329); +x_360 = lean_ctor_get(x_359, 3); +lean_inc(x_360); +if (lean_obj_tag(x_360) == 0) { -lean_object* x_363; lean_object* x_364; lean_object* x_365; -x_363 = lean_ctor_get(x_361, 1); +lean_object* x_361; lean_object* x_362; lean_object* x_363; +x_361 = lean_ctor_get(x_359, 1); +lean_inc(x_361); +lean_inc(x_1); +x_362 = l_Lean_Parser_tokenFn(x_1, x_359); +x_363 = lean_ctor_get(x_362, 3); lean_inc(x_363); -lean_inc(x_1); -x_364 = l_Lean_Parser_tokenFn(x_1, x_361); -x_365 = lean_ctor_get(x_364, 3); -lean_inc(x_365); -if (lean_obj_tag(x_365) == 0) +if (lean_obj_tag(x_363) == 0) { -lean_object* x_366; lean_object* x_367; -x_366 = lean_ctor_get(x_364, 0); +lean_object* x_364; lean_object* x_365; +x_364 = lean_ctor_get(x_362, 0); +lean_inc(x_364); +x_365 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_364); +lean_dec(x_364); +if (lean_obj_tag(x_365) == 2) +{ +lean_object* x_366; lean_object* x_367; uint8_t x_368; +x_366 = lean_ctor_get(x_365, 1); lean_inc(x_366); -x_367 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_366); +lean_dec(x_365); +x_367 = l_Lean_Parser_Term_structInst___elambda__1___closed__7; +x_368 = lean_string_dec_eq(x_366, x_367); lean_dec(x_366); -if (lean_obj_tag(x_367) == 2) +if (x_368 == 0) { -lean_object* x_368; lean_object* x_369; uint8_t x_370; -x_368 = lean_ctor_get(x_367, 1); -lean_inc(x_368); -lean_dec(x_367); -x_369 = l_Lean_Parser_Term_structInst___elambda__1___closed__7; -x_370 = lean_string_dec_eq(x_368, x_369); -lean_dec(x_368); -if (x_370 == 0) -{ -lean_object* x_371; lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; -x_371 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_372 = l_Lean_Parser_ParserState_mkErrorsAt(x_364, x_371, x_363); -x_373 = lean_ctor_get(x_372, 0); +lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; lean_object* x_373; +x_369 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_370 = l_Lean_Parser_ParserState_mkErrorsAt(x_362, x_369, x_361); +x_371 = lean_ctor_get(x_370, 0); +lean_inc(x_371); +x_372 = lean_ctor_get(x_370, 2); +lean_inc(x_372); +x_373 = lean_ctor_get(x_370, 3); lean_inc(x_373); -x_374 = lean_ctor_get(x_372, 2); -lean_inc(x_374); -x_375 = lean_ctor_get(x_372, 3); -lean_inc(x_375); +x_334 = x_370; +x_335 = x_371; x_336 = x_372; x_337 = x_373; -x_338 = x_374; -x_339 = x_375; -goto block_358; +goto block_356; } else { -lean_object* x_376; lean_object* x_377; lean_object* x_378; -lean_dec(x_363); -x_376 = lean_ctor_get(x_364, 0); +lean_object* x_374; lean_object* x_375; lean_object* x_376; +lean_dec(x_361); +x_374 = lean_ctor_get(x_362, 0); +lean_inc(x_374); +x_375 = lean_ctor_get(x_362, 2); +lean_inc(x_375); +x_376 = lean_ctor_get(x_362, 3); lean_inc(x_376); -x_377 = lean_ctor_get(x_364, 2); -lean_inc(x_377); -x_378 = lean_ctor_get(x_364, 3); -lean_inc(x_378); -x_336 = x_364; +x_334 = x_362; +x_335 = x_374; +x_336 = x_375; x_337 = x_376; -x_338 = x_377; -x_339 = x_378; -goto block_358; +goto block_356; } } else { -lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; lean_object* x_383; -lean_dec(x_367); -x_379 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_380 = l_Lean_Parser_ParserState_mkErrorsAt(x_364, x_379, x_363); -x_381 = lean_ctor_get(x_380, 0); +lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; +lean_dec(x_365); +x_377 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_378 = l_Lean_Parser_ParserState_mkErrorsAt(x_362, x_377, x_361); +x_379 = lean_ctor_get(x_378, 0); +lean_inc(x_379); +x_380 = lean_ctor_get(x_378, 2); +lean_inc(x_380); +x_381 = lean_ctor_get(x_378, 3); lean_inc(x_381); -x_382 = lean_ctor_get(x_380, 2); -lean_inc(x_382); -x_383 = lean_ctor_get(x_380, 3); -lean_inc(x_383); +x_334 = x_378; +x_335 = x_379; x_336 = x_380; x_337 = x_381; -x_338 = x_382; -x_339 = x_383; -goto block_358; +goto block_356; } } else { -lean_object* x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; lean_object* x_388; -lean_dec(x_365); -x_384 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; -x_385 = l_Lean_Parser_ParserState_mkErrorsAt(x_364, x_384, x_363); -x_386 = lean_ctor_get(x_385, 0); +lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; lean_object* x_386; +lean_dec(x_363); +x_382 = l_Lean_Parser_Term_structInst___elambda__1___closed__14; +x_383 = l_Lean_Parser_ParserState_mkErrorsAt(x_362, x_382, x_361); +x_384 = lean_ctor_get(x_383, 0); +lean_inc(x_384); +x_385 = lean_ctor_get(x_383, 2); +lean_inc(x_385); +x_386 = lean_ctor_get(x_383, 3); lean_inc(x_386); -x_387 = lean_ctor_get(x_385, 2); -lean_inc(x_387); -x_388 = lean_ctor_get(x_385, 3); -lean_inc(x_388); +x_334 = x_383; +x_335 = x_384; x_336 = x_385; x_337 = x_386; -x_338 = x_387; -x_339 = x_388; -goto block_358; +goto block_356; } } else { -lean_object* x_389; lean_object* x_390; lean_object* x_391; -lean_dec(x_362); -x_389 = lean_ctor_get(x_361, 0); +lean_object* x_387; lean_object* x_388; lean_object* x_389; +lean_dec(x_360); +x_387 = lean_ctor_get(x_359, 0); +lean_inc(x_387); +x_388 = lean_ctor_get(x_359, 2); +lean_inc(x_388); +x_389 = lean_ctor_get(x_359, 3); lean_inc(x_389); -x_390 = lean_ctor_get(x_361, 2); -lean_inc(x_390); -x_391 = lean_ctor_get(x_361, 3); -lean_inc(x_391); -x_336 = x_361; +x_334 = x_359; +x_335 = x_387; +x_336 = x_388; x_337 = x_389; -x_338 = x_390; -x_339 = x_391; -goto block_358; +goto block_356; } -block_358: +block_356: { -if (lean_obj_tag(x_339) == 0) +if (lean_obj_tag(x_337) == 0) { -lean_object* x_340; -lean_dec(x_338); -lean_dec(x_337); -x_340 = lean_ctor_get(x_336, 3); -lean_inc(x_340); -if (lean_obj_tag(x_340) == 0) -{ -lean_object* x_341; lean_object* x_342; -lean_dec(x_334); -x_341 = l_Lean_nullKind; -x_342 = l_Lean_Parser_ParserState_mkNode(x_336, x_341, x_335); -x_291 = x_342; -goto block_330; -} -else -{ -lean_object* x_343; uint8_t x_344; -lean_dec(x_340); -x_343 = lean_ctor_get(x_336, 1); -lean_inc(x_343); -x_344 = lean_nat_dec_eq(x_343, x_334); -lean_dec(x_343); -if (x_344 == 0) -{ -lean_object* x_345; lean_object* x_346; -lean_dec(x_334); -x_345 = l_Lean_nullKind; -x_346 = l_Lean_Parser_ParserState_mkNode(x_336, x_345, x_335); -x_291 = x_346; -goto block_330; -} -else -{ -lean_object* x_347; lean_object* x_348; lean_object* x_349; -x_347 = l_Lean_Parser_ParserState_restore(x_336, x_335, x_334); -x_348 = l_Lean_nullKind; -x_349 = l_Lean_Parser_ParserState_mkNode(x_347, x_348, x_335); -x_291 = x_349; -goto block_330; -} -} -} -else -{ -lean_object* x_350; lean_object* x_351; uint8_t x_352; +lean_object* x_338; lean_dec(x_336); -x_350 = l_Array_shrink___main___rarg(x_337, x_335); -lean_inc(x_334); -x_351 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_351, 0, x_350); -lean_ctor_set(x_351, 1, x_334); -lean_ctor_set(x_351, 2, x_338); -lean_ctor_set(x_351, 3, x_339); -x_352 = lean_nat_dec_eq(x_334, x_334); -if (x_352 == 0) +lean_dec(x_335); +x_338 = lean_ctor_get(x_334, 3); +lean_inc(x_338); +if (lean_obj_tag(x_338) == 0) { -lean_object* x_353; lean_object* x_354; -lean_dec(x_334); -x_353 = l_Lean_nullKind; -x_354 = l_Lean_Parser_ParserState_mkNode(x_351, x_353, x_335); -x_291 = x_354; -goto block_330; -} -else -{ -lean_object* x_355; lean_object* x_356; lean_object* x_357; -x_355 = l_Lean_Parser_ParserState_restore(x_351, x_335, x_334); -x_356 = l_Lean_nullKind; -x_357 = l_Lean_Parser_ParserState_mkNode(x_355, x_356, x_335); -x_291 = x_357; -goto block_330; -} -} -} -} -else -{ -lean_object* x_392; lean_object* x_393; lean_object* x_394; +lean_object* x_339; lean_object* x_340; lean_dec(x_332); -lean_dec(x_1); -x_392 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; -x_393 = l_Lean_Parser_ParserState_mkNode(x_331, x_392, x_213); -x_394 = l_Lean_Parser_mergeOrElseErrors(x_393, x_204, x_201); -lean_dec(x_201); -return x_394; +x_339 = l_Lean_nullKind; +x_340 = l_Lean_Parser_ParserState_mkNode(x_334, x_339, x_333); +x_289 = x_340; +goto block_328; +} +else +{ +lean_object* x_341; uint8_t x_342; +lean_dec(x_338); +x_341 = lean_ctor_get(x_334, 1); +lean_inc(x_341); +x_342 = lean_nat_dec_eq(x_341, x_332); +lean_dec(x_341); +if (x_342 == 0) +{ +lean_object* x_343; lean_object* x_344; +lean_dec(x_332); +x_343 = l_Lean_nullKind; +x_344 = l_Lean_Parser_ParserState_mkNode(x_334, x_343, x_333); +x_289 = x_344; +goto block_328; +} +else +{ +lean_object* x_345; lean_object* x_346; lean_object* x_347; +x_345 = l_Lean_Parser_ParserState_restore(x_334, x_333, x_332); +x_346 = l_Lean_nullKind; +x_347 = l_Lean_Parser_ParserState_mkNode(x_345, x_346, x_333); +x_289 = x_347; +goto block_328; } } } else { -lean_object* x_410; -lean_dec(x_211); +lean_object* x_348; lean_object* x_349; uint8_t x_350; +lean_dec(x_334); +x_348 = l_Array_shrink___main___rarg(x_335, x_333); +lean_inc(x_332); +x_349 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_349, 0, x_348); +lean_ctor_set(x_349, 1, x_332); +lean_ctor_set(x_349, 2, x_336); +lean_ctor_set(x_349, 3, x_337); +x_350 = lean_nat_dec_eq(x_332, x_332); +if (x_350 == 0) +{ +lean_object* x_351; lean_object* x_352; +lean_dec(x_332); +x_351 = l_Lean_nullKind; +x_352 = l_Lean_Parser_ParserState_mkNode(x_349, x_351, x_333); +x_289 = x_352; +goto block_328; +} +else +{ +lean_object* x_353; lean_object* x_354; lean_object* x_355; +x_353 = l_Lean_Parser_ParserState_restore(x_349, x_333, x_332); +x_354 = l_Lean_nullKind; +x_355 = l_Lean_Parser_ParserState_mkNode(x_353, x_354, x_333); +x_289 = x_355; +goto block_328; +} +} +} +} +else +{ +lean_object* x_390; lean_object* x_391; lean_object* x_392; +lean_dec(x_330); lean_dec(x_1); -x_410 = l_Lean_Parser_mergeOrElseErrors(x_210, x_204, x_201); -lean_dec(x_201); -return x_410; +x_390 = l_Lean_Parser_Term_structInst___elambda__1___closed__2; +x_391 = l_Lean_Parser_ParserState_mkNode(x_329, x_390, x_211); +x_392 = l_Lean_Parser_mergeOrElseErrors(x_391, x_203, x_200); +lean_dec(x_200); +return x_392; +} +} +} +else +{ +lean_object* x_408; +lean_dec(x_209); +lean_dec(x_1); +x_408 = l_Lean_Parser_mergeOrElseErrors(x_208, x_203, x_200); +lean_dec(x_200); +return x_408; } } } @@ -19762,228 +20103,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -20001,16 +20373,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_typeSpec___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_typeSpec___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_typeSpec___closed__1; +x_3 = l_Lean_Parser_Term_typeSpec___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__3() { +lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__4() { _start: { lean_object* x_1; @@ -20018,12 +20400,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_typeSpec___elambda__1), 2, 0 return x_1; } } -lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__4() { +lean_object* _init_l_Lean_Parser_Term_typeSpec___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_typeSpec___closed__2; -x_2 = l_Lean_Parser_Term_typeSpec___closed__3; +x_1 = l_Lean_Parser_Term_typeSpec___closed__3; +x_2 = l_Lean_Parser_Term_typeSpec___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -20034,7 +20416,7 @@ lean_object* _init_l_Lean_Parser_Term_typeSpec() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_typeSpec___closed__4; +x_1 = l_Lean_Parser_Term_typeSpec___closed__5; return x_1; } } @@ -20225,637 +20607,635 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_44; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_45; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_72 = lean_ctor_get(x_8, 1); -lean_inc(x_72); -lean_inc(x_1); -x_73 = l_Lean_Parser_tokenFn(x_1, x_8); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_73, 0); -lean_inc(x_75); -x_76 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_75); -lean_dec(x_75); -if (lean_obj_tag(x_76) == 2) -{ -lean_object* x_77; lean_object* x_78; uint8_t x_79; -x_77 = lean_ctor_get(x_76, 1); -lean_inc(x_77); -lean_dec(x_76); -x_78 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_79 = lean_string_dec_eq(x_77, x_78); -lean_dec(x_77); -if (x_79 == 0) -{ -lean_object* x_80; lean_object* x_81; -x_80 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_81 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_80, x_72); -x_45 = x_81; -goto block_71; -} -else -{ -lean_dec(x_72); -x_45 = x_73; -goto block_71; -} -} -else -{ -lean_object* x_82; lean_object* x_83; -lean_dec(x_76); -x_82 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_82, x_72); -x_45 = x_83; -goto block_71; -} -} -else -{ -lean_object* x_84; lean_object* x_85; -lean_dec(x_74); -x_84 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_73, x_84, x_72); -x_45 = x_85; -goto block_71; -} -block_44: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -x_19 = l_Lean_Parser_tokenFn(x_1, x_16); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_26 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_28 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_30 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_19, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_22); -x_32 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_32, x_18); -x_34 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_20); -x_36 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_36, x_18); -x_38 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_17); -lean_dec(x_1); -x_40 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_16, x_40, x_11); -return x_41; -} -} -else -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_13); -lean_dec(x_1); -x_42 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_12, x_42, x_11); -return x_43; -} -} -block_71: -{ -lean_object* x_46; -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -lean_inc(x_1); -x_47 = l_Lean_Parser_ident___elambda__1(x_1, x_45); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; -lean_inc(x_1); -x_49 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_47); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_49, 1); -lean_inc(x_51); -lean_inc(x_1); -x_52 = l_Lean_Parser_tokenFn(x_1, x_49); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); -lean_dec(x_54); -if (lean_obj_tag(x_55) == 2) -{ -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = l_Lean_Parser_Term_subtype___elambda__1___closed__6; -x_58 = lean_string_dec_eq(x_56, x_57); -lean_dec(x_56); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_51); -x_12 = x_60; -goto block_44; -} -else -{ -lean_dec(x_51); -x_12 = x_52; -goto block_44; -} -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_55); -x_61 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_51); -x_12 = x_62; -goto block_44; -} -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_53); -x_63 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_51); -x_12 = x_64; -goto block_44; -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_50); -lean_dec(x_1); -x_65 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_49, x_65, x_11); -return x_66; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_48); -lean_dec(x_1); -x_67 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_68 = l_Lean_Parser_ParserState_mkNode(x_47, x_67, x_11); -return x_68; -} -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_46); -lean_dec(x_1); -x_69 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_70 = l_Lean_Parser_ParserState_mkNode(x_45, x_69, x_11); -return x_70; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_71 = lean_ctor_get(x_7, 1); +lean_inc(x_71); +lean_inc(x_1); +x_72 = l_Lean_Parser_tokenFn(x_1, x_7); +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = lean_ctor_get(x_72, 0); +lean_inc(x_74); +x_75 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_74); +lean_dec(x_74); +if (lean_obj_tag(x_75) == 2) +{ +lean_object* x_76; lean_object* x_77; uint8_t x_78; +x_76 = lean_ctor_get(x_75, 1); +lean_inc(x_76); +lean_dec(x_75); +x_77 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_78 = lean_string_dec_eq(x_76, x_77); +lean_dec(x_76); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; +x_79 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_79, x_71); +x_44 = x_80; +goto block_70; +} +else +{ +lean_dec(x_71); +x_44 = x_72; +goto block_70; } } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = lean_ctor_get(x_2, 0); -lean_inc(x_86); -x_87 = lean_array_get_size(x_86); +lean_object* x_81; lean_object* x_82; +lean_dec(x_75); +x_81 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_81, x_71); +x_44 = x_82; +goto block_70; +} +} +else +{ +lean_object* x_83; lean_object* x_84; +lean_dec(x_73); +x_83 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_84 = l_Lean_Parser_ParserState_mkErrorsAt(x_72, x_83, x_71); +x_44 = x_84; +goto block_70; +} +block_43: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); +x_27 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_29 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_21); +x_31 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); +x_33 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_19); +x_35 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); +x_37 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_16); +lean_dec(x_1); +x_39 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_10); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_12); +lean_dec(x_1); +x_41 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; +} +} +block_70: +{ +lean_object* x_45; +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +lean_inc(x_1); +x_46 = l_Lean_Parser_ident___elambda__1(x_1, x_44); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; +lean_inc(x_1); +x_48 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_46); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); +lean_inc(x_1); +x_51 = l_Lean_Parser_tokenFn(x_1, x_48); +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); +lean_dec(x_53); +if (lean_obj_tag(x_54) == 2) +{ +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 1); +lean_inc(x_55); +lean_dec(x_54); +x_56 = l_Lean_Parser_Term_subtype___elambda__1___closed__6; +x_57 = lean_string_dec_eq(x_55, x_56); +lean_dec(x_55); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; +x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_50); +x_11 = x_59; +goto block_43; +} +else +{ +lean_dec(x_50); +x_11 = x_51; +goto block_43; +} +} +else +{ +lean_object* x_60; lean_object* x_61; +lean_dec(x_54); +x_60 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_50); +x_11 = x_61; +goto block_43; +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_52); +x_62 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_50); +x_11 = x_63; +goto block_43; +} +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_49); +lean_dec(x_1); +x_64 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_65 = l_Lean_Parser_ParserState_mkNode(x_48, x_64, x_10); +return x_65; +} +} +else +{ +lean_object* x_66; lean_object* x_67; +lean_dec(x_47); +lean_dec(x_1); +x_66 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_46, x_66, x_10); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_45); +lean_dec(x_1); +x_68 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_69 = l_Lean_Parser_ParserState_mkNode(x_44, x_68, x_10); +return x_69; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_85 = lean_ctor_get(x_2, 0); +lean_inc(x_85); +x_86 = lean_array_get_size(x_85); +lean_dec(x_85); +x_87 = lean_ctor_get(x_2, 1); +lean_inc(x_87); +lean_inc(x_1); +x_88 = lean_apply_2(x_4, x_1, x_2); +x_89 = lean_ctor_get(x_88, 3); +lean_inc(x_89); +if (lean_obj_tag(x_89) == 0) +{ +lean_dec(x_87); lean_dec(x_86); -x_88 = lean_ctor_get(x_2, 1); -lean_inc(x_88); -lean_inc(x_1); -x_89 = lean_apply_2(x_4, x_1, x_2); -x_90 = lean_ctor_get(x_89, 3); +lean_dec(x_1); +return x_88; +} +else +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +x_90 = lean_ctor_get(x_89, 0); lean_inc(x_90); -if (lean_obj_tag(x_90) == 0) -{ -lean_dec(x_88); -lean_dec(x_87); -lean_dec(x_1); -return x_89; -} -else -{ -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 0); +lean_dec(x_89); +x_91 = lean_ctor_get(x_88, 1); lean_inc(x_91); -lean_dec(x_90); -x_92 = lean_ctor_get(x_89, 1); -lean_inc(x_92); -x_93 = lean_nat_dec_eq(x_92, x_88); -lean_dec(x_92); -if (x_93 == 0) -{ +x_92 = lean_nat_dec_eq(x_91, x_87); lean_dec(x_91); -lean_dec(x_88); +if (x_92 == 0) +{ +lean_dec(x_90); lean_dec(x_87); +lean_dec(x_86); lean_dec(x_1); -return x_89; +return x_88; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_inc(x_88); -x_94 = l_Lean_Parser_ParserState_restore(x_89, x_87, x_88); -lean_dec(x_87); -x_95 = l_Lean_Parser_appPrec; -x_96 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_97 = l_Lean_Parser_checkPrecFn(x_95, x_96, x_1, x_94); -x_98 = lean_ctor_get(x_97, 3); -lean_inc(x_98); -if (lean_obj_tag(x_98) == 0) +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_inc(x_87); +x_93 = l_Lean_Parser_ParserState_restore(x_88, x_86, x_87); +lean_dec(x_86); +x_94 = l_Lean_Parser_appPrec; +x_95 = l_Lean_Parser_checkPrecFn(x_94, x_1, x_93); +x_96 = lean_ctor_get(x_95, 3); +lean_inc(x_96); +if (lean_obj_tag(x_96) == 0) { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_140; lean_object* x_170; lean_object* x_171; lean_object* x_172; -x_99 = lean_ctor_get(x_97, 0); -lean_inc(x_99); -x_100 = lean_array_get_size(x_99); -lean_dec(x_99); -x_170 = lean_ctor_get(x_97, 1); -lean_inc(x_170); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_138; lean_object* x_168; lean_object* x_169; lean_object* x_170; +x_97 = lean_ctor_get(x_95, 0); +lean_inc(x_97); +x_98 = lean_array_get_size(x_97); +lean_dec(x_97); +x_168 = lean_ctor_get(x_95, 1); +lean_inc(x_168); lean_inc(x_1); -x_171 = l_Lean_Parser_tokenFn(x_1, x_97); -x_172 = lean_ctor_get(x_171, 3); -lean_inc(x_172); -if (lean_obj_tag(x_172) == 0) +x_169 = l_Lean_Parser_tokenFn(x_1, x_95); +x_170 = lean_ctor_get(x_169, 3); +lean_inc(x_170); +if (lean_obj_tag(x_170) == 0) { -lean_object* x_173; lean_object* x_174; -x_173 = lean_ctor_get(x_171, 0); +lean_object* x_171; lean_object* x_172; +x_171 = lean_ctor_get(x_169, 0); +lean_inc(x_171); +x_172 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_171); +lean_dec(x_171); +if (lean_obj_tag(x_172) == 2) +{ +lean_object* x_173; lean_object* x_174; uint8_t x_175; +x_173 = lean_ctor_get(x_172, 1); lean_inc(x_173); -x_174 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_173); +lean_dec(x_172); +x_174 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_175 = lean_string_dec_eq(x_173, x_174); lean_dec(x_173); -if (lean_obj_tag(x_174) == 2) +if (x_175 == 0) { -lean_object* x_175; lean_object* x_176; uint8_t x_177; -x_175 = lean_ctor_get(x_174, 1); -lean_inc(x_175); -lean_dec(x_174); -x_176 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_177 = lean_string_dec_eq(x_175, x_176); -lean_dec(x_175); -if (x_177 == 0) +lean_object* x_176; lean_object* x_177; +x_176 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_177 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_176, x_168); +x_138 = x_177; +goto block_167; +} +else +{ +lean_dec(x_168); +x_138 = x_169; +goto block_167; +} +} +else { lean_object* x_178; lean_object* x_179; +lean_dec(x_172); x_178 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_179 = l_Lean_Parser_ParserState_mkErrorsAt(x_171, x_178, x_170); -x_140 = x_179; -goto block_169; -} -else -{ -lean_dec(x_170); -x_140 = x_171; -goto block_169; +x_179 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_178, x_168); +x_138 = x_179; +goto block_167; } } else { lean_object* x_180; lean_object* x_181; -lean_dec(x_174); +lean_dec(x_170); x_180 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_181 = l_Lean_Parser_ParserState_mkErrorsAt(x_171, x_180, x_170); -x_140 = x_181; -goto block_169; +x_181 = l_Lean_Parser_ParserState_mkErrorsAt(x_169, x_180, x_168); +x_138 = x_181; +goto block_167; } -} -else +block_137: { -lean_object* x_182; lean_object* x_183; -lean_dec(x_172); -x_182 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_171, x_182, x_170); -x_140 = x_183; -goto block_169; -} -block_139: +lean_object* x_100; +x_100 = lean_ctor_get(x_99, 3); +lean_inc(x_100); +if (lean_obj_tag(x_100) == 0) { -lean_object* x_102; -x_102 = lean_ctor_get(x_101, 3); -lean_inc(x_102); -if (lean_obj_tag(x_102) == 0) -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; -x_103 = l_Lean_Parser_termParser___closed__2; -x_104 = lean_unsigned_to_nat(0u); +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +x_101 = l_Lean_Parser_termParser___closed__2; +x_102 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_105 = l_Lean_Parser_categoryParser___elambda__1(x_103, x_104, x_1, x_101); -x_106 = lean_ctor_get(x_105, 3); -lean_inc(x_106); -if (lean_obj_tag(x_106) == 0) +x_103 = l_Lean_Parser_categoryParser___elambda__1(x_101, x_102, x_1, x_99); +x_104 = lean_ctor_get(x_103, 3); +lean_inc(x_104); +if (lean_obj_tag(x_104) == 0) { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_107 = lean_ctor_get(x_105, 1); +lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_105 = lean_ctor_get(x_103, 1); +lean_inc(x_105); +x_106 = l_Lean_Parser_tokenFn(x_1, x_103); +x_107 = lean_ctor_get(x_106, 3); lean_inc(x_107); -x_108 = l_Lean_Parser_tokenFn(x_1, x_105); -x_109 = lean_ctor_get(x_108, 3); -lean_inc(x_109); -if (lean_obj_tag(x_109) == 0) +if (lean_obj_tag(x_107) == 0) { -lean_object* x_110; lean_object* x_111; -x_110 = lean_ctor_get(x_108, 0); +lean_object* x_108; lean_object* x_109; +x_108 = lean_ctor_get(x_106, 0); +lean_inc(x_108); +x_109 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_108); +lean_dec(x_108); +if (lean_obj_tag(x_109) == 2) +{ +lean_object* x_110; lean_object* x_111; uint8_t x_112; +x_110 = lean_ctor_get(x_109, 1); lean_inc(x_110); -x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); -lean_dec(x_110); -if (lean_obj_tag(x_111) == 2) -{ -lean_object* x_112; lean_object* x_113; uint8_t x_114; -x_112 = lean_ctor_get(x_111, 1); -lean_inc(x_112); -lean_dec(x_111); -x_113 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_114 = lean_string_dec_eq(x_112, x_113); -lean_dec(x_112); -if (x_114 == 0) -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_115 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); -x_117 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_118 = l_Lean_Parser_ParserState_mkNode(x_116, x_117, x_100); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_91, x_88); -lean_dec(x_88); -return x_119; -} -else -{ -lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_107); -x_120 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_108, x_120, x_100); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_91, x_88); -lean_dec(x_88); -return x_122; -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; -lean_dec(x_111); -x_123 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_123, x_107); -x_125 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_100); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_91, x_88); -lean_dec(x_88); -return x_127; -} -} -else -{ -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_dec(x_109); -x_128 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_129 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_128, x_107); -x_130 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_131 = l_Lean_Parser_ParserState_mkNode(x_129, x_130, x_100); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_91, x_88); -lean_dec(x_88); -return x_132; +x_111 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_112 = lean_string_dec_eq(x_110, x_111); +lean_dec(x_110); +if (x_112 == 0) +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_113 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_114 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_113, x_105); +x_115 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_114, x_115, x_98); +x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_90, x_87); +lean_dec(x_87); +return x_117; +} +else +{ +lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_105); +x_118 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_106, x_118, x_98); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_90, x_87); +lean_dec(x_87); +return x_120; } } else { -lean_object* x_133; lean_object* x_134; lean_object* x_135; -lean_dec(x_106); -lean_dec(x_1); -x_133 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_134 = l_Lean_Parser_ParserState_mkNode(x_105, x_133, x_100); -x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_91, x_88); -lean_dec(x_88); -return x_135; +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +lean_dec(x_109); +x_121 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_121, x_105); +x_123 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_124 = l_Lean_Parser_ParserState_mkNode(x_122, x_123, x_98); +x_125 = l_Lean_Parser_mergeOrElseErrors(x_124, x_90, x_87); +lean_dec(x_87); +return x_125; } } else { -lean_object* x_136; lean_object* x_137; lean_object* x_138; -lean_dec(x_102); -lean_dec(x_1); -x_136 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_137 = l_Lean_Parser_ParserState_mkNode(x_101, x_136, x_100); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_91, x_88); -lean_dec(x_88); -return x_138; +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; +lean_dec(x_107); +x_126 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_127 = l_Lean_Parser_ParserState_mkErrorsAt(x_106, x_126, x_105); +x_128 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_129 = l_Lean_Parser_ParserState_mkNode(x_127, x_128, x_98); +x_130 = l_Lean_Parser_mergeOrElseErrors(x_129, x_90, x_87); +lean_dec(x_87); +return x_130; } } -block_169: +else { -lean_object* x_141; +lean_object* x_131; lean_object* x_132; lean_object* x_133; +lean_dec(x_104); +lean_dec(x_1); +x_131 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_132 = l_Lean_Parser_ParserState_mkNode(x_103, x_131, x_98); +x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_90, x_87); +lean_dec(x_87); +return x_133; +} +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_100); +lean_dec(x_1); +x_134 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_135 = l_Lean_Parser_ParserState_mkNode(x_99, x_134, x_98); +x_136 = l_Lean_Parser_mergeOrElseErrors(x_135, x_90, x_87); +lean_dec(x_87); +return x_136; +} +} +block_167: +{ +lean_object* x_139; +x_139 = lean_ctor_get(x_138, 3); +lean_inc(x_139); +if (lean_obj_tag(x_139) == 0) +{ +lean_object* x_140; lean_object* x_141; +lean_inc(x_1); +x_140 = l_Lean_Parser_ident___elambda__1(x_1, x_138); x_141 = lean_ctor_get(x_140, 3); lean_inc(x_141); if (lean_obj_tag(x_141) == 0) { lean_object* x_142; lean_object* x_143; lean_inc(x_1); -x_142 = l_Lean_Parser_ident___elambda__1(x_1, x_140); +x_142 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_140); x_143 = lean_ctor_get(x_142, 3); lean_inc(x_143); if (lean_obj_tag(x_143) == 0) { -lean_object* x_144; lean_object* x_145; +lean_object* x_144; lean_object* x_145; lean_object* x_146; +x_144 = lean_ctor_get(x_142, 1); +lean_inc(x_144); lean_inc(x_1); -x_144 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_142); -x_145 = lean_ctor_get(x_144, 3); -lean_inc(x_145); -if (lean_obj_tag(x_145) == 0) -{ -lean_object* x_146; lean_object* x_147; lean_object* x_148; -x_146 = lean_ctor_get(x_144, 1); +x_145 = l_Lean_Parser_tokenFn(x_1, x_142); +x_146 = lean_ctor_get(x_145, 3); lean_inc(x_146); -lean_inc(x_1); -x_147 = l_Lean_Parser_tokenFn(x_1, x_144); -x_148 = lean_ctor_get(x_147, 3); -lean_inc(x_148); -if (lean_obj_tag(x_148) == 0) +if (lean_obj_tag(x_146) == 0) { -lean_object* x_149; lean_object* x_150; -x_149 = lean_ctor_get(x_147, 0); +lean_object* x_147; lean_object* x_148; +x_147 = lean_ctor_get(x_145, 0); +lean_inc(x_147); +x_148 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_147); +lean_dec(x_147); +if (lean_obj_tag(x_148) == 2) +{ +lean_object* x_149; lean_object* x_150; uint8_t x_151; +x_149 = lean_ctor_get(x_148, 1); lean_inc(x_149); -x_150 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_149); +lean_dec(x_148); +x_150 = l_Lean_Parser_Term_subtype___elambda__1___closed__6; +x_151 = lean_string_dec_eq(x_149, x_150); lean_dec(x_149); -if (lean_obj_tag(x_150) == 2) +if (x_151 == 0) { -lean_object* x_151; lean_object* x_152; uint8_t x_153; -x_151 = lean_ctor_get(x_150, 1); -lean_inc(x_151); -lean_dec(x_150); -x_152 = l_Lean_Parser_Term_subtype___elambda__1___closed__6; -x_153 = lean_string_dec_eq(x_151, x_152); -lean_dec(x_151); -if (x_153 == 0) -{ -lean_object* x_154; lean_object* x_155; -x_154 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_155 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_154, x_146); -x_101 = x_155; -goto block_139; +lean_object* x_152; lean_object* x_153; +x_152 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; +x_153 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_152, x_144); +x_99 = x_153; +goto block_137; } else { -lean_dec(x_146); -x_101 = x_147; -goto block_139; +lean_dec(x_144); +x_99 = x_145; +goto block_137; +} +} +else +{ +lean_object* x_154; lean_object* x_155; +lean_dec(x_148); +x_154 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; +x_155 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_154, x_144); +x_99 = x_155; +goto block_137; } } else { lean_object* x_156; lean_object* x_157; -lean_dec(x_150); +lean_dec(x_146); x_156 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_156, x_146); -x_101 = x_157; -goto block_139; +x_157 = l_Lean_Parser_ParserState_mkErrorsAt(x_145, x_156, x_144); +x_99 = x_157; +goto block_137; } } else { -lean_object* x_158; lean_object* x_159; -lean_dec(x_148); -x_158 = l_Lean_Parser_Term_subtype___elambda__1___closed__9; -x_159 = l_Lean_Parser_ParserState_mkErrorsAt(x_147, x_158, x_146); -x_101 = x_159; -goto block_139; -} -} -else -{ -lean_object* x_160; lean_object* x_161; lean_object* x_162; -lean_dec(x_145); -lean_dec(x_1); -x_160 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_161 = l_Lean_Parser_ParserState_mkNode(x_144, x_160, x_100); -x_162 = l_Lean_Parser_mergeOrElseErrors(x_161, x_91, x_88); -lean_dec(x_88); -return x_162; -} -} -else -{ -lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_dec(x_143); lean_dec(x_1); -x_163 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_164 = l_Lean_Parser_ParserState_mkNode(x_142, x_163, x_100); -x_165 = l_Lean_Parser_mergeOrElseErrors(x_164, x_91, x_88); -lean_dec(x_88); -return x_165; +x_158 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_159 = l_Lean_Parser_ParserState_mkNode(x_142, x_158, x_98); +x_160 = l_Lean_Parser_mergeOrElseErrors(x_159, x_90, x_87); +lean_dec(x_87); +return x_160; } } else { -lean_object* x_166; lean_object* x_167; lean_object* x_168; +lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_dec(x_141); lean_dec(x_1); -x_166 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; -x_167 = l_Lean_Parser_ParserState_mkNode(x_140, x_166, x_100); -x_168 = l_Lean_Parser_mergeOrElseErrors(x_167, x_91, x_88); -lean_dec(x_88); -return x_168; +x_161 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_162 = l_Lean_Parser_ParserState_mkNode(x_140, x_161, x_98); +x_163 = l_Lean_Parser_mergeOrElseErrors(x_162, x_90, x_87); +lean_dec(x_87); +return x_163; +} +} +else +{ +lean_object* x_164; lean_object* x_165; lean_object* x_166; +lean_dec(x_139); +lean_dec(x_1); +x_164 = l_Lean_Parser_Term_subtype___elambda__1___closed__2; +x_165 = l_Lean_Parser_ParserState_mkNode(x_138, x_164, x_98); +x_166 = l_Lean_Parser_mergeOrElseErrors(x_165, x_90, x_87); +lean_dec(x_87); +return x_166; } } } else { -lean_object* x_184; -lean_dec(x_98); +lean_object* x_182; +lean_dec(x_96); lean_dec(x_1); -x_184 = l_Lean_Parser_mergeOrElseErrors(x_97, x_91, x_88); -lean_dec(x_88); -return x_184; +x_182 = l_Lean_Parser_mergeOrElseErrors(x_95, x_90, x_87); +lean_dec(x_87); +return x_182; } } } @@ -21318,411 +21698,409 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_44 = lean_ctor_get(x_8, 1); -lean_inc(x_44); -lean_inc(x_1); -x_45 = l_Lean_Parser_tokenFn(x_1, x_8); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); -lean_dec(x_47); -if (lean_obj_tag(x_48) == 2) -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_51 = lean_string_dec_eq(x_49, x_50); -lean_dec(x_49); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); -x_12 = x_53; -goto block_43; -} -else -{ -lean_dec(x_44); -x_12 = x_45; -goto block_43; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -x_54 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); -x_12 = x_55; -goto block_43; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_46); -x_56 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); -x_12 = x_57; -goto block_43; -} -block_43: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; lean_object* x_15; lean_object* x_16; -x_14 = 1; -lean_inc(x_1); -x_15 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_14, x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -x_18 = l_Lean_Parser_tokenFn(x_1, x_15); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_27 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_11); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_29 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_11); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_21); -x_31 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); -x_33 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_19); -x_35 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); -x_37 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_16); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_13); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_12, x_41, x_11); -return x_42; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_43 = lean_ctor_get(x_7, 1); +lean_inc(x_43); +lean_inc(x_1); +x_44 = l_Lean_Parser_tokenFn(x_1, x_7); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); +x_11 = x_52; +goto block_42; +} +else +{ +lean_dec(x_43); +x_11 = x_44; +goto block_42; } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_58 = lean_ctor_get(x_2, 0); -lean_inc(x_58); -x_59 = lean_array_get_size(x_58); +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); +x_11 = x_54; +goto block_42; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); +x_11 = x_56; +goto block_42; +} +block_42: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 1; +lean_inc(x_1); +x_14 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_13, x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_28 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_20); +x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); +x_32 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_18); +x_34 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); +x_36 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_15); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_12); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); +return x_41; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_2, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_2, 1); +lean_inc(x_59); +lean_inc(x_1); +x_60 = lean_apply_2(x_4, x_1, x_2); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_dec(x_59); lean_dec(x_58); -x_60 = lean_ctor_get(x_2, 1); -lean_inc(x_60); -lean_inc(x_1); -x_61 = lean_apply_2(x_4, x_1, x_2); -x_62 = lean_ctor_get(x_61, 3); +lean_dec(x_1); +return x_60; +} +else +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_dec(x_60); -lean_dec(x_59); -lean_dec(x_1); -return x_61; -} -else -{ -lean_object* x_63; lean_object* x_64; uint8_t x_65; -x_63 = lean_ctor_get(x_62, 0); +lean_dec(x_61); +x_63 = lean_ctor_get(x_60, 1); lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -x_65 = lean_nat_dec_eq(x_64, x_60); -lean_dec(x_64); -if (x_65 == 0) -{ +x_64 = lean_nat_dec_eq(x_63, x_59); lean_dec(x_63); -lean_dec(x_60); +if (x_64 == 0) +{ +lean_dec(x_62); lean_dec(x_59); +lean_dec(x_58); lean_dec(x_1); -return x_61; +return x_60; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_inc(x_60); -x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); -lean_dec(x_59); -x_67 = l_Lean_Parser_appPrec; -x_68 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_69 = l_Lean_Parser_checkPrecFn(x_67, x_68, x_1, x_66); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_inc(x_59); +x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +lean_dec(x_58); +x_66 = l_Lean_Parser_appPrec; +x_67 = l_Lean_Parser_checkPrecFn(x_66, x_1, x_65); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -x_111 = lean_ctor_get(x_69, 1); -lean_inc(x_111); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_109 = lean_ctor_get(x_67, 1); +lean_inc(x_109); lean_inc(x_1); -x_112 = l_Lean_Parser_tokenFn(x_1, x_69); -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +x_110 = l_Lean_Parser_tokenFn(x_1, x_67); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { -lean_object* x_114; lean_object* x_115; -x_114 = lean_ctor_get(x_112, 0); +lean_object* x_112; lean_object* x_113; +x_112 = lean_ctor_get(x_110, 0); +lean_inc(x_112); +x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_112); +if (lean_obj_tag(x_113) == 2) +{ +lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_114 = lean_ctor_get(x_113, 1); lean_inc(x_114); -x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_113); +x_115 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_116 = lean_string_dec_eq(x_114, x_115); lean_dec(x_114); -if (lean_obj_tag(x_115) == 2) +if (x_116 == 0) { -lean_object* x_116; lean_object* x_117; uint8_t x_118; -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -lean_dec(x_115); -x_117 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_118 = lean_string_dec_eq(x_116, x_117); -lean_dec(x_116); -if (x_118 == 0) +lean_object* x_117; lean_object* x_118; +x_117 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); +x_71 = x_118; +goto block_108; +} +else +{ +lean_dec(x_109); +x_71 = x_110; +goto block_108; +} +} +else { lean_object* x_119; lean_object* x_120; +lean_dec(x_113); x_119 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); -x_73 = x_120; -goto block_110; -} -else -{ -lean_dec(x_111); -x_73 = x_112; -goto block_110; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); +x_71 = x_120; +goto block_108; } } else { lean_object* x_121; lean_object* x_122; -lean_dec(x_115); +lean_dec(x_111); x_121 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); -x_73 = x_122; -goto block_110; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); +x_71 = x_122; +goto block_108; } -} -else +block_108: { -lean_object* x_123; lean_object* x_124; -lean_dec(x_113); -x_123 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); -x_73 = x_124; -goto block_110; -} -block_110: +lean_object* x_72; +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_74; -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -uint8_t x_75; lean_object* x_76; lean_object* x_77; -x_75 = 1; +uint8_t x_73; lean_object* x_74; lean_object* x_75; +x_73 = 1; lean_inc(x_1); -x_76 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_75, x_1, x_73); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +x_74 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_73, x_1, x_71); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_76, 1); +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +x_77 = l_Lean_Parser_tokenFn(x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); lean_inc(x_78); -x_79 = l_Lean_Parser_tokenFn(x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); +lean_dec(x_79); +if (lean_obj_tag(x_80) == 2) +{ +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 1); lean_inc(x_81); -x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); -x_88 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_72); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); -lean_dec(x_60); -return x_90; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_78); -x_91 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_72); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); -lean_dec(x_60); -return x_93; -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_82); -x_94 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); -x_96 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_72); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); -lean_dec(x_60); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_dec(x_80); -x_99 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); -x_101 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_72); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); -lean_dec(x_60); -return x_103; +x_82 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_83 = lean_string_dec_eq(x_81, x_82); +lean_dec(x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); +x_86 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_70); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); +lean_dec(x_59); +return x_88; +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_76); +x_89 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_70); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); +lean_dec(x_59); +return x_91; } } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_77); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_72); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); -lean_dec(x_60); -return x_106; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_80); +x_92 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); +x_94 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_70); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); +lean_dec(x_59); +return x_96; } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_74); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_78); +x_97 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); +x_99 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_70); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); +lean_dec(x_59); +return x_101; +} +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_75); lean_dec(x_1); -x_107 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_73, x_107, x_72); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); -lean_dec(x_60); -return x_109; +x_102 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_70); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); +lean_dec(x_59); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_72); +lean_dec(x_1); +x_105 = l_Lean_Parser_Term_listLit___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_71, x_105, x_70); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); +lean_dec(x_59); +return x_107; } } } else { -lean_object* x_125; -lean_dec(x_70); +lean_object* x_123; +lean_dec(x_68); lean_dec(x_1); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_69, x_63, x_60); -lean_dec(x_60); -return x_125; +x_123 = l_Lean_Parser_mergeOrElseErrors(x_67, x_62, x_59); +lean_dec(x_59); +return x_123; } } } @@ -21958,411 +22336,409 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_44 = lean_ctor_get(x_8, 1); -lean_inc(x_44); -lean_inc(x_1); -x_45 = l_Lean_Parser_tokenFn(x_1, x_8); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); -lean_dec(x_47); -if (lean_obj_tag(x_48) == 2) -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; -x_51 = lean_string_dec_eq(x_49, x_50); -lean_dec(x_49); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); -x_12 = x_53; -goto block_43; -} -else -{ -lean_dec(x_44); -x_12 = x_45; -goto block_43; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -x_54 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); -x_12 = x_55; -goto block_43; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_46); -x_56 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); -x_12 = x_57; -goto block_43; -} -block_43: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; lean_object* x_15; lean_object* x_16; -x_14 = 1; -lean_inc(x_1); -x_15 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_14, x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -x_18 = l_Lean_Parser_tokenFn(x_1, x_15); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_27 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_11); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_29 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_11); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_21); -x_31 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); -x_33 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_19); -x_35 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); -x_37 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_16); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_13); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_12, x_41, x_11); -return x_42; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_43 = lean_ctor_get(x_7, 1); +lean_inc(x_43); +lean_inc(x_1); +x_44 = l_Lean_Parser_tokenFn(x_1, x_7); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); +x_11 = x_52; +goto block_42; +} +else +{ +lean_dec(x_43); +x_11 = x_44; +goto block_42; } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_58 = lean_ctor_get(x_2, 0); -lean_inc(x_58); -x_59 = lean_array_get_size(x_58); +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); +x_11 = x_54; +goto block_42; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); +x_11 = x_56; +goto block_42; +} +block_42: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 1; +lean_inc(x_1); +x_14 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_13, x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_28 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_20); +x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); +x_32 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_18); +x_34 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); +x_36 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_15); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_12); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); +return x_41; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_2, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_2, 1); +lean_inc(x_59); +lean_inc(x_1); +x_60 = lean_apply_2(x_4, x_1, x_2); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_dec(x_59); lean_dec(x_58); -x_60 = lean_ctor_get(x_2, 1); -lean_inc(x_60); -lean_inc(x_1); -x_61 = lean_apply_2(x_4, x_1, x_2); -x_62 = lean_ctor_get(x_61, 3); +lean_dec(x_1); +return x_60; +} +else +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_dec(x_60); -lean_dec(x_59); -lean_dec(x_1); -return x_61; -} -else -{ -lean_object* x_63; lean_object* x_64; uint8_t x_65; -x_63 = lean_ctor_get(x_62, 0); +lean_dec(x_61); +x_63 = lean_ctor_get(x_60, 1); lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -x_65 = lean_nat_dec_eq(x_64, x_60); -lean_dec(x_64); -if (x_65 == 0) -{ +x_64 = lean_nat_dec_eq(x_63, x_59); lean_dec(x_63); -lean_dec(x_60); +if (x_64 == 0) +{ +lean_dec(x_62); lean_dec(x_59); +lean_dec(x_58); lean_dec(x_1); -return x_61; +return x_60; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_inc(x_60); -x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); -lean_dec(x_59); -x_67 = l_Lean_Parser_appPrec; -x_68 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_69 = l_Lean_Parser_checkPrecFn(x_67, x_68, x_1, x_66); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_inc(x_59); +x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +lean_dec(x_58); +x_66 = l_Lean_Parser_appPrec; +x_67 = l_Lean_Parser_checkPrecFn(x_66, x_1, x_65); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -x_111 = lean_ctor_get(x_69, 1); -lean_inc(x_111); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_109 = lean_ctor_get(x_67, 1); +lean_inc(x_109); lean_inc(x_1); -x_112 = l_Lean_Parser_tokenFn(x_1, x_69); -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +x_110 = l_Lean_Parser_tokenFn(x_1, x_67); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { -lean_object* x_114; lean_object* x_115; -x_114 = lean_ctor_get(x_112, 0); +lean_object* x_112; lean_object* x_113; +x_112 = lean_ctor_get(x_110, 0); +lean_inc(x_112); +x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_112); +if (lean_obj_tag(x_113) == 2) +{ +lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_114 = lean_ctor_get(x_113, 1); lean_inc(x_114); -x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_113); +x_115 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; +x_116 = lean_string_dec_eq(x_114, x_115); lean_dec(x_114); -if (lean_obj_tag(x_115) == 2) +if (x_116 == 0) { -lean_object* x_116; lean_object* x_117; uint8_t x_118; -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -lean_dec(x_115); -x_117 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; -x_118 = lean_string_dec_eq(x_116, x_117); -lean_dec(x_116); -if (x_118 == 0) +lean_object* x_117; lean_object* x_118; +x_117 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); +x_71 = x_118; +goto block_108; +} +else +{ +lean_dec(x_109); +x_71 = x_110; +goto block_108; +} +} +else { lean_object* x_119; lean_object* x_120; +lean_dec(x_113); x_119 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); -x_73 = x_120; -goto block_110; -} -else -{ -lean_dec(x_111); -x_73 = x_112; -goto block_110; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); +x_71 = x_120; +goto block_108; } } else { lean_object* x_121; lean_object* x_122; -lean_dec(x_115); +lean_dec(x_111); x_121 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); -x_73 = x_122; -goto block_110; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); +x_71 = x_122; +goto block_108; } -} -else +block_108: { -lean_object* x_123; lean_object* x_124; -lean_dec(x_113); -x_123 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__8; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); -x_73 = x_124; -goto block_110; -} -block_110: +lean_object* x_72; +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_74; -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -uint8_t x_75; lean_object* x_76; lean_object* x_77; -x_75 = 1; +uint8_t x_73; lean_object* x_74; lean_object* x_75; +x_73 = 1; lean_inc(x_1); -x_76 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_75, x_1, x_73); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +x_74 = l_Lean_Parser_sepByFn___at_Lean_Parser_Term_listLit___elambda__1___spec__1(x_73, x_1, x_71); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_76, 1); +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +x_77 = l_Lean_Parser_tokenFn(x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); lean_inc(x_78); -x_79 = l_Lean_Parser_tokenFn(x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); +lean_dec(x_79); +if (lean_obj_tag(x_80) == 2) +{ +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 1); lean_inc(x_81); -x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); -x_88 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_72); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); -lean_dec(x_60); -return x_90; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_78); -x_91 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_72); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); -lean_dec(x_60); -return x_93; -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_82); -x_94 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); -x_96 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_72); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); -lean_dec(x_60); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_dec(x_80); -x_99 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); -x_101 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_72); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); -lean_dec(x_60); -return x_103; +x_82 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_83 = lean_string_dec_eq(x_81, x_82); +lean_dec(x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); +x_86 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_70); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); +lean_dec(x_59); +return x_88; +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_76); +x_89 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_70); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); +lean_dec(x_59); +return x_91; } } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_77); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_72); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); -lean_dec(x_60); -return x_106; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_80); +x_92 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); +x_94 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_70); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); +lean_dec(x_59); +return x_96; } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_74); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_78); +x_97 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); +x_99 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_70); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); +lean_dec(x_59); +return x_101; +} +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_75); lean_dec(x_1); -x_107 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_73, x_107, x_72); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); -lean_dec(x_60); -return x_109; +x_102 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_70); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); +lean_dec(x_59); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_72); +lean_dec(x_1); +x_105 = l_Lean_Parser_Term_arrayLit___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_71, x_105, x_70); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); +lean_dec(x_59); +return x_107; } } } else { -lean_object* x_125; -lean_dec(x_70); +lean_object* x_123; +lean_dec(x_68); lean_dec(x_1); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_69, x_63, x_60); -lean_dec(x_60); -return x_125; +x_123 = l_Lean_Parser_mergeOrElseErrors(x_67, x_62, x_59); +lean_dec(x_59); +return x_123; } } } @@ -22511,257 +22887,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_21 = lean_ctor_get(x_8, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = l_Lean_Parser_tokenFn(x_1, x_8); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_22, 0); -lean_inc(x_24); -x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); -lean_dec(x_24); -if (lean_obj_tag(x_25) == 2) -{ -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; -x_28 = lean_string_dec_eq(x_26, x_27); -lean_dec(x_26); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; -x_29 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); -x_12 = x_30; -goto block_20; -} -else -{ -lean_dec(x_21); -x_12 = x_22; -goto block_20; -} -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_25); -x_31 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); -x_12 = x_32; -goto block_20; -} -} -else -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_23); -x_33 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); -x_12 = x_34; -goto block_20; -} -block_20: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_6, x_1, x_12); -x_16 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_11); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_13); -lean_dec(x_1); -x_18 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_12, x_18, x_11); -return x_19; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_20 = lean_ctor_get(x_7, 1); +lean_inc(x_20); +lean_inc(x_1); +x_21 = l_Lean_Parser_tokenFn(x_1, x_7); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); +lean_dec(x_23); +if (lean_obj_tag(x_24) == 2) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_24, 1); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; +x_27 = lean_string_dec_eq(x_25, x_26); +lean_dec(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; +x_28 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); +x_11 = x_29; +goto block_19; +} +else +{ +lean_dec(x_20); +x_11 = x_21; +goto block_19; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_2, 0); -lean_inc(x_35); -x_36 = lean_array_get_size(x_35); +lean_object* x_30; lean_object* x_31; +lean_dec(x_24); +x_30 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); +x_11 = x_31; +goto block_19; +} +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_22); +x_32 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); +x_11 = x_33; +goto block_19; +} +block_19: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_6, x_1, x_11); +x_15 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; +x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_10); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_12); +lean_dec(x_1); +x_17 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkNode(x_11, x_17, x_10); +return x_18; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_2, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_2, 1); +lean_inc(x_36); +lean_inc(x_1); +x_37 = lean_apply_2(x_4, x_1, x_2); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) +{ +lean_dec(x_36); lean_dec(x_35); -x_37 = lean_ctor_get(x_2, 1); -lean_inc(x_37); -lean_inc(x_1); -x_38 = lean_apply_2(x_4, x_1, x_2); -x_39 = lean_ctor_get(x_38, 3); +lean_dec(x_1); +return x_37; +} +else +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 0); lean_inc(x_39); -if (lean_obj_tag(x_39) == 0) -{ -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_1); -return x_38; -} -else -{ -lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_40 = lean_ctor_get(x_39, 0); +lean_dec(x_38); +x_40 = lean_ctor_get(x_37, 1); lean_inc(x_40); -lean_dec(x_39); -x_41 = lean_ctor_get(x_38, 1); -lean_inc(x_41); -x_42 = lean_nat_dec_eq(x_41, x_37); -lean_dec(x_41); -if (x_42 == 0) -{ +x_41 = lean_nat_dec_eq(x_40, x_36); lean_dec(x_40); -lean_dec(x_37); +if (x_41 == 0) +{ +lean_dec(x_39); lean_dec(x_36); +lean_dec(x_35); lean_dec(x_1); -return x_38; +return x_37; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_inc(x_37); -x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); -lean_dec(x_36); -x_44 = l_Lean_Parser_appPrec; -x_45 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_46 = l_Lean_Parser_checkPrecFn(x_44, x_45, x_1, x_43); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_inc(x_36); +x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); +lean_dec(x_35); +x_43 = l_Lean_Parser_appPrec; +x_44 = l_Lean_Parser_checkPrecFn(x_43, x_1, x_42); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_48 = lean_ctor_get(x_46, 0); -lean_inc(x_48); -x_49 = lean_array_get_size(x_48); -lean_dec(x_48); -x_61 = lean_ctor_get(x_46, 1); -lean_inc(x_61); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_array_get_size(x_46); +lean_dec(x_46); +x_59 = lean_ctor_get(x_44, 1); +lean_inc(x_59); lean_inc(x_1); -x_62 = l_Lean_Parser_tokenFn(x_1, x_46); -x_63 = lean_ctor_get(x_62, 3); -lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) +x_60 = l_Lean_Parser_tokenFn(x_1, x_44); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) { -lean_object* x_64; lean_object* x_65; -x_64 = lean_ctor_get(x_62, 0); +lean_object* x_62; lean_object* x_63; +x_62 = lean_ctor_get(x_60, 0); +lean_inc(x_62); +x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_62); +if (lean_obj_tag(x_63) == 2) +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 1); lean_inc(x_64); -x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_63); +x_65 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; +x_66 = lean_string_dec_eq(x_64, x_65); lean_dec(x_64); -if (lean_obj_tag(x_65) == 2) +if (x_66 == 0) { -lean_object* x_66; lean_object* x_67; uint8_t x_68; -x_66 = lean_ctor_get(x_65, 1); -lean_inc(x_66); -lean_dec(x_65); -x_67 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__6; -x_68 = lean_string_dec_eq(x_66, x_67); -lean_dec(x_66); -if (x_68 == 0) +lean_object* x_67; lean_object* x_68; +x_67 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); +x_48 = x_68; +goto block_58; +} +else +{ +lean_dec(x_59); +x_48 = x_60; +goto block_58; +} +} +else { lean_object* x_69; lean_object* x_70; +lean_dec(x_63); x_69 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); -x_50 = x_70; -goto block_60; -} -else -{ -lean_dec(x_61); -x_50 = x_62; -goto block_60; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); +x_48 = x_70; +goto block_58; } } else { lean_object* x_71; lean_object* x_72; -lean_dec(x_65); +lean_dec(x_61); x_71 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); -x_50 = x_72; -goto block_60; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); +x_48 = x_72; +goto block_58; } +block_58: +{ +lean_object* x_49; +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = l_Lean_Parser_termParser___closed__2; +x_51 = l_Lean_Parser_categoryParser___elambda__1(x_50, x_43, x_1, x_48); +x_52 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; +x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_47); +x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_39, x_36); +lean_dec(x_36); +return x_54; } else { -lean_object* x_73; lean_object* x_74; -lean_dec(x_63); -x_73 = l_Lean_Parser_Term_namedPattern___elambda__1___closed__10; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); -x_50 = x_74; -goto block_60; -} -block_60: -{ -lean_object* x_51; -x_51 = lean_ctor_get(x_50, 3); -lean_inc(x_51); -if (lean_obj_tag(x_51) == 0) -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_52 = l_Lean_Parser_termParser___closed__2; -x_53 = l_Lean_Parser_categoryParser___elambda__1(x_52, x_44, x_1, x_50); -x_54 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; -x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_49); -x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); -lean_dec(x_37); -return x_56; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_51); +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_49); lean_dec(x_1); -x_57 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; -x_58 = l_Lean_Parser_ParserState_mkNode(x_50, x_57, x_49); -x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); -lean_dec(x_37); -return x_59; +x_55 = l_Lean_Parser_Term_explicit___elambda__1___closed__2; +x_56 = l_Lean_Parser_ParserState_mkNode(x_48, x_55, x_47); +x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_39, x_36); +lean_dec(x_36); +return x_57; } } } else { -lean_object* x_75; -lean_dec(x_47); +lean_object* x_73; +lean_dec(x_45); lean_dec(x_1); -x_75 = l_Lean_Parser_mergeOrElseErrors(x_46, x_40, x_37); -lean_dec(x_37); -return x_75; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_44, x_39, x_36); +lean_dec(x_36); +return x_73; } } } @@ -22940,413 +23314,411 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_45 = lean_ctor_get(x_8, 1); -lean_inc(x_45); -lean_inc(x_1); -x_46 = l_Lean_Parser_tokenFn(x_1, x_8); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_46, 0); -lean_inc(x_48); -x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); -lean_dec(x_48); -if (lean_obj_tag(x_49) == 2) -{ -lean_object* x_50; lean_object* x_51; uint8_t x_52; -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_51 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__6; -x_52 = lean_string_dec_eq(x_50, x_51); -lean_dec(x_50); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_45); -x_12 = x_54; -goto block_44; -} -else -{ -lean_dec(x_45); -x_12 = x_46; -goto block_44; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_49); -x_55 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_45); -x_12 = x_56; -goto block_44; -} -} -else -{ -lean_object* x_57; lean_object* x_58; -lean_dec(x_47); -x_57 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_45); -x_12 = x_58; -goto block_44; -} -block_44: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -x_19 = l_Lean_Parser_tokenFn(x_1, x_16); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_26 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_28 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); -return x_29; -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_30 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_19, x_30, x_11); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_22); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_32, x_18); -x_34 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_20); -x_36 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_36, x_18); -x_38 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_17); -lean_dec(x_1); -x_40 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_16, x_40, x_11); -return x_41; -} -} -else -{ -lean_object* x_42; lean_object* x_43; -lean_dec(x_13); -lean_dec(x_1); -x_42 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_12, x_42, x_11); -return x_43; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_44 = lean_ctor_get(x_7, 1); +lean_inc(x_44); +lean_inc(x_1); +x_45 = l_Lean_Parser_tokenFn(x_1, x_7); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 2) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__6; +x_51 = lean_string_dec_eq(x_49, x_50); +lean_dec(x_49); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); +x_11 = x_53; +goto block_43; +} +else +{ +lean_dec(x_44); +x_11 = x_45; +goto block_43; } } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_59 = lean_ctor_get(x_2, 0); -lean_inc(x_59); -x_60 = lean_array_get_size(x_59); +lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +x_54 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); +x_11 = x_55; +goto block_43; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_46); +x_56 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); +x_11 = x_57; +goto block_43; +} +block_43: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +x_18 = l_Lean_Parser_tokenFn(x_1, x_15); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_21) == 2) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_24 = lean_string_dec_eq(x_22, x_23); +lean_dec(x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); +x_27 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_10); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_29 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_21); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); +x_33 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_19); +x_35 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); +x_37 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_16); +lean_dec(x_1); +x_39 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_10); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_12); +lean_dec(x_1); +x_41 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_11, x_41, x_10); +return x_42; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_58 = lean_ctor_get(x_2, 0); +lean_inc(x_58); +x_59 = lean_array_get_size(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_2, 1); +lean_inc(x_60); +lean_inc(x_1); +x_61 = lean_apply_2(x_4, x_1, x_2); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) +{ +lean_dec(x_60); lean_dec(x_59); -x_61 = lean_ctor_get(x_2, 1); -lean_inc(x_61); -lean_inc(x_1); -x_62 = lean_apply_2(x_4, x_1, x_2); -x_63 = lean_ctor_get(x_62, 3); +lean_dec(x_1); +return x_61; +} +else +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_62, 0); lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) -{ -lean_dec(x_61); -lean_dec(x_60); -lean_dec(x_1); -return x_62; -} -else -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 0); +lean_dec(x_62); +x_64 = lean_ctor_get(x_61, 1); lean_inc(x_64); -lean_dec(x_63); -x_65 = lean_ctor_get(x_62, 1); -lean_inc(x_65); -x_66 = lean_nat_dec_eq(x_65, x_61); -lean_dec(x_65); -if (x_66 == 0) -{ +x_65 = lean_nat_dec_eq(x_64, x_60); lean_dec(x_64); -lean_dec(x_61); +if (x_65 == 0) +{ +lean_dec(x_63); lean_dec(x_60); +lean_dec(x_59); lean_dec(x_1); -return x_62; +return x_61; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -lean_inc(x_61); -x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); -lean_dec(x_60); -x_68 = l_Lean_Parser_appPrec; -x_69 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_70 = l_Lean_Parser_checkPrecFn(x_68, x_69, x_1, x_67); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_inc(x_60); +x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); +lean_dec(x_59); +x_67 = l_Lean_Parser_appPrec; +x_68 = l_Lean_Parser_checkPrecFn(x_67, x_1, x_66); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_72 = lean_ctor_get(x_70, 0); -lean_inc(x_72); -x_73 = lean_array_get_size(x_72); -lean_dec(x_72); -x_113 = lean_ctor_get(x_70, 1); -lean_inc(x_113); +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); +x_111 = lean_ctor_get(x_68, 1); +lean_inc(x_111); lean_inc(x_1); -x_114 = l_Lean_Parser_tokenFn(x_1, x_70); -x_115 = lean_ctor_get(x_114, 3); -lean_inc(x_115); -if (lean_obj_tag(x_115) == 0) +x_112 = l_Lean_Parser_tokenFn(x_1, x_68); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) { -lean_object* x_116; lean_object* x_117; -x_116 = lean_ctor_get(x_114, 0); +lean_object* x_114; lean_object* x_115; +x_114 = lean_ctor_get(x_112, 0); +lean_inc(x_114); +x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_114); +if (lean_obj_tag(x_115) == 2) +{ +lean_object* x_116; lean_object* x_117; uint8_t x_118; +x_116 = lean_ctor_get(x_115, 1); lean_inc(x_116); -x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); +lean_dec(x_115); +x_117 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__6; +x_118 = lean_string_dec_eq(x_116, x_117); lean_dec(x_116); -if (lean_obj_tag(x_117) == 2) +if (x_118 == 0) { -lean_object* x_118; lean_object* x_119; uint8_t x_120; -x_118 = lean_ctor_get(x_117, 1); -lean_inc(x_118); -lean_dec(x_117); -x_119 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__6; -x_120 = lean_string_dec_eq(x_118, x_119); -lean_dec(x_118); -if (x_120 == 0) +lean_object* x_119; lean_object* x_120; +x_119 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); +x_72 = x_120; +goto block_110; +} +else +{ +lean_dec(x_111); +x_72 = x_112; +goto block_110; +} +} +else { lean_object* x_121; lean_object* x_122; +lean_dec(x_115); x_121 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_113); -x_74 = x_122; -goto block_112; -} -else -{ -lean_dec(x_113); -x_74 = x_114; -goto block_112; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); +x_72 = x_122; +goto block_110; } } else { lean_object* x_123; lean_object* x_124; -lean_dec(x_117); +lean_dec(x_113); x_123 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_113); -x_74 = x_124; -goto block_112; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); +x_72 = x_124; +goto block_110; } -} -else +block_110: { -lean_object* x_125; lean_object* x_126; -lean_dec(x_115); -x_125 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__9; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_113); -x_74 = x_126; -goto block_112; -} -block_112: +lean_object* x_73; +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_75; -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_76 = l_Lean_Parser_termParser___closed__2; -x_77 = lean_unsigned_to_nat(0u); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_74 = l_Lean_Parser_termParser___closed__2; +x_75 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_78 = l_Lean_Parser_categoryParser___elambda__1(x_76, x_77, x_1, x_74); -x_79 = lean_ctor_get(x_78, 3); -lean_inc(x_79); -if (lean_obj_tag(x_79) == 0) +x_76 = l_Lean_Parser_categoryParser___elambda__1(x_74, x_75, x_1, x_72); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_78, 1); +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_76, 1); +lean_inc(x_78); +x_79 = l_Lean_Parser_tokenFn(x_1, x_76); +x_80 = lean_ctor_get(x_79, 3); lean_inc(x_80); -x_81 = l_Lean_Parser_tokenFn(x_1, x_78); -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) +if (lean_obj_tag(x_80) == 0) { -lean_object* x_83; lean_object* x_84; -x_83 = lean_ctor_get(x_81, 0); +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_79, 0); +lean_inc(x_81); +x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); +lean_dec(x_81); +if (lean_obj_tag(x_82) == 2) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_83 = lean_ctor_get(x_82, 1); lean_inc(x_83); -x_84 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_83); -lean_dec(x_83); -if (lean_obj_tag(x_84) == 2) -{ -lean_object* x_85; lean_object* x_86; uint8_t x_87; -x_85 = lean_ctor_get(x_84, 1); -lean_inc(x_85); -lean_dec(x_84); -x_86 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_87 = lean_string_dec_eq(x_85, x_86); -lean_dec(x_85); -if (x_87 == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_88 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_89 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_88, x_80); -x_90 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_91 = l_Lean_Parser_ParserState_mkNode(x_89, x_90, x_73); -x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_64, x_61); -lean_dec(x_61); -return x_92; -} -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; -lean_dec(x_80); -x_93 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_94 = l_Lean_Parser_ParserState_mkNode(x_81, x_93, x_73); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_64, x_61); -lean_dec(x_61); -return x_95; -} -} -else -{ -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_84); -x_96 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_96, x_80); -x_98 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_73); -x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_64, x_61); -lean_dec(x_61); -return x_100; -} -} -else -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_82); -x_101 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_81, x_101, x_80); -x_103 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_73); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_64, x_61); -lean_dec(x_61); -return x_105; +x_84 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_85 = lean_string_dec_eq(x_83, x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_86 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); +x_88 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_71); +x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); +lean_dec(x_60); +return x_90; +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_78); +x_91 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_71); +x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); +lean_dec(x_60); +return x_93; } } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_79); -lean_dec(x_1); -x_106 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_78, x_106, x_73); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_64, x_61); -lean_dec(x_61); -return x_108; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_82); +x_94 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); +x_96 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_71); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); +lean_dec(x_60); +return x_98; } } else { -lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_75); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_80); +x_99 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); +x_101 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_71); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); +lean_dec(x_60); +return x_103; +} +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_77); lean_dec(x_1); -x_109 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; -x_110 = l_Lean_Parser_ParserState_mkNode(x_74, x_109, x_73); -x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_64, x_61); -lean_dec(x_61); -return x_111; +x_104 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_71); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); +lean_dec(x_60); +return x_106; +} +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_73); +lean_dec(x_1); +x_107 = l_Lean_Parser_Term_inaccessible___elambda__1___closed__2; +x_108 = l_Lean_Parser_ParserState_mkNode(x_72, x_107, x_71); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); +lean_dec(x_60); +return x_109; } } } else { -lean_object* x_127; -lean_dec(x_71); +lean_object* x_125; +lean_dec(x_69); lean_dec(x_1); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_70, x_64, x_61); -lean_dec(x_61); -return x_127; +x_125 = l_Lean_Parser_mergeOrElseErrors(x_68, x_63, x_60); +lean_dec(x_60); +return x_125; } } } @@ -23958,525 +24330,540 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_24; lean_object* x_56; lean_object* x_57; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_56 = l_Lean_Parser_tokenFn(x_1, x_2); -x_57 = lean_ctor_get(x_56, 3); -lean_inc(x_57); -if (lean_obj_tag(x_57) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_58; lean_object* x_59; -x_58 = lean_ctor_get(x_56, 0); -lean_inc(x_58); -x_59 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_58); -lean_dec(x_58); -if (lean_obj_tag(x_59) == 2) -{ -lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_60 = lean_ctor_get(x_59, 1); -lean_inc(x_60); -lean_dec(x_59); -x_61 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_62 = lean_string_dec_eq(x_60, x_61); -lean_dec(x_60); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; -x_63 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_7); -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_63, x_7); -x_24 = x_64; -goto block_55; -} -else -{ -x_24 = x_56; -goto block_55; -} -} -else -{ -lean_object* x_65; lean_object* x_66; -lean_dec(x_59); -x_65 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_7); -x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_65, x_7); -x_24 = x_66; -goto block_55; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_57); -x_67 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_7); -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_56, x_67, x_7); -x_24 = x_68; -goto block_55; -} -block_23: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = lean_ctor_get(x_9, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_9); -x_15 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_8); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_9, x_17, x_8); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_27; lean_object* x_59; lean_object* x_60; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_19 = l_Array_shrink___main___rarg(x_10, x_8); -x_20 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_7); -lean_ctor_set(x_20, 2, x_11); -lean_ctor_set(x_20, 3, x_12); -x_21 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_8); -return x_22; -} -} -block_55: -{ -lean_object* x_25; -x_25 = lean_ctor_get(x_24, 3); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); lean_inc(x_1); -x_27 = l_Lean_Parser_tokenFn(x_1, x_24); +x_59 = l_Lean_Parser_tokenFn(x_1, x_7); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_ctor_get(x_59, 0); +lean_inc(x_61); +x_62 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_61); +lean_dec(x_61); +if (lean_obj_tag(x_62) == 2) +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_62, 1); +lean_inc(x_63); +lean_dec(x_62); +x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_65 = lean_string_dec_eq(x_63, x_64); +lean_dec(x_63); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; +x_66 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_10); +x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_66, x_10); +x_27 = x_67; +goto block_58; +} +else +{ +x_27 = x_59; +goto block_58; +} +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_62); +x_68 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_10); +x_69 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_68, x_10); +x_27 = x_69; +goto block_58; +} +} +else +{ +lean_object* x_70; lean_object* x_71; +lean_dec(x_60); +x_70 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_10); +x_71 = l_Lean_Parser_ParserState_mkErrorsAt(x_59, x_70, x_10); +x_27 = x_71; +goto block_58; +} +block_26: +{ +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_10); +x_16 = lean_ctor_get(x_12, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_12); +x_18 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_11); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +lean_dec(x_1); +x_20 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_12, x_20, x_11); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +lean_dec(x_1); +x_22 = l_Array_shrink___main___rarg(x_13, x_11); +x_23 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_10); +lean_ctor_set(x_23, 2, x_14); +lean_ctor_set(x_23, 3, x_15); +x_24 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_11); +return x_25; +} +} +block_58: +{ +lean_object* x_28; x_28 = lean_ctor_get(x_27, 3); lean_inc(x_28); if (lean_obj_tag(x_28) == 0) { -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_27, 0); +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_27, 1); lean_inc(x_29); -x_30 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_29); -lean_dec(x_29); -if (lean_obj_tag(x_30) == 2) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_1); +x_30 = l_Lean_Parser_tokenFn(x_1, x_27); +x_31 = lean_ctor_get(x_30, 3); lean_inc(x_31); -lean_dec(x_30); -x_32 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__6; -x_33 = lean_string_dec_eq(x_31, x_32); -lean_dec(x_31); -if (x_33 == 0) +if (lean_obj_tag(x_31) == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_34, x_26); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 2); -lean_inc(x_37); -x_38 = lean_ctor_get(x_35, 3); -lean_inc(x_38); -x_9 = x_35; -x_10 = x_36; -x_11 = x_37; -x_12 = x_38; -goto block_23; -} -else +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_30, 0); +lean_inc(x_32); +x_33 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_32); +lean_dec(x_32); +if (lean_obj_tag(x_33) == 2) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_dec(x_26); -x_39 = lean_ctor_get(x_27, 0); +lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +lean_dec(x_33); +x_35 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__6; +x_36 = lean_string_dec_eq(x_34, x_35); +lean_dec(x_34); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_37, x_29); +x_39 = lean_ctor_get(x_38, 0); lean_inc(x_39); -x_40 = lean_ctor_get(x_27, 2); +x_40 = lean_ctor_get(x_38, 2); lean_inc(x_40); -x_41 = lean_ctor_get(x_27, 3); +x_41 = lean_ctor_get(x_38, 3); lean_inc(x_41); -x_9 = x_27; -x_10 = x_39; -x_11 = x_40; -x_12 = x_41; -goto block_23; -} +x_12 = x_38; +x_13 = x_39; +x_14 = x_40; +x_15 = x_41; +goto block_26; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_dec(x_30); -x_42 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_42, x_26); -x_44 = lean_ctor_get(x_43, 0); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_29); +x_42 = lean_ctor_get(x_30, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_30, 2); +lean_inc(x_43); +x_44 = lean_ctor_get(x_30, 3); lean_inc(x_44); -x_45 = lean_ctor_get(x_43, 2); -lean_inc(x_45); -x_46 = lean_ctor_get(x_43, 3); -lean_inc(x_46); -x_9 = x_43; -x_10 = x_44; -x_11 = x_45; -x_12 = x_46; -goto block_23; +x_12 = x_30; +x_13 = x_42; +x_14 = x_43; +x_15 = x_44; +goto block_26; } } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_28); -x_47 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_27, x_47, x_26); -x_49 = lean_ctor_get(x_48, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_33); +x_45 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_45, x_29); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 2); +lean_inc(x_48); +x_49 = lean_ctor_get(x_46, 3); lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 2); -lean_inc(x_50); -x_51 = lean_ctor_get(x_48, 3); -lean_inc(x_51); -x_9 = x_48; -x_10 = x_49; -x_11 = x_50; -x_12 = x_51; -goto block_23; +x_12 = x_46; +x_13 = x_47; +x_14 = x_48; +x_15 = x_49; +goto block_26; } } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; -lean_dec(x_25); -x_52 = lean_ctor_get(x_24, 0); +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_31); +x_50 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_30, x_50, x_29); +x_52 = lean_ctor_get(x_51, 0); lean_inc(x_52); -x_53 = lean_ctor_get(x_24, 2); +x_53 = lean_ctor_get(x_51, 2); lean_inc(x_53); -x_54 = lean_ctor_get(x_24, 3); +x_54 = lean_ctor_get(x_51, 3); lean_inc(x_54); -x_9 = x_24; -x_10 = x_52; -x_11 = x_53; -x_12 = x_54; -goto block_23; +x_12 = x_51; +x_13 = x_52; +x_14 = x_53; +x_15 = x_54; +goto block_26; +} +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_28); +x_55 = lean_ctor_get(x_27, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_27, 2); +lean_inc(x_56); +x_57 = lean_ctor_get(x_27, 3); +lean_inc(x_57); +x_12 = x_27; +x_13 = x_55; +x_14 = x_56; +x_15 = x_57; +goto block_26; } } } else { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_69 = lean_ctor_get(x_2, 0); -lean_inc(x_69); -x_70 = lean_ctor_get(x_2, 1); -lean_inc(x_70); -x_71 = lean_array_get_size(x_69); -lean_dec(x_69); -lean_inc(x_2); -lean_inc(x_1); -x_72 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_73 = x_2; -} else { - lean_dec_ref(x_2); - x_73 = lean_box(0); +lean_dec(x_8); +lean_dec(x_1); +return x_7; } -x_74 = lean_ctor_get(x_72, 3); +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_72 = lean_ctor_get(x_2, 0); +lean_inc(x_72); +x_73 = lean_array_get_size(x_72); +lean_dec(x_72); +x_74 = lean_ctor_get(x_2, 1); lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -lean_dec(x_73); -lean_dec(x_71); -lean_dec(x_70); -lean_dec(x_1); -return x_72; -} -else -{ -lean_object* x_75; lean_object* x_76; uint8_t x_77; -x_75 = lean_ctor_get(x_74, 0); -lean_inc(x_75); -lean_dec(x_74); -x_76 = lean_ctor_get(x_72, 1); +lean_inc(x_1); +x_75 = lean_apply_2(x_4, x_1, x_2); +x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); -x_77 = lean_nat_dec_eq(x_76, x_70); +if (lean_obj_tag(x_76) == 0) +{ +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_1); +return x_75; +} +else +{ +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = lean_ctor_get(x_76, 0); +lean_inc(x_77); lean_dec(x_76); -if (x_77 == 0) +x_78 = lean_ctor_get(x_75, 1); +lean_inc(x_78); +x_79 = lean_nat_dec_eq(x_78, x_74); +lean_dec(x_78); +if (x_79 == 0) { -lean_dec(x_75); +lean_dec(x_77); +lean_dec(x_74); lean_dec(x_73); -lean_dec(x_71); -lean_dec(x_70); lean_dec(x_1); -return x_72; +return x_75; } else { -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_99; lean_object* x_131; lean_object* x_132; -lean_inc(x_70); -x_78 = l_Lean_Parser_ParserState_restore(x_72, x_71, x_70); -lean_dec(x_71); -x_79 = lean_ctor_get(x_78, 0); -lean_inc(x_79); -x_80 = lean_array_get_size(x_79); -lean_dec(x_79); -lean_inc(x_1); -x_131 = l_Lean_Parser_tokenFn(x_1, x_78); -x_132 = lean_ctor_get(x_131, 3); -lean_inc(x_132); -if (lean_obj_tag(x_132) == 0) -{ -lean_object* x_133; lean_object* x_134; -x_133 = lean_ctor_get(x_131, 0); -lean_inc(x_133); -x_134 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_133); -lean_dec(x_133); -if (lean_obj_tag(x_134) == 2) -{ -lean_object* x_135; lean_object* x_136; uint8_t x_137; -x_135 = lean_ctor_get(x_134, 1); -lean_inc(x_135); -lean_dec(x_134); -x_136 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_137 = lean_string_dec_eq(x_135, x_136); -lean_dec(x_135); -if (x_137 == 0) -{ -lean_object* x_138; lean_object* x_139; -x_138 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_70); -x_139 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_138, x_70); -x_99 = x_139; -goto block_130; -} -else -{ -x_99 = x_131; -goto block_130; -} -} -else -{ -lean_object* x_140; lean_object* x_141; -lean_dec(x_134); -x_140 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_70); -x_141 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_140, x_70); -x_99 = x_141; -goto block_130; -} -} -else -{ -lean_object* x_142; lean_object* x_143; -lean_dec(x_132); -x_142 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_70); -x_143 = l_Lean_Parser_ParserState_mkErrorsAt(x_131, x_142, x_70); -x_99 = x_143; -goto block_130; -} -block_98: -{ -if (lean_obj_tag(x_84) == 0) -{ -lean_object* x_85; -lean_dec(x_83); -lean_dec(x_82); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_inc(x_74); +x_80 = l_Lean_Parser_ParserState_restore(x_75, x_73, x_74); lean_dec(x_73); -x_85 = lean_ctor_get(x_81, 3); +x_81 = lean_unsigned_to_nat(1024u); +x_82 = l_Lean_Parser_checkPrecFn(x_81, x_1, x_80); +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_105; lean_object* x_137; lean_object* x_138; +x_84 = lean_ctor_get(x_82, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_82, 1); lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_86 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_81); -x_87 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_87, x_80); -x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_75, x_70); -lean_dec(x_70); -return x_89; -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; -lean_dec(x_85); -lean_dec(x_1); -x_90 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_91 = l_Lean_Parser_ParserState_mkNode(x_81, x_90, x_80); -x_92 = l_Lean_Parser_mergeOrElseErrors(x_91, x_75, x_70); -lean_dec(x_70); -return x_92; -} -} -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_81); -lean_dec(x_1); -x_93 = l_Array_shrink___main___rarg(x_82, x_80); -lean_inc(x_70); -if (lean_is_scalar(x_73)) { - x_94 = lean_alloc_ctor(0, 4, 0); -} else { - x_94 = x_73; -} -lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_70); -lean_ctor_set(x_94, 2, x_83); -lean_ctor_set(x_94, 3, x_84); -x_95 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_80); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_75, x_70); -lean_dec(x_70); -return x_97; -} -} -block_130: -{ -lean_object* x_100; -x_100 = lean_ctor_get(x_99, 3); -lean_inc(x_100); -if (lean_obj_tag(x_100) == 0) -{ -lean_object* x_101; lean_object* x_102; lean_object* x_103; -x_101 = lean_ctor_get(x_99, 1); -lean_inc(x_101); +x_86 = lean_array_get_size(x_84); +lean_dec(x_84); lean_inc(x_1); -x_102 = l_Lean_Parser_tokenFn(x_1, x_99); -x_103 = lean_ctor_get(x_102, 3); -lean_inc(x_103); -if (lean_obj_tag(x_103) == 0) +x_137 = l_Lean_Parser_tokenFn(x_1, x_82); +x_138 = lean_ctor_get(x_137, 3); +lean_inc(x_138); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_104; lean_object* x_105; -x_104 = lean_ctor_get(x_102, 0); -lean_inc(x_104); -x_105 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_104); -lean_dec(x_104); -if (lean_obj_tag(x_105) == 2) +lean_object* x_139; lean_object* x_140; +x_139 = lean_ctor_get(x_137, 0); +lean_inc(x_139); +x_140 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_139); +lean_dec(x_139); +if (lean_obj_tag(x_140) == 2) { -lean_object* x_106; lean_object* x_107; uint8_t x_108; -x_106 = lean_ctor_get(x_105, 1); +lean_object* x_141; lean_object* x_142; uint8_t x_143; +x_141 = lean_ctor_get(x_140, 1); +lean_inc(x_141); +lean_dec(x_140); +x_142 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_143 = lean_string_dec_eq(x_141, x_142); +lean_dec(x_141); +if (x_143 == 0) +{ +lean_object* x_144; lean_object* x_145; +x_144 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_145 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_144, x_85); +x_105 = x_145; +goto block_136; +} +else +{ +x_105 = x_137; +goto block_136; +} +} +else +{ +lean_object* x_146; lean_object* x_147; +lean_dec(x_140); +x_146 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_147 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_146, x_85); +x_105 = x_147; +goto block_136; +} +} +else +{ +lean_object* x_148; lean_object* x_149; +lean_dec(x_138); +x_148 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +lean_inc(x_85); +x_149 = l_Lean_Parser_ParserState_mkErrorsAt(x_137, x_148, x_85); +x_105 = x_149; +goto block_136; +} +block_104: +{ +if (lean_obj_tag(x_90) == 0) +{ +lean_object* x_91; +lean_dec(x_89); +lean_dec(x_88); +lean_dec(x_85); +x_91 = lean_ctor_get(x_87, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_92 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_87); +x_93 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_86); +x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_77, x_74); +lean_dec(x_74); +return x_95; +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_91); +lean_dec(x_1); +x_96 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_97 = l_Lean_Parser_ParserState_mkNode(x_87, x_96, x_86); +x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_77, x_74); +lean_dec(x_74); +return x_98; +} +} +else +{ +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_87); +lean_dec(x_1); +x_99 = l_Array_shrink___main___rarg(x_88, x_86); +x_100 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_100, 0, x_99); +lean_ctor_set(x_100, 1, x_85); +lean_ctor_set(x_100, 2, x_89); +lean_ctor_set(x_100, 3, x_90); +x_101 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__2; +x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_86); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_77, x_74); +lean_dec(x_74); +return x_103; +} +} +block_136: +{ +lean_object* x_106; +x_106 = lean_ctor_get(x_105, 3); lean_inc(x_106); -lean_dec(x_105); -x_107 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__6; -x_108 = lean_string_dec_eq(x_106, x_107); -lean_dec(x_106); -if (x_108 == 0) +if (lean_obj_tag(x_106) == 0) { -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_109 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_109, x_101); -x_111 = lean_ctor_get(x_110, 0); -lean_inc(x_111); -x_112 = lean_ctor_get(x_110, 2); +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +lean_inc(x_1); +x_108 = l_Lean_Parser_tokenFn(x_1, x_105); +x_109 = lean_ctor_get(x_108, 3); +lean_inc(x_109); +if (lean_obj_tag(x_109) == 0) +{ +lean_object* x_110; lean_object* x_111; +x_110 = lean_ctor_get(x_108, 0); +lean_inc(x_110); +x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); +lean_dec(x_110); +if (lean_obj_tag(x_111) == 2) +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); -x_113 = lean_ctor_get(x_110, 3); -lean_inc(x_113); -x_81 = x_110; -x_82 = x_111; -x_83 = x_112; -x_84 = x_113; -goto block_98; -} -else +lean_dec(x_111); +x_113 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__6; +x_114 = lean_string_dec_eq(x_112, x_113); +lean_dec(x_112); +if (x_114 == 0) { -lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_101); -x_114 = lean_ctor_get(x_102, 0); -lean_inc(x_114); -x_115 = lean_ctor_get(x_102, 2); -lean_inc(x_115); -x_116 = lean_ctor_get(x_102, 3); -lean_inc(x_116); -x_81 = x_102; -x_82 = x_114; -x_83 = x_115; -x_84 = x_116; -goto block_98; -} -} -else -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -lean_dec(x_105); -x_117 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_117, x_101); -x_119 = lean_ctor_get(x_118, 0); +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +x_115 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_116, 2); +lean_inc(x_118); +x_119 = lean_ctor_get(x_116, 3); lean_inc(x_119); -x_120 = lean_ctor_get(x_118, 2); +x_87 = x_116; +x_88 = x_117; +x_89 = x_118; +x_90 = x_119; +goto block_104; +} +else +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; +lean_dec(x_107); +x_120 = lean_ctor_get(x_108, 0); lean_inc(x_120); -x_121 = lean_ctor_get(x_118, 3); +x_121 = lean_ctor_get(x_108, 2); lean_inc(x_121); -x_81 = x_118; -x_82 = x_119; -x_83 = x_120; -x_84 = x_121; -goto block_98; +x_122 = lean_ctor_get(x_108, 3); +lean_inc(x_122); +x_87 = x_108; +x_88 = x_120; +x_89 = x_121; +x_90 = x_122; +goto block_104; } } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; -lean_dec(x_103); -x_122 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; -x_123 = l_Lean_Parser_ParserState_mkErrorsAt(x_102, x_122, x_101); -x_124 = lean_ctor_get(x_123, 0); -lean_inc(x_124); -x_125 = lean_ctor_get(x_123, 2); +lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_dec(x_111); +x_123 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_123, x_107); +x_125 = lean_ctor_get(x_124, 0); lean_inc(x_125); -x_126 = lean_ctor_get(x_123, 3); +x_126 = lean_ctor_get(x_124, 2); lean_inc(x_126); -x_81 = x_123; -x_82 = x_124; -x_83 = x_125; -x_84 = x_126; -goto block_98; +x_127 = lean_ctor_get(x_124, 3); +lean_inc(x_127); +x_87 = x_124; +x_88 = x_125; +x_89 = x_126; +x_90 = x_127; +goto block_104; } } else { -lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_100); -x_127 = lean_ctor_get(x_99, 0); -lean_inc(x_127); -x_128 = lean_ctor_get(x_99, 2); -lean_inc(x_128); -x_129 = lean_ctor_get(x_99, 3); -lean_inc(x_129); -x_81 = x_99; -x_82 = x_127; -x_83 = x_128; -x_84 = x_129; -goto block_98; +lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +lean_dec(x_109); +x_128 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__9; +x_129 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_128, x_107); +x_130 = lean_ctor_get(x_129, 0); +lean_inc(x_130); +x_131 = lean_ctor_get(x_129, 2); +lean_inc(x_131); +x_132 = lean_ctor_get(x_129, 3); +lean_inc(x_132); +x_87 = x_129; +x_88 = x_130; +x_89 = x_131; +x_90 = x_132; +goto block_104; } } +else +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; +lean_dec(x_106); +x_133 = lean_ctor_get(x_105, 0); +lean_inc(x_133); +x_134 = lean_ctor_get(x_105, 2); +lean_inc(x_134); +x_135 = lean_ctor_get(x_105, 3); +lean_inc(x_135); +x_87 = x_105; +x_88 = x_133; +x_89 = x_134; +x_90 = x_135; +goto block_104; +} +} +} +else +{ +lean_object* x_150; +lean_dec(x_83); +lean_dec(x_1); +x_150 = l_Lean_Parser_mergeOrElseErrors(x_82, x_77, x_74); +lean_dec(x_74); +return x_150; +} } } } @@ -24526,16 +24913,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_binderTactic___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_binderTactic___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_binderTactic___closed__4; +x_3 = l_Lean_Parser_Term_binderTactic___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__6() { +lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__7() { _start: { lean_object* x_1; @@ -24543,12 +24940,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_binderTactic___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__7() { +lean_object* _init_l_Lean_Parser_Term_binderTactic___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_binderTactic___closed__5; -x_2 = l_Lean_Parser_Term_binderTactic___closed__6; +x_1 = l_Lean_Parser_Term_binderTactic___closed__6; +x_2 = l_Lean_Parser_Term_binderTactic___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -24559,7 +24956,7 @@ lean_object* _init_l_Lean_Parser_Term_binderTactic() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_binderTactic___closed__7; +x_1 = l_Lean_Parser_Term_binderTactic___closed__8; return x_1; } } @@ -24614,228 +25011,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = lean_unsigned_to_nat(0u); -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -24853,16 +25281,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_binderDefault___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_binderDefault___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_binderDefault___closed__1; +x_3 = l_Lean_Parser_Term_binderDefault___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__3() { +lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__4() { _start: { lean_object* x_1; @@ -24870,12 +25308,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_binderDefault___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__4() { +lean_object* _init_l_Lean_Parser_Term_binderDefault___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_binderDefault___closed__2; -x_2 = l_Lean_Parser_Term_binderDefault___closed__3; +x_1 = l_Lean_Parser_Term_binderDefault___closed__3; +x_2 = l_Lean_Parser_Term_binderDefault___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -24886,7 +25324,7 @@ lean_object* _init_l_Lean_Parser_Term_binderDefault() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_binderDefault___closed__4; +x_1 = l_Lean_Parser_Term_binderDefault___closed__5; return x_1; } } @@ -25042,8 +25480,8 @@ lean_object* _init_l_Lean_Parser_Term_explicitBinder___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_binderTactic___closed__6; -x_2 = l_Lean_Parser_Term_binderDefault___closed__3; +x_1 = l_Lean_Parser_Term_binderTactic___closed__7; +x_2 = l_Lean_Parser_Term_binderDefault___closed__4; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -25101,10 +25539,20 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } +lean_object* _init_l_Lean_Parser_Term_explicitBinder___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(1024u); +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_checkPrecFn___boxed), 3, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} lean_object* l_Lean_Parser_Term_explicitBinder(uint8_t x_1) { _start: { -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; x_2 = l_Lean_Parser_Term_binderIdent; x_3 = lean_ctor_get(x_2, 0); lean_inc(x_3); @@ -25136,16 +25584,22 @@ x_19 = l_Lean_Parser_nodeInfo(x_18, x_15); x_20 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); lean_closure_set(x_20, 0, x_18); lean_closure_set(x_20, 1, x_17); -x_21 = l_Lean_Parser_Term_explicitBinder___elambda__1___closed__4; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = l_Lean_Parser_orelseInfo(x_22, x_19); -x_24 = lean_alloc_closure((void*)(l_Lean_Parser_Term_explicitBinder___elambda__1), 3, 1); -lean_closure_set(x_24, 0, x_20); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -return x_25; +x_21 = l_Lean_Parser_epsilonInfo; +x_22 = l_Lean_Parser_andthenInfo(x_21, x_19); +x_23 = l_Lean_Parser_Term_explicitBinder___closed__10; +x_24 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_24, 0, x_23); +lean_closure_set(x_24, 1, x_20); +x_25 = l_Lean_Parser_Term_explicitBinder___elambda__1___closed__4; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = l_Lean_Parser_orelseInfo(x_26, x_22); +x_28 = lean_alloc_closure((void*)(l_Lean_Parser_Term_explicitBinder___elambda__1), 3, 1); +lean_closure_set(x_28, 0, x_24); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; } } lean_object* l_Lean_Parser_Term_explicitBinder___boxed(lean_object* x_1) { @@ -25292,7 +25746,7 @@ return x_2; lean_object* l_Lean_Parser_Term_implicitBinder(uint8_t x_1) { _start: { -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; x_2 = l_Lean_Parser_Term_binderIdent; x_3 = lean_ctor_get(x_2, 0); lean_inc(x_3); @@ -25324,16 +25778,22 @@ x_19 = l_Lean_Parser_nodeInfo(x_18, x_15); x_20 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); lean_closure_set(x_20, 0, x_18); lean_closure_set(x_20, 1, x_17); -x_21 = l_Lean_Parser_Term_implicitBinder___elambda__1___closed__4; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = l_Lean_Parser_orelseInfo(x_22, x_19); -x_24 = lean_alloc_closure((void*)(l_Lean_Parser_Term_implicitBinder___elambda__1), 3, 1); -lean_closure_set(x_24, 0, x_20); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -return x_25; +x_21 = l_Lean_Parser_epsilonInfo; +x_22 = l_Lean_Parser_andthenInfo(x_21, x_19); +x_23 = l_Lean_Parser_Term_explicitBinder___closed__10; +x_24 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_24, 0, x_23); +lean_closure_set(x_24, 1, x_20); +x_25 = l_Lean_Parser_Term_implicitBinder___elambda__1___closed__4; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = l_Lean_Parser_orelseInfo(x_26, x_22); +x_28 = lean_alloc_closure((void*)(l_Lean_Parser_Term_implicitBinder___elambda__1), 3, 1); +lean_closure_set(x_28, 0, x_24); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; } } lean_object* l_Lean_Parser_Term_implicitBinder___boxed(lean_object* x_1) { @@ -25397,417 +25857,448 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_45 = lean_ctor_get(x_2, 1); -lean_inc(x_45); -lean_inc(x_1); -x_46 = l_Lean_Parser_tokenFn(x_1, x_2); -x_47 = lean_ctor_get(x_46, 3); -lean_inc(x_47); -if (lean_obj_tag(x_47) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_46, 0); -lean_inc(x_48); -x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); -lean_dec(x_48); -if (lean_obj_tag(x_49) == 2) -{ -lean_object* x_50; lean_object* x_51; uint8_t x_52; -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_51 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_52 = lean_string_dec_eq(x_50, x_51); -lean_dec(x_50); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_45); -x_8 = x_54; -goto block_44; -} -else -{ -lean_dec(x_45); -x_8 = x_46; -goto block_44; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_49); -x_55 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_45); -x_8 = x_56; -goto block_44; -} -} -else -{ -lean_object* x_57; lean_object* x_58; -lean_dec(x_47); -x_57 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_45); -x_8 = x_58; -goto block_44; -} -block_44: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_48 = lean_ctor_get(x_7, 1); +lean_inc(x_48); lean_inc(x_1); -x_10 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_8); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) +x_49 = l_Lean_Parser_tokenFn(x_1, x_7); +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = l_Lean_Parser_termParser___closed__2; -x_13 = lean_unsigned_to_nat(0u); +lean_object* x_51; lean_object* x_52; +x_51 = lean_ctor_get(x_49, 0); +lean_inc(x_51); +x_52 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_51); +lean_dec(x_51); +if (lean_obj_tag(x_52) == 2) +{ +lean_object* x_53; lean_object* x_54; uint8_t x_55; +x_53 = lean_ctor_get(x_52, 1); +lean_inc(x_53); +lean_dec(x_52); +x_54 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_55 = lean_string_dec_eq(x_53, x_54); +lean_dec(x_53); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; +x_56 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_56, x_48); +x_11 = x_57; +goto block_47; +} +else +{ +lean_dec(x_48); +x_11 = x_49; +goto block_47; +} +} +else +{ +lean_object* x_58; lean_object* x_59; +lean_dec(x_52); +x_58 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_58, x_48); +x_11 = x_59; +goto block_47; +} +} +else +{ +lean_object* x_60; lean_object* x_61; +lean_dec(x_50); +x_60 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_60, x_48); +x_11 = x_61; +goto block_47; +} +block_47: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_inc(x_1); -x_14 = l_Lean_Parser_categoryParser___elambda__1(x_12, x_13, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_13 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); x_18 = lean_ctor_get(x_17, 3); lean_inc(x_18); if (lean_obj_tag(x_18) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 1); lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); +x_20 = l_Lean_Parser_tokenFn(x_1, x_17); +x_21 = lean_ctor_get(x_20, 3); lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_27 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_29 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_31 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_20, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_33, x_19); +x_35 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_7); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_7); -return x_29; +x_37 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_37, x_19); +x_39 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_10); +return x_40; } } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_object* x_41; lean_object* x_42; lean_dec(x_18); -x_34 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_7); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_15); lean_dec(x_1); -x_38 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_7); -return x_39; +x_41 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_17, x_41, x_10); +return x_42; } } else { -lean_object* x_40; lean_object* x_41; -lean_dec(x_11); +lean_object* x_43; lean_object* x_44; +lean_dec(x_14); lean_dec(x_1); -x_40 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_10, x_40, x_7); -return x_41; +x_43 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_13, x_43, x_10); +return x_44; } } else { -lean_object* x_42; lean_object* x_43; -lean_dec(x_9); +lean_object* x_45; lean_object* x_46; +lean_dec(x_12); lean_dec(x_1); -x_42 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_8, x_42, x_7); -return x_43; +x_45 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_11, x_45, x_10); +return x_46; } } } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_59 = lean_ctor_get(x_2, 0); -lean_inc(x_59); -x_60 = lean_array_get_size(x_59); -lean_dec(x_59); -x_61 = lean_ctor_get(x_2, 1); -lean_inc(x_61); -lean_inc(x_1); -x_62 = lean_apply_2(x_4, x_1, x_2); -x_63 = lean_ctor_get(x_62, 3); -lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) -{ -lean_dec(x_61); -lean_dec(x_60); +lean_dec(x_8); lean_dec(x_1); -return x_62; +return x_7; +} } else { -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 0); +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_62 = lean_ctor_get(x_2, 0); +lean_inc(x_62); +x_63 = lean_array_get_size(x_62); +lean_dec(x_62); +x_64 = lean_ctor_get(x_2, 1); lean_inc(x_64); -lean_dec(x_63); -x_65 = lean_ctor_get(x_62, 1); -lean_inc(x_65); -x_66 = lean_nat_dec_eq(x_65, x_61); -lean_dec(x_65); -if (x_66 == 0) +lean_inc(x_1); +x_65 = lean_apply_2(x_4, x_1, x_2); +x_66 = lean_ctor_get(x_65, 3); +lean_inc(x_66); +if (lean_obj_tag(x_66) == 0) { lean_dec(x_64); -lean_dec(x_61); -lean_dec(x_60); +lean_dec(x_63); lean_dec(x_1); -return x_62; +return x_65; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_114; lean_object* x_115; -lean_inc(x_61); -x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); -lean_dec(x_60); -x_68 = lean_ctor_get(x_67, 0); +lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +lean_dec(x_66); +x_68 = lean_ctor_get(x_65, 1); lean_inc(x_68); -x_69 = lean_array_get_size(x_68); +x_69 = lean_nat_dec_eq(x_68, x_64); lean_dec(x_68); -lean_inc(x_1); -x_114 = l_Lean_Parser_tokenFn(x_1, x_67); -x_115 = lean_ctor_get(x_114, 3); -lean_inc(x_115); -if (lean_obj_tag(x_115) == 0) +if (x_69 == 0) { -lean_object* x_116; lean_object* x_117; -x_116 = lean_ctor_get(x_114, 0); -lean_inc(x_116); -x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); -lean_dec(x_116); -if (lean_obj_tag(x_117) == 2) -{ -lean_object* x_118; lean_object* x_119; uint8_t x_120; -x_118 = lean_ctor_get(x_117, 1); -lean_inc(x_118); -lean_dec(x_117); -x_119 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_120 = lean_string_dec_eq(x_118, x_119); -lean_dec(x_118); -if (x_120 == 0) -{ -lean_object* x_121; lean_object* x_122; -x_121 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_61); -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_61); -x_70 = x_122; -goto block_113; +lean_dec(x_67); +lean_dec(x_64); +lean_dec(x_63); +lean_dec(x_1); +return x_65; } else { -x_70 = x_114; -goto block_113; -} -} -else -{ -lean_object* x_123; lean_object* x_124; -lean_dec(x_117); -x_123 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_61); -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_61); -x_70 = x_124; -goto block_113; -} -} -else -{ -lean_object* x_125; lean_object* x_126; -lean_dec(x_115); -x_125 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; -lean_inc(x_61); -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_61); -x_70 = x_126; -goto block_113; -} -block_113: -{ -lean_object* x_71; -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; lean_object* x_73; -lean_inc(x_1); -x_72 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_70); +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_inc(x_64); +x_70 = l_Lean_Parser_ParserState_restore(x_65, x_63, x_64); +lean_dec(x_63); +x_71 = lean_unsigned_to_nat(1024u); +x_72 = l_Lean_Parser_checkPrecFn(x_71, x_1, x_70); x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_74 = l_Lean_Parser_termParser___closed__2; -x_75 = lean_unsigned_to_nat(0u); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_120; lean_object* x_121; lean_object* x_122; +x_74 = lean_ctor_get(x_72, 0); +lean_inc(x_74); +x_75 = lean_array_get_size(x_74); +lean_dec(x_74); +x_120 = lean_ctor_get(x_72, 1); +lean_inc(x_120); lean_inc(x_1); -x_76 = l_Lean_Parser_categoryParser___elambda__1(x_74, x_75, x_1, x_72); +x_121 = l_Lean_Parser_tokenFn(x_1, x_72); +x_122 = lean_ctor_get(x_121, 3); +lean_inc(x_122); +if (lean_obj_tag(x_122) == 0) +{ +lean_object* x_123; lean_object* x_124; +x_123 = lean_ctor_get(x_121, 0); +lean_inc(x_123); +x_124 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_123); +lean_dec(x_123); +if (lean_obj_tag(x_124) == 2) +{ +lean_object* x_125; lean_object* x_126; uint8_t x_127; +x_125 = lean_ctor_get(x_124, 1); +lean_inc(x_125); +lean_dec(x_124); +x_126 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_127 = lean_string_dec_eq(x_125, x_126); +lean_dec(x_125); +if (x_127 == 0) +{ +lean_object* x_128; lean_object* x_129; +x_128 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_129 = l_Lean_Parser_ParserState_mkErrorsAt(x_121, x_128, x_120); +x_76 = x_129; +goto block_119; +} +else +{ +lean_dec(x_120); +x_76 = x_121; +goto block_119; +} +} +else +{ +lean_object* x_130; lean_object* x_131; +lean_dec(x_124); +x_130 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_121, x_130, x_120); +x_76 = x_131; +goto block_119; +} +} +else +{ +lean_object* x_132; lean_object* x_133; +lean_dec(x_122); +x_132 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__12; +x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_121, x_132, x_120); +x_76 = x_133; +goto block_119; +} +block_119: +{ +lean_object* x_77; x_77 = lean_ctor_get(x_76, 3); lean_inc(x_77); if (lean_obj_tag(x_77) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_76, 1); -lean_inc(x_78); -x_79 = l_Lean_Parser_tokenFn(x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +lean_object* x_78; lean_object* x_79; +lean_inc(x_1); +x_78 = l_Lean_Parser_Term_optIdent___elambda__1(x_1, x_76); +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) { -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); -lean_inc(x_81); -x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_80 = l_Lean_Parser_termParser___closed__2; +x_81 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_82 = l_Lean_Parser_categoryParser___elambda__1(x_80, x_81, x_1, x_78); +x_83 = lean_ctor_get(x_82, 3); lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) +if (lean_obj_tag(x_83) == 0) { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); -x_88 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_69); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_64, x_61); -lean_dec(x_61); -return x_90; +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_82, 1); +lean_inc(x_84); +x_85 = l_Lean_Parser_tokenFn(x_1, x_82); +x_86 = lean_ctor_get(x_85, 3); +lean_inc(x_86); +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; +x_87 = lean_ctor_get(x_85, 0); +lean_inc(x_87); +x_88 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_87); +lean_dec(x_87); +if (lean_obj_tag(x_88) == 2) +{ +lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_89 = lean_ctor_get(x_88, 1); +lean_inc(x_89); +lean_dec(x_88); +x_90 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_91 = lean_string_dec_eq(x_89, x_90); +lean_dec(x_89); +if (x_91 == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_92 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_92, x_84); +x_94 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_75); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_67, x_64); +lean_dec(x_64); +return x_96; } else { -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_78); -x_91 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_69); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_64, x_61); -lean_dec(x_61); -return x_93; +lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_84); +x_97 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_85, x_97, x_75); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_67, x_64); +lean_dec(x_64); +return x_99; } } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_82); -x_94 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); -x_96 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_69); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_64, x_61); -lean_dec(x_61); -return x_98; +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_88); +x_100 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_100, x_84); +x_102 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_75); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_67, x_64); +lean_dec(x_64); +return x_104; } } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_80); -x_99 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); -x_101 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_69); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_64, x_61); -lean_dec(x_61); -return x_103; -} -} -else -{ -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_77); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_69); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_64, x_61); -lean_dec(x_61); -return x_106; -} -} -else -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_73); -lean_dec(x_1); +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_dec(x_86); +x_105 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_85, x_105, x_84); x_107 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_72, x_107, x_69); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_64, x_61); -lean_dec(x_61); +x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_75); +x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_67, x_64); +lean_dec(x_64); return x_109; } } else { lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_71); +lean_dec(x_83); lean_dec(x_1); x_110 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_70, x_110, x_69); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_64, x_61); -lean_dec(x_61); +x_111 = l_Lean_Parser_ParserState_mkNode(x_82, x_110, x_75); +x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_67, x_64); +lean_dec(x_64); return x_112; } } +else +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_79); +lean_dec(x_1); +x_113 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_114 = l_Lean_Parser_ParserState_mkNode(x_78, x_113, x_75); +x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_67, x_64); +lean_dec(x_64); +return x_115; +} +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_77); +lean_dec(x_1); +x_116 = l_Lean_Parser_Term_instBinder___elambda__1___closed__2; +x_117 = l_Lean_Parser_ParserState_mkNode(x_76, x_116, x_75); +x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_67, x_64); +lean_dec(x_64); +return x_118; +} +} +} +else +{ +lean_object* x_134; +lean_dec(x_73); +lean_dec(x_1); +x_134 = l_Lean_Parser_mergeOrElseErrors(x_72, x_67, x_64); +lean_dec(x_64); +return x_134; +} } } } @@ -25848,16 +26339,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_instBinder___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_instBinder___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_instBinder___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_instBinder___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_instBinder___closed__3; +x_3 = l_Lean_Parser_Term_instBinder___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_instBinder___closed__5() { +lean_object* _init_l_Lean_Parser_Term_instBinder___closed__6() { _start: { lean_object* x_1; @@ -25865,12 +26366,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_instBinder___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Term_instBinder___closed__6() { +lean_object* _init_l_Lean_Parser_Term_instBinder___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_instBinder___closed__4; -x_2 = l_Lean_Parser_Term_instBinder___closed__5; +x_1 = l_Lean_Parser_Term_instBinder___closed__5; +x_2 = l_Lean_Parser_Term_instBinder___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -25881,7 +26382,7 @@ lean_object* _init_l_Lean_Parser_Term_instBinder() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_instBinder___closed__6; +x_1 = l_Lean_Parser_Term_instBinder___closed__7; return x_1; } } @@ -25955,7 +26456,7 @@ x_7 = l_Lean_Parser_orelseInfo(x_4, x_6); x_8 = lean_ctor_get(x_3, 1); lean_inc(x_8); lean_dec(x_3); -x_9 = l_Lean_Parser_Term_instBinder___closed__5; +x_9 = l_Lean_Parser_Term_instBinder___closed__6; x_10 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn), 4, 2); lean_closure_set(x_10, 0, x_8); lean_closure_set(x_10, 1, x_9); @@ -26069,17 +26570,19 @@ return x_2; lean_object* _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__10() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("expected parentheses around dependent arrow"); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; +x_3 = lean_string_append(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Char_HasRepr___closed__1; -x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; +x_1 = l_Lean_Parser_Term_depArrow___elambda__1___closed__10; +x_2 = l_Lean_Parser_unicodeSymbolFn___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } @@ -26089,7 +26592,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Term_depArrow___elambda__1___closed__11; -x_2 = l_Lean_Parser_unicodeSymbolFn___closed__1; +x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; x_3 = lean_string_append(x_1, x_2); return x_3; } @@ -26099,7 +26602,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Term_depArrow___elambda__1___closed__12; -x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; +x_2 = l_Char_HasRepr___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } @@ -26108,18 +26611,8 @@ lean_object* _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_depArrow___elambda__1___closed__13; -x_2 = l_Char_HasRepr___closed__1; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -lean_object* _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__15() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__14; +x_2 = l_Lean_Parser_Term_depArrow___elambda__1___closed__13; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); @@ -26141,227 +26634,223 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); x_8 = l_Lean_Parser_appPrec; -x_9 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_10 = l_Lean_Parser_checkPrecFn(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); +x_12 = lean_array_get_size(x_11); +lean_dec(x_11); lean_inc(x_1); -x_14 = lean_apply_2(x_4, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +x_13 = lean_apply_2(x_4, x_1, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = lean_unsigned_to_nat(25u); -x_17 = l_Lean_Parser_Term_depArrow___elambda__1___closed__10; -x_18 = l_Lean_Parser_checkPrecFn(x_16, x_17, x_1, x_14); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_unsigned_to_nat(25u); +x_16 = l_Lean_Parser_checkPrecFn(x_15, x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; -x_21 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; -x_22 = l_Lean_Parser_Term_depArrow___elambda__1___closed__15; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; +x_19 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; +x_20 = l_Lean_Parser_Term_depArrow___elambda__1___closed__14; lean_inc(x_1); -x_23 = l_Lean_Parser_unicodeSymbolFnAux(x_20, x_21, x_22, x_1, x_18); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) +x_21 = l_Lean_Parser_unicodeSymbolFnAux(x_18, x_19, x_20, x_1, x_16); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = l_Lean_Parser_termParser___closed__2; -x_26 = lean_unsigned_to_nat(0u); -x_27 = l_Lean_Parser_categoryParser___elambda__1(x_25, x_26, x_1, x_23); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_23 = l_Lean_Parser_termParser___closed__2; +x_24 = lean_unsigned_to_nat(0u); +x_25 = l_Lean_Parser_categoryParser___elambda__1(x_23, x_24, x_1, x_21); +x_26 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_12); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_22); +lean_dec(x_1); x_28 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_13); +x_29 = l_Lean_Parser_ParserState_mkNode(x_21, x_28, x_12); return x_29; } +} else { lean_object* x_30; lean_object* x_31; -lean_dec(x_24); +lean_dec(x_17); lean_dec(x_1); x_30 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_23, x_30, x_13); +x_31 = l_Lean_Parser_ParserState_mkNode(x_16, x_30, x_12); return x_31; } } else { lean_object* x_32; lean_object* x_33; -lean_dec(x_19); +lean_dec(x_14); lean_dec(x_1); x_32 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_18, x_32, x_13); +x_33 = l_Lean_Parser_ParserState_mkNode(x_13, x_32, x_12); return x_33; } } else { -lean_object* x_34; lean_object* x_35; -lean_dec(x_15); -lean_dec(x_1); -x_34 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_14, x_34, x_13); -return x_35; -} -} -else -{ -lean_dec(x_11); +lean_dec(x_10); lean_dec(x_4); lean_dec(x_1); -return x_10; +return x_9; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_2, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_2, 1); lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_inc(x_1); +x_37 = lean_apply_2(x_6, x_1, x_2); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) +{ lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_6, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_35); +lean_dec(x_4); +lean_dec(x_1); +return x_37; +} +else +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +lean_dec(x_38); +x_40 = lean_ctor_get(x_37, 1); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_4); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); -lean_inc(x_41); +x_41 = lean_nat_dec_eq(x_40, x_36); lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) +if (x_41 == 0) { -lean_dec(x_41); -lean_dec(x_38); -lean_dec(x_37); +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_35); lean_dec(x_4); lean_dec(x_1); -return x_39; +return x_37; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_appPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_inc(x_36); +x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); +lean_dec(x_35); +x_43 = l_Lean_Parser_appPrec; +x_44 = l_Lean_Parser_checkPrecFn(x_43, x_1, x_42); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_array_get_size(x_46); +lean_dec(x_46); lean_inc(x_1); -x_51 = lean_apply_2(x_4, x_1, x_47); +x_48 = lean_apply_2(x_4, x_1, x_44); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_unsigned_to_nat(25u); +x_51 = l_Lean_Parser_checkPrecFn(x_50, x_1, x_48); x_52 = lean_ctor_get(x_51, 3); lean_inc(x_52); if (lean_obj_tag(x_52) == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_53 = lean_unsigned_to_nat(25u); -x_54 = l_Lean_Parser_Term_depArrow___elambda__1___closed__10; -x_55 = l_Lean_Parser_checkPrecFn(x_53, x_54, x_1, x_51); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; -x_58 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; -x_59 = l_Lean_Parser_Term_depArrow___elambda__1___closed__15; +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_53 = l_Lean_Parser_Term_depArrow___elambda__1___closed__7; +x_54 = l_Lean_Parser_Term_depArrow___elambda__1___closed__9; +x_55 = l_Lean_Parser_Term_depArrow___elambda__1___closed__14; lean_inc(x_1); -x_60 = l_Lean_Parser_unicodeSymbolFnAux(x_57, x_58, x_59, x_1, x_55); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +x_56 = l_Lean_Parser_unicodeSymbolFnAux(x_53, x_54, x_55, x_1, x_51); +x_57 = lean_ctor_get(x_56, 3); +lean_inc(x_57); +if (lean_obj_tag(x_57) == 0) { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_62 = l_Lean_Parser_termParser___closed__2; -x_63 = lean_unsigned_to_nat(0u); -x_64 = l_Lean_Parser_categoryParser___elambda__1(x_62, x_63, x_1, x_60); -x_65 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_66 = l_Lean_Parser_ParserState_mkNode(x_64, x_65, x_50); -x_67 = l_Lean_Parser_mergeOrElseErrors(x_66, x_41, x_38); -lean_dec(x_38); -return x_67; +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_58 = l_Lean_Parser_termParser___closed__2; +x_59 = lean_unsigned_to_nat(0u); +x_60 = l_Lean_Parser_categoryParser___elambda__1(x_58, x_59, x_1, x_56); +x_61 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; +x_62 = l_Lean_Parser_ParserState_mkNode(x_60, x_61, x_47); +x_63 = l_Lean_Parser_mergeOrElseErrors(x_62, x_39, x_36); +lean_dec(x_36); +return x_63; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_61); +lean_object* x_64; lean_object* x_65; lean_object* x_66; +lean_dec(x_57); lean_dec(x_1); -x_68 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_60, x_68, x_50); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_41, x_38); -lean_dec(x_38); -return x_70; +x_64 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; +x_65 = l_Lean_Parser_ParserState_mkNode(x_56, x_64, x_47); +x_66 = l_Lean_Parser_mergeOrElseErrors(x_65, x_39, x_36); +lean_dec(x_36); +return x_66; } } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_56); -lean_dec(x_1); -x_71 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_72 = l_Lean_Parser_ParserState_mkNode(x_55, x_71, x_50); -x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_41, x_38); -lean_dec(x_38); -return x_73; -} -} -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_dec(x_52); lean_dec(x_1); -x_74 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; -x_75 = l_Lean_Parser_ParserState_mkNode(x_51, x_74, x_50); -x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_41, x_38); -lean_dec(x_38); -return x_76; +x_67 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; +x_68 = l_Lean_Parser_ParserState_mkNode(x_51, x_67, x_47); +x_69 = l_Lean_Parser_mergeOrElseErrors(x_68, x_39, x_36); +lean_dec(x_36); +return x_69; } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_49); +lean_dec(x_1); +x_70 = l_Lean_Parser_Term_depArrow___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_48, x_70, x_47); +x_72 = l_Lean_Parser_mergeOrElseErrors(x_71, x_39, x_36); +lean_dec(x_36); +return x_72; +} +} +else +{ +lean_object* x_73; +lean_dec(x_45); lean_dec(x_4); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_73 = l_Lean_Parser_mergeOrElseErrors(x_44, x_39, x_36); +lean_dec(x_36); +return x_73; } } } @@ -26597,118 +27086,149 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_8 = l_Lean_Parser_Term_binderIdent___elambda__1(x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1(x_1, x_8); -x_11 = l_Lean_nullKind; -lean_inc(x_7); -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -x_13 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_nullKind; -lean_inc(x_7); -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -x_17 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_7); -return x_18; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -x_20 = lean_array_get_size(x_19); -lean_dec(x_19); -x_21 = lean_ctor_get(x_2, 1); -lean_inc(x_21); lean_inc(x_1); -x_22 = lean_apply_2(x_4, x_1, x_2); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) +x_11 = l_Lean_Parser_Term_binderIdent___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) { -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_1); -return x_22; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1(x_1, x_11); +x_14 = l_Lean_nullKind; +lean_inc(x_10); +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +x_16 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_nullKind; +lean_inc(x_10); +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +x_20 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_10); +return x_21; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +x_23 = lean_array_get_size(x_22); +lean_dec(x_22); +x_24 = lean_ctor_get(x_2, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_21); -lean_dec(x_25); -if (x_26 == 0) +lean_inc(x_1); +x_25 = lean_apply_2(x_4, x_1, x_2); +x_26 = lean_ctor_get(x_25, 3); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_20); +lean_dec(x_23); lean_dec(x_1); -return x_22; +return x_25; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_21); -x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); -lean_dec(x_20); -x_28 = lean_ctor_get(x_27, 0); +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); -x_29 = lean_array_get_size(x_28); +x_29 = lean_nat_dec_eq(x_28, x_24); lean_dec(x_28); -lean_inc(x_1); -x_30 = l_Lean_Parser_Term_binderIdent___elambda__1(x_1, x_27); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) +if (x_29 == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1(x_1, x_30); -x_33 = l_Lean_nullKind; -lean_inc(x_29); -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); -x_35 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_29); -x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_24, x_21); -lean_dec(x_21); -return x_37; +lean_dec(x_27); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_1); +return x_25; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_31); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_inc(x_24); +x_30 = l_Lean_Parser_ParserState_restore(x_25, x_23, x_24); +lean_dec(x_23); +x_31 = lean_unsigned_to_nat(1024u); +x_32 = l_Lean_Parser_checkPrecFn(x_31, x_1, x_30); +x_33 = lean_ctor_get(x_32, 3); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_array_get_size(x_34); +lean_dec(x_34); +lean_inc(x_1); +x_36 = l_Lean_Parser_Term_binderIdent___elambda__1(x_1, x_32); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_38 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_simpleBinder___elambda__1___spec__1(x_1, x_36); +x_39 = l_Lean_nullKind; +lean_inc(x_35); +x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_35); +x_41 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_35); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_27, x_24); +lean_dec(x_24); +return x_43; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_37); lean_dec(x_1); -x_38 = l_Lean_nullKind; -lean_inc(x_29); -x_39 = l_Lean_Parser_ParserState_mkNode(x_30, x_38, x_29); -x_40 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_29); -x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); -lean_dec(x_21); -return x_42; +x_44 = l_Lean_nullKind; +lean_inc(x_35); +x_45 = l_Lean_Parser_ParserState_mkNode(x_36, x_44, x_35); +x_46 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__2; +x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_35); +x_48 = l_Lean_Parser_mergeOrElseErrors(x_47, x_27, x_24); +lean_dec(x_24); +return x_48; +} +} +else +{ +lean_object* x_49; +lean_dec(x_33); +lean_dec(x_1); +x_49 = l_Lean_Parser_mergeOrElseErrors(x_32, x_27, x_24); +lean_dec(x_24); +return x_49; } } } @@ -26730,16 +27250,26 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_simpleBinder___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_simpleBinder___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_simpleBinder___closed__1; +x_3 = l_Lean_Parser_Term_simpleBinder___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__3() { +lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__4() { _start: { lean_object* x_1; @@ -26747,12 +27277,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_simpleBinder___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__4() { +lean_object* _init_l_Lean_Parser_Term_simpleBinder___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_simpleBinder___closed__2; -x_2 = l_Lean_Parser_Term_simpleBinder___closed__3; +x_1 = l_Lean_Parser_Term_simpleBinder___closed__3; +x_2 = l_Lean_Parser_Term_simpleBinder___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -26763,7 +27293,7 @@ lean_object* _init_l_Lean_Parser_Term_simpleBinder() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_simpleBinder___closed__4; +x_1 = l_Lean_Parser_Term_simpleBinder___closed__5; return x_1; } } @@ -27014,473 +27544,471 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); x_8 = l_Lean_Parser_Term_leadPrec; -x_9 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_10 = l_Lean_Parser_checkPrecFn(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_44 = l_Lean_Parser_Term_forall___elambda__1___closed__6; -x_45 = l_Lean_Parser_Term_forall___elambda__1___closed__7; -x_46 = l_Lean_Parser_Term_forall___elambda__1___closed__12; -lean_inc(x_1); -x_47 = l_Lean_Parser_unicodeSymbolFnAux(x_44, x_45, x_46, x_1, x_10); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_51 = lean_ctor_get(x_47, 1); -lean_inc(x_51); -lean_inc(x_1); -x_52 = l_Lean_Parser_Term_simpleBinder___elambda__1(x_1, x_47); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_51); -lean_dec(x_4); -lean_inc(x_1); -x_54 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_52); -x_55 = l_Lean_nullKind; -x_56 = l_Lean_Parser_ParserState_mkNode(x_54, x_55, x_50); -x_14 = x_56; -goto block_43; -} -else -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_53, 0); -lean_inc(x_57); -lean_dec(x_53); -x_58 = lean_ctor_get(x_52, 1); -lean_inc(x_58); -x_59 = lean_nat_dec_eq(x_58, x_51); -lean_dec(x_58); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; -lean_dec(x_57); -lean_dec(x_51); -lean_dec(x_4); -x_60 = l_Lean_nullKind; -x_61 = l_Lean_Parser_ParserState_mkNode(x_52, x_60, x_50); -x_14 = x_61; -goto block_43; -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -lean_inc(x_51); -x_62 = l_Lean_Parser_ParserState_restore(x_52, x_50, x_51); -lean_inc(x_1); -x_63 = lean_apply_2(x_4, x_1, x_62); -x_64 = l_Lean_Parser_mergeOrElseErrors(x_63, x_57, x_51); -lean_dec(x_51); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; -lean_inc(x_1); -x_66 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_64); -x_67 = l_Lean_nullKind; -x_68 = l_Lean_Parser_ParserState_mkNode(x_66, x_67, x_50); -x_14 = x_68; -goto block_43; -} -else -{ -lean_object* x_69; lean_object* x_70; -lean_dec(x_65); -x_69 = l_Lean_nullKind; -x_70 = l_Lean_Parser_ParserState_mkNode(x_64, x_69, x_50); -x_14 = x_70; -goto block_43; -} -} -} -} -else -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_48); -lean_dec(x_4); -lean_dec(x_1); -x_71 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_72 = l_Lean_Parser_ParserState_mkNode(x_47, x_71, x_13); -return x_72; -} -block_43: -{ -lean_object* x_15; -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_1); -x_24 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_13); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_16); -x_28 = l_Lean_Parser_termParser___closed__2; -x_29 = lean_unsigned_to_nat(0u); -x_30 = l_Lean_Parser_categoryParser___elambda__1(x_28, x_29, x_1, x_17); -x_31 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_13); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_20); -lean_dec(x_1); -x_33 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_33, x_16); -x_35 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_13); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_18); -lean_dec(x_1); -x_37 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_37, x_16); -x_39 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_13); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_15); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_14, x_41, x_13); -return x_42; -} -} -} -else -{ +x_12 = lean_array_get_size(x_11); lean_dec(x_11); +x_43 = l_Lean_Parser_Term_forall___elambda__1___closed__6; +x_44 = l_Lean_Parser_Term_forall___elambda__1___closed__7; +x_45 = l_Lean_Parser_Term_forall___elambda__1___closed__12; +lean_inc(x_1); +x_46 = l_Lean_Parser_unicodeSymbolFnAux(x_43, x_44, x_45, x_1, x_9); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_array_get_size(x_48); +lean_dec(x_48); +x_50 = lean_ctor_get(x_46, 1); +lean_inc(x_50); +lean_inc(x_1); +x_51 = l_Lean_Parser_Term_simpleBinder___elambda__1(x_1, x_46); +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_50); lean_dec(x_4); -lean_dec(x_1); -return x_10; +lean_inc(x_1); +x_53 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_51); +x_54 = l_Lean_nullKind; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_49); +x_13 = x_55; +goto block_42; +} +else +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_52, 0); +lean_inc(x_56); +lean_dec(x_52); +x_57 = lean_ctor_get(x_51, 1); +lean_inc(x_57); +x_58 = lean_nat_dec_eq(x_57, x_50); +lean_dec(x_57); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_56); +lean_dec(x_50); +lean_dec(x_4); +x_59 = l_Lean_nullKind; +x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_49); +x_13 = x_60; +goto block_42; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_inc(x_50); +x_61 = l_Lean_Parser_ParserState_restore(x_51, x_49, x_50); +lean_inc(x_1); +x_62 = lean_apply_2(x_4, x_1, x_61); +x_63 = l_Lean_Parser_mergeOrElseErrors(x_62, x_56, x_50); +lean_dec(x_50); +x_64 = lean_ctor_get(x_63, 3); +lean_inc(x_64); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_1); +x_65 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_63); +x_66 = l_Lean_nullKind; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_49); +x_13 = x_67; +goto block_42; +} +else +{ +lean_object* x_68; lean_object* x_69; +lean_dec(x_64); +x_68 = l_Lean_nullKind; +x_69 = l_Lean_Parser_ParserState_mkNode(x_63, x_68, x_49); +x_13 = x_69; +goto block_42; +} +} } } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_73 = lean_ctor_get(x_2, 0); -lean_inc(x_73); -x_74 = lean_array_get_size(x_73); +lean_object* x_70; lean_object* x_71; +lean_dec(x_47); +lean_dec(x_4); +lean_dec(x_1); +x_70 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_71 = l_Lean_Parser_ParserState_mkNode(x_46, x_70, x_12); +return x_71; +} +block_42: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_1); +x_23 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_12); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_15); +x_27 = l_Lean_Parser_termParser___closed__2; +x_28 = lean_unsigned_to_nat(0u); +x_29 = l_Lean_Parser_categoryParser___elambda__1(x_27, x_28, x_1, x_16); +x_30 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_12); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +lean_dec(x_1); +x_32 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_32, x_15); +x_34 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_12); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_17); +lean_dec(x_1); +x_36 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_36, x_15); +x_38 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_12); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_14); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_13, x_40, x_12); +return x_41; +} +} +} +else +{ +lean_dec(x_10); +lean_dec(x_4); +lean_dec(x_1); +return x_9; +} +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_72 = lean_ctor_get(x_2, 0); +lean_inc(x_72); +x_73 = lean_array_get_size(x_72); +lean_dec(x_72); +x_74 = lean_ctor_get(x_2, 1); +lean_inc(x_74); +lean_inc(x_1); +x_75 = lean_apply_2(x_6, x_1, x_2); +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) +{ +lean_dec(x_74); lean_dec(x_73); -x_75 = lean_ctor_get(x_2, 1); -lean_inc(x_75); -lean_inc(x_1); -x_76 = lean_apply_2(x_6, x_1, x_2); -x_77 = lean_ctor_get(x_76, 3); +lean_dec(x_4); +lean_dec(x_1); +return x_75; +} +else +{ +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = lean_ctor_get(x_76, 0); lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) -{ -lean_dec(x_75); -lean_dec(x_74); -lean_dec(x_4); -lean_dec(x_1); -return x_76; -} -else -{ -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_77, 0); +lean_dec(x_76); +x_78 = lean_ctor_get(x_75, 1); lean_inc(x_78); -lean_dec(x_77); -x_79 = lean_ctor_get(x_76, 1); -lean_inc(x_79); -x_80 = lean_nat_dec_eq(x_79, x_75); -lean_dec(x_79); -if (x_80 == 0) -{ +x_79 = lean_nat_dec_eq(x_78, x_74); lean_dec(x_78); -lean_dec(x_75); +if (x_79 == 0) +{ +lean_dec(x_77); lean_dec(x_74); +lean_dec(x_73); lean_dec(x_4); lean_dec(x_1); -return x_76; +return x_75; } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_inc(x_75); -x_81 = l_Lean_Parser_ParserState_restore(x_76, x_74, x_75); -lean_dec(x_74); -x_82 = l_Lean_Parser_Term_leadPrec; -x_83 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_84 = l_Lean_Parser_checkPrecFn(x_82, x_83, x_1, x_81); -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_inc(x_74); +x_80 = l_Lean_Parser_ParserState_restore(x_75, x_73, x_74); +lean_dec(x_73); +x_81 = l_Lean_Parser_Term_leadPrec; +x_82 = l_Lean_Parser_checkPrecFn(x_81, x_1, x_80); +x_83 = lean_ctor_get(x_82, 3); +lean_inc(x_83); +if (lean_obj_tag(x_83) == 0) { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; -x_86 = lean_ctor_get(x_84, 0); -lean_inc(x_86); -x_87 = lean_array_get_size(x_86); -lean_dec(x_86); -x_123 = l_Lean_Parser_Term_forall___elambda__1___closed__6; -x_124 = l_Lean_Parser_Term_forall___elambda__1___closed__7; -x_125 = l_Lean_Parser_Term_forall___elambda__1___closed__12; +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_84 = lean_ctor_get(x_82, 0); +lean_inc(x_84); +x_85 = lean_array_get_size(x_84); +lean_dec(x_84); +x_121 = l_Lean_Parser_Term_forall___elambda__1___closed__6; +x_122 = l_Lean_Parser_Term_forall___elambda__1___closed__7; +x_123 = l_Lean_Parser_Term_forall___elambda__1___closed__12; lean_inc(x_1); -x_126 = l_Lean_Parser_unicodeSymbolFnAux(x_123, x_124, x_125, x_1, x_84); -x_127 = lean_ctor_get(x_126, 3); -lean_inc(x_127); -if (lean_obj_tag(x_127) == 0) +x_124 = l_Lean_Parser_unicodeSymbolFnAux(x_121, x_122, x_123, x_1, x_82); +x_125 = lean_ctor_get(x_124, 3); +lean_inc(x_125); +if (lean_obj_tag(x_125) == 0) { -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_128 = lean_ctor_get(x_126, 0); +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_126 = lean_ctor_get(x_124, 0); +lean_inc(x_126); +x_127 = lean_array_get_size(x_126); +lean_dec(x_126); +x_128 = lean_ctor_get(x_124, 1); lean_inc(x_128); -x_129 = lean_array_get_size(x_128); +lean_inc(x_1); +x_129 = l_Lean_Parser_Term_simpleBinder___elambda__1(x_1, x_124); +x_130 = lean_ctor_get(x_129, 3); +lean_inc(x_130); +if (lean_obj_tag(x_130) == 0) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_dec(x_128); -x_130 = lean_ctor_get(x_126, 1); -lean_inc(x_130); -lean_inc(x_1); -x_131 = l_Lean_Parser_Term_simpleBinder___elambda__1(x_1, x_126); -x_132 = lean_ctor_get(x_131, 3); -lean_inc(x_132); -if (lean_obj_tag(x_132) == 0) -{ -lean_object* x_133; lean_object* x_134; lean_object* x_135; -lean_dec(x_130); lean_dec(x_4); lean_inc(x_1); -x_133 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_131); -x_134 = l_Lean_nullKind; -x_135 = l_Lean_Parser_ParserState_mkNode(x_133, x_134, x_129); -x_88 = x_135; -goto block_122; +x_131 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_129); +x_132 = l_Lean_nullKind; +x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_127); +x_86 = x_133; +goto block_120; } else { -lean_object* x_136; lean_object* x_137; uint8_t x_138; -x_136 = lean_ctor_get(x_132, 0); -lean_inc(x_136); -lean_dec(x_132); -x_137 = lean_ctor_get(x_131, 1); -lean_inc(x_137); -x_138 = lean_nat_dec_eq(x_137, x_130); -lean_dec(x_137); -if (x_138 == 0) -{ -lean_object* x_139; lean_object* x_140; -lean_dec(x_136); +lean_object* x_134; lean_object* x_135; uint8_t x_136; +x_134 = lean_ctor_get(x_130, 0); +lean_inc(x_134); lean_dec(x_130); +x_135 = lean_ctor_get(x_129, 1); +lean_inc(x_135); +x_136 = lean_nat_dec_eq(x_135, x_128); +lean_dec(x_135); +if (x_136 == 0) +{ +lean_object* x_137; lean_object* x_138; +lean_dec(x_134); +lean_dec(x_128); lean_dec(x_4); -x_139 = l_Lean_nullKind; -x_140 = l_Lean_Parser_ParserState_mkNode(x_131, x_139, x_129); -x_88 = x_140; -goto block_122; +x_137 = l_Lean_nullKind; +x_138 = l_Lean_Parser_ParserState_mkNode(x_129, x_137, x_127); +x_86 = x_138; +goto block_120; } else { -lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; -lean_inc(x_130); -x_141 = l_Lean_Parser_ParserState_restore(x_131, x_129, x_130); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +lean_inc(x_128); +x_139 = l_Lean_Parser_ParserState_restore(x_129, x_127, x_128); lean_inc(x_1); -x_142 = lean_apply_2(x_4, x_1, x_141); -x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_136, x_130); -lean_dec(x_130); -x_144 = lean_ctor_get(x_143, 3); -lean_inc(x_144); -if (lean_obj_tag(x_144) == 0) +x_140 = lean_apply_2(x_4, x_1, x_139); +x_141 = l_Lean_Parser_mergeOrElseErrors(x_140, x_134, x_128); +lean_dec(x_128); +x_142 = lean_ctor_get(x_141, 3); +lean_inc(x_142); +if (lean_obj_tag(x_142) == 0) { -lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_inc(x_1); -x_145 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_143); +x_143 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1(x_1, x_141); +x_144 = l_Lean_nullKind; +x_145 = l_Lean_Parser_ParserState_mkNode(x_143, x_144, x_127); +x_86 = x_145; +goto block_120; +} +else +{ +lean_object* x_146; lean_object* x_147; +lean_dec(x_142); x_146 = l_Lean_nullKind; -x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_129); -x_88 = x_147; -goto block_122; -} -else -{ -lean_object* x_148; lean_object* x_149; -lean_dec(x_144); -x_148 = l_Lean_nullKind; -x_149 = l_Lean_Parser_ParserState_mkNode(x_143, x_148, x_129); -x_88 = x_149; -goto block_122; +x_147 = l_Lean_Parser_ParserState_mkNode(x_141, x_146, x_127); +x_86 = x_147; +goto block_120; } } } } else { -lean_object* x_150; lean_object* x_151; lean_object* x_152; -lean_dec(x_127); +lean_object* x_148; lean_object* x_149; lean_object* x_150; +lean_dec(x_125); lean_dec(x_4); lean_dec(x_1); -x_150 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_151 = l_Lean_Parser_ParserState_mkNode(x_126, x_150, x_87); -x_152 = l_Lean_Parser_mergeOrElseErrors(x_151, x_78, x_75); -lean_dec(x_75); -return x_152; +x_148 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_149 = l_Lean_Parser_ParserState_mkNode(x_124, x_148, x_85); +x_150 = l_Lean_Parser_mergeOrElseErrors(x_149, x_77, x_74); +lean_dec(x_74); +return x_150; } -block_122: +block_120: { -lean_object* x_89; -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) +lean_object* x_87; +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); +if (lean_obj_tag(x_87) == 0) { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_88, 1); -lean_inc(x_90); +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); lean_inc(x_1); -x_91 = l_Lean_Parser_tokenFn(x_1, x_88); -x_92 = lean_ctor_get(x_91, 3); -lean_inc(x_92); -if (lean_obj_tag(x_92) == 0) +x_89 = l_Lean_Parser_tokenFn(x_1, x_86); +x_90 = lean_ctor_get(x_89, 3); +lean_inc(x_90); +if (lean_obj_tag(x_90) == 0) { -lean_object* x_93; lean_object* x_94; -x_93 = lean_ctor_get(x_91, 0); +lean_object* x_91; lean_object* x_92; +x_91 = lean_ctor_get(x_89, 0); +lean_inc(x_91); +x_92 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_91); +lean_dec(x_91); +if (lean_obj_tag(x_92) == 2) +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; +x_93 = lean_ctor_get(x_92, 1); lean_inc(x_93); -x_94 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_93); +lean_dec(x_92); +x_94 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; +x_95 = lean_string_dec_eq(x_93, x_94); lean_dec(x_93); -if (lean_obj_tag(x_94) == 2) +if (x_95 == 0) { -lean_object* x_95; lean_object* x_96; uint8_t x_97; -x_95 = lean_ctor_get(x_94, 1); -lean_inc(x_95); -lean_dec(x_94); -x_96 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1; -x_97 = lean_string_dec_eq(x_95, x_96); -lean_dec(x_95); -if (x_97 == 0) -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_dec(x_1); -x_98 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_91, x_98, x_90); -x_100 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_87); -x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_78, x_75); -lean_dec(x_75); -return x_102; +x_96 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_96, x_88); +x_98 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_85); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_77, x_74); +lean_dec(x_74); +return x_100; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_90); -x_103 = l_Lean_Parser_termParser___closed__2; -x_104 = lean_unsigned_to_nat(0u); -x_105 = l_Lean_Parser_categoryParser___elambda__1(x_103, x_104, x_1, x_91); -x_106 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_105, x_106, x_87); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_78, x_75); -lean_dec(x_75); -return x_108; +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_dec(x_88); +x_101 = l_Lean_Parser_termParser___closed__2; +x_102 = lean_unsigned_to_nat(0u); +x_103 = l_Lean_Parser_categoryParser___elambda__1(x_101, x_102, x_1, x_89); +x_104 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_103, x_104, x_85); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_77, x_74); +lean_dec(x_74); +return x_106; } } else { -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -lean_dec(x_94); -lean_dec(x_1); -x_109 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_91, x_109, x_90); -x_111 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_112 = l_Lean_Parser_ParserState_mkNode(x_110, x_111, x_87); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_78, x_75); -lean_dec(x_75); -return x_113; -} -} -else -{ -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_dec(x_92); lean_dec(x_1); -x_114 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; -x_115 = l_Lean_Parser_ParserState_mkErrorsAt(x_91, x_114, x_90); -x_116 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_117 = l_Lean_Parser_ParserState_mkNode(x_115, x_116, x_87); -x_118 = l_Lean_Parser_mergeOrElseErrors(x_117, x_78, x_75); -lean_dec(x_75); -return x_118; +x_107 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_107, x_88); +x_109 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_85); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_77, x_74); +lean_dec(x_74); +return x_111; } } else { -lean_object* x_119; lean_object* x_120; lean_object* x_121; -lean_dec(x_89); +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +lean_dec(x_90); lean_dec(x_1); -x_119 = l_Lean_Parser_Term_forall___elambda__1___closed__2; -x_120 = l_Lean_Parser_ParserState_mkNode(x_88, x_119, x_87); -x_121 = l_Lean_Parser_mergeOrElseErrors(x_120, x_78, x_75); -lean_dec(x_75); -return x_121; +x_112 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__4; +x_113 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_112, x_88); +x_114 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_115 = l_Lean_Parser_ParserState_mkNode(x_113, x_114, x_85); +x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_77, x_74); +lean_dec(x_74); +return x_116; +} +} +else +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_87); +lean_dec(x_1); +x_117 = l_Lean_Parser_Term_forall___elambda__1___closed__2; +x_118 = l_Lean_Parser_ParserState_mkNode(x_86, x_117, x_85); +x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_77, x_74); +lean_dec(x_74); +return x_119; } } } else { -lean_object* x_153; -lean_dec(x_85); +lean_object* x_151; +lean_dec(x_83); lean_dec(x_4); lean_dec(x_1); -x_153 = l_Lean_Parser_mergeOrElseErrors(x_84, x_78, x_75); -lean_dec(x_75); -return x_153; +x_151 = l_Lean_Parser_mergeOrElseErrors(x_82, x_77, x_74); +lean_dec(x_74); +return x_151; } } } @@ -27973,345 +28501,343 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_Term_fun___elambda__1___closed__6; -x_13 = l_Lean_Parser_Term_fun___elambda__1___closed__7; -x_14 = l_Lean_Parser_Term_fun___elambda__1___closed__12; -lean_inc(x_1); -x_15 = l_Lean_Parser_unicodeSymbolFnAux(x_12, x_13, x_14, x_1, x_8); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = lean_array_get_size(x_17); -lean_dec(x_17); -lean_inc(x_1); -x_19 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_15); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_inc(x_1); -x_21 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_fun___elambda__1___spec__1(x_1, x_19); -x_22 = l_Lean_nullKind; -x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_18); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -lean_inc(x_1); -x_25 = l_Lean_Parser_darrow___elambda__1(x_1, x_23); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_27 = l_Lean_Parser_termParser___closed__2; -x_28 = lean_unsigned_to_nat(0u); -x_29 = l_Lean_Parser_categoryParser___elambda__1(x_27, x_28, x_1, x_25); -x_30 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -lean_dec(x_1); -x_32 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_25, x_32, x_11); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -lean_dec(x_1); -x_34 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_23, x_34, x_11); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_20); -x_36 = l_Lean_nullKind; -x_37 = l_Lean_Parser_ParserState_mkNode(x_19, x_36, x_18); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_object* x_39; lean_object* x_40; -lean_inc(x_1); -x_39 = l_Lean_Parser_darrow___elambda__1(x_1, x_37); -x_40 = lean_ctor_get(x_39, 3); -lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_41 = l_Lean_Parser_termParser___closed__2; -x_42 = lean_unsigned_to_nat(0u); -x_43 = l_Lean_Parser_categoryParser___elambda__1(x_41, x_42, x_1, x_39); -x_44 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_11); -return x_45; -} -else -{ -lean_object* x_46; lean_object* x_47; -lean_dec(x_40); -lean_dec(x_1); -x_46 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_39, x_46, x_11); -return x_47; -} -} -else -{ -lean_object* x_48; lean_object* x_49; -lean_dec(x_38); -lean_dec(x_1); -x_48 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_37, x_48, x_11); -return x_49; -} -} -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_16); -lean_dec(x_1); -x_50 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_51 = l_Lean_Parser_ParserState_mkNode(x_15, x_50, x_11); -return x_51; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_Term_fun___elambda__1___closed__6; +x_12 = l_Lean_Parser_Term_fun___elambda__1___closed__7; +x_13 = l_Lean_Parser_Term_fun___elambda__1___closed__12; +lean_inc(x_1); +x_14 = l_Lean_Parser_unicodeSymbolFnAux(x_11, x_12, x_13, x_1, x_7); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +lean_inc(x_1); +x_18 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_14); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_inc(x_1); +x_20 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_fun___elambda__1___spec__1(x_1, x_18); +x_21 = l_Lean_nullKind; +x_22 = l_Lean_Parser_ParserState_mkNode(x_20, x_21, x_17); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_inc(x_1); +x_24 = l_Lean_Parser_darrow___elambda__1(x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_26 = l_Lean_Parser_termParser___closed__2; +x_27 = lean_unsigned_to_nat(0u); +x_28 = l_Lean_Parser_categoryParser___elambda__1(x_26, x_27, x_1, x_24); +x_29 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -return x_8; +x_31 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_24, x_31, x_10); +return x_32; } } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_52 = lean_ctor_get(x_2, 0); -lean_inc(x_52); -x_53 = lean_array_get_size(x_52); +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +lean_dec(x_1); +x_33 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_22, x_33, x_10); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_35 = l_Lean_nullKind; +x_36 = l_Lean_Parser_ParserState_mkNode(x_18, x_35, x_17); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; +lean_inc(x_1); +x_38 = l_Lean_Parser_darrow___elambda__1(x_1, x_36); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_40 = l_Lean_Parser_termParser___closed__2; +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Parser_categoryParser___elambda__1(x_40, x_41, x_1, x_38); +x_43 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_42, x_43, x_10); +return x_44; +} +else +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_39); +lean_dec(x_1); +x_45 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_38, x_45, x_10); +return x_46; +} +} +else +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_37); +lean_dec(x_1); +x_47 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_36, x_47, x_10); +return x_48; +} +} +} +else +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_15); +lean_dec(x_1); +x_49 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_14, x_49, x_10); +return x_50; +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_51 = lean_ctor_get(x_2, 0); +lean_inc(x_51); +x_52 = lean_array_get_size(x_51); +lean_dec(x_51); +x_53 = lean_ctor_get(x_2, 1); +lean_inc(x_53); +lean_inc(x_1); +x_54 = lean_apply_2(x_4, x_1, x_2); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_dec(x_53); lean_dec(x_52); -x_54 = lean_ctor_get(x_2, 1); -lean_inc(x_54); -lean_inc(x_1); -x_55 = lean_apply_2(x_4, x_1, x_2); -x_56 = lean_ctor_get(x_55, 3); +lean_dec(x_1); +return x_54; +} +else +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_55, 0); lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_dec(x_54); -lean_dec(x_53); -lean_dec(x_1); -return x_55; -} -else -{ -lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_57 = lean_ctor_get(x_56, 0); +lean_dec(x_55); +x_57 = lean_ctor_get(x_54, 1); lean_inc(x_57); -lean_dec(x_56); -x_58 = lean_ctor_get(x_55, 1); -lean_inc(x_58); -x_59 = lean_nat_dec_eq(x_58, x_54); -lean_dec(x_58); -if (x_59 == 0) -{ +x_58 = lean_nat_dec_eq(x_57, x_53); lean_dec(x_57); -lean_dec(x_54); +if (x_58 == 0) +{ +lean_dec(x_56); lean_dec(x_53); +lean_dec(x_52); lean_dec(x_1); -return x_55; +return x_54; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_inc(x_54); -x_60 = l_Lean_Parser_ParserState_restore(x_55, x_53, x_54); -lean_dec(x_53); -x_61 = l_Lean_Parser_Term_leadPrec; -x_62 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_63 = l_Lean_Parser_checkPrecFn(x_61, x_62, x_1, x_60); -x_64 = lean_ctor_get(x_63, 3); -lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_inc(x_53); +x_59 = l_Lean_Parser_ParserState_restore(x_54, x_52, x_53); +lean_dec(x_52); +x_60 = l_Lean_Parser_Term_leadPrec; +x_61 = l_Lean_Parser_checkPrecFn(x_60, x_1, x_59); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_65 = lean_ctor_get(x_63, 0); -lean_inc(x_65); -x_66 = lean_array_get_size(x_65); -lean_dec(x_65); -x_67 = l_Lean_Parser_Term_fun___elambda__1___closed__6; -x_68 = l_Lean_Parser_Term_fun___elambda__1___closed__7; -x_69 = l_Lean_Parser_Term_fun___elambda__1___closed__12; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_63 = lean_ctor_get(x_61, 0); +lean_inc(x_63); +x_64 = lean_array_get_size(x_63); +lean_dec(x_63); +x_65 = l_Lean_Parser_Term_fun___elambda__1___closed__6; +x_66 = l_Lean_Parser_Term_fun___elambda__1___closed__7; +x_67 = l_Lean_Parser_Term_fun___elambda__1___closed__12; lean_inc(x_1); -x_70 = l_Lean_Parser_unicodeSymbolFnAux(x_67, x_68, x_69, x_1, x_63); -x_71 = lean_ctor_get(x_70, 3); -lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) +x_68 = l_Lean_Parser_unicodeSymbolFnAux(x_65, x_66, x_67, x_1, x_61); +x_69 = lean_ctor_get(x_68, 3); +lean_inc(x_69); +if (lean_obj_tag(x_69) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_72 = lean_ctor_get(x_70, 0); -lean_inc(x_72); -x_73 = lean_array_get_size(x_72); -lean_dec(x_72); +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_array_get_size(x_70); +lean_dec(x_70); lean_inc(x_1); -x_74 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_70); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) +x_72 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_68); +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_inc(x_1); -x_76 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_fun___elambda__1___spec__1(x_1, x_74); -x_77 = l_Lean_nullKind; -x_78 = l_Lean_Parser_ParserState_mkNode(x_76, x_77, x_73); +x_74 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_fun___elambda__1___spec__1(x_1, x_72); +x_75 = l_Lean_nullKind; +x_76 = l_Lean_Parser_ParserState_mkNode(x_74, x_75, x_71); +x_77 = lean_ctor_get(x_76, 3); +lean_inc(x_77); +if (lean_obj_tag(x_77) == 0) +{ +lean_object* x_78; lean_object* x_79; +lean_inc(x_1); +x_78 = l_Lean_Parser_darrow___elambda__1(x_1, x_76); x_79 = lean_ctor_get(x_78, 3); lean_inc(x_79); if (lean_obj_tag(x_79) == 0) { -lean_object* x_80; lean_object* x_81; -lean_inc(x_1); -x_80 = l_Lean_Parser_darrow___elambda__1(x_1, x_78); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_82 = l_Lean_Parser_termParser___closed__2; -x_83 = lean_unsigned_to_nat(0u); -x_84 = l_Lean_Parser_categoryParser___elambda__1(x_82, x_83, x_1, x_80); -x_85 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_86 = l_Lean_Parser_ParserState_mkNode(x_84, x_85, x_66); -x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_57, x_54); -lean_dec(x_54); -return x_87; +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_80 = l_Lean_Parser_termParser___closed__2; +x_81 = lean_unsigned_to_nat(0u); +x_82 = l_Lean_Parser_categoryParser___elambda__1(x_80, x_81, x_1, x_78); +x_83 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_84 = l_Lean_Parser_ParserState_mkNode(x_82, x_83, x_64); +x_85 = l_Lean_Parser_mergeOrElseErrors(x_84, x_56, x_53); +lean_dec(x_53); +return x_85; } else { -lean_object* x_88; lean_object* x_89; lean_object* x_90; -lean_dec(x_81); -lean_dec(x_1); -x_88 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_80, x_88, x_66); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_57, x_54); -lean_dec(x_54); -return x_90; -} -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_dec(x_79); lean_dec(x_1); -x_91 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_78, x_91, x_66); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_57, x_54); -lean_dec(x_54); -return x_93; +x_86 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_78, x_86, x_64); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_56, x_53); +lean_dec(x_53); +return x_88; } } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_75); -x_94 = l_Lean_nullKind; -x_95 = l_Lean_Parser_ParserState_mkNode(x_74, x_94, x_73); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_77); +lean_dec(x_1); +x_89 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_76, x_89, x_64); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_56, x_53); +lean_dec(x_53); +return x_91; +} +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_73); +x_92 = l_Lean_nullKind; +x_93 = l_Lean_Parser_ParserState_mkNode(x_72, x_92, x_71); +x_94 = lean_ctor_get(x_93, 3); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; lean_object* x_96; +lean_inc(x_1); +x_95 = l_Lean_Parser_darrow___elambda__1(x_1, x_93); x_96 = lean_ctor_get(x_95, 3); lean_inc(x_96); if (lean_obj_tag(x_96) == 0) { -lean_object* x_97; lean_object* x_98; -lean_inc(x_1); -x_97 = l_Lean_Parser_darrow___elambda__1(x_1, x_95); -x_98 = lean_ctor_get(x_97, 3); -lean_inc(x_98); -if (lean_obj_tag(x_98) == 0) -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_99 = l_Lean_Parser_termParser___closed__2; -x_100 = lean_unsigned_to_nat(0u); -x_101 = l_Lean_Parser_categoryParser___elambda__1(x_99, x_100, x_1, x_97); -x_102 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_66); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_57, x_54); -lean_dec(x_54); -return x_104; +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_97 = l_Lean_Parser_termParser___closed__2; +x_98 = lean_unsigned_to_nat(0u); +x_99 = l_Lean_Parser_categoryParser___elambda__1(x_97, x_98, x_1, x_95); +x_100 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_64); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_56, x_53); +lean_dec(x_53); +return x_102; } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; -lean_dec(x_98); -lean_dec(x_1); -x_105 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_97, x_105, x_66); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_57, x_54); -lean_dec(x_54); -return x_107; -} -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_96); lean_dec(x_1); -x_108 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_109 = l_Lean_Parser_ParserState_mkNode(x_95, x_108, x_66); -x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_57, x_54); -lean_dec(x_54); -return x_110; +x_103 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_95, x_103, x_64); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_56, x_53); +lean_dec(x_53); +return x_105; +} +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; +lean_dec(x_94); +lean_dec(x_1); +x_106 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_93, x_106, x_64); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_56, x_53); +lean_dec(x_53); +return x_108; } } } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; -lean_dec(x_71); +lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_dec(x_69); lean_dec(x_1); -x_111 = l_Lean_Parser_Term_fun___elambda__1___closed__2; -x_112 = l_Lean_Parser_ParserState_mkNode(x_70, x_111, x_66); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_57, x_54); -lean_dec(x_54); -return x_113; +x_109 = l_Lean_Parser_Term_fun___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_68, x_109, x_64); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_56, x_53); +lean_dec(x_53); +return x_111; } } else { -lean_object* x_114; -lean_dec(x_64); +lean_object* x_112; +lean_dec(x_62); lean_dec(x_1); -x_114 = l_Lean_Parser_mergeOrElseErrors(x_63, x_57, x_54); -lean_dec(x_54); -return x_114; +x_112 = l_Lean_Parser_mergeOrElseErrors(x_61, x_56, x_53); +lean_dec(x_53); +return x_112; } } } @@ -31906,473 +32432,471 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); x_8 = l_Lean_Parser_Term_leadPrec; -x_9 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_10 = l_Lean_Parser_checkPrecFn(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_51 = lean_ctor_get(x_10, 1); -lean_inc(x_51); -lean_inc(x_1); -x_52 = l_Lean_Parser_tokenFn(x_1, x_10); -x_53 = lean_ctor_get(x_52, 3); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_52, 0); -lean_inc(x_54); -x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); -lean_dec(x_54); -if (lean_obj_tag(x_55) == 2) -{ -lean_object* x_56; lean_object* x_57; uint8_t x_58; -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = l_Lean_Parser_Term_match___elambda__1___closed__6; -x_58 = lean_string_dec_eq(x_56, x_57); -lean_dec(x_56); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_51); -x_14 = x_60; -goto block_50; -} -else -{ -lean_dec(x_51); -x_14 = x_52; -goto block_50; -} -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_55); -x_61 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_51); -x_14 = x_62; -goto block_50; -} -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_53); -x_63 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_51); -x_14 = x_64; -goto block_50; -} -block_50: -{ -lean_object* x_15; -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -uint8_t x_16; lean_object* x_17; lean_object* x_18; -x_16 = 0; -lean_inc(x_1); -x_17 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_16, x_16, x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_inc(x_1); -x_19 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_17); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_inc(x_1); -x_22 = l_Lean_Parser_tokenFn(x_1, x_19); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_22, 0); -lean_inc(x_24); -x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); -lean_dec(x_24); -if (lean_obj_tag(x_25) == 2) -{ -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_28 = lean_string_dec_eq(x_26, x_27); -lean_dec(x_26); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_4); -lean_dec(x_1); -x_29 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); -x_31 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_13); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_21); -x_33 = lean_apply_2(x_4, x_1, x_22); -x_34 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_13); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_25); -lean_dec(x_4); -lean_dec(x_1); -x_36 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_36, x_21); -x_38 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_13); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -lean_dec(x_23); -lean_dec(x_4); -lean_dec(x_1); -x_40 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_40, x_21); -x_42 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_13); -return x_43; -} -} -else -{ -lean_object* x_44; lean_object* x_45; -lean_dec(x_20); -lean_dec(x_4); -lean_dec(x_1); -x_44 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_19, x_44, x_13); -return x_45; -} -} -else -{ -lean_object* x_46; lean_object* x_47; -lean_dec(x_18); -lean_dec(x_4); -lean_dec(x_1); -x_46 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_17, x_46, x_13); -return x_47; -} -} -else -{ -lean_object* x_48; lean_object* x_49; -lean_dec(x_15); -lean_dec(x_4); -lean_dec(x_1); -x_48 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_14, x_48, x_13); -return x_49; -} -} -} -else -{ +x_12 = lean_array_get_size(x_11); lean_dec(x_11); -lean_dec(x_4); -lean_dec(x_1); -return x_10; +x_50 = lean_ctor_get(x_9, 1); +lean_inc(x_50); +lean_inc(x_1); +x_51 = l_Lean_Parser_tokenFn(x_1, x_9); +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_51, 0); +lean_inc(x_53); +x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); +lean_dec(x_53); +if (lean_obj_tag(x_54) == 2) +{ +lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_55 = lean_ctor_get(x_54, 1); +lean_inc(x_55); +lean_dec(x_54); +x_56 = l_Lean_Parser_Term_match___elambda__1___closed__6; +x_57 = lean_string_dec_eq(x_55, x_56); +lean_dec(x_55); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = l_Lean_Parser_Term_match___elambda__1___closed__15; +x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_50); +x_13 = x_59; +goto block_49; +} +else +{ +lean_dec(x_50); +x_13 = x_51; +goto block_49; } } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_65 = lean_ctor_get(x_2, 0); -lean_inc(x_65); -x_66 = lean_array_get_size(x_65); +lean_object* x_60; lean_object* x_61; +lean_dec(x_54); +x_60 = l_Lean_Parser_Term_match___elambda__1___closed__15; +x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_50); +x_13 = x_61; +goto block_49; +} +} +else +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_52); +x_62 = l_Lean_Parser_Term_match___elambda__1___closed__15; +x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_50); +x_13 = x_63; +goto block_49; +} +block_49: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; lean_object* x_16; lean_object* x_17; +x_15 = 0; +lean_inc(x_1); +x_16 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_15, x_15, x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_inc(x_1); +x_18 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_16); +x_19 = lean_ctor_get(x_18, 3); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_inc(x_1); +x_21 = l_Lean_Parser_tokenFn(x_1, x_18); +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); +lean_dec(x_23); +if (lean_obj_tag(x_24) == 2) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_24, 1); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_27 = lean_string_dec_eq(x_25, x_26); +lean_dec(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_4); +lean_dec(x_1); +x_28 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); +x_30 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_12); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); +x_32 = lean_apply_2(x_4, x_1, x_21); +x_33 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_12); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_24); +lean_dec(x_4); +lean_dec(x_1); +x_35 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_35, x_20); +x_37 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_12); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_22); +lean_dec(x_4); +lean_dec(x_1); +x_39 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_39, x_20); +x_41 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_12); +return x_42; +} +} +else +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_19); +lean_dec(x_4); +lean_dec(x_1); +x_43 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_44 = l_Lean_Parser_ParserState_mkNode(x_18, x_43, x_12); +return x_44; +} +} +else +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_17); +lean_dec(x_4); +lean_dec(x_1); +x_45 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_46 = l_Lean_Parser_ParserState_mkNode(x_16, x_45, x_12); +return x_46; +} +} +else +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_14); +lean_dec(x_4); +lean_dec(x_1); +x_47 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_48 = l_Lean_Parser_ParserState_mkNode(x_13, x_47, x_12); +return x_48; +} +} +} +else +{ +lean_dec(x_10); +lean_dec(x_4); +lean_dec(x_1); +return x_9; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_64 = lean_ctor_get(x_2, 0); +lean_inc(x_64); +x_65 = lean_array_get_size(x_64); +lean_dec(x_64); +x_66 = lean_ctor_get(x_2, 1); +lean_inc(x_66); +lean_inc(x_1); +x_67 = lean_apply_2(x_6, x_1, x_2); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_dec(x_66); lean_dec(x_65); -x_67 = lean_ctor_get(x_2, 1); -lean_inc(x_67); -lean_inc(x_1); -x_68 = lean_apply_2(x_6, x_1, x_2); -x_69 = lean_ctor_get(x_68, 3); +lean_dec(x_4); +lean_dec(x_1); +return x_67; +} +else +{ +lean_object* x_69; lean_object* x_70; uint8_t x_71; +x_69 = lean_ctor_get(x_68, 0); lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) -{ -lean_dec(x_67); -lean_dec(x_66); -lean_dec(x_4); -lean_dec(x_1); -return x_68; -} -else -{ -lean_object* x_70; lean_object* x_71; uint8_t x_72; -x_70 = lean_ctor_get(x_69, 0); +lean_dec(x_68); +x_70 = lean_ctor_get(x_67, 1); lean_inc(x_70); -lean_dec(x_69); -x_71 = lean_ctor_get(x_68, 1); -lean_inc(x_71); -x_72 = lean_nat_dec_eq(x_71, x_67); -lean_dec(x_71); -if (x_72 == 0) -{ +x_71 = lean_nat_dec_eq(x_70, x_66); lean_dec(x_70); -lean_dec(x_67); +if (x_71 == 0) +{ +lean_dec(x_69); lean_dec(x_66); +lean_dec(x_65); lean_dec(x_4); lean_dec(x_1); -return x_68; +return x_67; } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_inc(x_67); -x_73 = l_Lean_Parser_ParserState_restore(x_68, x_66, x_67); -lean_dec(x_66); -x_74 = l_Lean_Parser_Term_leadPrec; -x_75 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_76 = l_Lean_Parser_checkPrecFn(x_74, x_75, x_1, x_73); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_inc(x_66); +x_72 = l_Lean_Parser_ParserState_restore(x_67, x_65, x_66); +lean_dec(x_65); +x_73 = l_Lean_Parser_Term_leadPrec; +x_74 = l_Lean_Parser_checkPrecFn(x_73, x_1, x_72); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_124; lean_object* x_125; lean_object* x_126; -x_78 = lean_ctor_get(x_76, 0); -lean_inc(x_78); -x_79 = lean_array_get_size(x_78); -lean_dec(x_78); -x_124 = lean_ctor_get(x_76, 1); -lean_inc(x_124); +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_76 = lean_ctor_get(x_74, 0); +lean_inc(x_76); +x_77 = lean_array_get_size(x_76); +lean_dec(x_76); +x_122 = lean_ctor_get(x_74, 1); +lean_inc(x_122); lean_inc(x_1); -x_125 = l_Lean_Parser_tokenFn(x_1, x_76); -x_126 = lean_ctor_get(x_125, 3); -lean_inc(x_126); -if (lean_obj_tag(x_126) == 0) +x_123 = l_Lean_Parser_tokenFn(x_1, x_74); +x_124 = lean_ctor_get(x_123, 3); +lean_inc(x_124); +if (lean_obj_tag(x_124) == 0) { -lean_object* x_127; lean_object* x_128; -x_127 = lean_ctor_get(x_125, 0); +lean_object* x_125; lean_object* x_126; +x_125 = lean_ctor_get(x_123, 0); +lean_inc(x_125); +x_126 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_125); +lean_dec(x_125); +if (lean_obj_tag(x_126) == 2) +{ +lean_object* x_127; lean_object* x_128; uint8_t x_129; +x_127 = lean_ctor_get(x_126, 1); lean_inc(x_127); -x_128 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_127); +lean_dec(x_126); +x_128 = l_Lean_Parser_Term_match___elambda__1___closed__6; +x_129 = lean_string_dec_eq(x_127, x_128); lean_dec(x_127); -if (lean_obj_tag(x_128) == 2) +if (x_129 == 0) { -lean_object* x_129; lean_object* x_130; uint8_t x_131; -x_129 = lean_ctor_get(x_128, 1); -lean_inc(x_129); -lean_dec(x_128); -x_130 = l_Lean_Parser_Term_match___elambda__1___closed__6; -x_131 = lean_string_dec_eq(x_129, x_130); -lean_dec(x_129); -if (x_131 == 0) +lean_object* x_130; lean_object* x_131; +x_130 = l_Lean_Parser_Term_match___elambda__1___closed__15; +x_131 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_130, x_122); +x_78 = x_131; +goto block_121; +} +else +{ +lean_dec(x_122); +x_78 = x_123; +goto block_121; +} +} +else { lean_object* x_132; lean_object* x_133; +lean_dec(x_126); x_132 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_132, x_124); -x_80 = x_133; -goto block_123; -} -else -{ -lean_dec(x_124); -x_80 = x_125; -goto block_123; +x_133 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_132, x_122); +x_78 = x_133; +goto block_121; } } else { lean_object* x_134; lean_object* x_135; -lean_dec(x_128); +lean_dec(x_124); x_134 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_135 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_134, x_124); -x_80 = x_135; -goto block_123; +x_135 = l_Lean_Parser_ParserState_mkErrorsAt(x_123, x_134, x_122); +x_78 = x_135; +goto block_121; } -} -else +block_121: { -lean_object* x_136; lean_object* x_137; -lean_dec(x_126); -x_136 = l_Lean_Parser_Term_match___elambda__1___closed__15; -x_137 = l_Lean_Parser_ParserState_mkErrorsAt(x_125, x_136, x_124); -x_80 = x_137; -goto block_123; -} -block_123: +lean_object* x_79; +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) { -lean_object* x_81; -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) -{ -uint8_t x_82; lean_object* x_83; lean_object* x_84; -x_82 = 0; +uint8_t x_80; lean_object* x_81; lean_object* x_82; +x_80 = 0; lean_inc(x_1); -x_83 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_82, x_82, x_1, x_80); +x_81 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_tupleTail___elambda__1___spec__1(x_80, x_80, x_1, x_78); +x_82 = lean_ctor_get(x_81, 3); +lean_inc(x_82); +if (lean_obj_tag(x_82) == 0) +{ +lean_object* x_83; lean_object* x_84; +lean_inc(x_1); +x_83 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_81); x_84 = lean_ctor_get(x_83, 3); lean_inc(x_84); if (lean_obj_tag(x_84) == 0) { -lean_object* x_85; lean_object* x_86; +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); lean_inc(x_1); -x_85 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_83); -x_86 = lean_ctor_get(x_85, 3); -lean_inc(x_86); -if (lean_obj_tag(x_86) == 0) -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_85, 1); +x_86 = l_Lean_Parser_tokenFn(x_1, x_83); +x_87 = lean_ctor_get(x_86, 3); lean_inc(x_87); -lean_inc(x_1); -x_88 = l_Lean_Parser_tokenFn(x_1, x_85); -x_89 = lean_ctor_get(x_88, 3); -lean_inc(x_89); -if (lean_obj_tag(x_89) == 0) +if (lean_obj_tag(x_87) == 0) { -lean_object* x_90; lean_object* x_91; -x_90 = lean_ctor_get(x_88, 0); +lean_object* x_88; lean_object* x_89; +x_88 = lean_ctor_get(x_86, 0); +lean_inc(x_88); +x_89 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_88); +lean_dec(x_88); +if (lean_obj_tag(x_89) == 2) +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +x_90 = lean_ctor_get(x_89, 1); lean_inc(x_90); -x_91 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_90); +lean_dec(x_89); +x_91 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_92 = lean_string_dec_eq(x_90, x_91); lean_dec(x_90); -if (lean_obj_tag(x_91) == 2) +if (x_92 == 0) { -lean_object* x_92; lean_object* x_93; uint8_t x_94; -x_92 = lean_ctor_get(x_91, 1); -lean_inc(x_92); -lean_dec(x_91); -x_93 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_94 = lean_string_dec_eq(x_92, x_93); -lean_dec(x_92); -if (x_94 == 0) -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_dec(x_4); lean_dec(x_1); -x_95 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_95, x_87); -x_97 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_79); -x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_70, x_67); -lean_dec(x_67); -return x_99; +x_93 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_93, x_85); +x_95 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_77); +x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_69, x_66); +lean_dec(x_66); +return x_97; } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -lean_dec(x_87); -x_100 = lean_apply_2(x_4, x_1, x_88); -x_101 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_79); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_70, x_67); -lean_dec(x_67); -return x_103; +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_85); +x_98 = lean_apply_2(x_4, x_1, x_86); +x_99 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_77); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_69, x_66); +lean_dec(x_66); +return x_101; } } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -lean_dec(x_91); -lean_dec(x_4); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_105 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_104, x_87); -x_106 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_107 = l_Lean_Parser_ParserState_mkNode(x_105, x_106, x_79); -x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_70, x_67); -lean_dec(x_67); -return x_108; -} -} -else -{ -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_dec(x_89); lean_dec(x_4); lean_dec(x_1); -x_109 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_110 = l_Lean_Parser_ParserState_mkErrorsAt(x_88, x_109, x_87); -x_111 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_112 = l_Lean_Parser_ParserState_mkNode(x_110, x_111, x_79); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_70, x_67); -lean_dec(x_67); -return x_113; +x_102 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_103 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_102, x_85); +x_104 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_105 = l_Lean_Parser_ParserState_mkNode(x_103, x_104, x_77); +x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_69, x_66); +lean_dec(x_66); +return x_106; } } else { -lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_86); +lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_dec(x_87); lean_dec(x_4); lean_dec(x_1); -x_114 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_115 = l_Lean_Parser_ParserState_mkNode(x_85, x_114, x_79); -x_116 = l_Lean_Parser_mergeOrElseErrors(x_115, x_70, x_67); -lean_dec(x_67); -return x_116; +x_107 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_108 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_107, x_85); +x_109 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_108, x_109, x_77); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_69, x_66); +lean_dec(x_66); +return x_111; } } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_dec(x_84); lean_dec(x_4); lean_dec(x_1); -x_117 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_118 = l_Lean_Parser_ParserState_mkNode(x_83, x_117, x_79); -x_119 = l_Lean_Parser_mergeOrElseErrors(x_118, x_70, x_67); -lean_dec(x_67); -return x_119; +x_112 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_113 = l_Lean_Parser_ParserState_mkNode(x_83, x_112, x_77); +x_114 = l_Lean_Parser_mergeOrElseErrors(x_113, x_69, x_66); +lean_dec(x_66); +return x_114; } } else { -lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_81); +lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_82); lean_dec(x_4); lean_dec(x_1); -x_120 = l_Lean_Parser_Term_match___elambda__1___closed__2; -x_121 = l_Lean_Parser_ParserState_mkNode(x_80, x_120, x_79); -x_122 = l_Lean_Parser_mergeOrElseErrors(x_121, x_70, x_67); -lean_dec(x_67); -return x_122; +x_115 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_116 = l_Lean_Parser_ParserState_mkNode(x_81, x_115, x_77); +x_117 = l_Lean_Parser_mergeOrElseErrors(x_116, x_69, x_66); +lean_dec(x_66); +return x_117; +} +} +else +{ +lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_79); +lean_dec(x_4); +lean_dec(x_1); +x_118 = l_Lean_Parser_Term_match___elambda__1___closed__2; +x_119 = l_Lean_Parser_ParserState_mkNode(x_78, x_118, x_77); +x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_69, x_66); +lean_dec(x_66); +return x_120; } } } else { -lean_object* x_138; -lean_dec(x_77); +lean_object* x_136; +lean_dec(x_75); lean_dec(x_4); lean_dec(x_1); -x_138 = l_Lean_Parser_mergeOrElseErrors(x_76, x_70, x_67); -lean_dec(x_67); -return x_138; +x_136 = l_Lean_Parser_mergeOrElseErrors(x_74, x_69, x_66); +lean_dec(x_66); +return x_136; } } } @@ -32613,259 +33137,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_nomatch___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_nomatch___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_Term_leadPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_Term_leadPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_nomatch___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_nomatch___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_nomatch___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(0u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_nomatch___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -33065,259 +33587,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_Term_leadPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_Term_leadPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(0u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_parser_x21___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -33517,259 +34037,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_Term_leadPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_Term_leadPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(0u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(0u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_tparser_x21___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -33969,259 +34487,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_borrowed___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = l_Lean_Parser_Term_leadPrec___closed__1; -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_borrowed___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_Term_leadPrec___closed__1; +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_appPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_appPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_borrowed___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_borrowed___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = l_Lean_Parser_Term_leadPrec___closed__1; +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_borrowed___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = l_Lean_Parser_Term_leadPrec___closed__1; -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_borrowed___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -34382,103 +34898,101 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_12 = l_Lean_Parser_nameLit___elambda__1(x_1, x_8); -x_13 = l_Lean_Parser_Term_quotedName___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_11); -return x_14; -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +x_11 = l_Lean_Parser_nameLit___elambda__1(x_1, x_7); +x_12 = l_Lean_Parser_Term_quotedName___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkNode(x_11, x_12, x_10); +return x_13; +} +else +{ +lean_dec(x_8); lean_dec(x_1); -return x_8; +return x_7; } } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_2, 0); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_dec(x_14); +x_16 = lean_ctor_get(x_2, 1); +lean_inc(x_16); lean_inc(x_1); -x_18 = lean_apply_2(x_4, x_1, x_2); -x_19 = lean_ctor_get(x_18, 3); +x_17 = lean_apply_2(x_4, x_1, x_2); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_1); +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_1); -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_18); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -lean_dec(x_19); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -x_22 = lean_nat_dec_eq(x_21, x_17); -lean_dec(x_21); -if (x_22 == 0) -{ +x_21 = lean_nat_dec_eq(x_20, x_16); lean_dec(x_20); -lean_dec(x_17); +if (x_21 == 0) +{ +lean_dec(x_19); lean_dec(x_16); +lean_dec(x_15); lean_dec(x_1); -return x_18; +return x_17; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_inc(x_17); -x_23 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -lean_dec(x_16); -x_24 = l_Lean_Parser_appPrec; -x_25 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_26 = l_Lean_Parser_checkPrecFn(x_24, x_25, x_1, x_23); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_inc(x_16); +x_22 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); +lean_dec(x_15); +x_23 = l_Lean_Parser_appPrec; +x_24 = l_Lean_Parser_checkPrecFn(x_23, x_1, x_22); +x_25 = lean_ctor_get(x_24, 3); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_26, 0); -lean_inc(x_28); -x_29 = lean_array_get_size(x_28); -lean_dec(x_28); -x_30 = l_Lean_Parser_nameLit___elambda__1(x_1, x_26); -x_31 = l_Lean_Parser_Term_quotedName___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_29); -x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_20, x_17); -lean_dec(x_17); -return x_33; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_array_get_size(x_26); +lean_dec(x_26); +x_28 = l_Lean_Parser_nameLit___elambda__1(x_1, x_24); +x_29 = l_Lean_Parser_Term_quotedName___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_27); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_19, x_16); +lean_dec(x_16); +return x_31; } else { -lean_object* x_34; -lean_dec(x_27); +lean_object* x_32; +lean_dec(x_25); lean_dec(x_1); -x_34 = l_Lean_Parser_mergeOrElseErrors(x_26, x_20, x_17); -lean_dec(x_17); -return x_34; +x_32 = l_Lean_Parser_mergeOrElseErrors(x_24, x_19, x_16); +lean_dec(x_16); +return x_32; } } } @@ -34654,437 +35168,435 @@ lean_inc(x_1); x_7 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_6); x_8 = l_Lean_Parser_Term_leadPrec; -x_9 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_10 = l_Lean_Parser_checkPrecFn(x_8, x_9, x_1, x_2); -x_11 = lean_ctor_get(x_10, 3); +x_9 = l_Lean_Parser_checkPrecFn(x_8, x_1, x_2); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_11 = lean_ctor_get(x_9, 0); lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_12); -x_13 = lean_array_get_size(x_12); -lean_dec(x_12); -x_48 = lean_ctor_get(x_10, 1); -lean_inc(x_48); -lean_inc(x_1); -x_49 = l_Lean_Parser_tokenFn(x_1, x_10); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_49, 0); -lean_inc(x_51); -x_52 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_51); -lean_dec(x_51); -if (lean_obj_tag(x_52) == 2) -{ -lean_object* x_53; lean_object* x_54; uint8_t x_55; -x_53 = lean_ctor_get(x_52, 1); -lean_inc(x_53); -lean_dec(x_52); -x_54 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; -x_55 = lean_string_dec_eq(x_53, x_54); -lean_dec(x_53); -if (x_55 == 0) -{ -lean_object* x_56; lean_object* x_57; -x_56 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_56, x_48); -x_14 = x_57; -goto block_47; -} -else -{ -lean_dec(x_48); -x_14 = x_49; -goto block_47; -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_52); -x_58 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_58, x_48); -x_14 = x_59; -goto block_47; -} -} -else -{ -lean_object* x_60; lean_object* x_61; -lean_dec(x_50); -x_60 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_60, x_48); -x_14 = x_61; -goto block_47; -} -block_47: -{ -lean_object* x_15; -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = l_Lean_Parser_termParser___closed__2; -x_17 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_18 = l_Lean_Parser_categoryParser___elambda__1(x_16, x_17, x_1, x_14); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_inc(x_1); -x_21 = l_Lean_Parser_tokenFn(x_1, x_18); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_4); -lean_dec(x_1); -x_28 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); -x_30 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_13); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_20); -x_32 = lean_apply_2(x_4, x_1, x_21); -x_33 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_13); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_24); -lean_dec(x_4); -lean_dec(x_1); -x_35 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_35, x_20); -x_37 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_13); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_22); -lean_dec(x_4); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_40 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_39, x_20); -x_41 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_13); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_19); -lean_dec(x_4); -lean_dec(x_1); -x_43 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_18, x_43, x_13); -return x_44; -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_15); -lean_dec(x_4); -lean_dec(x_1); -x_45 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkNode(x_14, x_45, x_13); -return x_46; -} -} -} -else -{ +x_12 = lean_array_get_size(x_11); lean_dec(x_11); -lean_dec(x_4); -lean_dec(x_1); -return x_10; +x_47 = lean_ctor_get(x_9, 1); +lean_inc(x_47); +lean_inc(x_1); +x_48 = l_Lean_Parser_tokenFn(x_1, x_9); +x_49 = lean_ctor_get(x_48, 3); +lean_inc(x_49); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_50); +lean_dec(x_50); +if (lean_obj_tag(x_51) == 2) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; +x_55 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_55, x_47); +x_13 = x_56; +goto block_46; +} +else +{ +lean_dec(x_47); +x_13 = x_48; +goto block_46; } } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_62 = lean_ctor_get(x_2, 0); -lean_inc(x_62); -x_63 = lean_array_get_size(x_62); +lean_object* x_57; lean_object* x_58; +lean_dec(x_51); +x_57 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_57, x_47); +x_13 = x_58; +goto block_46; +} +} +else +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_49); +x_59 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_48, x_59, x_47); +x_13 = x_60; +goto block_46; +} +block_46: +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_inc(x_1); +x_20 = l_Lean_Parser_tokenFn(x_1, x_17); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_4); +lean_dec(x_1); +x_27 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_29 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_12); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_19); +x_31 = lean_apply_2(x_4, x_1, x_20); +x_32 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_12); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_23); +lean_dec(x_4); +lean_dec(x_1); +x_34 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_34, x_19); +x_36 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_12); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_21); +lean_dec(x_4); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_38, x_19); +x_40 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_12); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_18); +lean_dec(x_4); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_17, x_42, x_12); +return x_43; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_14); +lean_dec(x_4); +lean_dec(x_1); +x_44 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_13, x_44, x_12); +return x_45; +} +} +} +else +{ +lean_dec(x_10); +lean_dec(x_4); +lean_dec(x_1); +return x_9; +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_61 = lean_ctor_get(x_2, 0); +lean_inc(x_61); +x_62 = lean_array_get_size(x_61); +lean_dec(x_61); +x_63 = lean_ctor_get(x_2, 1); +lean_inc(x_63); +lean_inc(x_1); +x_64 = lean_apply_2(x_6, x_1, x_2); +x_65 = lean_ctor_get(x_64, 3); +lean_inc(x_65); +if (lean_obj_tag(x_65) == 0) +{ +lean_dec(x_63); lean_dec(x_62); -x_64 = lean_ctor_get(x_2, 1); -lean_inc(x_64); -lean_inc(x_1); -x_65 = lean_apply_2(x_6, x_1, x_2); -x_66 = lean_ctor_get(x_65, 3); +lean_dec(x_4); +lean_dec(x_1); +return x_64; +} +else +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 0); lean_inc(x_66); -if (lean_obj_tag(x_66) == 0) -{ -lean_dec(x_64); -lean_dec(x_63); -lean_dec(x_4); -lean_dec(x_1); -return x_65; -} -else -{ -lean_object* x_67; lean_object* x_68; uint8_t x_69; -x_67 = lean_ctor_get(x_66, 0); +lean_dec(x_65); +x_67 = lean_ctor_get(x_64, 1); lean_inc(x_67); -lean_dec(x_66); -x_68 = lean_ctor_get(x_65, 1); -lean_inc(x_68); -x_69 = lean_nat_dec_eq(x_68, x_64); -lean_dec(x_68); -if (x_69 == 0) -{ +x_68 = lean_nat_dec_eq(x_67, x_63); lean_dec(x_67); -lean_dec(x_64); +if (x_68 == 0) +{ +lean_dec(x_66); lean_dec(x_63); +lean_dec(x_62); lean_dec(x_4); lean_dec(x_1); -return x_65; +return x_64; } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_inc(x_64); -x_70 = l_Lean_Parser_ParserState_restore(x_65, x_63, x_64); -lean_dec(x_63); -x_71 = l_Lean_Parser_Term_leadPrec; -x_72 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_73 = l_Lean_Parser_checkPrecFn(x_71, x_72, x_1, x_70); -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_inc(x_63); +x_69 = l_Lean_Parser_ParserState_restore(x_64, x_62, x_63); +lean_dec(x_62); +x_70 = l_Lean_Parser_Term_leadPrec; +x_71 = l_Lean_Parser_checkPrecFn(x_70, x_1, x_69); +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_75 = lean_ctor_get(x_73, 0); -lean_inc(x_75); -x_76 = lean_array_get_size(x_75); -lean_dec(x_75); -x_117 = lean_ctor_get(x_73, 1); -lean_inc(x_117); +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_73 = lean_ctor_get(x_71, 0); +lean_inc(x_73); +x_74 = lean_array_get_size(x_73); +lean_dec(x_73); +x_115 = lean_ctor_get(x_71, 1); +lean_inc(x_115); lean_inc(x_1); -x_118 = l_Lean_Parser_tokenFn(x_1, x_73); -x_119 = lean_ctor_get(x_118, 3); -lean_inc(x_119); -if (lean_obj_tag(x_119) == 0) +x_116 = l_Lean_Parser_tokenFn(x_1, x_71); +x_117 = lean_ctor_get(x_116, 3); +lean_inc(x_117); +if (lean_obj_tag(x_117) == 0) { -lean_object* x_120; lean_object* x_121; -x_120 = lean_ctor_get(x_118, 0); +lean_object* x_118; lean_object* x_119; +x_118 = lean_ctor_get(x_116, 0); +lean_inc(x_118); +x_119 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_118); +lean_dec(x_118); +if (lean_obj_tag(x_119) == 2) +{ +lean_object* x_120; lean_object* x_121; uint8_t x_122; +x_120 = lean_ctor_get(x_119, 1); lean_inc(x_120); -x_121 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_120); +lean_dec(x_119); +x_121 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; +x_122 = lean_string_dec_eq(x_120, x_121); lean_dec(x_120); -if (lean_obj_tag(x_121) == 2) +if (x_122 == 0) { -lean_object* x_122; lean_object* x_123; uint8_t x_124; -x_122 = lean_ctor_get(x_121, 1); -lean_inc(x_122); -lean_dec(x_121); -x_123 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__5; -x_124 = lean_string_dec_eq(x_122, x_123); -lean_dec(x_122); -if (x_124 == 0) +lean_object* x_123; lean_object* x_124; +x_123 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_123, x_115); +x_75 = x_124; +goto block_114; +} +else +{ +lean_dec(x_115); +x_75 = x_116; +goto block_114; +} +} +else { lean_object* x_125; lean_object* x_126; +lean_dec(x_119); x_125 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_125, x_117); -x_77 = x_126; -goto block_116; -} -else -{ -lean_dec(x_117); -x_77 = x_118; -goto block_116; +x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_125, x_115); +x_75 = x_126; +goto block_114; } } else { lean_object* x_127; lean_object* x_128; -lean_dec(x_121); +lean_dec(x_117); x_127 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_128 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_127, x_117); -x_77 = x_128; -goto block_116; +x_128 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_127, x_115); +x_75 = x_128; +goto block_114; } -} -else +block_114: { -lean_object* x_129; lean_object* x_130; -lean_dec(x_119); -x_129 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__8; -x_130 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_129, x_117); -x_77 = x_130; -goto block_116; -} -block_116: +lean_object* x_76; +x_76 = lean_ctor_get(x_75, 3); +lean_inc(x_76); +if (lean_obj_tag(x_76) == 0) { -lean_object* x_78; -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_79 = l_Lean_Parser_termParser___closed__2; -x_80 = lean_unsigned_to_nat(0u); +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_77 = l_Lean_Parser_termParser___closed__2; +x_78 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_81 = l_Lean_Parser_categoryParser___elambda__1(x_79, x_80, x_1, x_77); -x_82 = lean_ctor_get(x_81, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) +x_79 = l_Lean_Parser_categoryParser___elambda__1(x_77, x_78, x_1, x_75); +x_80 = lean_ctor_get(x_79, 3); +lean_inc(x_80); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_83 = lean_ctor_get(x_81, 1); +lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_81 = lean_ctor_get(x_79, 1); +lean_inc(x_81); +lean_inc(x_1); +x_82 = l_Lean_Parser_tokenFn(x_1, x_79); +x_83 = lean_ctor_get(x_82, 3); lean_inc(x_83); -lean_inc(x_1); -x_84 = l_Lean_Parser_tokenFn(x_1, x_81); -x_85 = lean_ctor_get(x_84, 3); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) +if (lean_obj_tag(x_83) == 0) { -lean_object* x_86; lean_object* x_87; -x_86 = lean_ctor_get(x_84, 0); +lean_object* x_84; lean_object* x_85; +x_84 = lean_ctor_get(x_82, 0); +lean_inc(x_84); +x_85 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_84); +lean_dec(x_84); +if (lean_obj_tag(x_85) == 2) +{ +lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_86 = lean_ctor_get(x_85, 1); lean_inc(x_86); -x_87 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_86); +lean_dec(x_85); +x_87 = l_Lean_Parser_Term_match___elambda__1___closed__8; +x_88 = lean_string_dec_eq(x_86, x_87); lean_dec(x_86); -if (lean_obj_tag(x_87) == 2) +if (x_88 == 0) { -lean_object* x_88; lean_object* x_89; uint8_t x_90; -x_88 = lean_ctor_get(x_87, 1); -lean_inc(x_88); -lean_dec(x_87); -x_89 = l_Lean_Parser_Term_match___elambda__1___closed__8; -x_90 = lean_string_dec_eq(x_88, x_89); -lean_dec(x_88); -if (x_90 == 0) -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_dec(x_4); lean_dec(x_1); -x_91 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_92 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_91, x_83); -x_93 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_76); -x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_67, x_64); -lean_dec(x_64); -return x_95; +x_89 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_90 = l_Lean_Parser_ParserState_mkErrorsAt(x_82, x_89, x_81); +x_91 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_92 = l_Lean_Parser_ParserState_mkNode(x_90, x_91, x_74); +x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_66, x_63); +lean_dec(x_63); +return x_93; } else { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; -lean_dec(x_83); -x_96 = lean_apply_2(x_4, x_1, x_84); -x_97 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_76); -x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_67, x_64); -lean_dec(x_64); -return x_99; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_81); +x_94 = lean_apply_2(x_4, x_1, x_82); +x_95 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_74); +x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_66, x_63); +lean_dec(x_63); +return x_97; } } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_87); -lean_dec(x_4); -lean_dec(x_1); -x_100 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_100, x_83); -x_102 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_101, x_102, x_76); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_67, x_64); -lean_dec(x_64); -return x_104; -} -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_85); lean_dec(x_4); lean_dec(x_1); -x_105 = l_Lean_Parser_Term_match___elambda__1___closed__12; -x_106 = l_Lean_Parser_ParserState_mkErrorsAt(x_84, x_105, x_83); -x_107 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_106, x_107, x_76); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_67, x_64); -lean_dec(x_64); -return x_109; +x_98 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_82, x_98, x_81); +x_100 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_74); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_66, x_63); +lean_dec(x_63); +return x_102; } } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_82); +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_83); lean_dec(x_4); lean_dec(x_1); -x_110 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_111 = l_Lean_Parser_ParserState_mkNode(x_81, x_110, x_76); -x_112 = l_Lean_Parser_mergeOrElseErrors(x_111, x_67, x_64); -lean_dec(x_64); -return x_112; +x_103 = l_Lean_Parser_Term_match___elambda__1___closed__12; +x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_82, x_103, x_81); +x_105 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_74); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_66, x_63); +lean_dec(x_63); +return x_107; } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; -lean_dec(x_78); +lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_dec(x_80); lean_dec(x_4); lean_dec(x_1); -x_113 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; -x_114 = l_Lean_Parser_ParserState_mkNode(x_77, x_113, x_76); -x_115 = l_Lean_Parser_mergeOrElseErrors(x_114, x_67, x_64); -lean_dec(x_64); -return x_115; +x_108 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_109 = l_Lean_Parser_ParserState_mkNode(x_79, x_108, x_74); +x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_66, x_63); +lean_dec(x_63); +return x_110; +} +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_76); +lean_dec(x_4); +lean_dec(x_1); +x_111 = l_Lean_Parser_Term_match__syntax___elambda__1___closed__2; +x_112 = l_Lean_Parser_ParserState_mkNode(x_75, x_111, x_74); +x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_66, x_63); +lean_dec(x_63); +return x_113; } } } else { -lean_object* x_131; -lean_dec(x_74); +lean_object* x_129; +lean_dec(x_72); lean_dec(x_4); lean_dec(x_1); -x_131 = l_Lean_Parser_mergeOrElseErrors(x_73, x_67, x_64); -lean_dec(x_64); -return x_131; +x_129 = l_Lean_Parser_mergeOrElseErrors(x_71, x_66, x_63); +lean_dec(x_63); +return x_129; } } } @@ -36115,423 +36627,421 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_46 = lean_ctor_get(x_8, 1); -lean_inc(x_46); -lean_inc(x_1); -x_47 = l_Lean_Parser_tokenFn(x_1, x_8); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_49); -lean_dec(x_49); -if (lean_obj_tag(x_50) == 2) -{ -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_50, 1); -lean_inc(x_51); -lean_dec(x_50); -x_52 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_53 = lean_string_dec_eq(x_51, x_52); -lean_dec(x_51); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; -x_54 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_54, x_46); -x_12 = x_55; -goto block_45; -} -else -{ -lean_dec(x_46); -x_12 = x_47; -goto block_45; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_50); -x_56 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_56, x_46); -x_12 = x_57; -goto block_45; -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_48); -x_58 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_58, x_46); -x_12 = x_59; -goto block_45; -} -block_45: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_1); -x_24 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_16); -x_28 = l_Lean_Parser_termParser___closed__2; -x_29 = lean_unsigned_to_nat(0u); -x_30 = l_Lean_Parser_categoryParser___elambda__1(x_28, x_29, x_1, x_17); -x_31 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_11); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_20); -lean_dec(x_1); -x_33 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_33, x_16); -x_35 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_11); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_18); -lean_dec(x_1); -x_37 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_37, x_16); -x_39 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_15); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_14, x_41, x_11); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_13); -lean_dec(x_1); -x_43 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_12, x_43, x_11); -return x_44; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_45 = lean_ctor_get(x_7, 1); +lean_inc(x_45); +lean_inc(x_1); +x_46 = l_Lean_Parser_tokenFn(x_1, x_7); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); +lean_dec(x_48); +if (lean_obj_tag(x_49) == 2) +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_52 = lean_string_dec_eq(x_50, x_51); +lean_dec(x_50); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_45); +x_11 = x_54; +goto block_44; +} +else +{ +lean_dec(x_45); +x_11 = x_46; +goto block_44; } } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_60 = lean_ctor_get(x_2, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); +lean_object* x_55; lean_object* x_56; +lean_dec(x_49); +x_55 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_45); +x_11 = x_56; +goto block_44; +} +} +else +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_47); +x_57 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_45); +x_11 = x_58; +goto block_44; +} +block_44: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_1); +x_23 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_15); +x_27 = l_Lean_Parser_termParser___closed__2; +x_28 = lean_unsigned_to_nat(0u); +x_29 = l_Lean_Parser_categoryParser___elambda__1(x_27, x_28, x_1, x_16); +x_30 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +lean_dec(x_1); +x_32 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_32, x_15); +x_34 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_17); +lean_dec(x_1); +x_36 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_36, x_15); +x_38 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_14); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_13, x_40, x_10); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_12); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_11, x_42, x_10); +return x_43; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_59 = lean_ctor_get(x_2, 0); +lean_inc(x_59); +x_60 = lean_array_get_size(x_59); +lean_dec(x_59); +x_61 = lean_ctor_get(x_2, 1); +lean_inc(x_61); +lean_inc(x_1); +x_62 = lean_apply_2(x_4, x_1, x_2); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) +{ +lean_dec(x_61); lean_dec(x_60); -x_62 = lean_ctor_get(x_2, 1); -lean_inc(x_62); -lean_inc(x_1); -x_63 = lean_apply_2(x_4, x_1, x_2); -x_64 = lean_ctor_get(x_63, 3); +lean_dec(x_1); +return x_62; +} +else +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 0); lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) -{ -lean_dec(x_62); -lean_dec(x_61); -lean_dec(x_1); -return x_63; -} -else -{ -lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_65 = lean_ctor_get(x_64, 0); +lean_dec(x_63); +x_65 = lean_ctor_get(x_62, 1); lean_inc(x_65); -lean_dec(x_64); -x_66 = lean_ctor_get(x_63, 1); -lean_inc(x_66); -x_67 = lean_nat_dec_eq(x_66, x_62); -lean_dec(x_66); -if (x_67 == 0) -{ +x_66 = lean_nat_dec_eq(x_65, x_61); lean_dec(x_65); -lean_dec(x_62); +if (x_66 == 0) +{ +lean_dec(x_64); lean_dec(x_61); +lean_dec(x_60); lean_dec(x_1); -return x_63; +return x_62; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_inc(x_62); -x_68 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); -lean_dec(x_61); -x_69 = l_Lean_Parser_Term_leadPrec; -x_70 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_71 = l_Lean_Parser_checkPrecFn(x_69, x_70, x_1, x_68); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_inc(x_61); +x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); +lean_dec(x_60); +x_68 = l_Lean_Parser_Term_leadPrec; +x_69 = l_Lean_Parser_checkPrecFn(x_68, x_1, x_67); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_115; lean_object* x_116; lean_object* x_117; -x_73 = lean_ctor_get(x_71, 0); -lean_inc(x_73); -x_74 = lean_array_get_size(x_73); -lean_dec(x_73); -x_115 = lean_ctor_get(x_71, 1); -lean_inc(x_115); +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = lean_array_get_size(x_71); +lean_dec(x_71); +x_113 = lean_ctor_get(x_69, 1); +lean_inc(x_113); lean_inc(x_1); -x_116 = l_Lean_Parser_tokenFn(x_1, x_71); -x_117 = lean_ctor_get(x_116, 3); -lean_inc(x_117); -if (lean_obj_tag(x_117) == 0) +x_114 = l_Lean_Parser_tokenFn(x_1, x_69); +x_115 = lean_ctor_get(x_114, 3); +lean_inc(x_115); +if (lean_obj_tag(x_115) == 0) { -lean_object* x_118; lean_object* x_119; -x_118 = lean_ctor_get(x_116, 0); +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); +lean_dec(x_116); +if (lean_obj_tag(x_117) == 2) +{ +lean_object* x_118; lean_object* x_119; uint8_t x_120; +x_118 = lean_ctor_get(x_117, 1); lean_inc(x_118); -x_119 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_118); +lean_dec(x_117); +x_119 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_120 = lean_string_dec_eq(x_118, x_119); lean_dec(x_118); -if (lean_obj_tag(x_119) == 2) +if (x_120 == 0) { -lean_object* x_120; lean_object* x_121; uint8_t x_122; -x_120 = lean_ctor_get(x_119, 1); -lean_inc(x_120); -lean_dec(x_119); -x_121 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_122 = lean_string_dec_eq(x_120, x_121); -lean_dec(x_120); -if (x_122 == 0) +lean_object* x_121; lean_object* x_122; +x_121 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_113); +x_73 = x_122; +goto block_112; +} +else +{ +lean_dec(x_113); +x_73 = x_114; +goto block_112; +} +} +else { lean_object* x_123; lean_object* x_124; +lean_dec(x_117); x_123 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_123, x_115); -x_75 = x_124; -goto block_114; -} -else -{ -lean_dec(x_115); -x_75 = x_116; -goto block_114; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_113); +x_73 = x_124; +goto block_112; } } else { lean_object* x_125; lean_object* x_126; -lean_dec(x_119); +lean_dec(x_115); x_125 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_125, x_115); -x_75 = x_126; -goto block_114; +x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_113); +x_73 = x_126; +goto block_112; } -} -else +block_112: { -lean_object* x_127; lean_object* x_128; -lean_dec(x_117); -x_127 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_128 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_127, x_115); -x_75 = x_128; -goto block_114; -} -block_114: +lean_object* x_74; +x_74 = lean_ctor_get(x_73, 3); +lean_inc(x_74); +if (lean_obj_tag(x_74) == 0) { -lean_object* x_76; +lean_object* x_75; lean_object* x_76; +lean_inc(x_1); +x_75 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_73); x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); if (lean_obj_tag(x_76) == 0) { -lean_object* x_77; lean_object* x_78; +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_75, 1); +lean_inc(x_77); lean_inc(x_1); -x_77 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_75); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_77, 1); +x_78 = l_Lean_Parser_tokenFn(x_1, x_75); +x_79 = lean_ctor_get(x_78, 3); lean_inc(x_79); -lean_inc(x_1); -x_80 = l_Lean_Parser_tokenFn(x_1, x_77); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) +if (lean_obj_tag(x_79) == 0) { -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_80, 0); +lean_object* x_80; lean_object* x_81; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_80); +lean_dec(x_80); +if (lean_obj_tag(x_81) == 2) +{ +lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_82 = lean_ctor_get(x_81, 1); lean_inc(x_82); -x_83 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_82); +lean_dec(x_81); +x_83 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_84 = lean_string_dec_eq(x_82, x_83); lean_dec(x_82); -if (lean_obj_tag(x_83) == 2) +if (x_84 == 0) { -lean_object* x_84; lean_object* x_85; uint8_t x_86; -x_84 = lean_ctor_get(x_83, 1); -lean_inc(x_84); -lean_dec(x_83); -x_85 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_86 = lean_string_dec_eq(x_84, x_85); -lean_dec(x_84); -if (x_86 == 0) -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_dec(x_1); -x_87 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_87, x_79); -x_89 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_74); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_65, x_62); -lean_dec(x_62); -return x_91; +x_85 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_85, x_77); +x_87 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_87, x_72); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_64, x_61); +lean_dec(x_61); +return x_89; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_79); -x_92 = l_Lean_Parser_termParser___closed__2; -x_93 = lean_unsigned_to_nat(0u); -x_94 = l_Lean_Parser_categoryParser___elambda__1(x_92, x_93, x_1, x_80); -x_95 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_74); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_65, x_62); -lean_dec(x_62); -return x_97; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_dec(x_77); +x_90 = l_Lean_Parser_termParser___closed__2; +x_91 = lean_unsigned_to_nat(0u); +x_92 = l_Lean_Parser_categoryParser___elambda__1(x_90, x_91, x_1, x_78); +x_93 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_72); +x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_64, x_61); +lean_dec(x_61); +return x_95; } } else { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -lean_dec(x_83); -lean_dec(x_1); -x_98 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_98, x_79); -x_100 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_74); -x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_65, x_62); -lean_dec(x_62); -return x_102; -} -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_dec(x_81); lean_dec(x_1); -x_103 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_103, x_79); -x_105 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_74); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_65, x_62); -lean_dec(x_62); -return x_107; +x_96 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_96, x_77); +x_98 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_72); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_64, x_61); +lean_dec(x_61); +return x_100; } } else { -lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_78); +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_79); lean_dec(x_1); -x_108 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_109 = l_Lean_Parser_ParserState_mkNode(x_77, x_108, x_74); -x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_65, x_62); -lean_dec(x_62); -return x_110; +x_101 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_101, x_77); +x_103 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_72); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_64, x_61); +lean_dec(x_61); +return x_105; } } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_dec(x_76); lean_dec(x_1); -x_111 = l_Lean_Parser_Term_let___elambda__1___closed__2; -x_112 = l_Lean_Parser_ParserState_mkNode(x_75, x_111, x_74); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_65, x_62); -lean_dec(x_62); -return x_113; +x_106 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_75, x_106, x_72); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_64, x_61); +lean_dec(x_61); +return x_108; +} +} +else +{ +lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_dec(x_74); +lean_dec(x_1); +x_109 = l_Lean_Parser_Term_let___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_73, x_109, x_72); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_64, x_61); +lean_dec(x_61); +return x_111; } } } else { -lean_object* x_129; -lean_dec(x_72); +lean_object* x_127; +lean_dec(x_70); lean_dec(x_1); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_71, x_65, x_62); -lean_dec(x_62); -return x_129; +x_127 = l_Lean_Parser_mergeOrElseErrors(x_69, x_64, x_61); +lean_dec(x_61); +return x_127; } } } @@ -36753,423 +37263,421 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_46 = lean_ctor_get(x_8, 1); -lean_inc(x_46); -lean_inc(x_1); -x_47 = l_Lean_Parser_tokenFn(x_1, x_8); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_49); -lean_dec(x_49); -if (lean_obj_tag(x_50) == 2) -{ -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_50, 1); -lean_inc(x_51); -lean_dec(x_50); -x_52 = l_Lean_Parser_Term_let_x21___elambda__1___closed__6; -x_53 = lean_string_dec_eq(x_51, x_52); -lean_dec(x_51); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; -x_54 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_54, x_46); -x_12 = x_55; -goto block_45; -} -else -{ -lean_dec(x_46); -x_12 = x_47; -goto block_45; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_50); -x_56 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_56, x_46); -x_12 = x_57; -goto block_45; -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_48); -x_58 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_47, x_58, x_46); -x_12 = x_59; -goto block_45; -} -block_45: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_1); -x_24 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_16); -x_28 = l_Lean_Parser_termParser___closed__2; -x_29 = lean_unsigned_to_nat(0u); -x_30 = l_Lean_Parser_categoryParser___elambda__1(x_28, x_29, x_1, x_17); -x_31 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_11); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_20); -lean_dec(x_1); -x_33 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_33, x_16); -x_35 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_11); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_18); -lean_dec(x_1); -x_37 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_37, x_16); -x_39 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_15); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_14, x_41, x_11); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_13); -lean_dec(x_1); -x_43 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkNode(x_12, x_43, x_11); -return x_44; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_45 = lean_ctor_get(x_7, 1); +lean_inc(x_45); +lean_inc(x_1); +x_46 = l_Lean_Parser_tokenFn(x_1, x_7); +x_47 = lean_ctor_get(x_46, 3); +lean_inc(x_47); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); +lean_dec(x_48); +if (lean_obj_tag(x_49) == 2) +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_Parser_Term_let_x21___elambda__1___closed__6; +x_52 = lean_string_dec_eq(x_50, x_51); +lean_dec(x_50); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_53, x_45); +x_11 = x_54; +goto block_44; +} +else +{ +lean_dec(x_45); +x_11 = x_46; +goto block_44; } } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_60 = lean_ctor_get(x_2, 0); -lean_inc(x_60); -x_61 = lean_array_get_size(x_60); +lean_object* x_55; lean_object* x_56; +lean_dec(x_49); +x_55 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_55, x_45); +x_11 = x_56; +goto block_44; +} +} +else +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_47); +x_57 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; +x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_46, x_57, x_45); +x_11 = x_58; +goto block_44; +} +block_44: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_1); +x_23 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_15); +x_27 = l_Lean_Parser_termParser___closed__2; +x_28 = lean_unsigned_to_nat(0u); +x_29 = l_Lean_Parser_categoryParser___elambda__1(x_27, x_28, x_1, x_16); +x_30 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_10); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +lean_dec(x_1); +x_32 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_32, x_15); +x_34 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_10); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_17); +lean_dec(x_1); +x_36 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_36, x_15); +x_38 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_14); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_13, x_40, x_10); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_12); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_11, x_42, x_10); +return x_43; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_59 = lean_ctor_get(x_2, 0); +lean_inc(x_59); +x_60 = lean_array_get_size(x_59); +lean_dec(x_59); +x_61 = lean_ctor_get(x_2, 1); +lean_inc(x_61); +lean_inc(x_1); +x_62 = lean_apply_2(x_4, x_1, x_2); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) +{ +lean_dec(x_61); lean_dec(x_60); -x_62 = lean_ctor_get(x_2, 1); -lean_inc(x_62); -lean_inc(x_1); -x_63 = lean_apply_2(x_4, x_1, x_2); -x_64 = lean_ctor_get(x_63, 3); +lean_dec(x_1); +return x_62; +} +else +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_64 = lean_ctor_get(x_63, 0); lean_inc(x_64); -if (lean_obj_tag(x_64) == 0) -{ -lean_dec(x_62); -lean_dec(x_61); -lean_dec(x_1); -return x_63; -} -else -{ -lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_65 = lean_ctor_get(x_64, 0); +lean_dec(x_63); +x_65 = lean_ctor_get(x_62, 1); lean_inc(x_65); -lean_dec(x_64); -x_66 = lean_ctor_get(x_63, 1); -lean_inc(x_66); -x_67 = lean_nat_dec_eq(x_66, x_62); -lean_dec(x_66); -if (x_67 == 0) -{ +x_66 = lean_nat_dec_eq(x_65, x_61); lean_dec(x_65); -lean_dec(x_62); +if (x_66 == 0) +{ +lean_dec(x_64); lean_dec(x_61); +lean_dec(x_60); lean_dec(x_1); -return x_63; +return x_62; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_inc(x_62); -x_68 = l_Lean_Parser_ParserState_restore(x_63, x_61, x_62); -lean_dec(x_61); -x_69 = l_Lean_Parser_Term_leadPrec; -x_70 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_71 = l_Lean_Parser_checkPrecFn(x_69, x_70, x_1, x_68); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_inc(x_61); +x_67 = l_Lean_Parser_ParserState_restore(x_62, x_60, x_61); +lean_dec(x_60); +x_68 = l_Lean_Parser_Term_leadPrec; +x_69 = l_Lean_Parser_checkPrecFn(x_68, x_1, x_67); +x_70 = lean_ctor_get(x_69, 3); +lean_inc(x_70); +if (lean_obj_tag(x_70) == 0) { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_115; lean_object* x_116; lean_object* x_117; -x_73 = lean_ctor_get(x_71, 0); -lean_inc(x_73); -x_74 = lean_array_get_size(x_73); -lean_dec(x_73); -x_115 = lean_ctor_get(x_71, 1); -lean_inc(x_115); +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +x_72 = lean_array_get_size(x_71); +lean_dec(x_71); +x_113 = lean_ctor_get(x_69, 1); +lean_inc(x_113); lean_inc(x_1); -x_116 = l_Lean_Parser_tokenFn(x_1, x_71); -x_117 = lean_ctor_get(x_116, 3); -lean_inc(x_117); -if (lean_obj_tag(x_117) == 0) +x_114 = l_Lean_Parser_tokenFn(x_1, x_69); +x_115 = lean_ctor_get(x_114, 3); +lean_inc(x_115); +if (lean_obj_tag(x_115) == 0) { -lean_object* x_118; lean_object* x_119; -x_118 = lean_ctor_get(x_116, 0); +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_116); +lean_dec(x_116); +if (lean_obj_tag(x_117) == 2) +{ +lean_object* x_118; lean_object* x_119; uint8_t x_120; +x_118 = lean_ctor_get(x_117, 1); lean_inc(x_118); -x_119 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_118); +lean_dec(x_117); +x_119 = l_Lean_Parser_Term_let_x21___elambda__1___closed__6; +x_120 = lean_string_dec_eq(x_118, x_119); lean_dec(x_118); -if (lean_obj_tag(x_119) == 2) +if (x_120 == 0) { -lean_object* x_120; lean_object* x_121; uint8_t x_122; -x_120 = lean_ctor_get(x_119, 1); -lean_inc(x_120); -lean_dec(x_119); -x_121 = l_Lean_Parser_Term_let_x21___elambda__1___closed__6; -x_122 = lean_string_dec_eq(x_120, x_121); -lean_dec(x_120); -if (x_122 == 0) +lean_object* x_121; lean_object* x_122; +x_121 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_121, x_113); +x_73 = x_122; +goto block_112; +} +else +{ +lean_dec(x_113); +x_73 = x_114; +goto block_112; +} +} +else { lean_object* x_123; lean_object* x_124; +lean_dec(x_117); x_123 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_123, x_115); -x_75 = x_124; -goto block_114; -} -else -{ -lean_dec(x_115); -x_75 = x_116; -goto block_114; +x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_123, x_113); +x_73 = x_124; +goto block_112; } } else { lean_object* x_125; lean_object* x_126; -lean_dec(x_119); +lean_dec(x_115); x_125 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_125, x_115); -x_75 = x_126; -goto block_114; +x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_114, x_125, x_113); +x_73 = x_126; +goto block_112; } -} -else +block_112: { -lean_object* x_127; lean_object* x_128; -lean_dec(x_117); -x_127 = l_Lean_Parser_Term_let_x21___elambda__1___closed__9; -x_128 = l_Lean_Parser_ParserState_mkErrorsAt(x_116, x_127, x_115); -x_75 = x_128; -goto block_114; -} -block_114: +lean_object* x_74; +x_74 = lean_ctor_get(x_73, 3); +lean_inc(x_74); +if (lean_obj_tag(x_74) == 0) { -lean_object* x_76; +lean_object* x_75; lean_object* x_76; +lean_inc(x_1); +x_75 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_73); x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); if (lean_obj_tag(x_76) == 0) { -lean_object* x_77; lean_object* x_78; +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_75, 1); +lean_inc(x_77); lean_inc(x_1); -x_77 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_75); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_77, 1); +x_78 = l_Lean_Parser_tokenFn(x_1, x_75); +x_79 = lean_ctor_get(x_78, 3); lean_inc(x_79); -lean_inc(x_1); -x_80 = l_Lean_Parser_tokenFn(x_1, x_77); -x_81 = lean_ctor_get(x_80, 3); -lean_inc(x_81); -if (lean_obj_tag(x_81) == 0) +if (lean_obj_tag(x_79) == 0) { -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_80, 0); +lean_object* x_80; lean_object* x_81; +x_80 = lean_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_80); +lean_dec(x_80); +if (lean_obj_tag(x_81) == 2) +{ +lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_82 = lean_ctor_get(x_81, 1); lean_inc(x_82); -x_83 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_82); +lean_dec(x_81); +x_83 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; +x_84 = lean_string_dec_eq(x_82, x_83); lean_dec(x_82); -if (lean_obj_tag(x_83) == 2) +if (x_84 == 0) { -lean_object* x_84; lean_object* x_85; uint8_t x_86; -x_84 = lean_ctor_get(x_83, 1); -lean_inc(x_84); -lean_dec(x_83); -x_85 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__1; -x_86 = lean_string_dec_eq(x_84, x_85); -lean_dec(x_84); -if (x_86 == 0) -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_dec(x_1); -x_87 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_88 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_87, x_79); -x_89 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_88, x_89, x_74); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_65, x_62); -lean_dec(x_62); -return x_91; +x_85 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_86 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_85, x_77); +x_87 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_86, x_87, x_72); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_64, x_61); +lean_dec(x_61); +return x_89; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -lean_dec(x_79); -x_92 = l_Lean_Parser_termParser___closed__2; -x_93 = lean_unsigned_to_nat(0u); -x_94 = l_Lean_Parser_categoryParser___elambda__1(x_92, x_93, x_1, x_80); -x_95 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_96 = l_Lean_Parser_ParserState_mkNode(x_94, x_95, x_74); -x_97 = l_Lean_Parser_mergeOrElseErrors(x_96, x_65, x_62); -lean_dec(x_62); -return x_97; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_dec(x_77); +x_90 = l_Lean_Parser_termParser___closed__2; +x_91 = lean_unsigned_to_nat(0u); +x_92 = l_Lean_Parser_categoryParser___elambda__1(x_90, x_91, x_1, x_78); +x_93 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_94 = l_Lean_Parser_ParserState_mkNode(x_92, x_93, x_72); +x_95 = l_Lean_Parser_mergeOrElseErrors(x_94, x_64, x_61); +lean_dec(x_61); +return x_95; } } else { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -lean_dec(x_83); -lean_dec(x_1); -x_98 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_98, x_79); -x_100 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_101 = l_Lean_Parser_ParserState_mkNode(x_99, x_100, x_74); -x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_65, x_62); -lean_dec(x_62); -return x_102; -} -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_dec(x_81); lean_dec(x_1); -x_103 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; -x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_80, x_103, x_79); -x_105 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_104, x_105, x_74); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_65, x_62); -lean_dec(x_62); -return x_107; +x_96 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_96, x_77); +x_98 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_99 = l_Lean_Parser_ParserState_mkNode(x_97, x_98, x_72); +x_100 = l_Lean_Parser_mergeOrElseErrors(x_99, x_64, x_61); +lean_dec(x_61); +return x_100; } } else { -lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_78); +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_79); lean_dec(x_1); -x_108 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_109 = l_Lean_Parser_ParserState_mkNode(x_77, x_108, x_74); -x_110 = l_Lean_Parser_mergeOrElseErrors(x_109, x_65, x_62); -lean_dec(x_62); -return x_110; +x_101 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Tactic_seq___elambda__1___spec__2___closed__4; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_78, x_101, x_77); +x_103 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_102, x_103, x_72); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_64, x_61); +lean_dec(x_61); +return x_105; } } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_dec(x_76); lean_dec(x_1); -x_111 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; -x_112 = l_Lean_Parser_ParserState_mkNode(x_75, x_111, x_74); -x_113 = l_Lean_Parser_mergeOrElseErrors(x_112, x_65, x_62); -lean_dec(x_62); -return x_113; +x_106 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_107 = l_Lean_Parser_ParserState_mkNode(x_75, x_106, x_72); +x_108 = l_Lean_Parser_mergeOrElseErrors(x_107, x_64, x_61); +lean_dec(x_61); +return x_108; +} +} +else +{ +lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_dec(x_74); +lean_dec(x_1); +x_109 = l_Lean_Parser_Term_let_x21___elambda__1___closed__2; +x_110 = l_Lean_Parser_ParserState_mkNode(x_73, x_109, x_72); +x_111 = l_Lean_Parser_mergeOrElseErrors(x_110, x_64, x_61); +lean_dec(x_61); +return x_111; } } } else { -lean_object* x_129; -lean_dec(x_72); +lean_object* x_127; +lean_dec(x_70); lean_dec(x_1); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_71, x_65, x_62); -lean_dec(x_62); -return x_129; +x_127 = l_Lean_Parser_mergeOrElseErrors(x_69, x_64, x_61); +lean_dec(x_61); +return x_127; } } } @@ -37453,224 +37961,255 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_16 = lean_ctor_get(x_2, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_tokenFn(x_1, x_2); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_8 = x_25; -goto block_15; -} -else -{ -lean_dec(x_16); -x_8 = x_17; -goto block_15; -} -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_20); -x_26 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_26, x_16); -x_8 = x_27; -goto block_15; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_18); -x_28 = l_Lean_Parser_Term_let___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_28, x_16); -x_8 = x_29; -goto block_15; -} -block_15: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_8); -x_11 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_13 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_8, x_13, x_7); -return x_14; -} -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -x_31 = lean_array_get_size(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_2, 1); -lean_inc(x_32); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); lean_inc(x_1); -x_33 = lean_apply_2(x_4, x_1, x_2); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) { -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_1); -return x_33; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_34, 0); +lean_dec(x_19); +x_11 = x_20; +goto block_18; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); -lean_dec(x_34); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -x_37 = lean_nat_dec_eq(x_36, x_32); -lean_dec(x_36); -if (x_37 == 0) +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) { lean_dec(x_35); -lean_dec(x_32); -lean_dec(x_31); +lean_dec(x_34); lean_dec(x_1); -return x_33; +return x_36; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_51; lean_object* x_52; -lean_inc(x_32); -x_38 = l_Lean_Parser_ParserState_restore(x_33, x_31, x_32); -lean_dec(x_31); -x_39 = lean_ctor_get(x_38, 0); +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -x_40 = lean_array_get_size(x_39); +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = lean_unsigned_to_nat(1024u); +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_51 = l_Lean_Parser_tokenFn(x_1, x_38); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -x_54 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_53); -lean_dec(x_53); -if (lean_obj_tag(x_54) == 2) -{ -lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -x_56 = l_Lean_Parser_Term_let___elambda__1___closed__6; -x_57 = lean_string_dec_eq(x_55, x_56); -lean_dec(x_55); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; -x_58 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_32); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_58, x_32); -x_41 = x_59; -goto block_50; -} -else -{ -x_41 = x_51; -goto block_50; -} -} -else +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; -lean_dec(x_54); -x_60 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_32); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_60, x_32); -x_41 = x_61; -goto block_50; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Term_let___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); +lean_dec(x_62); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; } } else { -lean_object* x_62; lean_object* x_63; -lean_dec(x_52); -x_62 = l_Lean_Parser_Term_let___elambda__1___closed__9; -lean_inc(x_32); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_51, x_62, x_32); -x_41 = x_63; -goto block_50; +lean_object* x_67; lean_object* x_68; +lean_dec(x_61); +x_67 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } -block_50: -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_41); -x_44 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_40); -x_46 = l_Lean_Parser_mergeOrElseErrors(x_45, x_35, x_32); -lean_dec(x_32); -return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_42); +lean_object* x_69; lean_object* x_70; +lean_dec(x_59); +x_69 = l_Lean_Parser_Term_let___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; +} +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_Term_letDecl___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_47 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; -x_48 = l_Lean_Parser_ParserState_mkNode(x_41, x_47, x_40); -x_49 = l_Lean_Parser_mergeOrElseErrors(x_48, x_35, x_32); -lean_dec(x_32); -return x_49; +x_53 = l_Lean_Parser_Term_doLet___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } +else +{ +lean_object* x_71; +lean_dec(x_44); +lean_dec(x_1); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; +} +} } } } @@ -37700,16 +38239,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_doLet___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_doLet___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doLet___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_doLet___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doLet___closed__2; +x_3 = l_Lean_Parser_Term_doLet___closed__3; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doLet___closed__4() { +lean_object* _init_l_Lean_Parser_Term_doLet___closed__5() { _start: { lean_object* x_1; @@ -37717,12 +38266,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_doLet___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_doLet___closed__5() { +lean_object* _init_l_Lean_Parser_Term_doLet___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doLet___closed__3; -x_2 = l_Lean_Parser_Term_doLet___closed__4; +x_1 = l_Lean_Parser_Term_doLet___closed__4; +x_2 = l_Lean_Parser_Term_doLet___closed__5; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -37733,7 +38282,7 @@ lean_object* _init_l_Lean_Parser_Term_doLet() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_doLet___closed__5; +x_1 = l_Lean_Parser_Term_doLet___closed__6; return x_1; } } @@ -37788,301 +38337,316 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_26; lean_object* x_27; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_26 = l_Lean_Parser_ident___elambda__1(x_1, x_2); -x_27 = lean_ctor_get(x_26, 3); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_28; lean_object* x_29; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_29; lean_object* x_30; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_28 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_26); -x_29 = lean_ctor_get(x_28, 3); -lean_inc(x_29); -if (lean_obj_tag(x_29) == 0) +x_29 = l_Lean_Parser_ident___elambda__1(x_1, x_7); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_object* x_31; lean_object* x_32; lean_inc(x_1); -x_30 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_28); -x_31 = lean_ctor_get(x_30, 0); -lean_inc(x_31); -x_32 = lean_ctor_get(x_30, 2); +x_31 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_29); +x_32 = lean_ctor_get(x_31, 3); lean_inc(x_32); -x_33 = lean_ctor_get(x_30, 3); -lean_inc(x_33); -x_9 = x_30; -x_10 = x_31; -x_11 = x_32; -x_12 = x_33; -goto block_25; -} -else +if (lean_obj_tag(x_32) == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_29); -x_34 = lean_ctor_get(x_28, 0); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_inc(x_1); +x_33 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_31); +x_34 = lean_ctor_get(x_33, 0); lean_inc(x_34); -x_35 = lean_ctor_get(x_28, 2); +x_35 = lean_ctor_get(x_33, 2); lean_inc(x_35); -x_36 = lean_ctor_get(x_28, 3); +x_36 = lean_ctor_get(x_33, 3); lean_inc(x_36); -x_9 = x_28; -x_10 = x_34; -x_11 = x_35; -x_12 = x_36; -goto block_25; -} +x_12 = x_33; +x_13 = x_34; +x_14 = x_35; +x_15 = x_36; +goto block_28; } else { lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_dec(x_27); -x_37 = lean_ctor_get(x_26, 0); +lean_dec(x_32); +x_37 = lean_ctor_get(x_31, 0); lean_inc(x_37); -x_38 = lean_ctor_get(x_26, 2); +x_38 = lean_ctor_get(x_31, 2); lean_inc(x_38); -x_39 = lean_ctor_get(x_26, 3); +x_39 = lean_ctor_get(x_31, 3); lean_inc(x_39); -x_9 = x_26; -x_10 = x_37; -x_11 = x_38; -x_12 = x_39; -goto block_25; -} -block_25: -{ -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_7); -x_13 = lean_ctor_get(x_9, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_9); -x_17 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_8); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_9, x_19, x_8); -return x_20; +x_12 = x_31; +x_13 = x_37; +x_14 = x_38; +x_15 = x_39; +goto block_28; } } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_dec(x_9); -lean_dec(x_1); -x_21 = l_Array_shrink___main___rarg(x_10, x_8); -x_22 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_7); -lean_ctor_set(x_22, 2, x_11); -lean_ctor_set(x_22, 3, x_12); -x_23 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_8); -return x_24; -} -} -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_40 = lean_ctor_get(x_2, 0); +lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_30); +x_40 = lean_ctor_get(x_29, 0); lean_inc(x_40); -x_41 = lean_ctor_get(x_2, 1); +x_41 = lean_ctor_get(x_29, 2); lean_inc(x_41); -x_42 = lean_array_get_size(x_40); -lean_dec(x_40); -lean_inc(x_2); -lean_inc(x_1); -x_43 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_44 = x_2; -} else { - lean_dec_ref(x_2); - x_44 = lean_box(0); +x_42 = lean_ctor_get(x_29, 3); +lean_inc(x_42); +x_12 = x_29; +x_13 = x_40; +x_14 = x_41; +x_15 = x_42; +goto block_28; } -x_45 = lean_ctor_get(x_43, 3); +block_28: +{ +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_10); +x_16 = lean_ctor_get(x_12, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = l_Lean_Parser_termParser___closed__2; +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Parser_categoryParser___elambda__1(x_17, x_18, x_1, x_12); +x_20 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_11); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_16); +lean_dec(x_1); +x_22 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_12, x_22, x_11); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_12); +lean_dec(x_1); +x_24 = l_Array_shrink___main___rarg(x_13, x_11); +x_25 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_10); +lean_ctor_set(x_25, 2, x_14); +lean_ctor_set(x_25, 3, x_15); +x_26 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); +return x_27; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = lean_ctor_get(x_2, 0); +lean_inc(x_43); +x_44 = lean_array_get_size(x_43); +lean_dec(x_43); +x_45 = lean_ctor_get(x_2, 1); lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_dec(x_44); -lean_dec(x_42); -lean_dec(x_41); -lean_dec(x_1); -return x_43; -} -else -{ -lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_46 = lean_ctor_get(x_45, 0); -lean_inc(x_46); -lean_dec(x_45); -x_47 = lean_ctor_get(x_43, 1); +lean_inc(x_1); +x_46 = lean_apply_2(x_4, x_1, x_2); +x_47 = lean_ctor_get(x_46, 3); lean_inc(x_47); -x_48 = lean_nat_dec_eq(x_47, x_41); +if (lean_obj_tag(x_47) == 0) +{ +lean_dec(x_45); +lean_dec(x_44); +lean_dec(x_1); +return x_46; +} +else +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); lean_dec(x_47); -if (x_48 == 0) +x_49 = lean_ctor_get(x_46, 1); +lean_inc(x_49); +x_50 = lean_nat_dec_eq(x_49, x_45); +lean_dec(x_49); +if (x_50 == 0) { -lean_dec(x_46); +lean_dec(x_48); +lean_dec(x_45); lean_dec(x_44); -lean_dec(x_42); -lean_dec(x_41); lean_dec(x_1); -return x_43; +return x_46; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_72; lean_object* x_73; -lean_inc(x_41); -x_49 = l_Lean_Parser_ParserState_restore(x_43, x_42, x_41); -lean_dec(x_42); -x_50 = lean_ctor_get(x_49, 0); -lean_inc(x_50); -x_51 = lean_array_get_size(x_50); -lean_dec(x_50); -lean_inc(x_1); -x_72 = l_Lean_Parser_ident___elambda__1(x_1, x_49); -x_73 = lean_ctor_get(x_72, 3); -lean_inc(x_73); -if (lean_obj_tag(x_73) == 0) -{ -lean_object* x_74; lean_object* x_75; -lean_inc(x_1); -x_74 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_72); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_inc(x_1); -x_76 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_74); -x_77 = lean_ctor_get(x_76, 0); -lean_inc(x_77); -x_78 = lean_ctor_get(x_76, 2); -lean_inc(x_78); -x_79 = lean_ctor_get(x_76, 3); -lean_inc(x_79); -x_52 = x_76; -x_53 = x_77; -x_54 = x_78; -x_55 = x_79; -goto block_71; -} -else -{ -lean_object* x_80; lean_object* x_81; lean_object* x_82; -lean_dec(x_75); -x_80 = lean_ctor_get(x_74, 0); -lean_inc(x_80); -x_81 = lean_ctor_get(x_74, 2); -lean_inc(x_81); -x_82 = lean_ctor_get(x_74, 3); -lean_inc(x_82); -x_52 = x_74; -x_53 = x_80; -x_54 = x_81; -x_55 = x_82; -goto block_71; -} -} -else -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_73); -x_83 = lean_ctor_get(x_72, 0); -lean_inc(x_83); -x_84 = lean_ctor_get(x_72, 2); -lean_inc(x_84); -x_85 = lean_ctor_get(x_72, 3); -lean_inc(x_85); -x_52 = x_72; -x_53 = x_83; -x_54 = x_84; -x_55 = x_85; -goto block_71; -} -block_71: -{ -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; -lean_dec(x_54); -lean_dec(x_53); +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_inc(x_45); +x_51 = l_Lean_Parser_ParserState_restore(x_46, x_44, x_45); lean_dec(x_44); -x_56 = lean_ctor_get(x_52, 3); +x_52 = lean_unsigned_to_nat(1024u); +x_53 = l_Lean_Parser_checkPrecFn(x_52, x_1, x_51); +x_54 = lean_ctor_get(x_53, 3); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_78; lean_object* x_79; +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_53, 1); lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) +x_57 = lean_array_get_size(x_55); +lean_dec(x_55); +lean_inc(x_1); +x_78 = l_Lean_Parser_ident___elambda__1(x_1, x_53); +x_79 = lean_ctor_get(x_78, 3); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_57 = l_Lean_Parser_termParser___closed__2; -x_58 = lean_unsigned_to_nat(0u); -x_59 = l_Lean_Parser_categoryParser___elambda__1(x_57, x_58, x_1, x_52); -x_60 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_61 = l_Lean_Parser_ParserState_mkNode(x_59, x_60, x_51); -x_62 = l_Lean_Parser_mergeOrElseErrors(x_61, x_46, x_41); -lean_dec(x_41); -return x_62; +lean_object* x_80; lean_object* x_81; +lean_inc(x_1); +x_80 = l_Lean_Parser_Term_optType___elambda__1(x_1, x_78); +x_81 = lean_ctor_get(x_80, 3); +lean_inc(x_81); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_inc(x_1); +x_82 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_80); +x_83 = lean_ctor_get(x_82, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_82, 2); +lean_inc(x_84); +x_85 = lean_ctor_get(x_82, 3); +lean_inc(x_85); +x_58 = x_82; +x_59 = x_83; +x_60 = x_84; +x_61 = x_85; +goto block_77; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_81); +x_86 = lean_ctor_get(x_80, 0); +lean_inc(x_86); +x_87 = lean_ctor_get(x_80, 2); +lean_inc(x_87); +x_88 = lean_ctor_get(x_80, 3); +lean_inc(x_88); +x_58 = x_80; +x_59 = x_86; +x_60 = x_87; +x_61 = x_88; +goto block_77; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_79); +x_89 = lean_ctor_get(x_78, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_78, 2); +lean_inc(x_90); +x_91 = lean_ctor_get(x_78, 3); +lean_inc(x_91); +x_58 = x_78; +x_59 = x_89; +x_60 = x_90; +x_61 = x_91; +goto block_77; +} +block_77: +{ +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; +lean_dec(x_60); +lean_dec(x_59); lean_dec(x_56); +x_62 = lean_ctor_get(x_58, 3); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_63 = l_Lean_Parser_termParser___closed__2; +x_64 = lean_unsigned_to_nat(0u); +x_65 = l_Lean_Parser_categoryParser___elambda__1(x_63, x_64, x_1, x_58); +x_66 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_67 = l_Lean_Parser_ParserState_mkNode(x_65, x_66, x_57); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_48, x_45); +lean_dec(x_45); +return x_68; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_62); lean_dec(x_1); -x_63 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_64 = l_Lean_Parser_ParserState_mkNode(x_52, x_63, x_51); -x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_46, x_41); -lean_dec(x_41); -return x_65; +x_69 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_70 = l_Lean_Parser_ParserState_mkNode(x_58, x_69, x_57); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_48, x_45); +lean_dec(x_45); +return x_71; } } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_52); +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_dec(x_58); lean_dec(x_1); -x_66 = l_Array_shrink___main___rarg(x_53, x_51); -lean_inc(x_41); -if (lean_is_scalar(x_44)) { - x_67 = lean_alloc_ctor(0, 4, 0); -} else { - x_67 = x_44; +x_72 = l_Array_shrink___main___rarg(x_59, x_57); +x_73 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_56); +lean_ctor_set(x_73, 2, x_60); +lean_ctor_set(x_73, 3, x_61); +x_74 = l_Lean_Parser_Term_doId___elambda__1___closed__2; +x_75 = l_Lean_Parser_ParserState_mkNode(x_73, x_74, x_57); +x_76 = l_Lean_Parser_mergeOrElseErrors(x_75, x_48, x_45); +lean_dec(x_45); +return x_76; } -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_41); -lean_ctor_set(x_67, 2, x_54); -lean_ctor_set(x_67, 3, x_55); -x_68 = l_Lean_Parser_Term_doId___elambda__1___closed__2; -x_69 = l_Lean_Parser_ParserState_mkNode(x_67, x_68, x_51); -x_70 = l_Lean_Parser_mergeOrElseErrors(x_69, x_46, x_41); -lean_dec(x_41); -return x_70; } } +else +{ +lean_object* x_92; +lean_dec(x_54); +lean_dec(x_1); +x_92 = l_Lean_Parser_mergeOrElseErrors(x_53, x_48, x_45); +lean_dec(x_45); +return x_92; +} } } } @@ -38139,16 +38703,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_doId___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_doId___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doId___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_doId___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doId___closed__4; +x_3 = l_Lean_Parser_Term_doId___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doId___closed__6() { +lean_object* _init_l_Lean_Parser_Term_doId___closed__7() { _start: { lean_object* x_1; @@ -38156,12 +38730,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_doId___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_doId___closed__7() { +lean_object* _init_l_Lean_Parser_Term_doId___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doId___closed__5; -x_2 = l_Lean_Parser_Term_doId___closed__6; +x_1 = l_Lean_Parser_Term_doId___closed__6; +x_2 = l_Lean_Parser_Term_doId___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -38172,7 +38746,7 @@ lean_object* _init_l_Lean_Parser_Term_doId() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_doId___closed__7; +x_1 = l_Lean_Parser_Term_doId___closed__8; return x_1; } } @@ -38276,653 +38850,684 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -x_67 = l_Lean_Parser_termParser___closed__2; -x_68 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_69 = l_Lean_Parser_categoryParser___elambda__1(x_67, x_68, x_1, x_2); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_71; lean_object* x_72; -lean_inc(x_1); -x_71 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_69); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -if (lean_obj_tag(x_72) == 0) -{ -lean_dec(x_7); -x_9 = x_71; -goto block_66; -} -else -{ -uint8_t x_73; -x_73 = !lean_is_exclusive(x_71); -if (x_73 == 0) -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_74 = lean_ctor_get(x_71, 0); -x_75 = lean_ctor_get(x_71, 3); -lean_dec(x_75); -x_76 = lean_ctor_get(x_71, 1); -lean_dec(x_76); -x_77 = l_Array_shrink___main___rarg(x_74, x_8); -lean_ctor_set(x_71, 1, x_7); -lean_ctor_set(x_71, 0, x_77); -x_9 = x_71; -goto block_66; -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_78 = lean_ctor_get(x_71, 0); -x_79 = lean_ctor_get(x_71, 2); -lean_inc(x_79); -lean_inc(x_78); -lean_dec(x_71); -x_80 = l_Array_shrink___main___rarg(x_78, x_8); -x_81 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_81, 0, x_80); -lean_ctor_set(x_81, 1, x_7); -lean_ctor_set(x_81, 2, x_79); -lean_ctor_set(x_81, 3, x_72); -x_9 = x_81; -goto block_66; -} -} -} -else -{ -lean_object* x_82; -lean_dec(x_70); -x_82 = lean_ctor_get(x_69, 3); -lean_inc(x_82); -if (lean_obj_tag(x_82) == 0) -{ -lean_dec(x_7); -x_9 = x_69; -goto block_66; -} -else -{ -uint8_t x_83; -x_83 = !lean_is_exclusive(x_69); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_84 = lean_ctor_get(x_69, 0); -x_85 = lean_ctor_get(x_69, 3); -lean_dec(x_85); -x_86 = lean_ctor_get(x_69, 1); -lean_dec(x_86); -x_87 = l_Array_shrink___main___rarg(x_84, x_8); -lean_ctor_set(x_69, 1, x_7); -lean_ctor_set(x_69, 0, x_87); -x_9 = x_69; -goto block_66; -} -else -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_88 = lean_ctor_get(x_69, 0); -x_89 = lean_ctor_get(x_69, 2); -lean_inc(x_89); -lean_inc(x_88); -lean_dec(x_69); -x_90 = l_Array_shrink___main___rarg(x_88, x_8); -x_91 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_91, 0, x_90); -lean_ctor_set(x_91, 1, x_7); -lean_ctor_set(x_91, 2, x_89); -lean_ctor_set(x_91, 3, x_82); -x_9 = x_91; -goto block_66; -} -} -} -block_66: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_11 = l_Lean_Parser_termParser___closed__2; -x_12 = lean_unsigned_to_nat(0u); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); +x_70 = l_Lean_Parser_termParser___closed__2; +x_71 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_13 = l_Lean_Parser_categoryParser___elambda__1(x_11, x_12, x_1, x_9); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) +x_72 = l_Lean_Parser_categoryParser___elambda__1(x_70, x_71, x_1, x_7); +x_73 = lean_ctor_get(x_72, 3); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_49; lean_object* x_50; -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -x_16 = lean_array_get_size(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_13, 1); -lean_inc(x_17); +lean_object* x_74; lean_object* x_75; lean_inc(x_1); -x_49 = l_Lean_Parser_tokenFn(x_1, x_13); -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) +x_74 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_72); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_49, 0); -lean_inc(x_51); -x_52 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_51); -lean_dec(x_51); -if (lean_obj_tag(x_52) == 2) -{ -lean_object* x_53; lean_object* x_54; uint8_t x_55; -x_53 = lean_ctor_get(x_52, 1); -lean_inc(x_53); -lean_dec(x_52); -x_54 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; -x_55 = lean_string_dec_eq(x_53, x_54); -lean_dec(x_53); -if (x_55 == 0) -{ -lean_object* x_56; lean_object* x_57; -x_56 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_17); -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_56, x_17); -x_18 = x_57; -goto block_48; -} -else -{ -x_18 = x_49; -goto block_48; -} -} -else -{ -lean_object* x_58; lean_object* x_59; -lean_dec(x_52); -x_58 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_17); -x_59 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_58, x_17); -x_18 = x_59; -goto block_48; -} -} -else -{ -lean_object* x_60; lean_object* x_61; -lean_dec(x_50); -x_60 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_17); -x_61 = l_Lean_Parser_ParserState_mkErrorsAt(x_49, x_60, x_17); -x_18 = x_61; -goto block_48; -} -block_48: -{ -lean_object* x_19; -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = l_Lean_Parser_categoryParser___elambda__1(x_11, x_12, x_1, x_18); -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_17); -x_22 = l_Lean_nullKind; -x_23 = l_Lean_Parser_ParserState_mkNode(x_20, x_22, x_16); -x_24 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_8); -return x_25; -} -else -{ -lean_object* x_26; uint8_t x_27; -lean_dec(x_21); -x_26 = lean_ctor_get(x_20, 1); -lean_inc(x_26); -x_27 = lean_nat_dec_eq(x_26, x_17); -lean_dec(x_26); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_17); -x_28 = l_Lean_nullKind; -x_29 = l_Lean_Parser_ParserState_mkNode(x_20, x_28, x_16); -x_30 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_8); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = l_Lean_Parser_ParserState_restore(x_20, x_16, x_17); -x_33 = l_Lean_nullKind; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_16); -x_35 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_8); -return x_36; -} -} -} -else -{ -lean_object* x_37; uint8_t x_38; -lean_dec(x_19); -lean_dec(x_1); -x_37 = lean_ctor_get(x_18, 1); -lean_inc(x_37); -x_38 = lean_nat_dec_eq(x_37, x_17); -lean_dec(x_37); -if (x_38 == 0) -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_17); -x_39 = l_Lean_nullKind; -x_40 = l_Lean_Parser_ParserState_mkNode(x_18, x_39, x_16); -x_41 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_40, x_41, x_8); -return x_42; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_43 = l_Lean_Parser_ParserState_restore(x_18, x_16, x_17); -x_44 = l_Lean_nullKind; -x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_16); -x_46 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_47 = l_Lean_Parser_ParserState_mkNode(x_45, x_46, x_8); -return x_47; -} -} -} -} -else -{ -lean_object* x_62; lean_object* x_63; -lean_dec(x_14); -lean_dec(x_1); -x_62 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_63 = l_Lean_Parser_ParserState_mkNode(x_13, x_62, x_8); -return x_63; -} -} -else -{ -lean_object* x_64; lean_object* x_65; lean_dec(x_10); -lean_dec(x_1); -x_64 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_65 = l_Lean_Parser_ParserState_mkNode(x_9, x_64, x_8); -return x_65; +x_12 = x_74; +goto block_69; +} +else +{ +uint8_t x_76; +x_76 = !lean_is_exclusive(x_74); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_77 = lean_ctor_get(x_74, 0); +x_78 = lean_ctor_get(x_74, 3); +lean_dec(x_78); +x_79 = lean_ctor_get(x_74, 1); +lean_dec(x_79); +x_80 = l_Array_shrink___main___rarg(x_77, x_11); +lean_ctor_set(x_74, 1, x_10); +lean_ctor_set(x_74, 0, x_80); +x_12 = x_74; +goto block_69; +} +else +{ +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_81 = lean_ctor_get(x_74, 0); +x_82 = lean_ctor_get(x_74, 2); +lean_inc(x_82); +lean_inc(x_81); +lean_dec(x_74); +x_83 = l_Array_shrink___main___rarg(x_81, x_11); +x_84 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_84, 0, x_83); +lean_ctor_set(x_84, 1, x_10); +lean_ctor_set(x_84, 2, x_82); +lean_ctor_set(x_84, 3, x_75); +x_12 = x_84; +goto block_69; } } } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_92 = lean_ctor_get(x_2, 0); +lean_object* x_85; +lean_dec(x_73); +x_85 = lean_ctor_get(x_72, 3); +lean_inc(x_85); +if (lean_obj_tag(x_85) == 0) +{ +lean_dec(x_10); +x_12 = x_72; +goto block_69; +} +else +{ +uint8_t x_86; +x_86 = !lean_is_exclusive(x_72); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_87 = lean_ctor_get(x_72, 0); +x_88 = lean_ctor_get(x_72, 3); +lean_dec(x_88); +x_89 = lean_ctor_get(x_72, 1); +lean_dec(x_89); +x_90 = l_Array_shrink___main___rarg(x_87, x_11); +lean_ctor_set(x_72, 1, x_10); +lean_ctor_set(x_72, 0, x_90); +x_12 = x_72; +goto block_69; +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_91 = lean_ctor_get(x_72, 0); +x_92 = lean_ctor_get(x_72, 2); lean_inc(x_92); -x_93 = lean_ctor_get(x_2, 1); -lean_inc(x_93); -x_94 = lean_array_get_size(x_92); -lean_dec(x_92); -lean_inc(x_1); -x_95 = lean_apply_2(x_4, x_1, x_2); -x_96 = lean_ctor_get(x_95, 3); -lean_inc(x_96); -if (lean_obj_tag(x_96) == 0) +lean_inc(x_91); +lean_dec(x_72); +x_93 = l_Array_shrink___main___rarg(x_91, x_11); +x_94 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set(x_94, 1, x_10); +lean_ctor_set(x_94, 2, x_92); +lean_ctor_set(x_94, 3, x_85); +x_12 = x_94; +goto block_69; +} +} +} +block_69: { -lean_dec(x_94); -lean_dec(x_93); -lean_dec(x_1); -return x_95; +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = l_Lean_Parser_termParser___closed__2; +x_15 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_52; lean_object* x_53; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = lean_array_get_size(x_18); +lean_dec(x_18); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_inc(x_1); +x_52 = l_Lean_Parser_tokenFn(x_1, x_16); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +lean_inc(x_54); +x_55 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_54); +lean_dec(x_54); +if (lean_obj_tag(x_55) == 2) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_57 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_58 = lean_string_dec_eq(x_56, x_57); +lean_dec(x_56); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_20); +x_60 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_59, x_20); +x_21 = x_60; +goto block_51; } else { -lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_97 = lean_ctor_get(x_96, 0); +x_21 = x_52; +goto block_51; +} +} +else +{ +lean_object* x_61; lean_object* x_62; +lean_dec(x_55); +x_61 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_20); +x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_61, x_20); +x_21 = x_62; +goto block_51; +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_53); +x_63 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_20); +x_64 = l_Lean_Parser_ParserState_mkErrorsAt(x_52, x_63, x_20); +x_21 = x_64; +goto block_51; +} +block_51: +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_21, 3); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_21); +x_24 = lean_ctor_get(x_23, 3); +lean_inc(x_24); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_20); +x_25 = l_Lean_nullKind; +x_26 = l_Lean_Parser_ParserState_mkNode(x_23, x_25, x_19); +x_27 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_11); +return x_28; +} +else +{ +lean_object* x_29; uint8_t x_30; +lean_dec(x_24); +x_29 = lean_ctor_get(x_23, 1); +lean_inc(x_29); +x_30 = lean_nat_dec_eq(x_29, x_20); +lean_dec(x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); +x_31 = l_Lean_nullKind; +x_32 = l_Lean_Parser_ParserState_mkNode(x_23, x_31, x_19); +x_33 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); +return x_34; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = l_Lean_Parser_ParserState_restore(x_23, x_19, x_20); +x_36 = l_Lean_nullKind; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_19); +x_38 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_11); +return x_39; +} +} +} +else +{ +lean_object* x_40; uint8_t x_41; +lean_dec(x_22); +lean_dec(x_1); +x_40 = lean_ctor_get(x_21, 1); +lean_inc(x_40); +x_41 = lean_nat_dec_eq(x_40, x_20); +lean_dec(x_40); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_20); +x_42 = l_Lean_nullKind; +x_43 = l_Lean_Parser_ParserState_mkNode(x_21, x_42, x_19); +x_44 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkNode(x_43, x_44, x_11); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_46 = l_Lean_Parser_ParserState_restore(x_21, x_19, x_20); +x_47 = l_Lean_nullKind; +x_48 = l_Lean_Parser_ParserState_mkNode(x_46, x_47, x_19); +x_49 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_50 = l_Lean_Parser_ParserState_mkNode(x_48, x_49, x_11); +return x_50; +} +} +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_17); +lean_dec(x_1); +x_65 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_66 = l_Lean_Parser_ParserState_mkNode(x_16, x_65, x_11); +return x_66; +} +} +else +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_13); +lean_dec(x_1); +x_67 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_68 = l_Lean_Parser_ParserState_mkNode(x_12, x_67, x_11); +return x_68; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_95 = lean_ctor_get(x_2, 0); +lean_inc(x_95); +x_96 = lean_array_get_size(x_95); +lean_dec(x_95); +x_97 = lean_ctor_get(x_2, 1); lean_inc(x_97); -lean_dec(x_96); -x_98 = lean_ctor_get(x_95, 1); -lean_inc(x_98); -x_99 = lean_nat_dec_eq(x_98, x_93); -lean_dec(x_98); -if (x_99 == 0) +lean_inc(x_1); +x_98 = lean_apply_2(x_4, x_1, x_2); +x_99 = lean_ctor_get(x_98, 3); +lean_inc(x_99); +if (lean_obj_tag(x_99) == 0) { lean_dec(x_97); -lean_dec(x_94); -lean_dec(x_93); +lean_dec(x_96); lean_dec(x_1); -return x_95; +return x_98; } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; -lean_inc(x_93); -x_100 = l_Lean_Parser_ParserState_restore(x_95, x_94, x_93); -lean_dec(x_94); -x_101 = lean_ctor_get(x_100, 0); +lean_object* x_100; lean_object* x_101; uint8_t x_102; +x_100 = lean_ctor_get(x_99, 0); +lean_inc(x_100); +lean_dec(x_99); +x_101 = lean_ctor_get(x_98, 1); lean_inc(x_101); -x_102 = lean_array_get_size(x_101); +x_102 = lean_nat_dec_eq(x_101, x_97); lean_dec(x_101); -x_168 = l_Lean_Parser_termParser___closed__2; -x_169 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_170 = l_Lean_Parser_categoryParser___elambda__1(x_168, x_169, x_1, x_100); -x_171 = lean_ctor_get(x_170, 3); -lean_inc(x_171); -if (lean_obj_tag(x_171) == 0) +if (x_102 == 0) { -lean_object* x_172; lean_object* x_173; -lean_inc(x_1); -x_172 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_170); -x_173 = lean_ctor_get(x_172, 3); -lean_inc(x_173); -if (lean_obj_tag(x_173) == 0) -{ -x_103 = x_172; -goto block_167; +lean_dec(x_100); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_1); +return x_98; } else { -uint8_t x_174; -x_174 = !lean_is_exclusive(x_172); -if (x_174 == 0) +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; +lean_inc(x_97); +x_103 = l_Lean_Parser_ParserState_restore(x_98, x_96, x_97); +lean_dec(x_96); +x_104 = lean_unsigned_to_nat(1024u); +x_105 = l_Lean_Parser_checkPrecFn(x_104, x_1, x_103); +x_106 = lean_ctor_get(x_105, 3); +lean_inc(x_106); +if (lean_obj_tag(x_106) == 0) { -lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; -x_175 = lean_ctor_get(x_172, 0); -x_176 = lean_ctor_get(x_172, 3); -lean_dec(x_176); -x_177 = lean_ctor_get(x_172, 1); -lean_dec(x_177); -x_178 = l_Array_shrink___main___rarg(x_175, x_102); -lean_inc(x_93); -lean_ctor_set(x_172, 1, x_93); -lean_ctor_set(x_172, 0, x_178); -x_103 = x_172; -goto block_167; -} -else -{ -lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; -x_179 = lean_ctor_get(x_172, 0); -x_180 = lean_ctor_get(x_172, 2); -lean_inc(x_180); -lean_inc(x_179); -lean_dec(x_172); -x_181 = l_Array_shrink___main___rarg(x_179, x_102); -lean_inc(x_93); -x_182 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_182, 0, x_181); -lean_ctor_set(x_182, 1, x_93); -lean_ctor_set(x_182, 2, x_180); -lean_ctor_set(x_182, 3, x_173); -x_103 = x_182; -goto block_167; -} -} -} -else -{ -lean_object* x_183; -lean_dec(x_171); -x_183 = lean_ctor_get(x_170, 3); -lean_inc(x_183); -if (lean_obj_tag(x_183) == 0) -{ -x_103 = x_170; -goto block_167; -} -else -{ -uint8_t x_184; -x_184 = !lean_is_exclusive(x_170); -if (x_184 == 0) -{ -lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; -x_185 = lean_ctor_get(x_170, 0); -x_186 = lean_ctor_get(x_170, 3); -lean_dec(x_186); -x_187 = lean_ctor_get(x_170, 1); -lean_dec(x_187); -x_188 = l_Array_shrink___main___rarg(x_185, x_102); -lean_inc(x_93); -lean_ctor_set(x_170, 1, x_93); -lean_ctor_set(x_170, 0, x_188); -x_103 = x_170; -goto block_167; -} -else -{ -lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; -x_189 = lean_ctor_get(x_170, 0); -x_190 = lean_ctor_get(x_170, 2); -lean_inc(x_190); -lean_inc(x_189); -lean_dec(x_170); -x_191 = l_Array_shrink___main___rarg(x_189, x_102); -lean_inc(x_93); -x_192 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_192, 0, x_191); -lean_ctor_set(x_192, 1, x_93); -lean_ctor_set(x_192, 2, x_190); -lean_ctor_set(x_192, 3, x_183); -x_103 = x_192; -goto block_167; -} -} -} -block_167: -{ -lean_object* x_104; -x_104 = lean_ctor_get(x_103, 3); -lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_105 = l_Lean_Parser_termParser___closed__2; -x_106 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_107 = l_Lean_Parser_categoryParser___elambda__1(x_105, x_106, x_1, x_103); -x_108 = lean_ctor_get(x_107, 3); +lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; +x_107 = lean_ctor_get(x_105, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_105, 1); lean_inc(x_108); -if (lean_obj_tag(x_108) == 0) -{ -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_148; lean_object* x_149; -x_109 = lean_ctor_get(x_107, 0); -lean_inc(x_109); -x_110 = lean_array_get_size(x_109); -lean_dec(x_109); -x_111 = lean_ctor_get(x_107, 1); -lean_inc(x_111); +x_109 = lean_array_get_size(x_107); +lean_dec(x_107); +x_175 = l_Lean_Parser_termParser___closed__2; +x_176 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_148 = l_Lean_Parser_tokenFn(x_1, x_107); -x_149 = lean_ctor_get(x_148, 3); -lean_inc(x_149); -if (lean_obj_tag(x_149) == 0) +x_177 = l_Lean_Parser_categoryParser___elambda__1(x_175, x_176, x_1, x_105); +x_178 = lean_ctor_get(x_177, 3); +lean_inc(x_178); +if (lean_obj_tag(x_178) == 0) { -lean_object* x_150; lean_object* x_151; -x_150 = lean_ctor_get(x_148, 0); -lean_inc(x_150); -x_151 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_150); -lean_dec(x_150); -if (lean_obj_tag(x_151) == 2) +lean_object* x_179; lean_object* x_180; +lean_inc(x_1); +x_179 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_177); +x_180 = lean_ctor_get(x_179, 3); +lean_inc(x_180); +if (lean_obj_tag(x_180) == 0) { -lean_object* x_152; lean_object* x_153; uint8_t x_154; -x_152 = lean_ctor_get(x_151, 1); -lean_inc(x_152); -lean_dec(x_151); -x_153 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; -x_154 = lean_string_dec_eq(x_152, x_153); -lean_dec(x_152); -if (x_154 == 0) -{ -lean_object* x_155; lean_object* x_156; -x_155 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_111); -x_156 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_155, x_111); -x_112 = x_156; -goto block_147; +lean_dec(x_108); +x_110 = x_179; +goto block_174; } else { -x_112 = x_148; -goto block_147; +uint8_t x_181; +x_181 = !lean_is_exclusive(x_179); +if (x_181 == 0) +{ +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; +x_182 = lean_ctor_get(x_179, 0); +x_183 = lean_ctor_get(x_179, 3); +lean_dec(x_183); +x_184 = lean_ctor_get(x_179, 1); +lean_dec(x_184); +x_185 = l_Array_shrink___main___rarg(x_182, x_109); +lean_ctor_set(x_179, 1, x_108); +lean_ctor_set(x_179, 0, x_185); +x_110 = x_179; +goto block_174; +} +else +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; +x_186 = lean_ctor_get(x_179, 0); +x_187 = lean_ctor_get(x_179, 2); +lean_inc(x_187); +lean_inc(x_186); +lean_dec(x_179); +x_188 = l_Array_shrink___main___rarg(x_186, x_109); +x_189 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_189, 0, x_188); +lean_ctor_set(x_189, 1, x_108); +lean_ctor_set(x_189, 2, x_187); +lean_ctor_set(x_189, 3, x_180); +x_110 = x_189; +goto block_174; +} } } else { -lean_object* x_157; lean_object* x_158; -lean_dec(x_151); -x_157 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_111); -x_158 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_157, x_111); -x_112 = x_158; -goto block_147; -} +lean_object* x_190; +lean_dec(x_178); +x_190 = lean_ctor_get(x_177, 3); +lean_inc(x_190); +if (lean_obj_tag(x_190) == 0) +{ +lean_dec(x_108); +x_110 = x_177; +goto block_174; } else { -lean_object* x_159; lean_object* x_160; -lean_dec(x_149); -x_159 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; -lean_inc(x_111); -x_160 = l_Lean_Parser_ParserState_mkErrorsAt(x_148, x_159, x_111); -x_112 = x_160; -goto block_147; +uint8_t x_191; +x_191 = !lean_is_exclusive(x_177); +if (x_191 == 0) +{ +lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_192 = lean_ctor_get(x_177, 0); +x_193 = lean_ctor_get(x_177, 3); +lean_dec(x_193); +x_194 = lean_ctor_get(x_177, 1); +lean_dec(x_194); +x_195 = l_Array_shrink___main___rarg(x_192, x_109); +lean_ctor_set(x_177, 1, x_108); +lean_ctor_set(x_177, 0, x_195); +x_110 = x_177; +goto block_174; } -block_147: +else { -lean_object* x_113; -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; +x_196 = lean_ctor_get(x_177, 0); +x_197 = lean_ctor_get(x_177, 2); +lean_inc(x_197); +lean_inc(x_196); +lean_dec(x_177); +x_198 = l_Array_shrink___main___rarg(x_196, x_109); +x_199 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_199, 0, x_198); +lean_ctor_set(x_199, 1, x_108); +lean_ctor_set(x_199, 2, x_197); +lean_ctor_set(x_199, 3, x_190); +x_110 = x_199; +goto block_174; +} +} +} +block_174: { -lean_object* x_114; lean_object* x_115; -x_114 = l_Lean_Parser_categoryParser___elambda__1(x_105, x_106, x_1, x_112); +lean_object* x_111; +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) +{ +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_112 = l_Lean_Parser_termParser___closed__2; +x_113 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_114 = l_Lean_Parser_categoryParser___elambda__1(x_112, x_113, x_1, x_110); x_115 = lean_ctor_get(x_114, 3); lean_inc(x_115); if (lean_obj_tag(x_115) == 0) { -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_111); -x_116 = l_Lean_nullKind; -x_117 = l_Lean_Parser_ParserState_mkNode(x_114, x_116, x_110); -x_118 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_119 = l_Lean_Parser_ParserState_mkNode(x_117, x_118, x_102); -x_120 = l_Lean_Parser_mergeOrElseErrors(x_119, x_97, x_93); -lean_dec(x_93); -return x_120; +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_155; lean_object* x_156; +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = lean_array_get_size(x_116); +lean_dec(x_116); +x_118 = lean_ctor_get(x_114, 1); +lean_inc(x_118); +lean_inc(x_1); +x_155 = l_Lean_Parser_tokenFn(x_1, x_114); +x_156 = lean_ctor_get(x_155, 3); +lean_inc(x_156); +if (lean_obj_tag(x_156) == 0) +{ +lean_object* x_157; lean_object* x_158; +x_157 = lean_ctor_get(x_155, 0); +lean_inc(x_157); +x_158 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_157); +lean_dec(x_157); +if (lean_obj_tag(x_158) == 2) +{ +lean_object* x_159; lean_object* x_160; uint8_t x_161; +x_159 = lean_ctor_get(x_158, 1); +lean_inc(x_159); +lean_dec(x_158); +x_160 = l_Lean_Parser_Term_doPat___elambda__1___closed__6; +x_161 = lean_string_dec_eq(x_159, x_160); +lean_dec(x_159); +if (x_161 == 0) +{ +lean_object* x_162; lean_object* x_163; +x_162 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_118); +x_163 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_162, x_118); +x_119 = x_163; +goto block_154; } else { -lean_object* x_121; uint8_t x_122; -lean_dec(x_115); -x_121 = lean_ctor_get(x_114, 1); -lean_inc(x_121); -x_122 = lean_nat_dec_eq(x_121, x_111); -lean_dec(x_121); -if (x_122 == 0) +x_119 = x_155; +goto block_154; +} +} +else +{ +lean_object* x_164; lean_object* x_165; +lean_dec(x_158); +x_164 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_118); +x_165 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_164, x_118); +x_119 = x_165; +goto block_154; +} +} +else +{ +lean_object* x_166; lean_object* x_167; +lean_dec(x_156); +x_166 = l_Lean_Parser_Term_doPat___elambda__1___closed__9; +lean_inc(x_118); +x_167 = l_Lean_Parser_ParserState_mkErrorsAt(x_155, x_166, x_118); +x_119 = x_167; +goto block_154; +} +block_154: +{ +lean_object* x_120; +x_120 = lean_ctor_get(x_119, 3); +lean_inc(x_120); +if (lean_obj_tag(x_120) == 0) +{ +lean_object* x_121; lean_object* x_122; +x_121 = l_Lean_Parser_categoryParser___elambda__1(x_112, x_113, x_1, x_119); +x_122 = lean_ctor_get(x_121, 3); +lean_inc(x_122); +if (lean_obj_tag(x_122) == 0) { lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; -lean_dec(x_111); +lean_dec(x_118); x_123 = l_Lean_nullKind; -x_124 = l_Lean_Parser_ParserState_mkNode(x_114, x_123, x_110); +x_124 = l_Lean_Parser_ParserState_mkNode(x_121, x_123, x_117); x_125 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_102); -x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_97, x_93); -lean_dec(x_93); +x_126 = l_Lean_Parser_ParserState_mkNode(x_124, x_125, x_109); +x_127 = l_Lean_Parser_mergeOrElseErrors(x_126, x_100, x_97); +lean_dec(x_97); return x_127; } else { -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; -x_128 = l_Lean_Parser_ParserState_restore(x_114, x_110, x_111); -x_129 = l_Lean_nullKind; -x_130 = l_Lean_Parser_ParserState_mkNode(x_128, x_129, x_110); -x_131 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_132 = l_Lean_Parser_ParserState_mkNode(x_130, x_131, x_102); -x_133 = l_Lean_Parser_mergeOrElseErrors(x_132, x_97, x_93); -lean_dec(x_93); -return x_133; -} -} +lean_object* x_128; uint8_t x_129; +lean_dec(x_122); +x_128 = lean_ctor_get(x_121, 1); +lean_inc(x_128); +x_129 = lean_nat_dec_eq(x_128, x_118); +lean_dec(x_128); +if (x_129 == 0) +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_dec(x_118); +x_130 = l_Lean_nullKind; +x_131 = l_Lean_Parser_ParserState_mkNode(x_121, x_130, x_117); +x_132 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_133 = l_Lean_Parser_ParserState_mkNode(x_131, x_132, x_109); +x_134 = l_Lean_Parser_mergeOrElseErrors(x_133, x_100, x_97); +lean_dec(x_97); +return x_134; } else { -lean_object* x_134; uint8_t x_135; -lean_dec(x_113); -lean_dec(x_1); -x_134 = lean_ctor_get(x_112, 1); -lean_inc(x_134); -x_135 = lean_nat_dec_eq(x_134, x_111); -lean_dec(x_134); -if (x_135 == 0) -{ -lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; -lean_dec(x_111); +lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +x_135 = l_Lean_Parser_ParserState_restore(x_121, x_117, x_118); x_136 = l_Lean_nullKind; -x_137 = l_Lean_Parser_ParserState_mkNode(x_112, x_136, x_110); +x_137 = l_Lean_Parser_ParserState_mkNode(x_135, x_136, x_117); x_138 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_102); -x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_97, x_93); -lean_dec(x_93); +x_139 = l_Lean_Parser_ParserState_mkNode(x_137, x_138, x_109); +x_140 = l_Lean_Parser_mergeOrElseErrors(x_139, x_100, x_97); +lean_dec(x_97); return x_140; } -else -{ -lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; -x_141 = l_Lean_Parser_ParserState_restore(x_112, x_110, x_111); -x_142 = l_Lean_nullKind; -x_143 = l_Lean_Parser_ParserState_mkNode(x_141, x_142, x_110); -x_144 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_145 = l_Lean_Parser_ParserState_mkNode(x_143, x_144, x_102); -x_146 = l_Lean_Parser_mergeOrElseErrors(x_145, x_97, x_93); -lean_dec(x_93); -return x_146; -} -} } } else { -lean_object* x_161; lean_object* x_162; lean_object* x_163; -lean_dec(x_108); +lean_object* x_141; uint8_t x_142; +lean_dec(x_120); lean_dec(x_1); -x_161 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_162 = l_Lean_Parser_ParserState_mkNode(x_107, x_161, x_102); -x_163 = l_Lean_Parser_mergeOrElseErrors(x_162, x_97, x_93); -lean_dec(x_93); -return x_163; +x_141 = lean_ctor_get(x_119, 1); +lean_inc(x_141); +x_142 = lean_nat_dec_eq(x_141, x_118); +lean_dec(x_141); +if (x_142 == 0) +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_dec(x_118); +x_143 = l_Lean_nullKind; +x_144 = l_Lean_Parser_ParserState_mkNode(x_119, x_143, x_117); +x_145 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_146 = l_Lean_Parser_ParserState_mkNode(x_144, x_145, x_109); +x_147 = l_Lean_Parser_mergeOrElseErrors(x_146, x_100, x_97); +lean_dec(x_97); +return x_147; +} +else +{ +lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_148 = l_Lean_Parser_ParserState_restore(x_119, x_117, x_118); +x_149 = l_Lean_nullKind; +x_150 = l_Lean_Parser_ParserState_mkNode(x_148, x_149, x_117); +x_151 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_152 = l_Lean_Parser_ParserState_mkNode(x_150, x_151, x_109); +x_153 = l_Lean_Parser_mergeOrElseErrors(x_152, x_100, x_97); +lean_dec(x_97); +return x_153; +} +} } } else { -lean_object* x_164; lean_object* x_165; lean_object* x_166; -lean_dec(x_104); +lean_object* x_168; lean_object* x_169; lean_object* x_170; +lean_dec(x_115); lean_dec(x_1); -x_164 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; -x_165 = l_Lean_Parser_ParserState_mkNode(x_103, x_164, x_102); -x_166 = l_Lean_Parser_mergeOrElseErrors(x_165, x_97, x_93); -lean_dec(x_93); -return x_166; +x_168 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_169 = l_Lean_Parser_ParserState_mkNode(x_114, x_168, x_109); +x_170 = l_Lean_Parser_mergeOrElseErrors(x_169, x_100, x_97); +lean_dec(x_97); +return x_170; } } +else +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; +lean_dec(x_111); +lean_dec(x_1); +x_171 = l_Lean_Parser_Term_doPat___elambda__1___closed__2; +x_172 = l_Lean_Parser_ParserState_mkNode(x_110, x_171, x_109); +x_173 = l_Lean_Parser_mergeOrElseErrors(x_172, x_100, x_97); +lean_dec(x_97); +return x_173; +} +} +} +else +{ +lean_object* x_200; +lean_dec(x_106); +lean_dec(x_1); +x_200 = l_Lean_Parser_mergeOrElseErrors(x_105, x_100, x_97); +lean_dec(x_97); +return x_200; +} } } } @@ -39007,16 +39612,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_doPat___closed__8() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_doPat___closed__7; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doPat___closed__9() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_doPat___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doPat___closed__7; +x_3 = l_Lean_Parser_Term_doPat___closed__8; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__9() { +lean_object* _init_l_Lean_Parser_Term_doPat___closed__10() { _start: { lean_object* x_1; @@ -39024,12 +39639,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_doPat___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_doPat___closed__10() { +lean_object* _init_l_Lean_Parser_Term_doPat___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doPat___closed__8; -x_2 = l_Lean_Parser_Term_doPat___closed__9; +x_1 = l_Lean_Parser_Term_doPat___closed__9; +x_2 = l_Lean_Parser_Term_doPat___closed__10; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -39040,7 +39655,7 @@ lean_object* _init_l_Lean_Parser_Term_doPat() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_doPat___closed__10; +x_1 = l_Lean_Parser_Term_doPat___closed__11; return x_1; } } @@ -39095,75 +39710,106 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_8 = l_Lean_Parser_termParser___closed__2; -x_9 = lean_unsigned_to_nat(0u); -x_10 = l_Lean_Parser_categoryParser___elambda__1(x_8, x_9, x_1, x_2); -x_11 = l_Lean_Parser_Term_doExpr___elambda__1___closed__2; -x_12 = l_Lean_Parser_ParserState_mkNode(x_10, x_11, x_7); -return x_12; +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_array_get_size(x_9); +lean_dec(x_9); +x_11 = l_Lean_Parser_termParser___closed__2; +x_12 = lean_unsigned_to_nat(0u); +x_13 = l_Lean_Parser_categoryParser___elambda__1(x_11, x_12, x_1, x_7); +x_14 = l_Lean_Parser_Term_doExpr___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_2, 0); -lean_inc(x_13); -x_14 = lean_array_get_size(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 1); -lean_inc(x_15); -lean_inc(x_1); -x_16 = lean_apply_2(x_4, x_1, x_2); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_8); lean_dec(x_1); -return x_16; +return x_7; +} } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 1); lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -x_20 = lean_nat_dec_eq(x_19, x_15); -lean_dec(x_19); -if (x_20 == 0) +lean_inc(x_1); +x_19 = lean_apply_2(x_4, x_1, x_2); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) { lean_dec(x_18); -lean_dec(x_15); -lean_dec(x_14); +lean_dec(x_17); lean_dec(x_1); -return x_16; +return x_19; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); -lean_dec(x_14); -x_22 = lean_ctor_get(x_21, 0); +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); -x_23 = lean_array_get_size(x_22); +x_23 = lean_nat_dec_eq(x_22, x_18); lean_dec(x_22); -x_24 = l_Lean_Parser_termParser___closed__2; -x_25 = lean_unsigned_to_nat(0u); -x_26 = l_Lean_Parser_categoryParser___elambda__1(x_24, x_25, x_1, x_21); -x_27 = l_Lean_Parser_Term_doExpr___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_23); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_15); -lean_dec(x_15); -return x_29; +if (x_23 == 0) +{ +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_18); +x_24 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_25 = lean_unsigned_to_nat(1024u); +x_26 = l_Lean_Parser_checkPrecFn(x_25, x_1, x_24); +x_27 = lean_ctor_get(x_26, 3); +lean_inc(x_27); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_array_get_size(x_28); +lean_dec(x_28); +x_30 = l_Lean_Parser_termParser___closed__2; +x_31 = lean_unsigned_to_nat(0u); +x_32 = l_Lean_Parser_categoryParser___elambda__1(x_30, x_31, x_1, x_26); +x_33 = l_Lean_Parser_Term_doExpr___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_29); +x_35 = l_Lean_Parser_mergeOrElseErrors(x_34, x_21, x_18); +lean_dec(x_18); +return x_35; +} +else +{ +lean_object* x_36; +lean_dec(x_27); +lean_dec(x_1); +x_36 = l_Lean_Parser_mergeOrElseErrors(x_26, x_21, x_18); +lean_dec(x_18); +return x_36; +} } } } @@ -39184,16 +39830,26 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_doExpr___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_doExpr___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_doExpr___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_doExpr___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_doExpr___closed__1; +x_3 = l_Lean_Parser_Term_doExpr___closed__2; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_doExpr___closed__3() { +lean_object* _init_l_Lean_Parser_Term_doExpr___closed__4() { _start: { lean_object* x_1; @@ -39201,12 +39857,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_doExpr___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_doExpr___closed__4() { +lean_object* _init_l_Lean_Parser_Term_doExpr___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_doExpr___closed__2; -x_2 = l_Lean_Parser_Term_doExpr___closed__3; +x_1 = l_Lean_Parser_Term_doExpr___closed__3; +x_2 = l_Lean_Parser_Term_doExpr___closed__4; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -39217,7 +39873,7 @@ lean_object* _init_l_Lean_Parser_Term_doExpr() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_doExpr___closed__4; +x_1 = l_Lean_Parser_Term_doExpr___closed__5; return x_1; } } @@ -39784,411 +40440,409 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_44 = lean_ctor_get(x_8, 1); -lean_inc(x_44); -lean_inc(x_1); -x_45 = l_Lean_Parser_tokenFn(x_1, x_8); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); -lean_dec(x_47); -if (lean_obj_tag(x_48) == 2) -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_51 = lean_string_dec_eq(x_49, x_50); -lean_dec(x_49); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_52, x_44); -x_12 = x_53; -goto block_43; -} -else -{ -lean_dec(x_44); -x_12 = x_45; -goto block_43; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_48); -x_54 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_54, x_44); -x_12 = x_55; -goto block_43; -} -} -else -{ -lean_object* x_56; lean_object* x_57; -lean_dec(x_46); -x_56 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_45, x_56, x_44); -x_12 = x_57; -goto block_43; -} -block_43: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; lean_object* x_15; lean_object* x_16; -x_14 = 0; -lean_inc(x_1); -x_15 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_14, x_14, x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -x_18 = l_Lean_Parser_tokenFn(x_1, x_15); -x_19 = lean_ctor_get(x_18, 3); -lean_inc(x_19); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_20); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 2) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_24 = lean_string_dec_eq(x_22, x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_26 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_25, x_17); -x_27 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_26, x_27, x_11); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_29 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_18, x_29, x_11); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_21); -x_31 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_31, x_17); -x_33 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_11); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_19); -x_35 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_18, x_35, x_17); -x_37 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_11); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_16); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_15, x_39, x_11); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_13); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkNode(x_12, x_41, x_11); -return x_42; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_43 = lean_ctor_get(x_7, 1); +lean_inc(x_43); +lean_inc(x_1); +x_44 = l_Lean_Parser_tokenFn(x_1, x_7); +x_45 = lean_ctor_get(x_44, 3); +lean_inc(x_45); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); +lean_dec(x_46); +if (lean_obj_tag(x_47) == 2) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_50 = lean_string_dec_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); +x_11 = x_52; +goto block_42; +} +else +{ +lean_dec(x_43); +x_11 = x_44; +goto block_42; } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_58 = lean_ctor_get(x_2, 0); -lean_inc(x_58); -x_59 = lean_array_get_size(x_58); +lean_object* x_53; lean_object* x_54; +lean_dec(x_47); +x_53 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); +x_11 = x_54; +goto block_42; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_45); +x_55 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); +x_11 = x_56; +goto block_42; +} +block_42: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 0; +lean_inc(x_1); +x_14 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_13, x_13, x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +x_17 = l_Lean_Parser_tokenFn(x_1, x_14); +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 2) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_23 = lean_string_dec_eq(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); +x_26 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_28 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_10); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_20); +x_30 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); +x_32 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_10); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_18); +x_34 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); +x_36 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_15); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_12); +lean_dec(x_1); +x_40 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_11, x_40, x_10); +return x_41; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_2, 0); +lean_inc(x_57); +x_58 = lean_array_get_size(x_57); +lean_dec(x_57); +x_59 = lean_ctor_get(x_2, 1); +lean_inc(x_59); +lean_inc(x_1); +x_60 = lean_apply_2(x_4, x_1, x_2); +x_61 = lean_ctor_get(x_60, 3); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +lean_dec(x_59); lean_dec(x_58); -x_60 = lean_ctor_get(x_2, 1); -lean_inc(x_60); -lean_inc(x_1); -x_61 = lean_apply_2(x_4, x_1, x_2); -x_62 = lean_ctor_get(x_61, 3); +lean_dec(x_1); +return x_60; +} +else +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -if (lean_obj_tag(x_62) == 0) -{ -lean_dec(x_60); -lean_dec(x_59); -lean_dec(x_1); -return x_61; -} -else -{ -lean_object* x_63; lean_object* x_64; uint8_t x_65; -x_63 = lean_ctor_get(x_62, 0); +lean_dec(x_61); +x_63 = lean_ctor_get(x_60, 1); lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -x_65 = lean_nat_dec_eq(x_64, x_60); -lean_dec(x_64); -if (x_65 == 0) -{ +x_64 = lean_nat_dec_eq(x_63, x_59); lean_dec(x_63); -lean_dec(x_60); +if (x_64 == 0) +{ +lean_dec(x_62); lean_dec(x_59); +lean_dec(x_58); lean_dec(x_1); -return x_61; +return x_60; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_inc(x_60); -x_66 = l_Lean_Parser_ParserState_restore(x_61, x_59, x_60); -lean_dec(x_59); -x_67 = l_Lean_Parser_appPrec; -x_68 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_69 = l_Lean_Parser_checkPrecFn(x_67, x_68, x_1, x_66); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_inc(x_59); +x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); +lean_dec(x_58); +x_66 = l_Lean_Parser_appPrec; +x_67 = l_Lean_Parser_checkPrecFn(x_66, x_1, x_65); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_71 = lean_ctor_get(x_69, 0); -lean_inc(x_71); -x_72 = lean_array_get_size(x_71); -lean_dec(x_71); -x_111 = lean_ctor_get(x_69, 1); -lean_inc(x_111); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_109 = lean_ctor_get(x_67, 1); +lean_inc(x_109); lean_inc(x_1); -x_112 = l_Lean_Parser_tokenFn(x_1, x_69); -x_113 = lean_ctor_get(x_112, 3); -lean_inc(x_113); -if (lean_obj_tag(x_113) == 0) +x_110 = l_Lean_Parser_tokenFn(x_1, x_67); +x_111 = lean_ctor_get(x_110, 3); +lean_inc(x_111); +if (lean_obj_tag(x_111) == 0) { -lean_object* x_114; lean_object* x_115; -x_114 = lean_ctor_get(x_112, 0); +lean_object* x_112; lean_object* x_113; +x_112 = lean_ctor_get(x_110, 0); +lean_inc(x_112); +x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_112); +if (lean_obj_tag(x_113) == 2) +{ +lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_114 = lean_ctor_get(x_113, 1); lean_inc(x_114); -x_115 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_114); +lean_dec(x_113); +x_115 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; +x_116 = lean_string_dec_eq(x_114, x_115); lean_dec(x_114); -if (lean_obj_tag(x_115) == 2) +if (x_116 == 0) { -lean_object* x_116; lean_object* x_117; uint8_t x_118; -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -lean_dec(x_115); -x_117 = l_Lean_Parser_Term_structInst___elambda__1___closed__5; -x_118 = lean_string_dec_eq(x_116, x_117); -lean_dec(x_116); -if (x_118 == 0) +lean_object* x_117; lean_object* x_118; +x_117 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); +x_71 = x_118; +goto block_108; +} +else +{ +lean_dec(x_109); +x_71 = x_110; +goto block_108; +} +} +else { lean_object* x_119; lean_object* x_120; +lean_dec(x_113); x_119 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_119, x_111); -x_73 = x_120; -goto block_110; -} -else -{ -lean_dec(x_111); -x_73 = x_112; -goto block_110; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); +x_71 = x_120; +goto block_108; } } else { lean_object* x_121; lean_object* x_122; -lean_dec(x_115); +lean_dec(x_111); x_121 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_121, x_111); -x_73 = x_122; -goto block_110; +x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); +x_71 = x_122; +goto block_108; } -} -else +block_108: { -lean_object* x_123; lean_object* x_124; -lean_dec(x_113); -x_123 = l_Lean_Parser_Term_structInst___elambda__1___closed__17; -x_124 = l_Lean_Parser_ParserState_mkErrorsAt(x_112, x_123, x_111); -x_73 = x_124; -goto block_110; -} -block_110: +lean_object* x_72; +x_72 = lean_ctor_get(x_71, 3); +lean_inc(x_72); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_74; -x_74 = lean_ctor_get(x_73, 3); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -uint8_t x_75; lean_object* x_76; lean_object* x_77; -x_75 = 0; +uint8_t x_73; lean_object* x_74; lean_object* x_75; +x_73 = 0; lean_inc(x_1); -x_76 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_75, x_75, x_1, x_73); -x_77 = lean_ctor_get(x_76, 3); -lean_inc(x_77); -if (lean_obj_tag(x_77) == 0) +x_74 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_73, x_73, x_1, x_71); +x_75 = lean_ctor_get(x_74, 3); +lean_inc(x_75); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_76, 1); +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +x_77 = l_Lean_Parser_tokenFn(x_1, x_74); +x_78 = lean_ctor_get(x_77, 3); lean_inc(x_78); -x_79 = l_Lean_Parser_tokenFn(x_1, x_76); -x_80 = lean_ctor_get(x_79, 3); -lean_inc(x_80); -if (lean_obj_tag(x_80) == 0) +if (lean_obj_tag(x_78) == 0) { -lean_object* x_81; lean_object* x_82; -x_81 = lean_ctor_get(x_79, 0); +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); +lean_dec(x_79); +if (lean_obj_tag(x_80) == 2) +{ +lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_81 = lean_ctor_get(x_80, 1); lean_inc(x_81); -x_82 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_81); -lean_dec(x_81); -if (lean_obj_tag(x_82) == 2) -{ -lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; -x_85 = lean_string_dec_eq(x_83, x_84); -lean_dec(x_83); -if (x_85 == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -x_86 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_87 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_86, x_78); -x_88 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_89 = l_Lean_Parser_ParserState_mkNode(x_87, x_88, x_72); -x_90 = l_Lean_Parser_mergeOrElseErrors(x_89, x_63, x_60); -lean_dec(x_60); -return x_90; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_78); -x_91 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_92 = l_Lean_Parser_ParserState_mkNode(x_79, x_91, x_72); -x_93 = l_Lean_Parser_mergeOrElseErrors(x_92, x_63, x_60); -lean_dec(x_60); -return x_93; -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_82); -x_94 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_95 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_94, x_78); -x_96 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_97 = l_Lean_Parser_ParserState_mkNode(x_95, x_96, x_72); -x_98 = l_Lean_Parser_mergeOrElseErrors(x_97, x_63, x_60); -lean_dec(x_60); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_dec(x_80); -x_99 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_79, x_99, x_78); -x_101 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_102 = l_Lean_Parser_ParserState_mkNode(x_100, x_101, x_72); -x_103 = l_Lean_Parser_mergeOrElseErrors(x_102, x_63, x_60); -lean_dec(x_60); -return x_103; +x_82 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__7; +x_83 = lean_string_dec_eq(x_81, x_82); +lean_dec(x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_84 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); +x_86 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_70); +x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); +lean_dec(x_59); +return x_88; +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_76); +x_89 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_70); +x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); +lean_dec(x_59); +return x_91; } } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_dec(x_77); -lean_dec(x_1); -x_104 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_105 = l_Lean_Parser_ParserState_mkNode(x_76, x_104, x_72); -x_106 = l_Lean_Parser_mergeOrElseErrors(x_105, x_63, x_60); -lean_dec(x_60); -return x_106; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_80); +x_92 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); +x_94 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_70); +x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); +lean_dec(x_59); +return x_96; } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_74); +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_78); +x_97 = l_Lean_Parser_Term_explicitUniv___elambda__1___closed__11; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); +x_99 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_70); +x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); +lean_dec(x_59); +return x_101; +} +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_75); lean_dec(x_1); -x_107 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; -x_108 = l_Lean_Parser_ParserState_mkNode(x_73, x_107, x_72); -x_109 = l_Lean_Parser_mergeOrElseErrors(x_108, x_63, x_60); -lean_dec(x_60); -return x_109; +x_102 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_70); +x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); +lean_dec(x_59); +return x_104; +} +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_dec(x_72); +lean_dec(x_1); +x_105 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1___closed__2; +x_106 = l_Lean_Parser_ParserState_mkNode(x_71, x_105, x_70); +x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); +lean_dec(x_59); +return x_107; } } } else { -lean_object* x_125; -lean_dec(x_70); +lean_object* x_123; +lean_dec(x_68); lean_dec(x_1); -x_125 = l_Lean_Parser_mergeOrElseErrors(x_69, x_63, x_60); -lean_dec(x_60); -return x_125; +x_123 = l_Lean_Parser_mergeOrElseErrors(x_67, x_62, x_59); +lean_dec(x_59); +return x_123; } } } @@ -40328,141 +40982,139 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = lean_unsigned_to_nat(0u); -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -lean_inc(x_1); -x_12 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_8); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_6, x_1, x_12); -x_16 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; -x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_11); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_13); -lean_dec(x_1); -x_18 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkNode(x_12, x_18, x_11); -return x_19; -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); +lean_inc(x_1); +x_11 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_7); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_6, x_1, x_11); +x_15 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; +x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_10); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_12); lean_dec(x_1); -return x_8; +x_17 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkNode(x_11, x_17, x_10); +return x_18; } } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_2, 0); -lean_inc(x_20); -x_21 = lean_array_get_size(x_20); +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = lean_ctor_get(x_2, 0); +lean_inc(x_19); +x_20 = lean_array_get_size(x_19); +lean_dec(x_19); +x_21 = lean_ctor_get(x_2, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = lean_apply_2(x_4, x_1, x_2); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_dec(x_21); lean_dec(x_20); -x_22 = lean_ctor_get(x_2, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = lean_apply_2(x_4, x_1, x_2); -x_24 = lean_ctor_get(x_23, 3); +lean_dec(x_1); +return x_22; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 0); lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_dec(x_22); -lean_dec(x_21); -lean_dec(x_1); -return x_23; -} -else -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 0); +lean_dec(x_23); +x_25 = lean_ctor_get(x_22, 1); lean_inc(x_25); -lean_dec(x_24); -x_26 = lean_ctor_get(x_23, 1); -lean_inc(x_26); -x_27 = lean_nat_dec_eq(x_26, x_22); -lean_dec(x_26); -if (x_27 == 0) -{ +x_26 = lean_nat_dec_eq(x_25, x_21); lean_dec(x_25); -lean_dec(x_22); +if (x_26 == 0) +{ +lean_dec(x_24); lean_dec(x_21); +lean_dec(x_20); lean_dec(x_1); -return x_23; +return x_22; } else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_inc(x_22); -x_28 = l_Lean_Parser_ParserState_restore(x_23, x_21, x_22); -lean_dec(x_21); -x_29 = lean_unsigned_to_nat(0u); -x_30 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_31 = l_Lean_Parser_checkPrecFn(x_29, x_30, x_1, x_28); -x_32 = lean_ctor_get(x_31, 3); -lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_inc(x_21); +x_27 = l_Lean_Parser_ParserState_restore(x_22, x_20, x_21); +lean_dec(x_20); +x_28 = lean_unsigned_to_nat(0u); +x_29 = l_Lean_Parser_checkPrecFn(x_28, x_1, x_27); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_33 = lean_ctor_get(x_31, 0); -lean_inc(x_33); -x_34 = lean_array_get_size(x_33); -lean_dec(x_33); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_29, 0); +lean_inc(x_31); +x_32 = lean_array_get_size(x_31); +lean_dec(x_31); lean_inc(x_1); -x_35 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_31); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_33 = l_Lean_Parser_Term_leftArrow___elambda__1(x_1, x_29); +x_34 = lean_ctor_get(x_33, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = l_Lean_Parser_termParser___closed__2; -x_38 = l_Lean_Parser_categoryParser___elambda__1(x_37, x_29, x_1, x_35); -x_39 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_38, x_39, x_34); -x_41 = l_Lean_Parser_mergeOrElseErrors(x_40, x_25, x_22); -lean_dec(x_22); -return x_41; +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = l_Lean_Parser_termParser___closed__2; +x_36 = l_Lean_Parser_categoryParser___elambda__1(x_35, x_28, x_1, x_33); +x_37 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_32); +x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_24, x_21); +lean_dec(x_21); +return x_39; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_36); +lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_34); lean_dec(x_1); -x_42 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; -x_43 = l_Lean_Parser_ParserState_mkNode(x_35, x_42, x_34); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_25, x_22); -lean_dec(x_22); -return x_44; +x_40 = l_Lean_Parser_Term_liftMethod___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_33, x_40, x_32); +x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_24, x_21); +lean_dec(x_21); +return x_42; } } else { -lean_object* x_45; -lean_dec(x_32); +lean_object* x_43; +lean_dec(x_30); lean_dec(x_1); -x_45 = l_Lean_Parser_mergeOrElseErrors(x_31, x_25, x_22); -lean_dec(x_22); -return x_45; +x_43 = l_Lean_Parser_mergeOrElseErrors(x_29, x_24, x_21); +lean_dec(x_21); +return x_43; } } } @@ -40655,363 +41307,361 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_35 = lean_ctor_get(x_8, 1); -lean_inc(x_35); -lean_inc(x_1); -x_36 = l_Lean_Parser_tokenFn(x_1, x_8); -x_37 = lean_ctor_get(x_36, 3); -lean_inc(x_37); -if (lean_obj_tag(x_37) == 0) -{ -lean_object* x_38; lean_object* x_39; -x_38 = lean_ctor_get(x_36, 0); -lean_inc(x_38); -x_39 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_38); -lean_dec(x_38); -if (lean_obj_tag(x_39) == 2) -{ -lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -lean_dec(x_39); -x_41 = l_Lean_Parser_Term_do___elambda__1___closed__6; -x_42 = lean_string_dec_eq(x_40, x_41); -lean_dec(x_40); -if (x_42 == 0) -{ -lean_object* x_43; lean_object* x_44; -x_43 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_43, x_35); -x_12 = x_44; -goto block_34; -} -else -{ -lean_dec(x_35); -x_12 = x_36; -goto block_34; -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_39); -x_45 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_46 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_45, x_35); -x_12 = x_46; -goto block_34; -} -} -else -{ -lean_object* x_47; lean_object* x_48; -lean_dec(x_37); -x_47 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_36, x_47, x_35); -x_12 = x_48; -goto block_34; -} -block_34: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -x_15 = lean_array_get_size(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_12, 1); -lean_inc(x_16); -lean_inc(x_1); -x_17 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1(x_1, x_12); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_17, x_19, x_11); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_18, 0); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_ctor_get(x_17, 1); -lean_inc(x_22); -x_23 = lean_nat_dec_eq(x_22, x_16); -lean_dec(x_22); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -lean_dec(x_21); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_1); -x_24 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_17, x_24, x_11); -return x_25; -} -else -{ -lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_16); -x_26 = l_Lean_Parser_ParserState_restore(x_17, x_15, x_16); -lean_dec(x_15); -x_27 = 0; -x_28 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_27, x_27, x_1, x_26); -x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_21, x_16); -lean_dec(x_16); -x_30 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_11); -return x_31; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_13); -lean_dec(x_1); -x_32 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_12, x_32, x_11); -return x_33; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_34 = lean_ctor_get(x_7, 1); +lean_inc(x_34); +lean_inc(x_1); +x_35 = l_Lean_Parser_tokenFn(x_1, x_7); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_inc(x_37); +x_38 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_37); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 2) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l_Lean_Parser_Term_do___elambda__1___closed__6; +x_41 = lean_string_dec_eq(x_39, x_40); +lean_dec(x_39); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = l_Lean_Parser_Term_do___elambda__1___closed__9; +x_43 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_42, x_34); +x_11 = x_43; +goto block_33; +} +else +{ +lean_dec(x_34); +x_11 = x_35; +goto block_33; } } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_49 = lean_ctor_get(x_2, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); +lean_object* x_44; lean_object* x_45; +lean_dec(x_38); +x_44 = l_Lean_Parser_Term_do___elambda__1___closed__9; +x_45 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_44, x_34); +x_11 = x_45; +goto block_33; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_36); +x_46 = l_Lean_Parser_Term_do___elambda__1___closed__9; +x_47 = l_Lean_Parser_ParserState_mkErrorsAt(x_35, x_46, x_34); +x_11 = x_47; +goto block_33; +} +block_33: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_inc(x_1); +x_16 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1(x_1, x_11); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_16, x_18, x_10); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 0); +lean_inc(x_20); +lean_dec(x_17); +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); +x_22 = lean_nat_dec_eq(x_21, x_15); +lean_dec(x_21); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +lean_dec(x_20); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_1); +x_23 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_16, x_23, x_10); +return x_24; +} +else +{ +lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_inc(x_15); +x_25 = l_Lean_Parser_ParserState_restore(x_16, x_14, x_15); +lean_dec(x_14); +x_26 = 0; +x_27 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_26, x_26, x_1, x_25); +x_28 = l_Lean_Parser_mergeOrElseErrors(x_27, x_20, x_15); +lean_dec(x_15); +x_29 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_10); +return x_30; +} +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_12); +lean_dec(x_1); +x_31 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_11, x_31, x_10); +return x_32; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_48 = lean_ctor_get(x_2, 0); +lean_inc(x_48); +x_49 = lean_array_get_size(x_48); +lean_dec(x_48); +x_50 = lean_ctor_get(x_2, 1); +lean_inc(x_50); +lean_inc(x_1); +x_51 = lean_apply_2(x_4, x_1, x_2); +x_52 = lean_ctor_get(x_51, 3); +lean_inc(x_52); +if (lean_obj_tag(x_52) == 0) +{ +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_ctor_get(x_2, 1); -lean_inc(x_51); -lean_inc(x_1); -x_52 = lean_apply_2(x_4, x_1, x_2); -x_53 = lean_ctor_get(x_52, 3); +lean_dec(x_1); +return x_51; +} +else +{ +lean_object* x_53; lean_object* x_54; uint8_t x_55; +x_53 = lean_ctor_get(x_52, 0); lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_dec(x_51); -lean_dec(x_50); -lean_dec(x_1); -return x_52; -} -else -{ -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_53, 0); +lean_dec(x_52); +x_54 = lean_ctor_get(x_51, 1); lean_inc(x_54); -lean_dec(x_53); -x_55 = lean_ctor_get(x_52, 1); -lean_inc(x_55); -x_56 = lean_nat_dec_eq(x_55, x_51); -lean_dec(x_55); -if (x_56 == 0) -{ +x_55 = lean_nat_dec_eq(x_54, x_50); lean_dec(x_54); -lean_dec(x_51); +if (x_55 == 0) +{ +lean_dec(x_53); lean_dec(x_50); +lean_dec(x_49); lean_dec(x_1); -return x_52; +return x_51; } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_inc(x_51); -x_57 = l_Lean_Parser_ParserState_restore(x_52, x_50, x_51); -lean_dec(x_50); -x_58 = l_Lean_Parser_Term_leadPrec; -x_59 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_60 = l_Lean_Parser_checkPrecFn(x_58, x_59, x_1, x_57); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_inc(x_50); +x_56 = l_Lean_Parser_ParserState_restore(x_51, x_49, x_50); +lean_dec(x_49); +x_57 = l_Lean_Parser_Term_leadPrec; +x_58 = l_Lean_Parser_checkPrecFn(x_57, x_1, x_56); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_62 = lean_ctor_get(x_60, 0); -lean_inc(x_62); -x_63 = lean_array_get_size(x_62); -lean_dec(x_62); -x_91 = lean_ctor_get(x_60, 1); -lean_inc(x_91); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = lean_array_get_size(x_60); +lean_dec(x_60); +x_89 = lean_ctor_get(x_58, 1); +lean_inc(x_89); lean_inc(x_1); -x_92 = l_Lean_Parser_tokenFn(x_1, x_60); -x_93 = lean_ctor_get(x_92, 3); -lean_inc(x_93); -if (lean_obj_tag(x_93) == 0) +x_90 = l_Lean_Parser_tokenFn(x_1, x_58); +x_91 = lean_ctor_get(x_90, 3); +lean_inc(x_91); +if (lean_obj_tag(x_91) == 0) { -lean_object* x_94; lean_object* x_95; -x_94 = lean_ctor_get(x_92, 0); +lean_object* x_92; lean_object* x_93; +x_92 = lean_ctor_get(x_90, 0); +lean_inc(x_92); +x_93 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_92); +lean_dec(x_92); +if (lean_obj_tag(x_93) == 2) +{ +lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_94 = lean_ctor_get(x_93, 1); lean_inc(x_94); -x_95 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_94); +lean_dec(x_93); +x_95 = l_Lean_Parser_Term_do___elambda__1___closed__6; +x_96 = lean_string_dec_eq(x_94, x_95); lean_dec(x_94); -if (lean_obj_tag(x_95) == 2) +if (x_96 == 0) { -lean_object* x_96; lean_object* x_97; uint8_t x_98; -x_96 = lean_ctor_get(x_95, 1); -lean_inc(x_96); -lean_dec(x_95); -x_97 = l_Lean_Parser_Term_do___elambda__1___closed__6; -x_98 = lean_string_dec_eq(x_96, x_97); -lean_dec(x_96); -if (x_98 == 0) +lean_object* x_97; lean_object* x_98; +x_97 = l_Lean_Parser_Term_do___elambda__1___closed__9; +x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_97, x_89); +x_62 = x_98; +goto block_88; +} +else +{ +lean_dec(x_89); +x_62 = x_90; +goto block_88; +} +} +else { lean_object* x_99; lean_object* x_100; +lean_dec(x_93); x_99 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_99, x_91); -x_64 = x_100; -goto block_90; -} -else -{ -lean_dec(x_91); -x_64 = x_92; -goto block_90; +x_100 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_99, x_89); +x_62 = x_100; +goto block_88; } } else { lean_object* x_101; lean_object* x_102; -lean_dec(x_95); +lean_dec(x_91); x_101 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_101, x_91); -x_64 = x_102; -goto block_90; +x_102 = l_Lean_Parser_ParserState_mkErrorsAt(x_90, x_101, x_89); +x_62 = x_102; +goto block_88; } -} -else +block_88: { -lean_object* x_103; lean_object* x_104; -lean_dec(x_93); -x_103 = l_Lean_Parser_Term_do___elambda__1___closed__9; -x_104 = l_Lean_Parser_ParserState_mkErrorsAt(x_92, x_103, x_91); -x_64 = x_104; -goto block_90; -} -block_90: +lean_object* x_63; +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_65; -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = lean_array_get_size(x_64); +lean_dec(x_64); +x_66 = lean_ctor_get(x_62, 1); lean_inc(x_66); -x_67 = lean_array_get_size(x_66); -lean_dec(x_66); -x_68 = lean_ctor_get(x_64, 1); -lean_inc(x_68); lean_inc(x_1); -x_69 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1(x_1, x_64); -x_70 = lean_ctor_get(x_69, 3); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_1); -x_71 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_72 = l_Lean_Parser_ParserState_mkNode(x_69, x_71, x_63); -x_73 = l_Lean_Parser_mergeOrElseErrors(x_72, x_54, x_51); -lean_dec(x_51); -return x_73; -} -else -{ -lean_object* x_74; lean_object* x_75; uint8_t x_76; -x_74 = lean_ctor_get(x_70, 0); -lean_inc(x_74); -lean_dec(x_70); -x_75 = lean_ctor_get(x_69, 1); -lean_inc(x_75); -x_76 = lean_nat_dec_eq(x_75, x_68); -lean_dec(x_75); -if (x_76 == 0) -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_dec(x_74); -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_1); -x_77 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_78 = l_Lean_Parser_ParserState_mkNode(x_69, x_77, x_63); -x_79 = l_Lean_Parser_mergeOrElseErrors(x_78, x_54, x_51); -lean_dec(x_51); -return x_79; -} -else -{ -lean_object* x_80; uint8_t x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_67 = l_Lean_Parser_Term_bracketedDoSeq___elambda__1(x_1, x_62); +x_68 = lean_ctor_get(x_67, 3); lean_inc(x_68); -x_80 = l_Lean_Parser_ParserState_restore(x_69, x_67, x_68); -lean_dec(x_67); -x_81 = 0; -x_82 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_81, x_81, x_1, x_80); -x_83 = l_Lean_Parser_mergeOrElseErrors(x_82, x_74, x_68); -lean_dec(x_68); -x_84 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_63); -x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_54, x_51); -lean_dec(x_51); -return x_86; -} -} -} -else +if (lean_obj_tag(x_68) == 0) { -lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_66); lean_dec(x_65); lean_dec(x_1); -x_87 = l_Lean_Parser_Term_do___elambda__1___closed__2; -x_88 = l_Lean_Parser_ParserState_mkNode(x_64, x_87, x_63); -x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_54, x_51); -lean_dec(x_51); -return x_89; +x_69 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_70 = l_Lean_Parser_ParserState_mkNode(x_67, x_69, x_61); +x_71 = l_Lean_Parser_mergeOrElseErrors(x_70, x_53, x_50); +lean_dec(x_50); +return x_71; +} +else +{ +lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_72 = lean_ctor_get(x_68, 0); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_ctor_get(x_67, 1); +lean_inc(x_73); +x_74 = lean_nat_dec_eq(x_73, x_66); +lean_dec(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_72); +lean_dec(x_66); +lean_dec(x_65); +lean_dec(x_1); +x_75 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_76 = l_Lean_Parser_ParserState_mkNode(x_67, x_75, x_61); +x_77 = l_Lean_Parser_mergeOrElseErrors(x_76, x_53, x_50); +lean_dec(x_50); +return x_77; +} +else +{ +lean_object* x_78; uint8_t x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +lean_inc(x_66); +x_78 = l_Lean_Parser_ParserState_restore(x_67, x_65, x_66); +lean_dec(x_65); +x_79 = 0; +x_80 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_doSeq___elambda__1___spec__1(x_79, x_79, x_1, x_78); +x_81 = l_Lean_Parser_mergeOrElseErrors(x_80, x_72, x_66); +lean_dec(x_66); +x_82 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_83 = l_Lean_Parser_ParserState_mkNode(x_81, x_82, x_61); +x_84 = l_Lean_Parser_mergeOrElseErrors(x_83, x_53, x_50); +lean_dec(x_50); +return x_84; } } } else { -lean_object* x_105; -lean_dec(x_61); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_63); lean_dec(x_1); -x_105 = l_Lean_Parser_mergeOrElseErrors(x_60, x_54, x_51); -lean_dec(x_51); -return x_105; +x_85 = l_Lean_Parser_Term_do___elambda__1___closed__2; +x_86 = l_Lean_Parser_ParserState_mkNode(x_62, x_85, x_61); +x_87 = l_Lean_Parser_mergeOrElseErrors(x_86, x_53, x_50); +lean_dec(x_50); +return x_87; +} +} +} +else +{ +lean_object* x_103; +lean_dec(x_59); +lean_dec(x_1); +x_103 = l_Lean_Parser_mergeOrElseErrors(x_58, x_53, x_50); +lean_dec(x_50); +return x_103; } } } @@ -41223,228 +41873,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = l_Lean_Parser_appPrec; -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_appPrec; +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = l_Lean_Parser_appPrec; -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = l_Lean_Parser_appPrec; +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -41483,16 +42164,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_nativeRefl___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_nativeRefl___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_nativeRefl___closed__3; +x_3 = l_Lean_Parser_Term_nativeRefl___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__5() { +lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__6() { _start: { lean_object* x_1; @@ -41500,12 +42191,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_nativeRefl___elambda__1), 2, return x_1; } } -lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__6() { +lean_object* _init_l_Lean_Parser_Term_nativeRefl___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_nativeRefl___closed__4; -x_2 = l_Lean_Parser_Term_nativeRefl___closed__5; +x_1 = l_Lean_Parser_Term_nativeRefl___closed__5; +x_2 = l_Lean_Parser_Term_nativeRefl___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -41516,7 +42207,7 @@ lean_object* _init_l_Lean_Parser_Term_nativeRefl() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_nativeRefl___closed__6; +x_1 = l_Lean_Parser_Term_nativeRefl___closed__7; return x_1; } } @@ -41632,228 +42323,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = l_Lean_Parser_appPrec; -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_appPrec; +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = l_Lean_Parser_appPrec; -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = l_Lean_Parser_appPrec; +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -41892,16 +42614,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_nativeDecide___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_nativeDecide___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_nativeDecide___closed__3; +x_3 = l_Lean_Parser_Term_nativeDecide___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__5() { +lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__6() { _start: { lean_object* x_1; @@ -41909,12 +42641,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_nativeDecide___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__6() { +lean_object* _init_l_Lean_Parser_Term_nativeDecide___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_nativeDecide___closed__4; -x_2 = l_Lean_Parser_Term_nativeDecide___closed__5; +x_1 = l_Lean_Parser_Term_nativeDecide___closed__5; +x_2 = l_Lean_Parser_Term_nativeDecide___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -41925,7 +42657,7 @@ lean_object* _init_l_Lean_Parser_Term_nativeDecide() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_nativeDecide___closed__6; +x_1 = l_Lean_Parser_Term_nativeDecide___closed__7; return x_1; } } @@ -42041,228 +42773,259 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_array_get_size(x_6); -lean_dec(x_6); -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_Parser_tokenFn(x_1, x_2); -x_20 = lean_ctor_get(x_19, 3); -lean_inc(x_20); -if (lean_obj_tag(x_20) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); -lean_dec(x_21); -if (lean_obj_tag(x_22) == 2) -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = l_Lean_Parser_Term_decide___elambda__1___closed__6; -x_25 = lean_string_dec_eq(x_23, x_24); -lean_dec(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); -x_8 = x_27; -goto block_17; -} -else -{ -lean_dec(x_18); -x_8 = x_19; -goto block_17; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_22); -x_28 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_28, x_18); -x_8 = x_29; -goto block_17; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_30, x_18); -x_8 = x_31; -goto block_17; -} -block_17: -{ -lean_object* x_9; -x_9 = lean_ctor_get(x_8, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = l_Lean_Parser_termParser___closed__2; -x_11 = l_Lean_Parser_appPrec; -x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); -x_13 = l_Lean_Parser_Term_decide___elambda__1___closed__2; -x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); -return x_14; -} -else -{ -lean_object* x_15; lean_object* x_16; +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -x_15 = l_Lean_Parser_Term_decide___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_8, x_15, x_7); -return x_16; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -x_33 = lean_array_get_size(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_2, 1); -lean_inc(x_34); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); lean_inc(x_1); -x_35 = lean_apply_2(x_4, x_1, x_2); -x_36 = lean_ctor_get(x_35, 3); -lean_inc(x_36); -if (lean_obj_tag(x_36) == 0) +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) { -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_1); -return x_35; +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_decide___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_36, 0); +lean_dec(x_21); +x_11 = x_22; +goto block_20; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = l_Lean_Parser_appPrec; +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_decide___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_decide___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); lean_inc(x_37); -lean_dec(x_36); -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_38, x_34); -lean_dec(x_38); -if (x_39 == 0) +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) { lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_33); +lean_dec(x_36); lean_dec(x_1); -return x_35; +return x_38; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_55; lean_object* x_56; -lean_inc(x_34); -x_40 = l_Lean_Parser_ParserState_restore(x_35, x_33, x_34); -lean_dec(x_33); -x_41 = lean_ctor_get(x_40, 0); +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -x_42 = lean_array_get_size(x_41); +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); +if (x_42 == 0) +{ +lean_dec(x_40); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(1024u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_55 = l_Lean_Parser_tokenFn(x_1, x_40); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_inc(x_57); -x_58 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_57); -lean_dec(x_57); -if (lean_obj_tag(x_58) == 2) -{ -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = l_Lean_Parser_Term_decide___elambda__1___closed__6; -x_61 = lean_string_dec_eq(x_59, x_60); -lean_dec(x_59); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; -x_62 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -lean_inc(x_34); -x_63 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_62, x_34); -x_43 = x_63; -goto block_54; -} -else -{ -x_43 = x_55; -goto block_54; -} -} -else +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { lean_object* x_64; lean_object* x_65; -lean_dec(x_58); -x_64 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -lean_inc(x_34); -x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_64, x_34); -x_43 = x_65; -goto block_54; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_decide___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); +lean_dec(x_66); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; } } else { -lean_object* x_66; lean_object* x_67; -lean_dec(x_56); -x_66 = l_Lean_Parser_Term_decide___elambda__1___closed__9; -lean_inc(x_34); -x_67 = l_Lean_Parser_ParserState_mkErrorsAt(x_55, x_66, x_34); -x_43 = x_67; -goto block_54; +lean_object* x_71; lean_object* x_72; +lean_dec(x_65); +x_71 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } -block_54: -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = l_Lean_Parser_termParser___closed__2; -x_46 = l_Lean_Parser_appPrec; -x_47 = l_Lean_Parser_categoryParser___elambda__1(x_45, x_46, x_1, x_43); -x_48 = l_Lean_Parser_Term_decide___elambda__1___closed__2; -x_49 = l_Lean_Parser_ParserState_mkNode(x_47, x_48, x_42); -x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_37, x_34); -lean_dec(x_34); -return x_50; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_44); +lean_object* x_73; lean_object* x_74; +lean_dec(x_63); +x_73 = l_Lean_Parser_Term_decide___elambda__1___closed__9; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; +} +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = l_Lean_Parser_appPrec; +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_decide___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_51 = l_Lean_Parser_Term_decide___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkNode(x_43, x_51, x_42); -x_53 = l_Lean_Parser_mergeOrElseErrors(x_52, x_37, x_34); -lean_dec(x_34); -return x_53; +x_57 = l_Lean_Parser_Term_decide___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } +else +{ +lean_object* x_75; +lean_dec(x_46); +lean_dec(x_1); +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; +} +} } } } @@ -42301,16 +43064,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_decide___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_decide___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_decide___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_decide___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_decide___closed__3; +x_3 = l_Lean_Parser_Term_decide___closed__4; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_decide___closed__5() { +lean_object* _init_l_Lean_Parser_Term_decide___closed__6() { _start: { lean_object* x_1; @@ -42318,12 +43091,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_decide___elambda__1), 2, 0); return x_1; } } -lean_object* _init_l_Lean_Parser_Term_decide___closed__6() { +lean_object* _init_l_Lean_Parser_Term_decide___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_decide___closed__4; -x_2 = l_Lean_Parser_Term_decide___closed__5; +x_1 = l_Lean_Parser_Term_decide___closed__5; +x_2 = l_Lean_Parser_Term_decide___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -42334,7 +43107,7 @@ lean_object* _init_l_Lean_Parser_Term_decide() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_decide___closed__6; +x_1 = l_Lean_Parser_Term_decide___closed__7; return x_1; } } @@ -42450,259 +43223,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_not___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(40u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_not___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_not___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_not___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_not___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_not___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_not___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(40u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_not___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_not___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_appPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_appPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_not___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_not___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_not___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(40u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_not___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_not___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(40u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_not___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_not___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_not___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -42912,259 +43683,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_bnot___elambda__1___closed__6; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(40u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_bnot___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(40u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = l_Lean_Parser_appPrec; -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = l_Lean_Parser_appPrec; +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_bnot___elambda__1___closed__6; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_bnot___elambda__1___closed__6; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(40u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_bnot___elambda__1___closed__9; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(40u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_bnot___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -43356,259 +44125,257 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = lean_unsigned_to_nat(65u); -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_22 = lean_ctor_get(x_8, 1); -lean_inc(x_22); -lean_inc(x_1); -x_23 = l_Lean_Parser_tokenFn(x_1, x_8); -x_24 = lean_ctor_get(x_23, 3); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_25); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 2) -{ -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 1); -lean_inc(x_27); -lean_dec(x_26); -x_28 = l_Lean_Parser_Term_uminus___elambda__1___closed__5; -x_29 = lean_string_dec_eq(x_27, x_28); -lean_dec(x_27); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_30, x_22); -x_12 = x_31; -goto block_21; -} -else -{ -lean_dec(x_22); -x_12 = x_23; -goto block_21; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_26); -x_32 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_32, x_22); -x_12 = x_33; -goto block_21; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_24); -x_34 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_23, x_34, x_22); -x_12 = x_35; -goto block_21; -} -block_21: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = l_Lean_Parser_termParser___closed__2; -x_15 = lean_unsigned_to_nat(100u); -x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); -x_17 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_16, x_17, x_11); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_13); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkNode(x_12, x_19, x_11); -return x_20; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +lean_inc(x_1); +x_22 = l_Lean_Parser_tokenFn(x_1, x_7); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_uminus___elambda__1___closed__5; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_11 = x_30; +goto block_20; +} +else +{ +lean_dec(x_21); +x_11 = x_22; +goto block_20; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = lean_ctor_get(x_2, 0); -lean_inc(x_36); -x_37 = lean_array_get_size(x_36); +lean_object* x_31; lean_object* x_32; +lean_dec(x_25); +x_31 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_31, x_21); +x_11 = x_32; +goto block_20; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +x_33 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_33, x_21); +x_11 = x_34; +goto block_20; +} +block_20: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = l_Lean_Parser_termParser___closed__2; +x_14 = lean_unsigned_to_nat(100u); +x_15 = l_Lean_Parser_categoryParser___elambda__1(x_13, x_14, x_1, x_11); +x_16 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_15, x_16, x_10); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_12); +lean_dec(x_1); +x_18 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_11, x_18, x_10); +return x_19; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_2, 0); +lean_inc(x_35); +x_36 = lean_array_get_size(x_35); +lean_dec(x_35); +x_37 = lean_ctor_get(x_2, 1); +lean_inc(x_37); +lean_inc(x_1); +x_38 = lean_apply_2(x_4, x_1, x_2); +x_39 = lean_ctor_get(x_38, 3); +lean_inc(x_39); +if (lean_obj_tag(x_39) == 0) +{ +lean_dec(x_37); lean_dec(x_36); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -lean_inc(x_1); -x_39 = lean_apply_2(x_4, x_1, x_2); -x_40 = lean_ctor_get(x_39, 3); +lean_dec(x_1); +return x_38; +} +else +{ +lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); -if (lean_obj_tag(x_40) == 0) -{ -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_1); -return x_39; -} -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); +lean_dec(x_39); +x_41 = lean_ctor_get(x_38, 1); lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_ctor_get(x_39, 1); -lean_inc(x_42); -x_43 = lean_nat_dec_eq(x_42, x_38); -lean_dec(x_42); -if (x_43 == 0) -{ +x_42 = lean_nat_dec_eq(x_41, x_37); lean_dec(x_41); -lean_dec(x_38); +if (x_42 == 0) +{ +lean_dec(x_40); lean_dec(x_37); +lean_dec(x_36); lean_dec(x_1); -return x_39; +return x_38; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_inc(x_38); -x_44 = l_Lean_Parser_ParserState_restore(x_39, x_37, x_38); -lean_dec(x_37); -x_45 = lean_unsigned_to_nat(65u); -x_46 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_47 = l_Lean_Parser_checkPrecFn(x_45, x_46, x_1, x_44); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_inc(x_37); +x_43 = l_Lean_Parser_ParserState_restore(x_38, x_36, x_37); +lean_dec(x_36); +x_44 = lean_unsigned_to_nat(65u); +x_45 = l_Lean_Parser_checkPrecFn(x_44, x_1, x_43); +x_46 = lean_ctor_get(x_45, 3); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_array_get_size(x_49); -lean_dec(x_49); -x_63 = lean_ctor_get(x_47, 1); -lean_inc(x_63); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_45, 0); +lean_inc(x_47); +x_48 = lean_array_get_size(x_47); +lean_dec(x_47); +x_61 = lean_ctor_get(x_45, 1); +lean_inc(x_61); lean_inc(x_1); -x_64 = l_Lean_Parser_tokenFn(x_1, x_47); -x_65 = lean_ctor_get(x_64, 3); -lean_inc(x_65); -if (lean_obj_tag(x_65) == 0) +x_62 = l_Lean_Parser_tokenFn(x_1, x_45); +x_63 = lean_ctor_get(x_62, 3); +lean_inc(x_63); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_66; lean_object* x_67; -x_66 = lean_ctor_get(x_64, 0); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_64); +lean_dec(x_64); +if (lean_obj_tag(x_65) == 2) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_ctor_get(x_65, 1); lean_inc(x_66); -x_67 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_66); +lean_dec(x_65); +x_67 = l_Lean_Parser_Term_uminus___elambda__1___closed__5; +x_68 = lean_string_dec_eq(x_66, x_67); lean_dec(x_66); -if (lean_obj_tag(x_67) == 2) +if (x_68 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Parser_Term_uminus___elambda__1___closed__5; -x_70 = lean_string_dec_eq(x_68, x_69); -lean_dec(x_68); -if (x_70 == 0) +lean_object* x_69; lean_object* x_70; +x_69 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_69, x_61); +x_49 = x_70; +goto block_60; +} +else +{ +lean_dec(x_61); +x_49 = x_62; +goto block_60; +} +} +else { lean_object* x_71; lean_object* x_72; +lean_dec(x_65); x_71 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_71, x_63); -x_51 = x_72; -goto block_62; -} -else -{ -lean_dec(x_63); -x_51 = x_64; -goto block_62; +x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_71, x_61); +x_49 = x_72; +goto block_60; } } else { lean_object* x_73; lean_object* x_74; -lean_dec(x_67); +lean_dec(x_63); x_73 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_73, x_63); -x_51 = x_74; -goto block_62; +x_74 = l_Lean_Parser_ParserState_mkErrorsAt(x_62, x_73, x_61); +x_49 = x_74; +goto block_60; } +block_60: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = l_Lean_Parser_termParser___closed__2; +x_52 = lean_unsigned_to_nat(100u); +x_53 = l_Lean_Parser_categoryParser___elambda__1(x_51, x_52, x_1, x_49); +x_54 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; +x_55 = l_Lean_Parser_ParserState_mkNode(x_53, x_54, x_48); +x_56 = l_Lean_Parser_mergeOrElseErrors(x_55, x_40, x_37); +lean_dec(x_37); +return x_56; } else { -lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -x_75 = l_Lean_Parser_Term_uminus___elambda__1___closed__8; -x_76 = l_Lean_Parser_ParserState_mkErrorsAt(x_64, x_75, x_63); -x_51 = x_76; -goto block_62; -} -block_62: -{ -lean_object* x_52; -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Parser_termParser___closed__2; -x_54 = lean_unsigned_to_nat(100u); -x_55 = l_Lean_Parser_categoryParser___elambda__1(x_53, x_54, x_1, x_51); -x_56 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; -x_57 = l_Lean_Parser_ParserState_mkNode(x_55, x_56, x_50); -x_58 = l_Lean_Parser_mergeOrElseErrors(x_57, x_41, x_38); -lean_dec(x_38); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -lean_dec(x_52); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_50); lean_dec(x_1); -x_59 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; -x_60 = l_Lean_Parser_ParserState_mkNode(x_51, x_59, x_50); -x_61 = l_Lean_Parser_mergeOrElseErrors(x_60, x_41, x_38); -lean_dec(x_38); -return x_61; +x_57 = l_Lean_Parser_Term_uminus___elambda__1___closed__2; +x_58 = l_Lean_Parser_ParserState_mkNode(x_49, x_57, x_48); +x_59 = l_Lean_Parser_mergeOrElseErrors(x_58, x_40, x_37); +lean_dec(x_37); +return x_59; } } } else { -lean_object* x_77; -lean_dec(x_48); +lean_object* x_75; +lean_dec(x_46); lean_dec(x_1); -x_77 = l_Lean_Parser_mergeOrElseErrors(x_47, x_41, x_38); -lean_dec(x_38); -return x_77; +x_75 = l_Lean_Parser_mergeOrElseErrors(x_45, x_40, x_37); +lean_dec(x_37); +return x_75; } } } @@ -43769,734 +44536,749 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_49; lean_object* x_86; lean_object* x_87; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); -x_6 = lean_ctor_get(x_2, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -x_8 = lean_array_get_size(x_6); -lean_dec(x_6); -lean_inc(x_1); -x_86 = l_Lean_Parser_tokenFn(x_1, x_2); -x_87 = lean_ctor_get(x_86, 3); -lean_inc(x_87); -if (lean_obj_tag(x_87) == 0) +x_6 = lean_unsigned_to_nat(1024u); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_88; lean_object* x_89; -x_88 = lean_ctor_get(x_86, 0); -lean_inc(x_88); -x_89 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_88); -lean_dec(x_88); -if (lean_obj_tag(x_89) == 2) -{ -lean_object* x_90; lean_object* x_91; uint8_t x_92; -x_90 = lean_ctor_get(x_89, 1); -lean_inc(x_90); -lean_dec(x_89); -x_91 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_92 = lean_string_dec_eq(x_90, x_91); -lean_dec(x_90); -if (x_92 == 0) -{ -lean_object* x_93; lean_object* x_94; -x_93 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_7); -x_94 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_93, x_7); -x_49 = x_94; -goto block_85; -} -else -{ -x_49 = x_86; -goto block_85; -} -} -else -{ -lean_object* x_95; lean_object* x_96; -lean_dec(x_89); -x_95 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_7); -x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_95, x_7); -x_49 = x_96; -goto block_85; -} -} -else -{ -lean_object* x_97; lean_object* x_98; -lean_dec(x_87); -x_97 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_7); -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_86, x_97, x_7); -x_49 = x_98; -goto block_85; -} -block_41: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_52; lean_object* x_89; lean_object* x_90; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_7, 1); lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_11 = l_Lean_Parser_termParser___closed__2; -x_12 = lean_unsigned_to_nat(0u); +x_11 = lean_array_get_size(x_9); +lean_dec(x_9); lean_inc(x_1); -x_13 = l_Lean_Parser_categoryParser___elambda__1(x_11, x_12, x_1, x_9); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) +x_89 = l_Lean_Parser_tokenFn(x_1, x_7); +x_90 = lean_ctor_get(x_89, 3); +lean_inc(x_90); +if (lean_obj_tag(x_90) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +lean_object* x_91; lean_object* x_92; +x_91 = lean_ctor_get(x_89, 0); +lean_inc(x_91); +x_92 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_91); +lean_dec(x_91); +if (lean_obj_tag(x_92) == 2) +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; +x_93 = lean_ctor_get(x_92, 1); +lean_inc(x_93); +lean_dec(x_92); +x_94 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_95 = lean_string_dec_eq(x_93, x_94); +lean_dec(x_93); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; +x_96 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_10); +x_97 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_96, x_10); +x_52 = x_97; +goto block_88; +} +else +{ +x_52 = x_89; +goto block_88; +} +} +else +{ +lean_object* x_98; lean_object* x_99; +lean_dec(x_92); +x_98 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_10); +x_99 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_98, x_10); +x_52 = x_99; +goto block_88; +} +} +else +{ +lean_object* x_100; lean_object* x_101; +lean_dec(x_90); +x_100 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_10); +x_101 = l_Lean_Parser_ParserState_mkErrorsAt(x_89, x_100, x_10); +x_52 = x_101; +goto block_88; +} +block_44: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = l_Lean_Parser_termParser___closed__2; +x_15 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); x_17 = lean_ctor_get(x_16, 3); lean_inc(x_17); if (lean_obj_tag(x_17) == 0) { -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_16, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_16, 1); lean_inc(x_18); -x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); -lean_dec(x_18); -if (lean_obj_tag(x_19) == 2) -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 1); +x_19 = l_Lean_Parser_tokenFn(x_1, x_16); +x_20 = lean_ctor_get(x_19, 3); lean_inc(x_20); -lean_dec(x_19); -x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_22 = lean_string_dec_eq(x_20, x_21); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); +lean_dec(x_21); +if (lean_obj_tag(x_22) == 2) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_25 = lean_string_dec_eq(x_23, x_24); +lean_dec(x_23); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_26 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); +x_28 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_11); +return x_29; +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_18); +x_30 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_19, x_30, x_11); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_22); +x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_32, x_18); +x_34 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_11); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_dec(x_20); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_23 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); -x_25 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_8); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -x_27 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_8); -return x_28; +x_36 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_36, x_18); +x_38 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_37, x_38, x_11); +return x_39; } } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_19); -x_29 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); -x_31 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_8); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_40; lean_object* x_41; lean_dec(x_17); -x_33 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); -x_35 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_8); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_dec(x_14); lean_dec(x_1); -x_37 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_8); -return x_38; +x_40 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkNode(x_16, x_40, x_11); +return x_41; } } else { -lean_object* x_39; lean_object* x_40; +lean_object* x_42; lean_object* x_43; +lean_dec(x_13); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkNode(x_12, x_42, x_11); +return x_43; +} +} +block_51: +{ +if (lean_obj_tag(x_48) == 0) +{ +lean_dec(x_47); +lean_dec(x_46); lean_dec(x_10); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_9, x_39, x_8); -return x_40; -} -} -block_48: -{ -if (lean_obj_tag(x_45) == 0) -{ -lean_dec(x_44); -lean_dec(x_43); -lean_dec(x_7); -x_9 = x_42; -goto block_41; +x_12 = x_45; +goto block_44; } else { -lean_object* x_46; lean_object* x_47; -lean_dec(x_42); -x_46 = l_Array_shrink___main___rarg(x_43, x_8); -x_47 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_7); -lean_ctor_set(x_47, 2, x_44); -lean_ctor_set(x_47, 3, x_45); -x_9 = x_47; -goto block_41; +lean_object* x_49; lean_object* x_50; +lean_dec(x_45); +x_49 = l_Array_shrink___main___rarg(x_46, x_11); +x_50 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_10); +lean_ctor_set(x_50, 2, x_47); +lean_ctor_set(x_50, 3, x_48); +x_12 = x_50; +goto block_44; } } -block_85: +block_88: { -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; -lean_inc(x_1); -x_51 = l_Lean_Parser_ident___elambda__1(x_1, x_49); -x_52 = lean_ctor_get(x_51, 3); -lean_inc(x_52); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_51, 1); +lean_object* x_53; +x_53 = lean_ctor_get(x_52, 3); lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_inc(x_1); -x_54 = l_Lean_Parser_tokenFn(x_1, x_51); +x_54 = l_Lean_Parser_ident___elambda__1(x_1, x_52); x_55 = lean_ctor_get(x_54, 3); lean_inc(x_55); if (lean_obj_tag(x_55) == 0) { -lean_object* x_56; lean_object* x_57; -x_56 = lean_ctor_get(x_54, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_54, 1); lean_inc(x_56); -x_57 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_56); -lean_dec(x_56); -if (lean_obj_tag(x_57) == 2) -{ -lean_object* x_58; lean_object* x_59; uint8_t x_60; -x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_1); +x_57 = l_Lean_Parser_tokenFn(x_1, x_54); +x_58 = lean_ctor_get(x_57, 3); lean_inc(x_58); -lean_dec(x_57); -x_59 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_60 = lean_string_dec_eq(x_58, x_59); -lean_dec(x_58); -if (x_60 == 0) +if (lean_obj_tag(x_58) == 0) { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_61 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_62 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_61, x_53); -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_62, 2); -lean_inc(x_64); -x_65 = lean_ctor_get(x_62, 3); -lean_inc(x_65); -x_42 = x_62; -x_43 = x_63; -x_44 = x_64; -x_45 = x_65; -goto block_48; -} -else +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_59); +lean_dec(x_59); +if (lean_obj_tag(x_60) == 2) { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -lean_dec(x_53); -x_66 = lean_ctor_get(x_54, 0); +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 1); +lean_inc(x_61); +lean_dec(x_60); +x_62 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_63 = lean_string_dec_eq(x_61, x_62); +lean_dec(x_61); +if (x_63 == 0) +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_64 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_65 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_64, x_56); +x_66 = lean_ctor_get(x_65, 0); lean_inc(x_66); -x_67 = lean_ctor_get(x_54, 2); +x_67 = lean_ctor_get(x_65, 2); lean_inc(x_67); -x_68 = lean_ctor_get(x_54, 3); +x_68 = lean_ctor_get(x_65, 3); lean_inc(x_68); -x_42 = x_54; -x_43 = x_66; -x_44 = x_67; -x_45 = x_68; -goto block_48; -} +x_45 = x_65; +x_46 = x_66; +x_47 = x_67; +x_48 = x_68; +goto block_51; } else { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_57); -x_69 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_69, x_53); -x_71 = lean_ctor_get(x_70, 0); +lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_56); +x_69 = lean_ctor_get(x_57, 0); +lean_inc(x_69); +x_70 = lean_ctor_get(x_57, 2); +lean_inc(x_70); +x_71 = lean_ctor_get(x_57, 3); lean_inc(x_71); -x_72 = lean_ctor_get(x_70, 2); -lean_inc(x_72); -x_73 = lean_ctor_get(x_70, 3); -lean_inc(x_73); -x_42 = x_70; -x_43 = x_71; -x_44 = x_72; -x_45 = x_73; -goto block_48; +x_45 = x_57; +x_46 = x_69; +x_47 = x_70; +x_48 = x_71; +goto block_51; } } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_dec(x_55); -x_74 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_54, x_74, x_53); -x_76 = lean_ctor_get(x_75, 0); +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_dec(x_60); +x_72 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_73 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_72, x_56); +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_73, 2); +lean_inc(x_75); +x_76 = lean_ctor_get(x_73, 3); lean_inc(x_76); -x_77 = lean_ctor_get(x_75, 2); -lean_inc(x_77); -x_78 = lean_ctor_get(x_75, 3); -lean_inc(x_78); -x_42 = x_75; -x_43 = x_76; -x_44 = x_77; -x_45 = x_78; -goto block_48; +x_45 = x_73; +x_46 = x_74; +x_47 = x_75; +x_48 = x_76; +goto block_51; } } else { -lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_52); -x_79 = lean_ctor_get(x_51, 0); +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +lean_dec(x_58); +x_77 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_57, x_77, x_56); +x_79 = lean_ctor_get(x_78, 0); lean_inc(x_79); -x_80 = lean_ctor_get(x_51, 2); +x_80 = lean_ctor_get(x_78, 2); lean_inc(x_80); -x_81 = lean_ctor_get(x_51, 3); +x_81 = lean_ctor_get(x_78, 3); lean_inc(x_81); -x_42 = x_51; -x_43 = x_79; -x_44 = x_80; -x_45 = x_81; -goto block_48; +x_45 = x_78; +x_46 = x_79; +x_47 = x_80; +x_48 = x_81; +goto block_51; } } else { lean_object* x_82; lean_object* x_83; lean_object* x_84; -lean_dec(x_50); -x_82 = lean_ctor_get(x_49, 0); +lean_dec(x_55); +x_82 = lean_ctor_get(x_54, 0); lean_inc(x_82); -x_83 = lean_ctor_get(x_49, 2); +x_83 = lean_ctor_get(x_54, 2); lean_inc(x_83); -x_84 = lean_ctor_get(x_49, 3); +x_84 = lean_ctor_get(x_54, 3); lean_inc(x_84); -x_42 = x_49; -x_43 = x_82; -x_44 = x_83; -x_45 = x_84; -goto block_48; +x_45 = x_54; +x_46 = x_82; +x_47 = x_83; +x_48 = x_84; +goto block_51; +} +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_53); +x_85 = lean_ctor_get(x_52, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_52, 2); +lean_inc(x_86); +x_87 = lean_ctor_get(x_52, 3); +lean_inc(x_87); +x_45 = x_52; +x_46 = x_85; +x_47 = x_86; +x_48 = x_87; +goto block_51; } } } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_99 = lean_ctor_get(x_2, 0); -lean_inc(x_99); -x_100 = lean_ctor_get(x_2, 1); -lean_inc(x_100); -x_101 = lean_array_get_size(x_99); -lean_dec(x_99); -lean_inc(x_2); -lean_inc(x_1); -x_102 = lean_apply_2(x_4, x_1, x_2); -if (lean_is_exclusive(x_2)) { - lean_ctor_release(x_2, 0); - lean_ctor_release(x_2, 1); - lean_ctor_release(x_2, 2); - lean_ctor_release(x_2, 3); - x_103 = x_2; -} else { - lean_dec_ref(x_2); - x_103 = lean_box(0); +lean_dec(x_8); +lean_dec(x_1); +return x_7; } -x_104 = lean_ctor_get(x_102, 3); +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; +x_102 = lean_ctor_get(x_2, 0); +lean_inc(x_102); +x_103 = lean_array_get_size(x_102); +lean_dec(x_102); +x_104 = lean_ctor_get(x_2, 1); lean_inc(x_104); -if (lean_obj_tag(x_104) == 0) -{ -lean_dec(x_103); -lean_dec(x_101); -lean_dec(x_100); -lean_dec(x_1); -return x_102; -} -else -{ -lean_object* x_105; lean_object* x_106; uint8_t x_107; -x_105 = lean_ctor_get(x_104, 0); -lean_inc(x_105); -lean_dec(x_104); -x_106 = lean_ctor_get(x_102, 1); +lean_inc(x_1); +x_105 = lean_apply_2(x_4, x_1, x_2); +x_106 = lean_ctor_get(x_105, 3); lean_inc(x_106); -x_107 = lean_nat_dec_eq(x_106, x_100); -lean_dec(x_106); -if (x_107 == 0) +if (lean_obj_tag(x_106) == 0) { -lean_dec(x_105); +lean_dec(x_104); lean_dec(x_103); -lean_dec(x_101); -lean_dec(x_100); lean_dec(x_1); -return x_102; +return x_105; } else { -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_157; lean_object* x_194; lean_object* x_195; -lean_inc(x_100); -x_108 = l_Lean_Parser_ParserState_restore(x_102, x_101, x_100); -lean_dec(x_101); -x_109 = lean_ctor_get(x_108, 0); -lean_inc(x_109); -x_110 = lean_array_get_size(x_109); -lean_dec(x_109); +lean_object* x_107; lean_object* x_108; uint8_t x_109; +x_107 = lean_ctor_get(x_106, 0); +lean_inc(x_107); +lean_dec(x_106); +x_108 = lean_ctor_get(x_105, 1); +lean_inc(x_108); +x_109 = lean_nat_dec_eq(x_108, x_104); +lean_dec(x_108); +if (x_109 == 0) +{ +lean_dec(x_107); +lean_dec(x_104); +lean_dec(x_103); +lean_dec(x_1); +return x_105; +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_inc(x_104); +x_110 = l_Lean_Parser_ParserState_restore(x_105, x_103, x_104); +lean_dec(x_103); +x_111 = lean_unsigned_to_nat(1024u); +x_112 = l_Lean_Parser_checkPrecFn(x_111, x_1, x_110); +x_113 = lean_ctor_get(x_112, 3); +lean_inc(x_113); +if (lean_obj_tag(x_113) == 0) +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_163; lean_object* x_200; lean_object* x_201; +x_114 = lean_ctor_get(x_112, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_112, 1); +lean_inc(x_115); +x_116 = lean_array_get_size(x_114); +lean_dec(x_114); lean_inc(x_1); -x_194 = l_Lean_Parser_tokenFn(x_1, x_108); -x_195 = lean_ctor_get(x_194, 3); -lean_inc(x_195); -if (lean_obj_tag(x_195) == 0) +x_200 = l_Lean_Parser_tokenFn(x_1, x_112); +x_201 = lean_ctor_get(x_200, 3); +lean_inc(x_201); +if (lean_obj_tag(x_201) == 0) { -lean_object* x_196; lean_object* x_197; -x_196 = lean_ctor_get(x_194, 0); -lean_inc(x_196); -x_197 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_196); -lean_dec(x_196); -if (lean_obj_tag(x_197) == 2) +lean_object* x_202; lean_object* x_203; +x_202 = lean_ctor_get(x_200, 0); +lean_inc(x_202); +x_203 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_202); +lean_dec(x_202); +if (lean_obj_tag(x_203) == 2) { -lean_object* x_198; lean_object* x_199; uint8_t x_200; -x_198 = lean_ctor_get(x_197, 1); -lean_inc(x_198); -lean_dec(x_197); -x_199 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; -x_200 = lean_string_dec_eq(x_198, x_199); -lean_dec(x_198); -if (x_200 == 0) +lean_object* x_204; lean_object* x_205; uint8_t x_206; +x_204 = lean_ctor_get(x_203, 1); +lean_inc(x_204); +lean_dec(x_203); +x_205 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__3; +x_206 = lean_string_dec_eq(x_204, x_205); +lean_dec(x_204); +if (x_206 == 0) { -lean_object* x_201; lean_object* x_202; -x_201 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_100); -x_202 = l_Lean_Parser_ParserState_mkErrorsAt(x_194, x_201, x_100); -x_157 = x_202; -goto block_193; +lean_object* x_207; lean_object* x_208; +x_207 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_115); +x_208 = l_Lean_Parser_ParserState_mkErrorsAt(x_200, x_207, x_115); +x_163 = x_208; +goto block_199; } else { -x_157 = x_194; -goto block_193; +x_163 = x_200; +goto block_199; } } else { -lean_object* x_203; lean_object* x_204; -lean_dec(x_197); -x_203 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_100); -x_204 = l_Lean_Parser_ParserState_mkErrorsAt(x_194, x_203, x_100); -x_157 = x_204; -goto block_193; +lean_object* x_209; lean_object* x_210; +lean_dec(x_203); +x_209 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_115); +x_210 = l_Lean_Parser_ParserState_mkErrorsAt(x_200, x_209, x_115); +x_163 = x_210; +goto block_199; } } else { -lean_object* x_205; lean_object* x_206; -lean_dec(x_195); -x_205 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; -lean_inc(x_100); -x_206 = l_Lean_Parser_ParserState_mkErrorsAt(x_194, x_205, x_100); -x_157 = x_206; -goto block_193; +lean_object* x_211; lean_object* x_212; +lean_dec(x_201); +x_211 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__10; +lean_inc(x_115); +x_212 = l_Lean_Parser_ParserState_mkErrorsAt(x_200, x_211, x_115); +x_163 = x_212; +goto block_199; } -block_149: +block_155: { -lean_object* x_112; -x_112 = lean_ctor_get(x_111, 3); -lean_inc(x_112); -if (lean_obj_tag(x_112) == 0) +lean_object* x_118; +x_118 = lean_ctor_get(x_117, 3); +lean_inc(x_118); +if (lean_obj_tag(x_118) == 0) { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = l_Lean_Parser_termParser___closed__2; -x_114 = lean_unsigned_to_nat(0u); +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; +x_119 = l_Lean_Parser_termParser___closed__2; +x_120 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_115 = l_Lean_Parser_categoryParser___elambda__1(x_113, x_114, x_1, x_111); -x_116 = lean_ctor_get(x_115, 3); -lean_inc(x_116); -if (lean_obj_tag(x_116) == 0) -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_117 = lean_ctor_get(x_115, 1); -lean_inc(x_117); -x_118 = l_Lean_Parser_tokenFn(x_1, x_115); -x_119 = lean_ctor_get(x_118, 3); -lean_inc(x_119); -if (lean_obj_tag(x_119) == 0) -{ -lean_object* x_120; lean_object* x_121; -x_120 = lean_ctor_get(x_118, 0); -lean_inc(x_120); -x_121 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_120); -lean_dec(x_120); -if (lean_obj_tag(x_121) == 2) -{ -lean_object* x_122; lean_object* x_123; uint8_t x_124; -x_122 = lean_ctor_get(x_121, 1); +x_121 = l_Lean_Parser_categoryParser___elambda__1(x_119, x_120, x_1, x_117); +x_122 = lean_ctor_get(x_121, 3); lean_inc(x_122); -lean_dec(x_121); -x_123 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_124 = lean_string_dec_eq(x_122, x_123); -lean_dec(x_122); -if (x_124 == 0) +if (lean_obj_tag(x_122) == 0) { -lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_125 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_126 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_125, x_117); -x_127 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_128 = l_Lean_Parser_ParserState_mkNode(x_126, x_127, x_110); -x_129 = l_Lean_Parser_mergeOrElseErrors(x_128, x_105, x_100); -lean_dec(x_100); -return x_129; +lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_123 = lean_ctor_get(x_121, 1); +lean_inc(x_123); +x_124 = l_Lean_Parser_tokenFn(x_1, x_121); +x_125 = lean_ctor_get(x_124, 3); +lean_inc(x_125); +if (lean_obj_tag(x_125) == 0) +{ +lean_object* x_126; lean_object* x_127; +x_126 = lean_ctor_get(x_124, 0); +lean_inc(x_126); +x_127 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_126); +lean_dec(x_126); +if (lean_obj_tag(x_127) == 2) +{ +lean_object* x_128; lean_object* x_129; uint8_t x_130; +x_128 = lean_ctor_get(x_127, 1); +lean_inc(x_128); +lean_dec(x_127); +x_129 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_130 = lean_string_dec_eq(x_128, x_129); +lean_dec(x_128); +if (x_130 == 0) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; +x_131 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_132 = l_Lean_Parser_ParserState_mkErrorsAt(x_124, x_131, x_123); +x_133 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_134 = l_Lean_Parser_ParserState_mkNode(x_132, x_133, x_116); +x_135 = l_Lean_Parser_mergeOrElseErrors(x_134, x_107, x_104); +lean_dec(x_104); +return x_135; } else { -lean_object* x_130; lean_object* x_131; lean_object* x_132; -lean_dec(x_117); -x_130 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_131 = l_Lean_Parser_ParserState_mkNode(x_118, x_130, x_110); -x_132 = l_Lean_Parser_mergeOrElseErrors(x_131, x_105, x_100); -lean_dec(x_100); -return x_132; +lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_123); +x_136 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_137 = l_Lean_Parser_ParserState_mkNode(x_124, x_136, x_116); +x_138 = l_Lean_Parser_mergeOrElseErrors(x_137, x_107, x_104); +lean_dec(x_104); +return x_138; } } else { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; -lean_dec(x_121); -x_133 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_134 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_133, x_117); -x_135 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_136 = l_Lean_Parser_ParserState_mkNode(x_134, x_135, x_110); -x_137 = l_Lean_Parser_mergeOrElseErrors(x_136, x_105, x_100); -lean_dec(x_100); -return x_137; +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +lean_dec(x_127); +x_139 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_140 = l_Lean_Parser_ParserState_mkErrorsAt(x_124, x_139, x_123); +x_141 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_142 = l_Lean_Parser_ParserState_mkNode(x_140, x_141, x_116); +x_143 = l_Lean_Parser_mergeOrElseErrors(x_142, x_107, x_104); +lean_dec(x_104); +return x_143; } } else { -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_119); -x_138 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_139 = l_Lean_Parser_ParserState_mkErrorsAt(x_118, x_138, x_117); -x_140 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_141 = l_Lean_Parser_ParserState_mkNode(x_139, x_140, x_110); -x_142 = l_Lean_Parser_mergeOrElseErrors(x_141, x_105, x_100); -lean_dec(x_100); -return x_142; -} -} -else -{ -lean_object* x_143; lean_object* x_144; lean_object* x_145; -lean_dec(x_116); -lean_dec(x_1); -x_143 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_144 = l_Lean_Parser_ParserState_mkNode(x_115, x_143, x_110); -x_145 = l_Lean_Parser_mergeOrElseErrors(x_144, x_105, x_100); -lean_dec(x_100); -return x_145; -} -} -else -{ -lean_object* x_146; lean_object* x_147; lean_object* x_148; -lean_dec(x_112); -lean_dec(x_1); +lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_125); +x_144 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_145 = l_Lean_Parser_ParserState_mkErrorsAt(x_124, x_144, x_123); x_146 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; -x_147 = l_Lean_Parser_ParserState_mkNode(x_111, x_146, x_110); -x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_105, x_100); -lean_dec(x_100); +x_147 = l_Lean_Parser_ParserState_mkNode(x_145, x_146, x_116); +x_148 = l_Lean_Parser_mergeOrElseErrors(x_147, x_107, x_104); +lean_dec(x_104); return x_148; } } -block_156: -{ -if (lean_obj_tag(x_153) == 0) -{ -lean_dec(x_152); -lean_dec(x_151); -lean_dec(x_103); -x_111 = x_150; -goto block_149; -} else { -lean_object* x_154; lean_object* x_155; -lean_dec(x_150); -x_154 = l_Array_shrink___main___rarg(x_151, x_110); -lean_inc(x_100); -if (lean_is_scalar(x_103)) { - x_155 = lean_alloc_ctor(0, 4, 0); -} else { - x_155 = x_103; -} -lean_ctor_set(x_155, 0, x_154); -lean_ctor_set(x_155, 1, x_100); -lean_ctor_set(x_155, 2, x_152); -lean_ctor_set(x_155, 3, x_153); -x_111 = x_155; -goto block_149; -} -} -block_193: -{ -lean_object* x_158; -x_158 = lean_ctor_get(x_157, 3); -lean_inc(x_158); -if (lean_obj_tag(x_158) == 0) -{ -lean_object* x_159; lean_object* x_160; -lean_inc(x_1); -x_159 = l_Lean_Parser_ident___elambda__1(x_1, x_157); -x_160 = lean_ctor_get(x_159, 3); -lean_inc(x_160); -if (lean_obj_tag(x_160) == 0) -{ -lean_object* x_161; lean_object* x_162; lean_object* x_163; -x_161 = lean_ctor_get(x_159, 1); -lean_inc(x_161); -lean_inc(x_1); -x_162 = l_Lean_Parser_tokenFn(x_1, x_159); -x_163 = lean_ctor_get(x_162, 3); -lean_inc(x_163); -if (lean_obj_tag(x_163) == 0) -{ -lean_object* x_164; lean_object* x_165; -x_164 = lean_ctor_get(x_162, 0); -lean_inc(x_164); -x_165 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_164); -lean_dec(x_164); -if (lean_obj_tag(x_165) == 2) -{ -lean_object* x_166; lean_object* x_167; uint8_t x_168; -x_166 = lean_ctor_get(x_165, 1); -lean_inc(x_166); -lean_dec(x_165); -x_167 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; -x_168 = lean_string_dec_eq(x_166, x_167); -lean_dec(x_166); -if (x_168 == 0) -{ -lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; -x_169 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_170 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_169, x_161); -x_171 = lean_ctor_get(x_170, 0); -lean_inc(x_171); -x_172 = lean_ctor_get(x_170, 2); -lean_inc(x_172); -x_173 = lean_ctor_get(x_170, 3); -lean_inc(x_173); -x_150 = x_170; -x_151 = x_171; -x_152 = x_172; -x_153 = x_173; -goto block_156; -} -else -{ -lean_object* x_174; lean_object* x_175; lean_object* x_176; -lean_dec(x_161); -x_174 = lean_ctor_get(x_162, 0); -lean_inc(x_174); -x_175 = lean_ctor_get(x_162, 2); -lean_inc(x_175); -x_176 = lean_ctor_get(x_162, 3); -lean_inc(x_176); -x_150 = x_162; -x_151 = x_174; -x_152 = x_175; -x_153 = x_176; -goto block_156; +lean_object* x_149; lean_object* x_150; lean_object* x_151; +lean_dec(x_122); +lean_dec(x_1); +x_149 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_150 = l_Lean_Parser_ParserState_mkNode(x_121, x_149, x_116); +x_151 = l_Lean_Parser_mergeOrElseErrors(x_150, x_107, x_104); +lean_dec(x_104); +return x_151; } } else { -lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; -lean_dec(x_165); -x_177 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_178 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_177, x_161); -x_179 = lean_ctor_get(x_178, 0); -lean_inc(x_179); -x_180 = lean_ctor_get(x_178, 2); -lean_inc(x_180); -x_181 = lean_ctor_get(x_178, 3); -lean_inc(x_181); -x_150 = x_178; -x_151 = x_179; -x_152 = x_180; -x_153 = x_181; -goto block_156; +lean_object* x_152; lean_object* x_153; lean_object* x_154; +lean_dec(x_118); +lean_dec(x_1); +x_152 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__2; +x_153 = l_Lean_Parser_ParserState_mkNode(x_117, x_152, x_116); +x_154 = l_Lean_Parser_mergeOrElseErrors(x_153, x_107, x_104); +lean_dec(x_104); +return x_154; } } -else +block_162: { -lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; -lean_dec(x_163); -x_182 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; -x_183 = l_Lean_Parser_ParserState_mkErrorsAt(x_162, x_182, x_161); -x_184 = lean_ctor_get(x_183, 0); -lean_inc(x_184); -x_185 = lean_ctor_get(x_183, 2); -lean_inc(x_185); -x_186 = lean_ctor_get(x_183, 3); -lean_inc(x_186); -x_150 = x_183; -x_151 = x_184; -x_152 = x_185; -x_153 = x_186; -goto block_156; -} -} -else +if (lean_obj_tag(x_159) == 0) { -lean_object* x_187; lean_object* x_188; lean_object* x_189; -lean_dec(x_160); -x_187 = lean_ctor_get(x_159, 0); -lean_inc(x_187); -x_188 = lean_ctor_get(x_159, 2); -lean_inc(x_188); -x_189 = lean_ctor_get(x_159, 3); -lean_inc(x_189); -x_150 = x_159; -x_151 = x_187; -x_152 = x_188; -x_153 = x_189; -goto block_156; -} -} -else -{ -lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_dec(x_158); -x_190 = lean_ctor_get(x_157, 0); -lean_inc(x_190); -x_191 = lean_ctor_get(x_157, 2); -lean_inc(x_191); -x_192 = lean_ctor_get(x_157, 3); -lean_inc(x_192); -x_150 = x_157; -x_151 = x_190; -x_152 = x_191; -x_153 = x_192; -goto block_156; +lean_dec(x_157); +lean_dec(x_115); +x_117 = x_156; +goto block_155; } +else +{ +lean_object* x_160; lean_object* x_161; +lean_dec(x_156); +x_160 = l_Array_shrink___main___rarg(x_157, x_116); +x_161 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_161, 0, x_160); +lean_ctor_set(x_161, 1, x_115); +lean_ctor_set(x_161, 2, x_158); +lean_ctor_set(x_161, 3, x_159); +x_117 = x_161; +goto block_155; +} +} +block_199: +{ +lean_object* x_164; +x_164 = lean_ctor_get(x_163, 3); +lean_inc(x_164); +if (lean_obj_tag(x_164) == 0) +{ +lean_object* x_165; lean_object* x_166; +lean_inc(x_1); +x_165 = l_Lean_Parser_ident___elambda__1(x_1, x_163); +x_166 = lean_ctor_get(x_165, 3); +lean_inc(x_166); +if (lean_obj_tag(x_166) == 0) +{ +lean_object* x_167; lean_object* x_168; lean_object* x_169; +x_167 = lean_ctor_get(x_165, 1); +lean_inc(x_167); +lean_inc(x_1); +x_168 = l_Lean_Parser_tokenFn(x_1, x_165); +x_169 = lean_ctor_get(x_168, 3); +lean_inc(x_169); +if (lean_obj_tag(x_169) == 0) +{ +lean_object* x_170; lean_object* x_171; +x_170 = lean_ctor_get(x_168, 0); +lean_inc(x_170); +x_171 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_170); +lean_dec(x_170); +if (lean_obj_tag(x_171) == 2) +{ +lean_object* x_172; lean_object* x_173; uint8_t x_174; +x_172 = lean_ctor_get(x_171, 1); +lean_inc(x_172); +lean_dec(x_171); +x_173 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__5; +x_174 = lean_string_dec_eq(x_172, x_173); +lean_dec(x_172); +if (x_174 == 0) +{ +lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; +x_175 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_176 = l_Lean_Parser_ParserState_mkErrorsAt(x_168, x_175, x_167); +x_177 = lean_ctor_get(x_176, 0); +lean_inc(x_177); +x_178 = lean_ctor_get(x_176, 2); +lean_inc(x_178); +x_179 = lean_ctor_get(x_176, 3); +lean_inc(x_179); +x_156 = x_176; +x_157 = x_177; +x_158 = x_178; +x_159 = x_179; +goto block_162; +} +else +{ +lean_object* x_180; lean_object* x_181; lean_object* x_182; +lean_dec(x_167); +x_180 = lean_ctor_get(x_168, 0); +lean_inc(x_180); +x_181 = lean_ctor_get(x_168, 2); +lean_inc(x_181); +x_182 = lean_ctor_get(x_168, 3); +lean_inc(x_182); +x_156 = x_168; +x_157 = x_180; +x_158 = x_181; +x_159 = x_182; +goto block_162; +} +} +else +{ +lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; +lean_dec(x_171); +x_183 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_184 = l_Lean_Parser_ParserState_mkErrorsAt(x_168, x_183, x_167); +x_185 = lean_ctor_get(x_184, 0); +lean_inc(x_185); +x_186 = lean_ctor_get(x_184, 2); +lean_inc(x_186); +x_187 = lean_ctor_get(x_184, 3); +lean_inc(x_187); +x_156 = x_184; +x_157 = x_185; +x_158 = x_186; +x_159 = x_187; +goto block_162; +} +} +else +{ +lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; +lean_dec(x_169); +x_188 = l_Lean_Parser_Term_haveAssign___elambda__1___closed__8; +x_189 = l_Lean_Parser_ParserState_mkErrorsAt(x_168, x_188, x_167); +x_190 = lean_ctor_get(x_189, 0); +lean_inc(x_190); +x_191 = lean_ctor_get(x_189, 2); +lean_inc(x_191); +x_192 = lean_ctor_get(x_189, 3); +lean_inc(x_192); +x_156 = x_189; +x_157 = x_190; +x_158 = x_191; +x_159 = x_192; +goto block_162; +} +} +else +{ +lean_object* x_193; lean_object* x_194; lean_object* x_195; +lean_dec(x_166); +x_193 = lean_ctor_get(x_165, 0); +lean_inc(x_193); +x_194 = lean_ctor_get(x_165, 2); +lean_inc(x_194); +x_195 = lean_ctor_get(x_165, 3); +lean_inc(x_195); +x_156 = x_165; +x_157 = x_193; +x_158 = x_194; +x_159 = x_195; +goto block_162; +} +} +else +{ +lean_object* x_196; lean_object* x_197; lean_object* x_198; +lean_dec(x_164); +x_196 = lean_ctor_get(x_163, 0); +lean_inc(x_196); +x_197 = lean_ctor_get(x_163, 2); +lean_inc(x_197); +x_198 = lean_ctor_get(x_163, 3); +lean_inc(x_198); +x_156 = x_163; +x_157 = x_196; +x_158 = x_197; +x_159 = x_198; +goto block_162; +} +} +} +else +{ +lean_object* x_213; +lean_dec(x_113); +lean_dec(x_1); +x_213 = l_Lean_Parser_mergeOrElseErrors(x_112, x_107, x_104); +lean_dec(x_104); +return x_213; } } } @@ -44548,16 +45330,26 @@ return x_3; lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_namedArgument___closed__4; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_namedArgument___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Term_namedArgument___closed__4; +x_3 = l_Lean_Parser_Term_namedArgument___closed__5; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__6() { +lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__7() { _start: { lean_object* x_1; @@ -44565,12 +45357,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_namedArgument___elambda__1), return x_1; } } -lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__7() { +lean_object* _init_l_Lean_Parser_Term_namedArgument___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_namedArgument___closed__5; -x_2 = l_Lean_Parser_Term_namedArgument___closed__6; +x_1 = l_Lean_Parser_Term_namedArgument___closed__6; +x_2 = l_Lean_Parser_Term_namedArgument___closed__7; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -44581,7 +45373,7 @@ lean_object* _init_l_Lean_Parser_Term_namedArgument() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_namedArgument___closed__7; +x_1 = l_Lean_Parser_Term_namedArgument___closed__8; return x_1; } } @@ -44691,108 +45483,107 @@ return x_15; lean_object* l_Lean_Parser_Term_app___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = l_Lean_Parser_Term_leadPrec___closed__1; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_Term_namedArgument___elambda__1(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_9); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -x_13 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_app___elambda__1___spec__1(x_1, x_10); -x_14 = l_Lean_nullKind; -lean_inc(x_8); -x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_8); -x_16 = l_Lean_mkAppStx___closed__8; -x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_12, x_8); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_18 = lean_ctor_get(x_1, 2); -lean_inc(x_18); -x_19 = lean_ctor_get(x_11, 0); -lean_inc(x_19); -lean_dec(x_11); -x_20 = lean_ctor_get(x_10, 1); -lean_inc(x_20); -x_21 = lean_nat_dec_eq(x_20, x_9); -lean_dec(x_20); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_dec(x_19); -lean_dec(x_9); -lean_dec(x_1); -x_22 = l_Lean_nullKind; -lean_inc(x_8); -x_23 = l_Lean_Parser_ParserState_mkNode(x_10, x_22, x_8); -x_24 = l_Lean_mkAppStx___closed__8; -x_25 = l_Lean_Parser_ParserState_mkTrailingNode(x_23, x_24, x_18, x_8); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_inc(x_9); -x_26 = l_Lean_Parser_ParserState_restore(x_10, x_8, x_9); -x_27 = l_Lean_Parser_termParser___closed__2; -x_28 = l_Lean_Parser_appPrec; -lean_inc(x_1); -x_29 = l_Lean_Parser_categoryParser___elambda__1(x_27, x_28, x_1, x_26); -x_30 = l_Lean_Parser_mergeOrElseErrors(x_29, x_19, x_9); -lean_dec(x_9); -x_31 = lean_ctor_get(x_30, 3); -lean_inc(x_31); -if (lean_obj_tag(x_31) == 0) -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_32 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_app___elambda__1___spec__1(x_1, x_30); -x_33 = l_Lean_nullKind; -lean_inc(x_8); -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_8); -x_35 = l_Lean_mkAppStx___closed__8; -x_36 = l_Lean_Parser_ParserState_mkTrailingNode(x_34, x_35, x_18, x_8); -return x_36; -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_31); -lean_dec(x_1); -x_37 = l_Lean_nullKind; -lean_inc(x_8); -x_38 = l_Lean_Parser_ParserState_mkNode(x_30, x_37, x_8); -x_39 = l_Lean_mkAppStx___closed__8; -x_40 = l_Lean_Parser_ParserState_mkTrailingNode(x_38, x_39, x_18, x_8); -return x_40; -} -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_Term_namedArgument___elambda__1(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_8); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +x_12 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_app___elambda__1___spec__1(x_1, x_9); +x_13 = l_Lean_nullKind; +lean_inc(x_7); +x_14 = l_Lean_Parser_ParserState_mkNode(x_12, x_13, x_7); +x_15 = l_Lean_mkAppStx___closed__8; +x_16 = l_Lean_Parser_ParserState_mkTrailingNode(x_14, x_15, x_11, x_7); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_17 = lean_ctor_get(x_1, 2); +lean_inc(x_17); +x_18 = lean_ctor_get(x_10, 0); +lean_inc(x_18); +lean_dec(x_10); +x_19 = lean_ctor_get(x_9, 1); +lean_inc(x_19); +x_20 = lean_nat_dec_eq(x_19, x_8); +lean_dec(x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_18); +lean_dec(x_8); lean_dec(x_1); -return x_5; +x_21 = l_Lean_nullKind; +lean_inc(x_7); +x_22 = l_Lean_Parser_ParserState_mkNode(x_9, x_21, x_7); +x_23 = l_Lean_mkAppStx___closed__8; +x_24 = l_Lean_Parser_ParserState_mkTrailingNode(x_22, x_23, x_17, x_7); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_inc(x_8); +x_25 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +x_26 = l_Lean_Parser_termParser___closed__2; +x_27 = l_Lean_Parser_appPrec; +lean_inc(x_1); +x_28 = l_Lean_Parser_categoryParser___elambda__1(x_26, x_27, x_1, x_25); +x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_18, x_8); +lean_dec(x_8); +x_30 = lean_ctor_get(x_29, 3); +lean_inc(x_30); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_31 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_app___elambda__1___spec__1(x_1, x_29); +x_32 = l_Lean_nullKind; +lean_inc(x_7); +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); +x_34 = l_Lean_mkAppStx___closed__8; +x_35 = l_Lean_Parser_ParserState_mkTrailingNode(x_33, x_34, x_17, x_7); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_30); +lean_dec(x_1); +x_36 = l_Lean_nullKind; +lean_inc(x_7); +x_37 = l_Lean_Parser_ParserState_mkNode(x_29, x_36, x_7); +x_38 = l_Lean_mkAppStx___closed__8; +x_39 = l_Lean_Parser_ParserState_mkTrailingNode(x_37, x_38, x_17, x_7); +return x_39; +} +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -44910,229 +45701,228 @@ return x_2; lean_object* l_Lean_Parser_Term_proj___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_fieldIdx___closed__2; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); x_5 = l_Lean_Parser_appPrec; -x_6 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_7 = l_Lean_Parser_checkPrecFn(x_5, x_6, x_1, x_2); -x_8 = lean_ctor_get(x_7, 3); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); -if (lean_obj_tag(x_8) == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; -x_9 = lean_ctor_get(x_7, 0); +x_9 = lean_ctor_get(x_6, 1); lean_inc(x_9); -x_10 = lean_ctor_get(x_7, 1); -lean_inc(x_10); -x_11 = lean_array_get_size(x_9); -x_12 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_9); -lean_dec(x_9); -x_13 = l_Lean_Parser_checkTailNoWs(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_1, 2); -lean_inc(x_14); -if (x_13 == 0) -{ -lean_object* x_48; lean_object* x_49; -lean_dec(x_10); -x_48 = l_Lean_Parser_Term_proj___elambda__1___closed__3; -x_49 = l_Lean_Parser_ParserState_mkError(x_7, x_48); -x_15 = x_49; -goto block_47; -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_50 = lean_ctor_get(x_1, 0); -lean_inc(x_50); -x_51 = lean_ctor_get(x_50, 0); -lean_inc(x_51); -lean_dec(x_50); -x_52 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__1; -x_53 = l_Lean_Parser_Term_proj___elambda__1___closed__3; -x_54 = lean_unsigned_to_nat(0u); -x_55 = l_Lean_Parser_strAux___main(x_52, x_53, x_54, x_1, x_7); -x_56 = lean_ctor_get(x_55, 3); -lean_inc(x_56); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_inc_n(x_10, 2); -lean_inc(x_51); -x_57 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_57, 0, x_51); -lean_ctor_set(x_57, 1, x_10); -lean_ctor_set(x_57, 2, x_10); -x_58 = l_Lean_Parser_Term_proj___elambda__1___closed__4; -x_59 = lean_nat_add(x_10, x_58); -lean_inc(x_59); -x_60 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_60, 0, x_51); -lean_ctor_set(x_60, 1, x_59); -lean_ctor_set(x_60, 2, x_59); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_57); -x_62 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_62, 0, x_10); -x_63 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_63, 0, x_60); -x_64 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_64, 0, x_61); -lean_ctor_set(x_64, 1, x_62); -lean_ctor_set(x_64, 2, x_63); -x_65 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_52); -x_66 = l_Lean_Parser_ParserState_pushSyntax(x_55, x_65); -x_15 = x_66; -goto block_47; -} -else -{ -lean_dec(x_56); -lean_dec(x_51); -lean_dec(x_10); -x_15 = x_55; -goto block_47; -} -} -block_47: -{ -lean_object* x_16; -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_35; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = lean_array_get_size(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_15, 1); -lean_inc(x_19); -lean_inc(x_15); -lean_inc(x_1); -x_35 = l_Lean_Parser_tryAnti(x_1, x_15); -if (x_35 == 0) -{ -lean_object* x_36; -lean_dec(x_4); -x_36 = l_Lean_Parser_fieldIdxFn(x_1, x_15); -x_20 = x_36; -goto block_34; -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_15); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -x_20 = x_37; -goto block_34; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_19); -lean_dec(x_40); -if (x_41 == 0) -{ -lean_dec(x_39); -x_20 = x_37; -goto block_34; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_inc(x_19); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_18, x_19); -x_43 = l_Lean_Parser_fieldIdxFn(x_1, x_42); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_39, x_19); -x_20 = x_44; -goto block_34; -} -} -} -block_34: -{ -lean_object* x_21; -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_1); -x_22 = l_Lean_Parser_Term_proj___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkTrailingNode(x_20, x_22, x_14, x_11); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_21, 0); -lean_inc(x_24); -lean_dec(x_21); -x_25 = lean_ctor_get(x_20, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_19); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_24); -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_1); -x_27 = l_Lean_Parser_Term_proj___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkTrailingNode(x_20, x_27, x_14, x_11); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_19); -x_29 = l_Lean_Parser_ParserState_restore(x_20, x_18, x_19); -lean_dec(x_18); -x_30 = l_Lean_Parser_ident___elambda__1(x_1, x_29); -x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_24, x_19); -lean_dec(x_19); -x_32 = l_Lean_Parser_Term_proj___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkTrailingNode(x_31, x_32, x_14, x_11); -return x_33; -} -} -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_16); -lean_dec(x_4); -lean_dec(x_1); -x_45 = l_Lean_Parser_Term_proj___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_45, x_14, x_11); -return x_46; -} -} -} -else -{ +x_10 = lean_array_get_size(x_8); +x_11 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_8); lean_dec(x_8); +x_12 = l_Lean_Parser_checkTailNoWs(x_11); +lean_dec(x_11); +x_13 = lean_ctor_get(x_1, 2); +lean_inc(x_13); +if (x_12 == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_9); +x_47 = l_Lean_Parser_Term_proj___elambda__1___closed__3; +x_48 = l_Lean_Parser_ParserState_mkError(x_6, x_47); +x_14 = x_48; +goto block_46; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_49 = lean_ctor_get(x_1, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__1; +x_52 = l_Lean_Parser_Term_proj___elambda__1___closed__3; +x_53 = lean_unsigned_to_nat(0u); +x_54 = l_Lean_Parser_strAux___main(x_51, x_52, x_53, x_1, x_6); +x_55 = lean_ctor_get(x_54, 3); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_inc_n(x_9, 2); +lean_inc(x_50); +x_56 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_56, 0, x_50); +lean_ctor_set(x_56, 1, x_9); +lean_ctor_set(x_56, 2, x_9); +x_57 = l_Lean_Parser_Term_proj___elambda__1___closed__4; +x_58 = lean_nat_add(x_9, x_57); +lean_inc(x_58); +x_59 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_59, 0, x_50); +lean_ctor_set(x_59, 1, x_58); +lean_ctor_set(x_59, 2, x_58); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_56); +x_61 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_61, 0, x_9); +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_59); +x_63 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_63, 0, x_60); +lean_ctor_set(x_63, 1, x_61); +lean_ctor_set(x_63, 2, x_62); +x_64 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_51); +x_65 = l_Lean_Parser_ParserState_pushSyntax(x_54, x_64); +x_14 = x_65; +goto block_46; +} +else +{ +lean_dec(x_55); +lean_dec(x_50); +lean_dec(x_9); +x_14 = x_54; +goto block_46; +} +} +block_46: +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_34; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_inc(x_14); +lean_inc(x_1); +x_34 = l_Lean_Parser_tryAnti(x_1, x_14); +if (x_34 == 0) +{ +lean_object* x_35; +lean_dec(x_4); +x_35 = l_Lean_Parser_fieldIdxFn(x_1, x_14); +x_19 = x_35; +goto block_33; +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_14); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +x_19 = x_36; +goto block_33; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +x_40 = lean_nat_dec_eq(x_39, x_18); +lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +x_19 = x_36; +goto block_33; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_inc(x_18); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_17, x_18); +x_42 = l_Lean_Parser_fieldIdxFn(x_1, x_41); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_38, x_18); +x_19 = x_43; +goto block_33; +} +} +} +block_33: +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +x_21 = l_Lean_Parser_Term_proj___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkTrailingNode(x_19, x_21, x_13, x_10); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_20, 0); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_ctor_get(x_19, 1); +lean_inc(x_24); +x_25 = lean_nat_dec_eq(x_24, x_18); +lean_dec(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_23); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +x_26 = l_Lean_Parser_Term_proj___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkTrailingNode(x_19, x_26, x_13, x_10); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_inc(x_18); +x_28 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_29 = l_Lean_Parser_ident___elambda__1(x_1, x_28); +x_30 = l_Lean_Parser_mergeOrElseErrors(x_29, x_23, x_18); +lean_dec(x_18); +x_31 = l_Lean_Parser_Term_proj___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkTrailingNode(x_30, x_31, x_13, x_10); +return x_32; +} +} +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_15); lean_dec(x_4); lean_dec(x_1); -return x_7; +x_44 = l_Lean_Parser_Term_proj___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkTrailingNode(x_14, x_44, x_13, x_10); +return x_45; +} +} +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; } } } @@ -45259,22 +46049,37 @@ return x_4; lean_object* l_Lean_Parser_Term_arrow___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_arrow___elambda__1___closed__3; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_arrow___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_arrow___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_arrow___closed__1() { @@ -45292,17 +46097,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_arrow___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_arrow___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_arrow___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_arrow___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_arrow___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_arrow___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_arrow___closed__1; -x_2 = l_Lean_Parser_Term_arrow___closed__2; +x_1 = l_Lean_Parser_Term_arrow___closed__2; +x_2 = l_Lean_Parser_Term_arrow___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -45313,7 +46128,7 @@ lean_object* _init_l_Lean_Parser_Term_arrow() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_arrow___closed__3; +x_1 = l_Lean_Parser_Term_arrow___closed__4; return x_1; } } @@ -45369,195 +46184,194 @@ return x_2; lean_object* l_Lean_Parser_Term_arrayRef___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = l_Lean_Parser_appPrec; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); +x_7 = lean_ctor_get(x_4, 1); lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_9 = lean_array_get_size(x_7); -x_10 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_7); -lean_dec(x_7); -x_11 = l_Lean_Parser_checkTailNoWs(x_10); -lean_dec(x_10); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (x_11 == 0) -{ -lean_object* x_46; lean_object* x_47; -lean_dec(x_8); -x_46 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__3; -x_47 = l_Lean_Parser_ParserState_mkError(x_5, x_46); -x_13 = x_47; -goto block_45; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_48 = lean_ctor_get(x_1, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -lean_dec(x_48); -x_50 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; -x_51 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__3; -x_52 = lean_unsigned_to_nat(0u); -x_53 = l_Lean_Parser_strAux___main(x_50, x_51, x_52, x_1, x_5); -x_54 = lean_ctor_get(x_53, 3); -lean_inc(x_54); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_inc_n(x_8, 2); -lean_inc(x_49); -x_55 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_55, 0, x_49); -lean_ctor_set(x_55, 1, x_8); -lean_ctor_set(x_55, 2, x_8); -x_56 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__4; -x_57 = lean_nat_add(x_8, x_56); -lean_inc(x_57); -x_58 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_58, 0, x_49); -lean_ctor_set(x_58, 1, x_57); -lean_ctor_set(x_58, 2, x_57); -x_59 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_59, 0, x_55); -x_60 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_60, 0, x_8); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_58); -x_62 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_62, 0, x_59); -lean_ctor_set(x_62, 1, x_60); -lean_ctor_set(x_62, 2, x_61); -x_63 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_63, 0, x_62); -lean_ctor_set(x_63, 1, x_50); -x_64 = l_Lean_Parser_ParserState_pushSyntax(x_53, x_63); -x_13 = x_64; -goto block_45; -} -else -{ -lean_dec(x_54); -lean_dec(x_49); -lean_dec(x_8); -x_13 = x_53; -goto block_45; -} -} -block_45: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_15 = l_Lean_Parser_termParser___closed__2; -x_16 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_17 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_16, x_1, x_13); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_17, 1); -lean_inc(x_19); -x_20 = l_Lean_Parser_tokenFn(x_1, x_17); -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); -lean_dec(x_22); -if (lean_obj_tag(x_23) == 2) -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 1); -lean_inc(x_24); -lean_dec(x_23); -x_25 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; -x_26 = lean_string_dec_eq(x_24, x_25); -lean_dec(x_24); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); -x_29 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkTrailingNode(x_28, x_29, x_12, x_9); -return x_30; -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_19); -x_31 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkTrailingNode(x_20, x_31, x_12, x_9); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_23); -x_33 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_33, x_19); -x_35 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkTrailingNode(x_34, x_35, x_12, x_9); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_21); -x_37 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; -x_38 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_37, x_19); -x_39 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkTrailingNode(x_38, x_39, x_12, x_9); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; -lean_dec(x_18); -lean_dec(x_1); -x_41 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_42 = l_Lean_Parser_ParserState_mkTrailingNode(x_17, x_41, x_12, x_9); -return x_42; -} -} -else -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_14); -lean_dec(x_1); -x_43 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; -x_44 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_43, x_12, x_9); -return x_44; -} -} -} -else -{ +x_8 = lean_array_get_size(x_6); +x_9 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_6); lean_dec(x_6); +x_10 = l_Lean_Parser_checkTailNoWs(x_9); +lean_dec(x_9); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (x_10 == 0) +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_7); +x_45 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__3; +x_46 = l_Lean_Parser_ParserState_mkError(x_4, x_45); +x_12 = x_46; +goto block_44; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_47 = lean_ctor_get(x_1, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +lean_dec(x_47); +x_49 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__5; +x_50 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__3; +x_51 = lean_unsigned_to_nat(0u); +x_52 = l_Lean_Parser_strAux___main(x_49, x_50, x_51, x_1, x_4); +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_inc_n(x_7, 2); +lean_inc(x_48); +x_54 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_54, 0, x_48); +lean_ctor_set(x_54, 1, x_7); +lean_ctor_set(x_54, 2, x_7); +x_55 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__4; +x_56 = lean_nat_add(x_7, x_55); +lean_inc(x_56); +x_57 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_57, 0, x_48); +lean_ctor_set(x_57, 1, x_56); +lean_ctor_set(x_57, 2, x_56); +x_58 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_58, 0, x_54); +x_59 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_59, 0, x_7); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_57); +x_61 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_61, 0, x_58); +lean_ctor_set(x_61, 1, x_59); +lean_ctor_set(x_61, 2, x_60); +x_62 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_49); +x_63 = l_Lean_Parser_ParserState_pushSyntax(x_52, x_62); +x_12 = x_63; +goto block_44; +} +else +{ +lean_dec(x_53); +lean_dec(x_48); +lean_dec(x_7); +x_12 = x_52; +goto block_44; +} +} +block_44: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = l_Lean_Parser_termParser___closed__2; +x_15 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_14, x_15, x_1, x_12); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +x_19 = l_Lean_Parser_tokenFn(x_1, x_16); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); +lean_dec(x_21); +if (lean_obj_tag(x_22) == 2) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__6; +x_25 = lean_string_dec_eq(x_23, x_24); +lean_dec(x_23); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_26 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_26, x_18); +x_28 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkTrailingNode(x_27, x_28, x_11, x_8); +return x_29; +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_18); +x_30 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkTrailingNode(x_19, x_30, x_11, x_8); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_22); +x_32 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_32, x_18); +x_34 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkTrailingNode(x_33, x_34, x_11, x_8); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_20); +x_36 = l_Lean_Parser_Term_structInstArrayRef___elambda__1___closed__9; +x_37 = l_Lean_Parser_ParserState_mkErrorsAt(x_19, x_36, x_18); +x_38 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkTrailingNode(x_37, x_38, x_11, x_8); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_17); lean_dec(x_1); -return x_5; +x_40 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_41 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_40, x_11, x_8); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_13); +lean_dec(x_1); +x_42 = l_Lean_Parser_Term_arrayRef___elambda__1___closed__2; +x_43 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_42, x_11, x_8); +return x_43; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -45669,150 +46483,149 @@ return x_1; lean_object* l_Lean_Parser_Term_dollar___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(0u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_7 = lean_ctor_get(x_5, 0); +x_7 = lean_ctor_get(x_4, 1); lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 1); -lean_inc(x_8); -x_9 = lean_array_get_size(x_7); -lean_dec(x_7); -lean_inc(x_1); -x_10 = l_Lean_Parser_dollarSymbol___elambda__1(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -x_13 = l_Lean_Parser_Term_dollar___elambda__1___closed__3; -x_14 = l_Lean_Parser_checkWsBeforeFn(x_13, x_1, x_10); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_dec(x_8); -x_16 = l_Lean_Parser_termParser___closed__2; -x_17 = l_Lean_Parser_categoryParser___elambda__1(x_16, x_3, x_1, x_14); -x_18 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_17, x_18, x_12, x_9); -return x_19; -} -else -{ -uint8_t x_20; -lean_dec(x_1); -x_20 = !lean_is_exclusive(x_14); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_21 = lean_ctor_get(x_14, 0); -x_22 = lean_ctor_get(x_14, 3); -lean_dec(x_22); -x_23 = lean_ctor_get(x_14, 1); -lean_dec(x_23); -x_24 = l_Array_shrink___main___rarg(x_21, x_9); -lean_ctor_set(x_14, 1, x_8); -lean_ctor_set(x_14, 0, x_24); -x_25 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkTrailingNode(x_14, x_25, x_12, x_9); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_27 = lean_ctor_get(x_14, 0); -x_28 = lean_ctor_get(x_14, 2); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_14); -x_29 = l_Array_shrink___main___rarg(x_27, x_9); -x_30 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_8); -lean_ctor_set(x_30, 2, x_28); -lean_ctor_set(x_30, 3, x_15); -x_31 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkTrailingNode(x_30, x_31, x_12, x_9); -return x_32; -} -} -} -else -{ -lean_object* x_33; -lean_dec(x_11); -x_33 = lean_ctor_get(x_10, 3); -lean_inc(x_33); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_8); -x_34 = lean_ctor_get(x_1, 2); -lean_inc(x_34); -x_35 = l_Lean_Parser_termParser___closed__2; -x_36 = l_Lean_Parser_categoryParser___elambda__1(x_35, x_3, x_1, x_10); -x_37 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkTrailingNode(x_36, x_37, x_34, x_9); -return x_38; -} -else -{ -lean_object* x_39; uint8_t x_40; -x_39 = lean_ctor_get(x_1, 2); -lean_inc(x_39); -lean_dec(x_1); -x_40 = !lean_is_exclusive(x_10); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_41 = lean_ctor_get(x_10, 0); -x_42 = lean_ctor_get(x_10, 3); -lean_dec(x_42); -x_43 = lean_ctor_get(x_10, 1); -lean_dec(x_43); -x_44 = l_Array_shrink___main___rarg(x_41, x_9); -lean_ctor_set(x_10, 1, x_8); -lean_ctor_set(x_10, 0, x_44); -x_45 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_45, x_39, x_9); -return x_46; -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_47 = lean_ctor_get(x_10, 0); -x_48 = lean_ctor_get(x_10, 2); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_10); -x_49 = l_Array_shrink___main___rarg(x_47, x_9); -x_50 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_8); -lean_ctor_set(x_50, 2, x_48); -lean_ctor_set(x_50, 3, x_33); -x_51 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; -x_52 = l_Lean_Parser_ParserState_mkTrailingNode(x_50, x_51, x_39, x_9); -return x_52; -} -} -} -} -else -{ +x_8 = lean_array_get_size(x_6); lean_dec(x_6); +lean_inc(x_1); +x_9 = l_Lean_Parser_dollarSymbol___elambda__1(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +x_12 = l_Lean_Parser_Term_dollar___elambda__1___closed__3; +x_13 = l_Lean_Parser_checkWsBeforeFn(x_12, x_1, x_9); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_7); +x_15 = l_Lean_Parser_termParser___closed__2; +x_16 = l_Lean_Parser_categoryParser___elambda__1(x_15, x_3, x_1, x_13); +x_17 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_17, x_11, x_8); +return x_18; +} +else +{ +uint8_t x_19; lean_dec(x_1); -return x_5; +x_19 = !lean_is_exclusive(x_13); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_20 = lean_ctor_get(x_13, 0); +x_21 = lean_ctor_get(x_13, 3); +lean_dec(x_21); +x_22 = lean_ctor_get(x_13, 1); +lean_dec(x_22); +x_23 = l_Array_shrink___main___rarg(x_20, x_8); +lean_ctor_set(x_13, 1, x_7); +lean_ctor_set(x_13, 0, x_23); +x_24 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_24, x_11, x_8); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_13, 0); +x_27 = lean_ctor_get(x_13, 2); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_13); +x_28 = l_Array_shrink___main___rarg(x_26, x_8); +x_29 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_7); +lean_ctor_set(x_29, 2, x_27); +lean_ctor_set(x_29, 3, x_14); +x_30 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkTrailingNode(x_29, x_30, x_11, x_8); +return x_31; +} +} +} +else +{ +lean_object* x_32; +lean_dec(x_10); +x_32 = lean_ctor_get(x_9, 3); +lean_inc(x_32); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_7); +x_33 = lean_ctor_get(x_1, 2); +lean_inc(x_33); +x_34 = l_Lean_Parser_termParser___closed__2; +x_35 = l_Lean_Parser_categoryParser___elambda__1(x_34, x_3, x_1, x_9); +x_36 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkTrailingNode(x_35, x_36, x_33, x_8); +return x_37; +} +else +{ +lean_object* x_38; uint8_t x_39; +x_38 = lean_ctor_get(x_1, 2); +lean_inc(x_38); +lean_dec(x_1); +x_39 = !lean_is_exclusive(x_9); +if (x_39 == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = lean_ctor_get(x_9, 0); +x_41 = lean_ctor_get(x_9, 3); +lean_dec(x_41); +x_42 = lean_ctor_get(x_9, 1); +lean_dec(x_42); +x_43 = l_Array_shrink___main___rarg(x_40, x_8); +lean_ctor_set(x_9, 1, x_7); +lean_ctor_set(x_9, 0, x_43); +x_44 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkTrailingNode(x_9, x_44, x_38, x_8); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_46 = lean_ctor_get(x_9, 0); +x_47 = lean_ctor_get(x_9, 2); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_9); +x_48 = l_Array_shrink___main___rarg(x_46, x_8); +x_49 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_7); +lean_ctor_set(x_49, 2, x_47); +lean_ctor_set(x_49, 3, x_32); +x_50 = l_Lean_Parser_Term_dollar___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkTrailingNode(x_49, x_50, x_38, x_8); +return x_51; +} +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -45970,215 +46783,214 @@ return x_3; lean_object* l_Lean_Parser_Term_dollarProj___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_fieldIdx___closed__2; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); x_5 = lean_unsigned_to_nat(0u); -x_6 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_7 = l_Lean_Parser_checkPrecFn(x_5, x_6, x_1, x_2); -x_8 = lean_ctor_get(x_7, 3); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); -if (lean_obj_tag(x_8) == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_9 = lean_ctor_get(x_7, 0); -lean_inc(x_9); -x_10 = lean_array_get_size(x_9); -lean_dec(x_9); -x_11 = lean_ctor_get(x_7, 1); -lean_inc(x_11); -lean_inc(x_1); -x_12 = l_Lean_Parser_tokenFn(x_1, x_7); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -x_14 = lean_ctor_get(x_1, 2); -lean_inc(x_14); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_12, 0); -lean_inc(x_48); -x_49 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_48); -lean_dec(x_48); -if (lean_obj_tag(x_49) == 2) -{ -lean_object* x_50; lean_object* x_51; uint8_t x_52; -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_51 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__4; -x_52 = lean_string_dec_eq(x_50, x_51); -lean_dec(x_50); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; -x_53 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_53, x_11); -x_15 = x_54; -goto block_47; -} -else -{ -lean_dec(x_11); -x_15 = x_12; -goto block_47; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_49); -x_55 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_55, x_11); -x_15 = x_56; -goto block_47; -} -} -else -{ -lean_object* x_57; lean_object* x_58; -lean_dec(x_13); -x_57 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; -x_58 = l_Lean_Parser_ParserState_mkErrorsAt(x_12, x_57, x_11); -x_15 = x_58; -goto block_47; -} -block_47: -{ -lean_object* x_16; -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_35; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = lean_array_get_size(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_15, 1); -lean_inc(x_19); -lean_inc(x_15); -lean_inc(x_1); -x_35 = l_Lean_Parser_tryAnti(x_1, x_15); -if (x_35 == 0) -{ -lean_object* x_36; -lean_dec(x_4); -x_36 = l_Lean_Parser_fieldIdxFn(x_1, x_15); -x_20 = x_36; -goto block_34; -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_15); -x_38 = lean_ctor_get(x_37, 3); -lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -x_20 = x_37; -goto block_34; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_19); -lean_dec(x_40); -if (x_41 == 0) -{ -lean_dec(x_39); -x_20 = x_37; -goto block_34; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_inc(x_19); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_18, x_19); -x_43 = l_Lean_Parser_fieldIdxFn(x_1, x_42); -x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_39, x_19); -x_20 = x_44; -goto block_34; -} -} -} -block_34: -{ -lean_object* x_21; -x_21 = lean_ctor_get(x_20, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_1); -x_22 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; -x_23 = l_Lean_Parser_ParserState_mkTrailingNode(x_20, x_22, x_14, x_10); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_21, 0); -lean_inc(x_24); -lean_dec(x_21); -x_25 = lean_ctor_get(x_20, 1); -lean_inc(x_25); -x_26 = lean_nat_dec_eq(x_25, x_19); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_24); -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_1); -x_27 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkTrailingNode(x_20, x_27, x_14, x_10); -return x_28; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_inc(x_19); -x_29 = l_Lean_Parser_ParserState_restore(x_20, x_18, x_19); -lean_dec(x_18); -x_30 = l_Lean_Parser_ident___elambda__1(x_1, x_29); -x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_24, x_19); -lean_dec(x_19); -x_32 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkTrailingNode(x_31, x_32, x_14, x_10); -return x_33; -} -} -} -} -else -{ -lean_object* x_45; lean_object* x_46; -lean_dec(x_16); -lean_dec(x_4); -lean_dec(x_1); -x_45 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; -x_46 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_45, x_14, x_10); -return x_46; -} -} -} -else -{ +x_9 = lean_array_get_size(x_8); lean_dec(x_8); +x_10 = lean_ctor_get(x_6, 1); +lean_inc(x_10); +lean_inc(x_1); +x_11 = l_Lean_Parser_tokenFn(x_1, x_6); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +x_13 = lean_ctor_get(x_1, 2); +lean_inc(x_13); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_11, 0); +lean_inc(x_47); +x_48 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 2) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__4; +x_51 = lean_string_dec_eq(x_49, x_50); +lean_dec(x_49); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_52, x_10); +x_14 = x_53; +goto block_46; +} +else +{ +lean_dec(x_10); +x_14 = x_11; +goto block_46; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_48); +x_54 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_54, x_10); +x_14 = x_55; +goto block_46; +} +} +else +{ +lean_object* x_56; lean_object* x_57; +lean_dec(x_12); +x_56 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__7; +x_57 = l_Lean_Parser_ParserState_mkErrorsAt(x_11, x_56, x_10); +x_14 = x_57; +goto block_46; +} +block_46: +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_34; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_array_get_size(x_16); +lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_inc(x_14); +lean_inc(x_1); +x_34 = l_Lean_Parser_tryAnti(x_1, x_14); +if (x_34 == 0) +{ +lean_object* x_35; +lean_dec(x_4); +x_35 = l_Lean_Parser_fieldIdxFn(x_1, x_14); +x_19 = x_35; +goto block_33; +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_14); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +x_19 = x_36; +goto block_33; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +x_40 = lean_nat_dec_eq(x_39, x_18); +lean_dec(x_39); +if (x_40 == 0) +{ +lean_dec(x_38); +x_19 = x_36; +goto block_33; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_inc(x_18); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_17, x_18); +x_42 = l_Lean_Parser_fieldIdxFn(x_1, x_41); +x_43 = l_Lean_Parser_mergeOrElseErrors(x_42, x_38, x_18); +x_19 = x_43; +goto block_33; +} +} +} +block_33: +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +x_21 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; +x_22 = l_Lean_Parser_ParserState_mkTrailingNode(x_19, x_21, x_13, x_9); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_20, 0); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_ctor_get(x_19, 1); +lean_inc(x_24); +x_25 = lean_nat_dec_eq(x_24, x_18); +lean_dec(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_23); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_1); +x_26 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkTrailingNode(x_19, x_26, x_13, x_9); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_inc(x_18); +x_28 = l_Lean_Parser_ParserState_restore(x_19, x_17, x_18); +lean_dec(x_17); +x_29 = l_Lean_Parser_ident___elambda__1(x_1, x_28); +x_30 = l_Lean_Parser_mergeOrElseErrors(x_29, x_23, x_18); +lean_dec(x_18); +x_31 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkTrailingNode(x_30, x_31, x_13, x_9); +return x_32; +} +} +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_15); lean_dec(x_4); lean_dec(x_1); -return x_7; +x_44 = l_Lean_Parser_Term_dollarProj___elambda__1___closed__2; +x_45 = l_Lean_Parser_ParserState_mkTrailingNode(x_14, x_44, x_13, x_9); +return x_45; +} +} +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; } } } @@ -46628,107 +47440,106 @@ return x_3; lean_object* l_Lean_Parser_Term_where___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(0u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_tokenFn(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_10, 0); -lean_inc(x_22); -x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); -lean_dec(x_22); -if (lean_obj_tag(x_23) == 2) -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 1); -lean_inc(x_24); -lean_dec(x_23); -x_25 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__2; -x_26 = lean_string_dec_eq(x_24, x_25); -lean_dec(x_24); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -x_27 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_27, x_9); -x_13 = x_28; -goto block_21; -} -else -{ -lean_dec(x_9); -x_13 = x_10; -goto block_21; -} -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_23); -x_29 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_29, x_9); -x_13 = x_30; -goto block_21; -} -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_11); -x_31 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_31, x_9); -x_13 = x_32; -goto block_21; -} -block_21: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_15 = 0; -x_16 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_where___elambda__1___spec__1(x_15, x_15, x_1, x_13); -x_17 = l_Lean_Parser_Term_where___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_17, x_12, x_8); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_14); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_where___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_19, x_12, x_8); -return x_20; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_9, 0); +lean_inc(x_21); +x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); +lean_dec(x_21); +if (lean_obj_tag(x_22) == 2) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__2; +x_25 = lean_string_dec_eq(x_23, x_24); +lean_dec(x_23); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); +x_12 = x_27; +goto block_20; +} +else +{ +lean_dec(x_8); +x_12 = x_9; +goto block_20; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_22); +x_28 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_28, x_8); +x_12 = x_29; +goto block_20; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_10); +x_30 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__5; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_30, x_8); +x_12 = x_31; +goto block_20; +} +block_20: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = 0; +x_15 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_where___elambda__1___spec__1(x_14, x_14, x_1, x_12); +x_16 = l_Lean_Parser_Term_where___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_11, x_7); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_18 = l_Lean_Parser_Term_where___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_18, x_11, x_7); +return x_19; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -46908,22 +47719,37 @@ return x_3; lean_object* l_Lean_Parser_Term_fcomp___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_fcomp___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_fcomp___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_fcomp___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_fcomp___closed__1() { @@ -46941,17 +47767,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_fcomp___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_fcomp___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_fcomp___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_fcomp___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_fcomp___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_fcomp___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_fcomp___closed__1; -x_2 = l_Lean_Parser_Term_fcomp___closed__2; +x_1 = l_Lean_Parser_Term_fcomp___closed__2; +x_2 = l_Lean_Parser_Term_fcomp___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -46962,7 +47798,7 @@ lean_object* _init_l_Lean_Parser_Term_fcomp() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_fcomp___closed__3; +x_1 = l_Lean_Parser_Term_fcomp___closed__4; return x_1; } } @@ -47017,22 +47853,37 @@ return x_3; lean_object* l_Lean_Parser_Term_prod___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_prod___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_prod___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_prod___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_prod___closed__1() { @@ -47050,17 +47901,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_prod___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_prod___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_prod___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_prod___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_prod___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_prod___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_prod___closed__1; -x_2 = l_Lean_Parser_Term_prod___closed__2; +x_1 = l_Lean_Parser_Term_prod___closed__2; +x_2 = l_Lean_Parser_Term_prod___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47071,7 +47932,7 @@ lean_object* _init_l_Lean_Parser_Term_prod() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_prod___closed__3; +x_1 = l_Lean_Parser_Term_prod___closed__4; return x_1; } } @@ -47126,22 +47987,37 @@ return x_3; lean_object* l_Lean_Parser_Term_add___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_add___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_add___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_add___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_add___closed__1() { @@ -47159,17 +48035,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_add___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_add___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_add___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_add___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_add___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_add___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_add___closed__1; -x_2 = l_Lean_Parser_Term_add___closed__2; +x_1 = l_Lean_Parser_Term_add___closed__2; +x_2 = l_Lean_Parser_Term_add___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47180,7 +48066,7 @@ lean_object* _init_l_Lean_Parser_Term_add() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_add___closed__3; +x_1 = l_Lean_Parser_Term_add___closed__4; return x_1; } } @@ -47235,22 +48121,37 @@ return x_3; lean_object* l_Lean_Parser_Term_sub___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_sub___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_sub___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_sub___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_sub___closed__1() { @@ -47268,17 +48169,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_sub___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_sub___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_sub___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_sub___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_sub___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_sub___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_sub___closed__1; -x_2 = l_Lean_Parser_Term_sub___closed__2; +x_1 = l_Lean_Parser_Term_sub___closed__2; +x_2 = l_Lean_Parser_Term_sub___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47289,7 +48200,7 @@ lean_object* _init_l_Lean_Parser_Term_sub() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_sub___closed__3; +x_1 = l_Lean_Parser_Term_sub___closed__4; return x_1; } } @@ -47344,22 +48255,37 @@ return x_3; lean_object* l_Lean_Parser_Term_mul___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_mul___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_mul___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_mul___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_mul___closed__1() { @@ -47377,17 +48303,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_mul___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mul___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_mul___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_mul___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mul___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_mul___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_mul___closed__1; -x_2 = l_Lean_Parser_Term_mul___closed__2; +x_1 = l_Lean_Parser_Term_mul___closed__2; +x_2 = l_Lean_Parser_Term_mul___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47398,7 +48334,7 @@ lean_object* _init_l_Lean_Parser_Term_mul() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_mul___closed__3; +x_1 = l_Lean_Parser_Term_mul___closed__4; return x_1; } } @@ -47453,22 +48389,37 @@ return x_3; lean_object* l_Lean_Parser_Term_div___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_div___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_div___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_div___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_div___closed__1() { @@ -47486,17 +48437,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_div___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_div___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_div___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_div___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_div___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_div___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_div___closed__1; -x_2 = l_Lean_Parser_Term_div___closed__2; +x_1 = l_Lean_Parser_Term_div___closed__2; +x_2 = l_Lean_Parser_Term_div___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47507,7 +48468,7 @@ lean_object* _init_l_Lean_Parser_Term_div() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_div___closed__3; +x_1 = l_Lean_Parser_Term_div___closed__4; return x_1; } } @@ -47562,22 +48523,37 @@ return x_3; lean_object* l_Lean_Parser_Term_mod___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_mod___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_mod___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_mod___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_mod___closed__1() { @@ -47595,17 +48571,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_mod___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mod___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_mod___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_mod___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mod___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_mod___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_mod___closed__1; -x_2 = l_Lean_Parser_Term_mod___closed__2; +x_1 = l_Lean_Parser_Term_mod___closed__2; +x_2 = l_Lean_Parser_Term_mod___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47616,7 +48602,7 @@ lean_object* _init_l_Lean_Parser_Term_mod() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_mod___closed__3; +x_1 = l_Lean_Parser_Term_mod___closed__4; return x_1; } } @@ -47671,22 +48657,37 @@ return x_3; lean_object* l_Lean_Parser_Term_modN___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_modN___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_modN___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_modN___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_modN___closed__1() { @@ -47704,17 +48705,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_modN___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_modN___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_modN___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_modN___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_modN___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_modN___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_modN___closed__1; -x_2 = l_Lean_Parser_Term_modN___closed__2; +x_1 = l_Lean_Parser_Term_modN___closed__2; +x_2 = l_Lean_Parser_Term_modN___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47725,7 +48736,7 @@ lean_object* _init_l_Lean_Parser_Term_modN() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_modN___closed__3; +x_1 = l_Lean_Parser_Term_modN___closed__4; return x_1; } } @@ -47780,22 +48791,37 @@ return x_3; lean_object* l_Lean_Parser_Term_pow___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_pow___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_pow___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_pow___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_pow___closed__1() { @@ -47813,17 +48839,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_pow___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_pow___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_pow___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_pow___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_pow___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_pow___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_pow___closed__1; -x_2 = l_Lean_Parser_Term_pow___closed__2; +x_1 = l_Lean_Parser_Term_pow___closed__2; +x_2 = l_Lean_Parser_Term_pow___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47834,7 +48870,7 @@ lean_object* _init_l_Lean_Parser_Term_pow() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_pow___closed__3; +x_1 = l_Lean_Parser_Term_pow___closed__4; return x_1; } } @@ -47898,22 +48934,37 @@ return x_4; lean_object* l_Lean_Parser_Term_le___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_le___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_le___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_le___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_le___closed__1() { @@ -47931,17 +48982,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_le___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_le___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_le___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_le___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_le___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_le___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_le___closed__1; -x_2 = l_Lean_Parser_Term_le___closed__2; +x_1 = l_Lean_Parser_Term_le___closed__2; +x_2 = l_Lean_Parser_Term_le___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -47952,7 +49013,7 @@ lean_object* _init_l_Lean_Parser_Term_le() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_le___closed__3; +x_1 = l_Lean_Parser_Term_le___closed__4; return x_1; } } @@ -48016,22 +49077,37 @@ return x_4; lean_object* l_Lean_Parser_Term_ge___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_ge___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_ge___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_ge___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_ge___closed__1() { @@ -48049,17 +49125,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_ge___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_ge___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_ge___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_ge___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_ge___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_ge___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_ge___closed__1; -x_2 = l_Lean_Parser_Term_ge___closed__2; +x_1 = l_Lean_Parser_Term_ge___closed__2; +x_2 = l_Lean_Parser_Term_ge___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48070,7 +49156,7 @@ lean_object* _init_l_Lean_Parser_Term_ge() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_ge___closed__3; +x_1 = l_Lean_Parser_Term_ge___closed__4; return x_1; } } @@ -48125,22 +49211,37 @@ return x_3; lean_object* l_Lean_Parser_Term_lt___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_lt___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_lt___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_lt___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_lt___closed__1() { @@ -48158,17 +49259,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_lt___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_lt___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_lt___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_lt___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_lt___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_lt___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_lt___closed__1; -x_2 = l_Lean_Parser_Term_lt___closed__2; +x_1 = l_Lean_Parser_Term_lt___closed__2; +x_2 = l_Lean_Parser_Term_lt___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48179,7 +49290,7 @@ lean_object* _init_l_Lean_Parser_Term_lt() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_lt___closed__3; +x_1 = l_Lean_Parser_Term_lt___closed__4; return x_1; } } @@ -48234,22 +49345,37 @@ return x_3; lean_object* l_Lean_Parser_Term_gt___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_gt___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_gt___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_gt___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_gt___closed__1() { @@ -48267,17 +49393,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_gt___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_gt___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_gt___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_gt___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_gt___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_gt___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_gt___closed__1; -x_2 = l_Lean_Parser_Term_gt___closed__2; +x_1 = l_Lean_Parser_Term_gt___closed__2; +x_2 = l_Lean_Parser_Term_gt___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48288,7 +49424,7 @@ lean_object* _init_l_Lean_Parser_Term_gt() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_gt___closed__3; +x_1 = l_Lean_Parser_Term_gt___closed__4; return x_1; } } @@ -48343,22 +49479,37 @@ return x_3; lean_object* l_Lean_Parser_Term_eq___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_eq___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_eq___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_eq___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_eq___closed__1() { @@ -48376,17 +49527,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_eq___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_eq___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_eq___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_eq___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_eq___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_eq___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_eq___closed__1; -x_2 = l_Lean_Parser_Term_eq___closed__2; +x_1 = l_Lean_Parser_Term_eq___closed__2; +x_2 = l_Lean_Parser_Term_eq___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48397,7 +49558,7 @@ lean_object* _init_l_Lean_Parser_Term_eq() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_eq___closed__3; +x_1 = l_Lean_Parser_Term_eq___closed__4; return x_1; } } @@ -48452,22 +49613,37 @@ return x_3; lean_object* l_Lean_Parser_Term_ne___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_ne___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_ne___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_ne___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_ne___closed__1() { @@ -48485,17 +49661,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_ne___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_ne___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_ne___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_ne___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_ne___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_ne___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_ne___closed__1; -x_2 = l_Lean_Parser_Term_ne___closed__2; +x_1 = l_Lean_Parser_Term_ne___closed__2; +x_2 = l_Lean_Parser_Term_ne___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48506,7 +49692,7 @@ lean_object* _init_l_Lean_Parser_Term_ne() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_ne___closed__3; +x_1 = l_Lean_Parser_Term_ne___closed__4; return x_1; } } @@ -48561,22 +49747,37 @@ return x_3; lean_object* l_Lean_Parser_Term_beq___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_beq___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_beq___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_beq___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_beq___closed__1() { @@ -48594,17 +49795,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_beq___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_beq___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_beq___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_beq___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_beq___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_beq___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_beq___closed__1; -x_2 = l_Lean_Parser_Term_beq___closed__2; +x_1 = l_Lean_Parser_Term_beq___closed__2; +x_2 = l_Lean_Parser_Term_beq___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48615,7 +49826,7 @@ lean_object* _init_l_Lean_Parser_Term_beq() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_beq___closed__3; +x_1 = l_Lean_Parser_Term_beq___closed__4; return x_1; } } @@ -48670,22 +49881,37 @@ return x_3; lean_object* l_Lean_Parser_Term_bne___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_bne___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_bne___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_bne___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_bne___closed__1() { @@ -48703,17 +49929,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_bne___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bne___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_bne___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_bne___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bne___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_bne___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_bne___closed__1; -x_2 = l_Lean_Parser_Term_bne___closed__2; +x_1 = l_Lean_Parser_Term_bne___closed__2; +x_2 = l_Lean_Parser_Term_bne___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48724,7 +49960,7 @@ lean_object* _init_l_Lean_Parser_Term_bne() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_bne___closed__3; +x_1 = l_Lean_Parser_Term_bne___closed__4; return x_1; } } @@ -48788,22 +50024,37 @@ return x_4; lean_object* l_Lean_Parser_Term_heq___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_heq___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_heq___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_heq___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_heq___closed__1() { @@ -48821,17 +50072,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_heq___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_heq___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_heq___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_heq___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_heq___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_heq___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_heq___closed__1; -x_2 = l_Lean_Parser_Term_heq___closed__2; +x_1 = l_Lean_Parser_Term_heq___closed__2; +x_2 = l_Lean_Parser_Term_heq___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48842,7 +50103,7 @@ lean_object* _init_l_Lean_Parser_Term_heq() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_heq___closed__3; +x_1 = l_Lean_Parser_Term_heq___closed__4; return x_1; } } @@ -48897,22 +50158,37 @@ return x_3; lean_object* l_Lean_Parser_Term_equiv___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_equiv___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_equiv___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_equiv___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_equiv___closed__1() { @@ -48930,17 +50206,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_equiv___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_equiv___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_equiv___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_equiv___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_equiv___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_equiv___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_equiv___closed__1; -x_2 = l_Lean_Parser_Term_equiv___closed__2; +x_1 = l_Lean_Parser_Term_equiv___closed__2; +x_2 = l_Lean_Parser_Term_equiv___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -48951,7 +50237,7 @@ lean_object* _init_l_Lean_Parser_Term_equiv() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_equiv___closed__3; +x_1 = l_Lean_Parser_Term_equiv___closed__4; return x_1; } } @@ -49263,107 +50549,106 @@ return x_3; lean_object* l_Lean_Parser_Term_subst___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = lean_unsigned_to_nat(75u); -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Parser_tokenFn(x_1, x_5); -x_11 = lean_ctor_get(x_10, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 2); -lean_inc(x_12); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_10, 0); -lean_inc(x_22); -x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); -lean_dec(x_22); -if (lean_obj_tag(x_23) == 2) -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_23, 1); -lean_inc(x_24); -lean_dec(x_23); -x_25 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__2; -x_26 = lean_string_dec_eq(x_24, x_25); -lean_dec(x_24); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -x_27 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_27, x_9); -x_13 = x_28; -goto block_21; -} -else -{ -lean_dec(x_9); -x_13 = x_10; -goto block_21; -} -} -else -{ -lean_object* x_29; lean_object* x_30; -lean_dec(x_23); -x_29 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_29, x_9); -x_13 = x_30; -goto block_21; -} -} -else -{ -lean_object* x_31; lean_object* x_32; -lean_dec(x_11); -x_31 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_10, x_31, x_9); -x_13 = x_32; -goto block_21; -} -block_21: -{ -lean_object* x_14; -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_15 = 0; -x_16 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_subst___elambda__1___spec__1(x_15, x_15, x_1, x_13); -x_17 = l_Lean_Parser_Term_subst___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkTrailingNode(x_16, x_17, x_12, x_8); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_14); -lean_dec(x_1); -x_19 = l_Lean_Parser_Term_subst___elambda__1___closed__2; -x_20 = l_Lean_Parser_ParserState_mkTrailingNode(x_13, x_19, x_12, x_8); -return x_20; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_8 = lean_ctor_get(x_4, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Parser_tokenFn(x_1, x_4); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_9, 0); +lean_inc(x_21); +x_22 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_21); +lean_dec(x_21); +if (lean_obj_tag(x_22) == 2) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__2; +x_25 = lean_string_dec_eq(x_23, x_24); +lean_dec(x_23); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); +x_12 = x_27; +goto block_20; +} +else +{ +lean_dec(x_8); +x_12 = x_9; +goto block_20; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_22); +x_28 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_28, x_8); +x_12 = x_29; +goto block_20; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_10); +x_30 = l___private_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_subst___elambda__1___spec__2___closed__5; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_30, x_8); +x_12 = x_31; +goto block_20; +} +block_20: +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = 0; +x_15 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Term_subst___elambda__1___spec__1(x_14, x_14, x_1, x_12); +x_16 = l_Lean_Parser_Term_subst___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkTrailingNode(x_15, x_16, x_11, x_7); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_18 = l_Lean_Parser_Term_subst___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkTrailingNode(x_12, x_18, x_11, x_7); +return x_19; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -49542,22 +50827,37 @@ return x_4; lean_object* l_Lean_Parser_Term_and___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_and___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_and___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_and___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_and___closed__1() { @@ -49575,17 +50875,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_and___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_and___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_and___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_and___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_and___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_and___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_and___closed__1; -x_2 = l_Lean_Parser_Term_and___closed__2; +x_1 = l_Lean_Parser_Term_and___closed__2; +x_2 = l_Lean_Parser_Term_and___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -49596,7 +50906,7 @@ lean_object* _init_l_Lean_Parser_Term_and() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_and___closed__3; +x_1 = l_Lean_Parser_Term_and___closed__4; return x_1; } } @@ -49660,22 +50970,37 @@ return x_4; lean_object* l_Lean_Parser_Term_or___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_or___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_or___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_or___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_or___closed__1() { @@ -49693,17 +51018,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_or___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_or___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_or___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_or___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_or___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_or___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_or___closed__1; -x_2 = l_Lean_Parser_Term_or___closed__2; +x_1 = l_Lean_Parser_Term_or___closed__2; +x_2 = l_Lean_Parser_Term_or___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -49714,7 +51049,7 @@ lean_object* _init_l_Lean_Parser_Term_or() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_or___closed__3; +x_1 = l_Lean_Parser_Term_or___closed__4; return x_1; } } @@ -49778,22 +51113,37 @@ return x_4; lean_object* l_Lean_Parser_Term_iff___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_iff___elambda__1___closed__5; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_iff___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_iff___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_iff___closed__1() { @@ -49811,17 +51161,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_iff___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_iff___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_iff___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_iff___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_iff___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_iff___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_iff___closed__1; -x_2 = l_Lean_Parser_Term_iff___closed__2; +x_1 = l_Lean_Parser_Term_iff___closed__2; +x_2 = l_Lean_Parser_Term_iff___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -49832,7 +51192,7 @@ lean_object* _init_l_Lean_Parser_Term_iff() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_iff___closed__3; +x_1 = l_Lean_Parser_Term_iff___closed__4; return x_1; } } @@ -49887,22 +51247,37 @@ return x_3; lean_object* l_Lean_Parser_Term_band___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_band___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_band___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_band___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_band___closed__1() { @@ -49920,17 +51295,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_band___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_band___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_band___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_band___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_band___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_band___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_band___closed__1; -x_2 = l_Lean_Parser_Term_band___closed__2; +x_1 = l_Lean_Parser_Term_band___closed__2; +x_2 = l_Lean_Parser_Term_band___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -49941,7 +51326,7 @@ lean_object* _init_l_Lean_Parser_Term_band() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_band___closed__3; +x_1 = l_Lean_Parser_Term_band___closed__4; return x_1; } } @@ -49996,22 +51381,37 @@ return x_3; lean_object* l_Lean_Parser_Term_bor___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_bor___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_bor___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_bor___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_bor___closed__1() { @@ -50029,17 +51429,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_bor___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bor___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_bor___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_bor___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bor___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_bor___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_bor___closed__1; -x_2 = l_Lean_Parser_Term_bor___closed__2; +x_1 = l_Lean_Parser_Term_bor___closed__2; +x_2 = l_Lean_Parser_Term_bor___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50050,7 +51460,7 @@ lean_object* _init_l_Lean_Parser_Term_bor() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_bor___closed__3; +x_1 = l_Lean_Parser_Term_bor___closed__4; return x_1; } } @@ -50105,22 +51515,37 @@ return x_3; lean_object* l_Lean_Parser_Term_append___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_append___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_append___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_append___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_append___closed__1() { @@ -50138,17 +51563,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_append___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_append___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_append___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_append___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_append___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_append___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_append___closed__1; -x_2 = l_Lean_Parser_Term_append___closed__2; +x_1 = l_Lean_Parser_Term_append___closed__2; +x_2 = l_Lean_Parser_Term_append___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50159,7 +51594,7 @@ lean_object* _init_l_Lean_Parser_Term_append() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_append___closed__3; +x_1 = l_Lean_Parser_Term_append___closed__4; return x_1; } } @@ -50206,22 +51641,37 @@ return x_3; lean_object* l_Lean_Parser_Term_cons___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_cons___elambda__1___closed__3; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_cons___elambda__1___closed__1; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_cons___elambda__1___closed__1; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_cons___closed__1() { @@ -50239,17 +51689,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_cons___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_cons___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_cons___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_cons___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_cons___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_cons___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_cons___closed__1; -x_2 = l_Lean_Parser_Term_cons___closed__2; +x_1 = l_Lean_Parser_Term_cons___closed__2; +x_2 = l_Lean_Parser_Term_cons___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50260,7 +51720,7 @@ lean_object* _init_l_Lean_Parser_Term_cons() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_cons___closed__3; +x_1 = l_Lean_Parser_Term_cons___closed__4; return x_1; } } @@ -50315,22 +51775,37 @@ return x_3; lean_object* l_Lean_Parser_Term_orelse___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_orelse___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_orelse___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_orelse___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_orelse___closed__1() { @@ -50348,17 +51823,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_orelse___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_orelse___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_orelse___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_orelse___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_orelse___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_orelse___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_orelse___closed__1; -x_2 = l_Lean_Parser_Term_orelse___closed__2; +x_1 = l_Lean_Parser_Term_orelse___closed__2; +x_2 = l_Lean_Parser_Term_orelse___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50369,7 +51854,7 @@ lean_object* _init_l_Lean_Parser_Term_orelse() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_orelse___closed__3; +x_1 = l_Lean_Parser_Term_orelse___closed__4; return x_1; } } @@ -50424,22 +51909,37 @@ return x_3; lean_object* l_Lean_Parser_Term_orM___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_orM___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_orM___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_orM___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_orM___closed__1() { @@ -50457,17 +51957,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_orM___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_orM___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_orM___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_orM___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_orM___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_orM___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_orM___closed__1; -x_2 = l_Lean_Parser_Term_orM___closed__2; +x_1 = l_Lean_Parser_Term_orM___closed__2; +x_2 = l_Lean_Parser_Term_orM___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50478,7 +51988,7 @@ lean_object* _init_l_Lean_Parser_Term_orM() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_orM___closed__3; +x_1 = l_Lean_Parser_Term_orM___closed__4; return x_1; } } @@ -50533,22 +52043,37 @@ return x_3; lean_object* l_Lean_Parser_Term_andM___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_andM___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_andM___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_andM___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_andM___closed__1() { @@ -50566,17 +52091,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_andM___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_andM___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_andM___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_andM___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_andM___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_andM___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_andM___closed__1; -x_2 = l_Lean_Parser_Term_andM___closed__2; +x_1 = l_Lean_Parser_Term_andM___closed__2; +x_2 = l_Lean_Parser_Term_andM___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50587,7 +52122,7 @@ lean_object* _init_l_Lean_Parser_Term_andM() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_andM___closed__3; +x_1 = l_Lean_Parser_Term_andM___closed__4; return x_1; } } @@ -50642,22 +52177,37 @@ return x_3; lean_object* l_Lean_Parser_Term_andthen___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_andthen___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_andthen___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_andthen___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_andthen___closed__1() { @@ -50675,17 +52225,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_andthen___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_andthen___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_andthen___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_andthen___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_andthen___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_andthen___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_andthen___closed__1; -x_2 = l_Lean_Parser_Term_andthen___closed__2; +x_1 = l_Lean_Parser_Term_andthen___closed__2; +x_2 = l_Lean_Parser_Term_andthen___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50696,7 +52256,7 @@ lean_object* _init_l_Lean_Parser_Term_andthen() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_andthen___closed__3; +x_1 = l_Lean_Parser_Term_andthen___closed__4; return x_1; } } @@ -50751,22 +52311,37 @@ return x_3; lean_object* l_Lean_Parser_Term_bindOp___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_bindOp___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_bindOp___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_bindOp___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_bindOp___closed__1() { @@ -50784,17 +52359,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_bindOp___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bindOp___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_bindOp___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_bindOp___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_bindOp___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_bindOp___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_bindOp___closed__1; -x_2 = l_Lean_Parser_Term_bindOp___closed__2; +x_1 = l_Lean_Parser_Term_bindOp___closed__2; +x_2 = l_Lean_Parser_Term_bindOp___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50805,7 +52390,7 @@ lean_object* _init_l_Lean_Parser_Term_bindOp() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_bindOp___closed__3; +x_1 = l_Lean_Parser_Term_bindOp___closed__4; return x_1; } } @@ -50860,22 +52445,37 @@ return x_3; lean_object* l_Lean_Parser_Term_mapRev___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_mapRev___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_mapRev___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_mapRev___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_mapRev___closed__1() { @@ -50893,17 +52493,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_mapRev___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapRev___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_mapRev___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_mapRev___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapRev___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_mapRev___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_mapRev___closed__1; -x_2 = l_Lean_Parser_Term_mapRev___closed__2; +x_1 = l_Lean_Parser_Term_mapRev___closed__2; +x_2 = l_Lean_Parser_Term_mapRev___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -50914,7 +52524,7 @@ lean_object* _init_l_Lean_Parser_Term_mapRev() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_mapRev___closed__3; +x_1 = l_Lean_Parser_Term_mapRev___closed__4; return x_1; } } @@ -50961,22 +52571,37 @@ return x_3; lean_object* l_Lean_Parser_Term_seq___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_seq___elambda__1___closed__3; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_seq___elambda__1___closed__1; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_seq___elambda__1___closed__1; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_seq___closed__1() { @@ -50994,17 +52619,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_seq___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seq___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_seq___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_seq___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seq___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_seq___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_seq___closed__1; -x_2 = l_Lean_Parser_Term_seq___closed__2; +x_1 = l_Lean_Parser_Term_seq___closed__2; +x_2 = l_Lean_Parser_Term_seq___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51015,7 +52650,7 @@ lean_object* _init_l_Lean_Parser_Term_seq() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_seq___closed__3; +x_1 = l_Lean_Parser_Term_seq___closed__4; return x_1; } } @@ -51070,22 +52705,37 @@ return x_3; lean_object* l_Lean_Parser_Term_seqLeft___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_seqLeft___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_seqLeft___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_seqLeft___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_seqLeft___closed__1() { @@ -51103,17 +52753,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_seqLeft___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seqLeft___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_seqLeft___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_seqLeft___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seqLeft___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_seqLeft___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_seqLeft___closed__1; -x_2 = l_Lean_Parser_Term_seqLeft___closed__2; +x_1 = l_Lean_Parser_Term_seqLeft___closed__2; +x_2 = l_Lean_Parser_Term_seqLeft___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51124,7 +52784,7 @@ lean_object* _init_l_Lean_Parser_Term_seqLeft() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_seqLeft___closed__3; +x_1 = l_Lean_Parser_Term_seqLeft___closed__4; return x_1; } } @@ -51179,22 +52839,37 @@ return x_3; lean_object* l_Lean_Parser_Term_seqRight___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_seqRight___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_seqRight___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_seqRight___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_seqRight___closed__1() { @@ -51212,17 +52887,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_seqRight___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seqRight___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_seqRight___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_seqRight___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_seqRight___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_seqRight___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_seqRight___closed__1; -x_2 = l_Lean_Parser_Term_seqRight___closed__2; +x_1 = l_Lean_Parser_Term_seqRight___closed__2; +x_2 = l_Lean_Parser_Term_seqRight___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51233,7 +52918,7 @@ lean_object* _init_l_Lean_Parser_Term_seqRight() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_seqRight___closed__3; +x_1 = l_Lean_Parser_Term_seqRight___closed__4; return x_1; } } @@ -51288,22 +52973,37 @@ return x_3; lean_object* l_Lean_Parser_Term_map___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_map___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_map___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_map___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_map___closed__1() { @@ -51321,17 +53021,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_map___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_map___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_map___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_map___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_map___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_map___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_map___closed__1; -x_2 = l_Lean_Parser_Term_map___closed__2; +x_1 = l_Lean_Parser_Term_map___closed__2; +x_2 = l_Lean_Parser_Term_map___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51342,7 +53052,7 @@ lean_object* _init_l_Lean_Parser_Term_map() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_map___closed__3; +x_1 = l_Lean_Parser_Term_map___closed__4; return x_1; } } @@ -51397,22 +53107,37 @@ return x_3; lean_object* l_Lean_Parser_Term_mapConst___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_mapConst___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_mapConst___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_mapConst___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_mapConst___closed__1() { @@ -51430,17 +53155,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_mapConst___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapConst___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_mapConst___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_mapConst___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapConst___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_mapConst___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_mapConst___closed__1; -x_2 = l_Lean_Parser_Term_mapConst___closed__2; +x_1 = l_Lean_Parser_Term_mapConst___closed__2; +x_2 = l_Lean_Parser_Term_mapConst___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51451,7 +53186,7 @@ lean_object* _init_l_Lean_Parser_Term_mapConst() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_mapConst___closed__3; +x_1 = l_Lean_Parser_Term_mapConst___closed__4; return x_1; } } @@ -51506,22 +53241,37 @@ return x_3; lean_object* l_Lean_Parser_Term_mapConstRev___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_3 = l_Lean_Parser_Term_mapConstRev___elambda__1___closed__4; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); -x_5 = lean_ctor_get(x_2, 0); -lean_inc(x_5); -x_6 = lean_array_get_size(x_5); -lean_dec(x_5); -lean_inc(x_1); -x_7 = lean_apply_2(x_4, x_1, x_2); -x_8 = lean_ctor_get(x_1, 2); +x_5 = lean_unsigned_to_nat(1024u); +x_6 = l_Lean_Parser_checkPrecFn(x_5, x_1, x_2); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +lean_inc(x_1); +x_10 = lean_apply_2(x_4, x_1, x_6); +x_11 = lean_ctor_get(x_1, 2); +lean_inc(x_11); lean_dec(x_1); -x_9 = l_Lean_Parser_Term_mapConstRev___elambda__1___closed__2; -x_10 = l_Lean_Parser_ParserState_mkTrailingNode(x_7, x_9, x_8, x_6); -return x_10; +x_12 = l_Lean_Parser_Term_mapConstRev___elambda__1___closed__2; +x_13 = l_Lean_Parser_ParserState_mkTrailingNode(x_10, x_12, x_11, x_9); +return x_13; +} +else +{ +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +return x_6; +} } } lean_object* _init_l_Lean_Parser_Term_mapConstRev___closed__1() { @@ -51539,17 +53289,27 @@ return x_4; lean_object* _init_l_Lean_Parser_Term_mapConstRev___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapConstRev___elambda__1), 2, 0); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Term_mapConstRev___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Term_mapConstRev___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_mapConstRev___elambda__1), 2, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Term_mapConstRev___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_mapConstRev___closed__1; -x_2 = l_Lean_Parser_Term_mapConstRev___closed__2; +x_1 = l_Lean_Parser_Term_mapConstRev___closed__2; +x_2 = l_Lean_Parser_Term_mapConstRev___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -51560,7 +53320,7 @@ lean_object* _init_l_Lean_Parser_Term_mapConstRev() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Term_mapConstRev___closed__3; +x_1 = l_Lean_Parser_Term_mapConstRev___closed__4; return x_1; } } @@ -51725,409 +53485,407 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_appPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_1); -x_44 = l_Lean_Parser_tokenFn(x_1, x_8); -x_45 = lean_ctor_get(x_44, 3); -lean_inc(x_45); -if (lean_obj_tag(x_45) == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_44, 0); -lean_inc(x_46); -x_47 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_46); -lean_dec(x_46); -if (lean_obj_tag(x_47) == 2) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -lean_dec(x_47); -x_49 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; -x_50 = lean_string_dec_eq(x_48, x_49); -lean_dec(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_51, x_43); -x_12 = x_52; -goto block_42; -} -else -{ -lean_dec(x_43); -x_12 = x_44; -goto block_42; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_47); -x_53 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_53, x_43); -x_12 = x_54; -goto block_42; -} -} -else -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_45); -x_55 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_56 = l_Lean_Parser_ParserState_mkErrorsAt(x_44, x_55, x_43); -x_12 = x_56; -goto block_42; -} -block_42: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; -lean_inc(x_1); -x_14 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_12); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -x_17 = l_Lean_Parser_tokenFn(x_1, x_14); -x_18 = lean_ctor_get(x_17, 3); -lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_19); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 2) -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; -x_23 = lean_string_dec_eq(x_21, x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_25 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_24, x_16); -x_26 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_11); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_16); -x_28 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_29 = l_Lean_Parser_ParserState_mkNode(x_17, x_28, x_11); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -lean_dec(x_20); -x_30 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_30, x_16); -x_32 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_11); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_18); -x_34 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_35 = l_Lean_Parser_ParserState_mkErrorsAt(x_17, x_34, x_16); -x_36 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_35, x_36, x_11); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_15); -lean_dec(x_1); -x_38 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_14, x_38, x_11); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_13); -lean_dec(x_1); -x_40 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_41 = l_Lean_Parser_ParserState_mkNode(x_12, x_40, x_11); -return x_41; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_42 = lean_ctor_get(x_7, 1); +lean_inc(x_42); +lean_inc(x_1); +x_43 = l_Lean_Parser_tokenFn(x_1, x_7); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); +lean_dec(x_45); +if (lean_obj_tag(x_46) == 2) +{ +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; +x_49 = lean_string_dec_eq(x_47, x_48); +lean_dec(x_47); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; +x_50 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_42); +x_11 = x_51; +goto block_41; +} +else +{ +lean_dec(x_42); +x_11 = x_43; +goto block_41; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_2, 0); -lean_inc(x_57); -x_58 = lean_array_get_size(x_57); +lean_object* x_52; lean_object* x_53; +lean_dec(x_46); +x_52 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_42); +x_11 = x_53; +goto block_41; +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_44); +x_54 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_42); +x_11 = x_55; +goto block_41; +} +block_41: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_11); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +x_16 = l_Lean_Parser_tokenFn(x_1, x_13); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 2) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; +x_22 = lean_string_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); +x_25 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_10); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_15); +x_27 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_10); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_19); +x_29 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); +x_31 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_10); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_dec(x_17); +x_33 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); +x_35 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_10); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_14); +lean_dec(x_1); +x_37 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_10); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_12); +lean_dec(x_1); +x_39 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_40 = l_Lean_Parser_ParserState_mkNode(x_11, x_39, x_10); +return x_40; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_ctor_get(x_2, 0); +lean_inc(x_56); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_2, 1); +lean_inc(x_58); +lean_inc(x_1); +x_59 = lean_apply_2(x_4, x_1, x_2); +x_60 = lean_ctor_get(x_59, 3); +lean_inc(x_60); +if (lean_obj_tag(x_60) == 0) +{ +lean_dec(x_58); lean_dec(x_57); -x_59 = lean_ctor_get(x_2, 1); -lean_inc(x_59); -lean_inc(x_1); -x_60 = lean_apply_2(x_4, x_1, x_2); -x_61 = lean_ctor_get(x_60, 3); +lean_dec(x_1); +return x_59; +} +else +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) -{ -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_1); -return x_60; -} -else -{ -lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_61, 0); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); lean_inc(x_62); -lean_dec(x_61); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -x_64 = lean_nat_dec_eq(x_63, x_59); -lean_dec(x_63); -if (x_64 == 0) -{ +x_63 = lean_nat_dec_eq(x_62, x_58); lean_dec(x_62); -lean_dec(x_59); +if (x_63 == 0) +{ +lean_dec(x_61); lean_dec(x_58); +lean_dec(x_57); lean_dec(x_1); -return x_60; +return x_59; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_inc(x_59); -x_65 = l_Lean_Parser_ParserState_restore(x_60, x_58, x_59); -lean_dec(x_58); -x_66 = l_Lean_Parser_appPrec; -x_67 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_68 = l_Lean_Parser_checkPrecFn(x_66, x_67, x_1, x_65); -x_69 = lean_ctor_get(x_68, 3); -lean_inc(x_69); -if (lean_obj_tag(x_69) == 0) +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_inc(x_58); +x_64 = l_Lean_Parser_ParserState_restore(x_59, x_57, x_58); +lean_dec(x_57); +x_65 = l_Lean_Parser_appPrec; +x_66 = l_Lean_Parser_checkPrecFn(x_65, x_1, x_64); +x_67 = lean_ctor_get(x_66, 3); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_70 = lean_ctor_get(x_68, 0); -lean_inc(x_70); -x_71 = lean_array_get_size(x_70); -lean_dec(x_70); -x_109 = lean_ctor_get(x_68, 1); -lean_inc(x_109); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = lean_array_get_size(x_68); +lean_dec(x_68); +x_107 = lean_ctor_get(x_66, 1); +lean_inc(x_107); lean_inc(x_1); -x_110 = l_Lean_Parser_tokenFn(x_1, x_68); -x_111 = lean_ctor_get(x_110, 3); -lean_inc(x_111); -if (lean_obj_tag(x_111) == 0) +x_108 = l_Lean_Parser_tokenFn(x_1, x_66); +x_109 = lean_ctor_get(x_108, 3); +lean_inc(x_109); +if (lean_obj_tag(x_109) == 0) { -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); +lean_object* x_110; lean_object* x_111; +x_110 = lean_ctor_get(x_108, 0); +lean_inc(x_110); +x_111 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_110); +lean_dec(x_110); +if (lean_obj_tag(x_111) == 2) +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); -x_113 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_112); +lean_dec(x_111); +x_113 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; +x_114 = lean_string_dec_eq(x_112, x_113); lean_dec(x_112); -if (lean_obj_tag(x_113) == 2) +if (x_114 == 0) { -lean_object* x_114; lean_object* x_115; uint8_t x_116; -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -lean_dec(x_113); -x_115 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__6; -x_116 = lean_string_dec_eq(x_114, x_115); -lean_dec(x_114); -if (x_116 == 0) +lean_object* x_115; lean_object* x_116; +x_115 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; +x_116 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_115, x_107); +x_70 = x_116; +goto block_106; +} +else +{ +lean_dec(x_107); +x_70 = x_108; +goto block_106; +} +} +else { lean_object* x_117; lean_object* x_118; +lean_dec(x_111); x_117 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_117, x_109); -x_72 = x_118; -goto block_108; -} -else -{ -lean_dec(x_109); -x_72 = x_110; -goto block_108; +x_118 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_117, x_107); +x_70 = x_118; +goto block_106; } } else { lean_object* x_119; lean_object* x_120; -lean_dec(x_113); +lean_dec(x_109); x_119 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_119, x_109); -x_72 = x_120; -goto block_108; +x_120 = l_Lean_Parser_ParserState_mkErrorsAt(x_108, x_119, x_107); +x_70 = x_120; +goto block_106; } -} -else +block_106: { -lean_object* x_121; lean_object* x_122; -lean_dec(x_111); -x_121 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__14; -x_122 = l_Lean_Parser_ParserState_mkErrorsAt(x_110, x_121, x_109); -x_72 = x_122; -goto block_108; -} -block_108: +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_73; +lean_object* x_72; lean_object* x_73; +lean_inc(x_1); +x_72 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_70); x_73 = lean_ctor_get(x_72, 3); lean_inc(x_73); if (lean_obj_tag(x_73) == 0) { -lean_object* x_74; lean_object* x_75; -lean_inc(x_1); -x_74 = l_Lean_Parser_Tactic_seq___elambda__1(x_1, x_72); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_74, 1); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +x_75 = l_Lean_Parser_tokenFn(x_1, x_72); +x_76 = lean_ctor_get(x_75, 3); lean_inc(x_76); -x_77 = l_Lean_Parser_tokenFn(x_1, x_74); -x_78 = lean_ctor_get(x_77, 3); -lean_inc(x_78); -if (lean_obj_tag(x_78) == 0) +if (lean_obj_tag(x_76) == 0) { -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_77); +lean_dec(x_77); +if (lean_obj_tag(x_78) == 2) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = lean_ctor_get(x_78, 1); lean_inc(x_79); -x_80 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_79); -lean_dec(x_79); -if (lean_obj_tag(x_80) == 2) -{ -lean_object* x_81; lean_object* x_82; uint8_t x_83; -x_81 = lean_ctor_get(x_80, 1); -lean_inc(x_81); -lean_dec(x_80); -x_82 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; -x_83 = lean_string_dec_eq(x_81, x_82); -lean_dec(x_81); -if (x_83 == 0) -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_84 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_85 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_84, x_76); -x_86 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_87 = l_Lean_Parser_ParserState_mkNode(x_85, x_86, x_71); -x_88 = l_Lean_Parser_mergeOrElseErrors(x_87, x_62, x_59); -lean_dec(x_59); -return x_88; -} -else -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_76); -x_89 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_90 = l_Lean_Parser_ParserState_mkNode(x_77, x_89, x_71); -x_91 = l_Lean_Parser_mergeOrElseErrors(x_90, x_62, x_59); -lean_dec(x_59); -return x_91; -} -} -else -{ -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_80); -x_92 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_93 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_92, x_76); -x_94 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_95 = l_Lean_Parser_ParserState_mkNode(x_93, x_94, x_71); -x_96 = l_Lean_Parser_mergeOrElseErrors(x_95, x_62, x_59); -lean_dec(x_59); -return x_96; -} -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_dec(x_78); -x_97 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; -x_98 = l_Lean_Parser_ParserState_mkErrorsAt(x_77, x_97, x_76); -x_99 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_100 = l_Lean_Parser_ParserState_mkNode(x_98, x_99, x_71); -x_101 = l_Lean_Parser_mergeOrElseErrors(x_100, x_62, x_59); -lean_dec(x_59); -return x_101; +x_80 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__8; +x_81 = lean_string_dec_eq(x_79, x_80); +lean_dec(x_79); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_83 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_82, x_74); +x_84 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_85 = l_Lean_Parser_ParserState_mkNode(x_83, x_84, x_69); +x_86 = l_Lean_Parser_mergeOrElseErrors(x_85, x_61, x_58); +lean_dec(x_58); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_74); +x_87 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_88 = l_Lean_Parser_ParserState_mkNode(x_75, x_87, x_69); +x_89 = l_Lean_Parser_mergeOrElseErrors(x_88, x_61, x_58); +lean_dec(x_58); +return x_89; } } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_75); -lean_dec(x_1); -x_102 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_103 = l_Lean_Parser_ParserState_mkNode(x_74, x_102, x_71); -x_104 = l_Lean_Parser_mergeOrElseErrors(x_103, x_62, x_59); -lean_dec(x_59); -return x_104; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_78); +x_90 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_91 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_90, x_74); +x_92 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_93 = l_Lean_Parser_ParserState_mkNode(x_91, x_92, x_69); +x_94 = l_Lean_Parser_mergeOrElseErrors(x_93, x_61, x_58); +lean_dec(x_58); +return x_94; } } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_76); +x_95 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__11; +x_96 = l_Lean_Parser_ParserState_mkErrorsAt(x_75, x_95, x_74); +x_97 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_98 = l_Lean_Parser_ParserState_mkNode(x_96, x_97, x_69); +x_99 = l_Lean_Parser_mergeOrElseErrors(x_98, x_61, x_58); +lean_dec(x_58); +return x_99; +} +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_73); lean_dec(x_1); -x_105 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; -x_106 = l_Lean_Parser_ParserState_mkNode(x_72, x_105, x_71); -x_107 = l_Lean_Parser_mergeOrElseErrors(x_106, x_62, x_59); -lean_dec(x_59); -return x_107; +x_100 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_101 = l_Lean_Parser_ParserState_mkNode(x_72, x_100, x_69); +x_102 = l_Lean_Parser_mergeOrElseErrors(x_101, x_61, x_58); +lean_dec(x_58); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_71); +lean_dec(x_1); +x_103 = l_Lean_Parser_Term_tacticBlock___elambda__1___closed__2; +x_104 = l_Lean_Parser_ParserState_mkNode(x_70, x_103, x_69); +x_105 = l_Lean_Parser_mergeOrElseErrors(x_104, x_61, x_58); +lean_dec(x_58); +return x_105; } } } else { -lean_object* x_123; -lean_dec(x_69); +lean_object* x_121; +lean_dec(x_67); lean_dec(x_1); -x_123 = l_Lean_Parser_mergeOrElseErrors(x_68, x_62, x_59); -lean_dec(x_59); -return x_123; +x_121 = l_Lean_Parser_mergeOrElseErrors(x_66, x_61, x_58); +lean_dec(x_58); +return x_121; } } } @@ -52346,255 +54104,253 @@ lean_inc(x_1); x_5 = l_Lean_Parser_tryAnti(x_1, x_2); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_dec(x_4); x_6 = l_Lean_Parser_Term_leadPrec; -x_7 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_8 = l_Lean_Parser_checkPrecFn(x_6, x_7, x_1, x_2); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Lean_Parser_checkPrecFn(x_6, x_1, x_2); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_10); -x_11 = lean_array_get_size(x_10); -lean_dec(x_10); -x_20 = lean_ctor_get(x_8, 1); -lean_inc(x_20); -lean_inc(x_1); -x_21 = l_Lean_Parser_tokenFn(x_1, x_8); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_inc(x_23); -x_24 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 2) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l_Lean_Parser_Term_byTactic___elambda__1___closed__6; -x_27 = lean_string_dec_eq(x_25, x_26); -lean_dec(x_25); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -x_28 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_28, x_20); -x_12 = x_29; -goto block_19; -} -else -{ -lean_dec(x_20); -x_12 = x_21; -goto block_19; -} -} -else -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_24); -x_30 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_30, x_20); -x_12 = x_31; -goto block_19; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_22); -x_32 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_21, x_32, x_20); -x_12 = x_33; -goto block_19; -} -block_19: -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_12); -x_15 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; -x_16 = l_Lean_Parser_ParserState_mkNode(x_14, x_15, x_11); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; -lean_dec(x_13); -lean_dec(x_1); -x_17 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; -x_18 = l_Lean_Parser_ParserState_mkNode(x_12, x_17, x_11); -return x_18; -} -} -} -else -{ +x_10 = lean_array_get_size(x_9); lean_dec(x_9); -lean_dec(x_1); -return x_8; +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); +lean_inc(x_1); +x_20 = l_Lean_Parser_tokenFn(x_1, x_7); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Term_byTactic___elambda__1___closed__6; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_11 = x_28; +goto block_18; +} +else +{ +lean_dec(x_19); +x_11 = x_20; +goto block_18; } } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_2, 0); -lean_inc(x_34); -x_35 = lean_array_get_size(x_34); +lean_object* x_29; lean_object* x_30; +lean_dec(x_23); +x_29 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_29, x_19); +x_11 = x_30; +goto block_18; +} +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_21); +x_31 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_31, x_19); +x_11 = x_32; +goto block_18; +} +block_18: +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_11); +x_14 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; +x_15 = l_Lean_Parser_ParserState_mkNode(x_13, x_14, x_10); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_1); +x_16 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; +x_17 = l_Lean_Parser_ParserState_mkNode(x_11, x_16, x_10); +return x_17; +} +} +} +else +{ +lean_dec(x_8); +lean_dec(x_1); +return x_7; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = lean_array_get_size(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_2, 1); +lean_inc(x_35); +lean_inc(x_1); +x_36 = lean_apply_2(x_4, x_1, x_2); +x_37 = lean_ctor_get(x_36, 3); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +lean_dec(x_35); lean_dec(x_34); -x_36 = lean_ctor_get(x_2, 1); -lean_inc(x_36); -lean_inc(x_1); -x_37 = lean_apply_2(x_4, x_1, x_2); -x_38 = lean_ctor_get(x_37, 3); +lean_dec(x_1); +return x_36; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); -if (lean_obj_tag(x_38) == 0) -{ -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_1); -return x_37; -} -else -{ -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_37); +x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); -lean_dec(x_38); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -x_41 = lean_nat_dec_eq(x_40, x_36); -lean_dec(x_40); -if (x_41 == 0) -{ +x_40 = lean_nat_dec_eq(x_39, x_35); lean_dec(x_39); -lean_dec(x_36); +if (x_40 == 0) +{ +lean_dec(x_38); lean_dec(x_35); +lean_dec(x_34); lean_dec(x_1); -return x_37; +return x_36; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_inc(x_36); -x_42 = l_Lean_Parser_ParserState_restore(x_37, x_35, x_36); -lean_dec(x_35); -x_43 = l_Lean_Parser_Term_leadPrec; -x_44 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_45 = l_Lean_Parser_checkPrecFn(x_43, x_44, x_1, x_42); -x_46 = lean_ctor_get(x_45, 3); -lean_inc(x_46); -if (lean_obj_tag(x_46) == 0) +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_inc(x_35); +x_41 = l_Lean_Parser_ParserState_restore(x_36, x_34, x_35); +lean_dec(x_34); +x_42 = l_Lean_Parser_Term_leadPrec; +x_43 = l_Lean_Parser_checkPrecFn(x_42, x_1, x_41); +x_44 = lean_ctor_get(x_43, 3); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_47 = lean_ctor_get(x_45, 0); -lean_inc(x_47); -x_48 = lean_array_get_size(x_47); -lean_dec(x_47); -x_59 = lean_ctor_get(x_45, 1); -lean_inc(x_59); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_45 = lean_ctor_get(x_43, 0); +lean_inc(x_45); +x_46 = lean_array_get_size(x_45); +lean_dec(x_45); +x_57 = lean_ctor_get(x_43, 1); +lean_inc(x_57); lean_inc(x_1); -x_60 = l_Lean_Parser_tokenFn(x_1, x_45); -x_61 = lean_ctor_get(x_60, 3); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +x_58 = l_Lean_Parser_tokenFn(x_1, x_43); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_ctor_get(x_60, 0); +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_60); +lean_dec(x_60); +if (lean_obj_tag(x_61) == 2) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 1); lean_inc(x_62); -x_63 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_62); +lean_dec(x_61); +x_63 = l_Lean_Parser_Term_byTactic___elambda__1___closed__6; +x_64 = lean_string_dec_eq(x_62, x_63); lean_dec(x_62); -if (lean_obj_tag(x_63) == 2) +if (x_64 == 0) { -lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = l_Lean_Parser_Term_byTactic___elambda__1___closed__6; -x_66 = lean_string_dec_eq(x_64, x_65); -lean_dec(x_64); -if (x_66 == 0) +lean_object* x_65; lean_object* x_66; +x_65 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; +x_66 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_65, x_57); +x_47 = x_66; +goto block_56; +} +else +{ +lean_dec(x_57); +x_47 = x_58; +goto block_56; +} +} +else { lean_object* x_67; lean_object* x_68; +lean_dec(x_61); x_67 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_67, x_59); -x_49 = x_68; -goto block_58; -} -else -{ -lean_dec(x_59); -x_49 = x_60; -goto block_58; +x_68 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_67, x_57); +x_47 = x_68; +goto block_56; } } else { lean_object* x_69; lean_object* x_70; -lean_dec(x_63); +lean_dec(x_59); x_69 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_69, x_59); -x_49 = x_70; -goto block_58; +x_70 = l_Lean_Parser_ParserState_mkErrorsAt(x_58, x_69, x_57); +x_47 = x_70; +goto block_56; } +block_56: +{ +lean_object* x_48; +x_48 = lean_ctor_get(x_47, 3); +lean_inc(x_48); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_47); +x_50 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; +x_51 = l_Lean_Parser_ParserState_mkNode(x_49, x_50, x_46); +x_52 = l_Lean_Parser_mergeOrElseErrors(x_51, x_38, x_35); +lean_dec(x_35); +return x_52; } else { -lean_object* x_71; lean_object* x_72; -lean_dec(x_61); -x_71 = l_Lean_Parser_Term_byTactic___elambda__1___closed__9; -x_72 = l_Lean_Parser_ParserState_mkErrorsAt(x_60, x_71, x_59); -x_49 = x_72; -goto block_58; -} -block_58: -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_49, 3); -lean_inc(x_50); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = l_Lean_Parser_Tactic_nonEmptySeq___elambda__1(x_1, x_49); -x_52 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; -x_53 = l_Lean_Parser_ParserState_mkNode(x_51, x_52, x_48); -x_54 = l_Lean_Parser_mergeOrElseErrors(x_53, x_39, x_36); -lean_dec(x_36); -return x_54; -} -else -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_50); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_48); lean_dec(x_1); -x_55 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; -x_56 = l_Lean_Parser_ParserState_mkNode(x_49, x_55, x_48); -x_57 = l_Lean_Parser_mergeOrElseErrors(x_56, x_39, x_36); -lean_dec(x_36); -return x_57; +x_53 = l_Lean_Parser_Term_byTactic___elambda__1___closed__2; +x_54 = l_Lean_Parser_ParserState_mkNode(x_47, x_53, x_46); +x_55 = l_Lean_Parser_mergeOrElseErrors(x_54, x_38, x_35); +lean_dec(x_35); +return x_55; } } } else { -lean_object* x_73; -lean_dec(x_46); +lean_object* x_71; +lean_dec(x_44); lean_dec(x_1); -x_73 = l_Lean_Parser_mergeOrElseErrors(x_45, x_39, x_36); -lean_dec(x_36); -return x_73; +x_71 = l_Lean_Parser_mergeOrElseErrors(x_43, x_38, x_35); +lean_dec(x_35); +return x_71; } } } @@ -52764,178 +54520,177 @@ return x_3; lean_object* l_Lean_Parser_Term_tacticStxQuot___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = l_Lean_Parser_appPrec; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_41 = lean_ctor_get(x_5, 1); -lean_inc(x_41); -lean_inc(x_1); -x_42 = l_Lean_Parser_tokenFn(x_1, x_5); -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_42, 0); -lean_inc(x_44); -x_45 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_44); -lean_dec(x_44); -if (lean_obj_tag(x_45) == 2) -{ -lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_46 = lean_ctor_get(x_45, 1); -lean_inc(x_46); -lean_dec(x_45); -x_47 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__4; -x_48 = lean_string_dec_eq(x_46, x_47); -lean_dec(x_46); -if (x_48 == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; -x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_49, x_41); -x_9 = x_50; -goto block_40; -} -else -{ -lean_dec(x_41); -x_9 = x_42; -goto block_40; -} -} -else -{ -lean_object* x_51; lean_object* x_52; -lean_dec(x_45); -x_51 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; -x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_51, x_41); -x_9 = x_52; -goto block_40; -} -} -else -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_43); -x_53 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; -x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_53, x_41); -x_9 = x_54; -goto block_40; -} -block_40: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -uint8_t x_11; lean_object* x_12; lean_object* x_13; -x_11 = 1; -lean_inc(x_1); -x_12 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Tactic_nonEmptySeq___elambda__1___spec__1(x_11, x_11, x_1, x_9); -x_13 = lean_ctor_get(x_12, 3); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -x_15 = l_Lean_Parser_tokenFn(x_1, x_12); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 0); -lean_inc(x_17); -x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 2) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_21 = lean_string_dec_eq(x_19, x_20); -lean_dec(x_19); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); -x_24 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_8); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_14); -x_26 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_8); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_18); -x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); -x_30 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_8); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -lean_dec(x_16); -x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); -x_34 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_8); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; -lean_dec(x_13); -lean_dec(x_1); -x_36 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_8); -return x_37; -} -} -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_10); -lean_dec(x_1); -x_38 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_39 = l_Lean_Parser_ParserState_mkNode(x_9, x_38, x_8); -return x_39; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_40 = lean_ctor_get(x_4, 1); +lean_inc(x_40); +lean_inc(x_1); +x_41 = l_Lean_Parser_tokenFn(x_1, x_4); +x_42 = lean_ctor_get(x_41, 3); +lean_inc(x_42); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; +x_43 = lean_ctor_get(x_41, 0); +lean_inc(x_43); +x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); +lean_dec(x_43); +if (lean_obj_tag(x_44) == 2) +{ +lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_45 = lean_ctor_get(x_44, 1); +lean_inc(x_45); +lean_dec(x_44); +x_46 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__4; +x_47 = lean_string_dec_eq(x_45, x_46); +lean_dec(x_45); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; +x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_40); +x_8 = x_49; +goto block_39; +} +else +{ +lean_dec(x_40); +x_8 = x_41; +goto block_39; +} +} +else +{ +lean_object* x_50; lean_object* x_51; +lean_dec(x_44); +x_50 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; +x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_50, x_40); +x_8 = x_51; +goto block_39; +} +} +else +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_42); +x_52 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__7; +x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_52, x_40); +x_8 = x_53; +goto block_39; +} +block_39: +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 3); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; lean_object* x_11; lean_object* x_12; +x_10 = 1; +lean_inc(x_1); +x_11 = l_Lean_Parser_sepBy1Fn___at_Lean_Parser_Tactic_nonEmptySeq___elambda__1___spec__1(x_10, x_10, x_1, x_8); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +x_14 = l_Lean_Parser_tokenFn(x_1, x_11); +x_15 = lean_ctor_get(x_14, 3); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); +lean_dec(x_16); +if (lean_obj_tag(x_17) == 2) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); +x_23 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_7); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_13); +x_25 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_7); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_17); +x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); +x_29 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_7); +return x_30; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_15); +x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); +x_33 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_7); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_12); lean_dec(x_1); -return x_5; +x_35 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_7); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_9); +lean_dec(x_1); +x_37 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_38 = l_Lean_Parser_ParserState_mkNode(x_8, x_37, x_7); +return x_38; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -53098,179 +54853,178 @@ return x_3; lean_object* l_Lean_Parser_Term_levelStxQuot___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = l_Lean_Parser_appPrec; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_42 = lean_ctor_get(x_5, 1); -lean_inc(x_42); -lean_inc(x_1); -x_43 = l_Lean_Parser_tokenFn(x_1, x_5); -x_44 = lean_ctor_get(x_43, 3); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; -x_45 = lean_ctor_get(x_43, 0); -lean_inc(x_45); -x_46 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_45); -lean_dec(x_45); -if (lean_obj_tag(x_46) == 2) -{ -lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_47 = lean_ctor_get(x_46, 1); -lean_inc(x_47); -lean_dec(x_46); -x_48 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__2; -x_49 = lean_string_dec_eq(x_47, x_48); -lean_dec(x_47); -if (x_49 == 0) -{ -lean_object* x_50; lean_object* x_51; -x_50 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_50, x_42); -x_9 = x_51; -goto block_41; -} -else -{ -lean_dec(x_42); -x_9 = x_43; -goto block_41; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_46); -x_52 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_52, x_42); -x_9 = x_53; -goto block_41; -} -} -else -{ -lean_object* x_54; lean_object* x_55; -lean_dec(x_44); -x_54 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; -x_55 = l_Lean_Parser_ParserState_mkErrorsAt(x_43, x_54, x_42); -x_9 = x_55; -goto block_41; -} -block_41: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_11 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; -x_12 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_13 = l_Lean_Parser_categoryParser___elambda__1(x_11, x_12, x_1, x_9); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -x_16 = l_Lean_Parser_tokenFn(x_1, x_13); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -x_19 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_18); -lean_dec(x_18); -if (lean_obj_tag(x_19) == 2) -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); -lean_dec(x_19); -x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_22 = lean_string_dec_eq(x_20, x_21); -lean_dec(x_20); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_23 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_24 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_23, x_15); -x_25 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_24, x_25, x_8); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -x_27 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_28 = l_Lean_Parser_ParserState_mkNode(x_16, x_27, x_8); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_19); -x_29 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_29, x_15); -x_31 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_8); -return x_32; -} -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_17); -x_33 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_34 = l_Lean_Parser_ParserState_mkErrorsAt(x_16, x_33, x_15); -x_35 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_8); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_dec(x_14); -lean_dec(x_1); -x_37 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_13, x_37, x_8); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_10); -lean_dec(x_1); -x_39 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_40 = l_Lean_Parser_ParserState_mkNode(x_9, x_39, x_8); -return x_40; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_41 = lean_ctor_get(x_4, 1); +lean_inc(x_41); +lean_inc(x_1); +x_42 = l_Lean_Parser_tokenFn(x_1, x_4); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_44); +lean_dec(x_44); +if (lean_obj_tag(x_45) == 2) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_45, 1); +lean_inc(x_46); +lean_dec(x_45); +x_47 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__2; +x_48 = lean_string_dec_eq(x_46, x_47); +lean_dec(x_46); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; +x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_49, x_41); +x_8 = x_50; +goto block_40; +} +else +{ +lean_dec(x_41); +x_8 = x_42; +goto block_40; +} +} +else +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_45); +x_51 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_51, x_41); +x_8 = x_52; +goto block_40; +} +} +else +{ +lean_object* x_53; lean_object* x_54; +lean_dec(x_43); +x_53 = l_Lean_Parser_Term_levelStxQuot___elambda__1___closed__5; +x_54 = l_Lean_Parser_ParserState_mkErrorsAt(x_42, x_53, x_41); +x_8 = x_54; +goto block_40; +} +block_40: +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 3); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = l_Lean_Parser_regBuiltinLevelParserAttr___closed__4; +x_11 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_12 = l_Lean_Parser_categoryParser___elambda__1(x_10, x_11, x_1, x_8); +x_13 = lean_ctor_get(x_12, 3); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +x_15 = l_Lean_Parser_tokenFn(x_1, x_12); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_17); +lean_dec(x_17); +if (lean_obj_tag(x_18) == 2) +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_21 = lean_string_dec_eq(x_19, x_20); +lean_dec(x_19); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_22, x_14); +x_24 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_7); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_14); +x_26 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_15, x_26, x_7); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_18); +x_28 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_29 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_28, x_14); +x_30 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_29, x_30, x_7); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_16); +x_32 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_33 = l_Lean_Parser_ParserState_mkErrorsAt(x_15, x_32, x_14); +x_34 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_33, x_34, x_7); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_13); lean_dec(x_1); -return x_5; +x_36 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_12, x_36, x_7); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_9); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_39 = l_Lean_Parser_ParserState_mkNode(x_8, x_38, x_7); +return x_39; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -53423,177 +55177,176 @@ return x_3; lean_object* l_Lean_Parser_Term_funBinderStxQuot___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_3; lean_object* x_4; lean_object* x_5; x_3 = l_Lean_Parser_appPrec; -x_4 = l___private_Lean_Parser_Parser_10__precErrorMsg; -x_5 = l_Lean_Parser_checkPrecFn(x_3, x_4, x_1, x_2); -x_6 = lean_ctor_get(x_5, 3); +x_4 = l_Lean_Parser_checkPrecFn(x_3, x_1, x_2); +x_5 = lean_ctor_get(x_4, 3); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_7 = lean_ctor_get(x_5, 0); -lean_inc(x_7); -x_8 = lean_array_get_size(x_7); -lean_dec(x_7); -x_40 = lean_ctor_get(x_5, 1); -lean_inc(x_40); -lean_inc(x_1); -x_41 = l_Lean_Parser_tokenFn(x_1, x_5); -x_42 = lean_ctor_get(x_41, 3); -lean_inc(x_42); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_inc(x_43); -x_44 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_43); -lean_dec(x_43); -if (lean_obj_tag(x_44) == 2) -{ -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_44, 1); -lean_inc(x_45); -lean_dec(x_44); -x_46 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__2; -x_47 = lean_string_dec_eq(x_45, x_46); -lean_dec(x_45); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; -x_48 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; -x_49 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_48, x_40); -x_9 = x_49; -goto block_39; -} -else -{ -lean_dec(x_40); -x_9 = x_41; -goto block_39; -} -} -else -{ -lean_object* x_50; lean_object* x_51; -lean_dec(x_44); -x_50 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; -x_51 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_50, x_40); -x_9 = x_51; -goto block_39; -} -} -else -{ -lean_object* x_52; lean_object* x_53; -lean_dec(x_42); -x_52 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; -x_53 = l_Lean_Parser_ParserState_mkErrorsAt(x_41, x_52, x_40); -x_9 = x_53; -goto block_39; -} -block_39: -{ -lean_object* x_10; -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; -lean_inc(x_1); -x_11 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_9); -x_12 = lean_ctor_get(x_11, 3); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -x_14 = l_Lean_Parser_tokenFn(x_1, x_11); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_14, 0); -lean_inc(x_16); -x_17 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_16); -lean_dec(x_16); -if (lean_obj_tag(x_17) == 2) -{ -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_17, 1); -lean_inc(x_18); -lean_dec(x_17); -x_19 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; -x_20 = lean_string_dec_eq(x_18, x_19); -lean_dec(x_18); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_21 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_22 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_21, x_13); -x_23 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_24 = l_Lean_Parser_ParserState_mkNode(x_22, x_23, x_8); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; -lean_dec(x_13); -x_25 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_26 = l_Lean_Parser_ParserState_mkNode(x_14, x_25, x_8); -return x_26; -} -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_17); -x_27 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_27, x_13); -x_29 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_8); -return x_30; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_dec(x_15); -x_31 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; -x_32 = l_Lean_Parser_ParserState_mkErrorsAt(x_14, x_31, x_13); -x_33 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_34 = l_Lean_Parser_ParserState_mkNode(x_32, x_33, x_8); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; -lean_dec(x_12); -lean_dec(x_1); -x_35 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_36 = l_Lean_Parser_ParserState_mkNode(x_11, x_35, x_8); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; -lean_dec(x_10); -lean_dec(x_1); -x_37 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; -x_38 = l_Lean_Parser_ParserState_mkNode(x_9, x_37, x_8); -return x_38; -} -} -} -else -{ +x_7 = lean_array_get_size(x_6); lean_dec(x_6); +x_39 = lean_ctor_get(x_4, 1); +lean_inc(x_39); +lean_inc(x_1); +x_40 = l_Lean_Parser_tokenFn(x_1, x_4); +x_41 = lean_ctor_get(x_40, 3); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_42); +lean_dec(x_42); +if (lean_obj_tag(x_43) == 2) +{ +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__2; +x_46 = lean_string_dec_eq(x_44, x_45); +lean_dec(x_44); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; +x_48 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_47, x_39); +x_8 = x_48; +goto block_38; +} +else +{ +lean_dec(x_39); +x_8 = x_40; +goto block_38; +} +} +else +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_43); +x_49 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; +x_50 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_49, x_39); +x_8 = x_50; +goto block_38; +} +} +else +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_41); +x_51 = l_Lean_Parser_Term_funBinderStxQuot___elambda__1___closed__5; +x_52 = l_Lean_Parser_ParserState_mkErrorsAt(x_40, x_51, x_39); +x_8 = x_52; +goto block_38; +} +block_38: +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 3); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; +lean_inc(x_1); +x_10 = l_Lean_Parser_Term_funBinder___elambda__1(x_1, x_8); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +x_13 = l_Lean_Parser_tokenFn(x_1, x_10); +x_14 = lean_ctor_get(x_13, 3); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +x_16 = l_Array_back___at_Lean_Parser_checkStackTopFn___spec__1(x_15); +lean_dec(x_15); +if (lean_obj_tag(x_16) == 2) +{ +lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__4; +x_19 = lean_string_dec_eq(x_17, x_18); +lean_dec(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_21 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_20, x_12); +x_22 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_23 = l_Lean_Parser_ParserState_mkNode(x_21, x_22, x_7); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +x_24 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_13, x_24, x_7); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_16); +x_26 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_26, x_12); +x_28 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_7); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_14); +x_30 = l_Lean_Parser_antiquotNestedExpr___elambda__1___closed__7; +x_31 = l_Lean_Parser_ParserState_mkErrorsAt(x_13, x_30, x_12); +x_32 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_31, x_32, x_7); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_11); lean_dec(x_1); -return x_5; +x_34 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_35 = l_Lean_Parser_ParserState_mkNode(x_10, x_34, x_7); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_9); +lean_dec(x_1); +x_36 = l_Lean_Parser_Term_tacticStxQuot___elambda__1___closed__2; +x_37 = l_Lean_Parser_ParserState_mkNode(x_8, x_36, x_7); +return x_37; +} +} +} +else +{ +lean_dec(x_5); +lean_dec(x_1); +return x_4; } } } @@ -53857,6 +55610,8 @@ l_Lean_Parser_Term_explicitUniv___closed__10 = _init_l_Lean_Parser_Term_explicit lean_mark_persistent(l_Lean_Parser_Term_explicitUniv___closed__10); l_Lean_Parser_Term_explicitUniv___closed__11 = _init_l_Lean_Parser_Term_explicitUniv___closed__11(); lean_mark_persistent(l_Lean_Parser_Term_explicitUniv___closed__11); +l_Lean_Parser_Term_explicitUniv___closed__12 = _init_l_Lean_Parser_Term_explicitUniv___closed__12(); +lean_mark_persistent(l_Lean_Parser_Term_explicitUniv___closed__12); l_Lean_Parser_Term_explicitUniv = _init_l_Lean_Parser_Term_explicitUniv(); lean_mark_persistent(l_Lean_Parser_Term_explicitUniv); l_Lean_Parser_Term_namedPattern___elambda__1___closed__1 = _init_l_Lean_Parser_Term_namedPattern___elambda__1___closed__1(); @@ -53895,6 +55650,8 @@ l_Lean_Parser_Term_namedPattern___closed__7 = _init_l_Lean_Parser_Term_namedPatt lean_mark_persistent(l_Lean_Parser_Term_namedPattern___closed__7); l_Lean_Parser_Term_namedPattern___closed__8 = _init_l_Lean_Parser_Term_namedPattern___closed__8(); lean_mark_persistent(l_Lean_Parser_Term_namedPattern___closed__8); +l_Lean_Parser_Term_namedPattern___closed__9 = _init_l_Lean_Parser_Term_namedPattern___closed__9(); +lean_mark_persistent(l_Lean_Parser_Term_namedPattern___closed__9); l_Lean_Parser_Term_namedPattern = _init_l_Lean_Parser_Term_namedPattern(); lean_mark_persistent(l_Lean_Parser_Term_namedPattern); l_Lean_Parser_Term_id___elambda__1___closed__1 = _init_l_Lean_Parser_Term_id___elambda__1___closed__1(); @@ -54281,6 +56038,8 @@ l_Lean_Parser_Term_typeAscription___closed__5 = _init_l_Lean_Parser_Term_typeAsc lean_mark_persistent(l_Lean_Parser_Term_typeAscription___closed__5); l_Lean_Parser_Term_typeAscription___closed__6 = _init_l_Lean_Parser_Term_typeAscription___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_typeAscription___closed__6); +l_Lean_Parser_Term_typeAscription___closed__7 = _init_l_Lean_Parser_Term_typeAscription___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_typeAscription___closed__7); l_Lean_Parser_Term_typeAscription = _init_l_Lean_Parser_Term_typeAscription(); lean_mark_persistent(l_Lean_Parser_Term_typeAscription); l_Lean_Parser_Term_tupleTail___elambda__1___closed__1 = _init_l_Lean_Parser_Term_tupleTail___elambda__1___closed__1(); @@ -54303,6 +56062,8 @@ l_Lean_Parser_Term_tupleTail___closed__5 = _init_l_Lean_Parser_Term_tupleTail___ lean_mark_persistent(l_Lean_Parser_Term_tupleTail___closed__5); l_Lean_Parser_Term_tupleTail___closed__6 = _init_l_Lean_Parser_Term_tupleTail___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_tupleTail___closed__6); +l_Lean_Parser_Term_tupleTail___closed__7 = _init_l_Lean_Parser_Term_tupleTail___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_tupleTail___closed__7); l_Lean_Parser_Term_tupleTail = _init_l_Lean_Parser_Term_tupleTail(); lean_mark_persistent(l_Lean_Parser_Term_tupleTail); l_Lean_Parser_Term_parenSpecial___closed__1 = _init_l_Lean_Parser_Term_parenSpecial___closed__1(); @@ -54504,6 +56265,8 @@ l_Lean_Parser_Term_fromTerm___closed__5 = _init_l_Lean_Parser_Term_fromTerm___cl lean_mark_persistent(l_Lean_Parser_Term_fromTerm___closed__5); l_Lean_Parser_Term_fromTerm___closed__6 = _init_l_Lean_Parser_Term_fromTerm___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_fromTerm___closed__6); +l_Lean_Parser_Term_fromTerm___closed__7 = _init_l_Lean_Parser_Term_fromTerm___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_fromTerm___closed__7); l_Lean_Parser_Term_fromTerm = _init_l_Lean_Parser_Term_fromTerm(); lean_mark_persistent(l_Lean_Parser_Term_fromTerm); l_Lean_Parser_Term_haveAssign___elambda__1___closed__1 = _init_l_Lean_Parser_Term_haveAssign___elambda__1___closed__1(); @@ -54534,6 +56297,8 @@ l_Lean_Parser_Term_haveAssign___closed__5 = _init_l_Lean_Parser_Term_haveAssign_ lean_mark_persistent(l_Lean_Parser_Term_haveAssign___closed__5); l_Lean_Parser_Term_haveAssign___closed__6 = _init_l_Lean_Parser_Term_haveAssign___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_haveAssign___closed__6); +l_Lean_Parser_Term_haveAssign___closed__7 = _init_l_Lean_Parser_Term_haveAssign___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_haveAssign___closed__7); l_Lean_Parser_Term_haveAssign = _init_l_Lean_Parser_Term_haveAssign(); lean_mark_persistent(l_Lean_Parser_Term_haveAssign); l_Lean_Parser_Term_have___elambda__1___closed__1 = _init_l_Lean_Parser_Term_have___elambda__1___closed__1(); @@ -54705,6 +56470,8 @@ l_Lean_Parser_Term_structInstArrayRef___closed__7 = _init_l_Lean_Parser_Term_str lean_mark_persistent(l_Lean_Parser_Term_structInstArrayRef___closed__7); l_Lean_Parser_Term_structInstArrayRef___closed__8 = _init_l_Lean_Parser_Term_structInstArrayRef___closed__8(); lean_mark_persistent(l_Lean_Parser_Term_structInstArrayRef___closed__8); +l_Lean_Parser_Term_structInstArrayRef___closed__9 = _init_l_Lean_Parser_Term_structInstArrayRef___closed__9(); +lean_mark_persistent(l_Lean_Parser_Term_structInstArrayRef___closed__9); l_Lean_Parser_Term_structInstArrayRef = _init_l_Lean_Parser_Term_structInstArrayRef(); lean_mark_persistent(l_Lean_Parser_Term_structInstArrayRef); l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__1 = _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_structInstLVal___elambda__1___spec__1___closed__1(); @@ -54757,6 +56524,8 @@ l_Lean_Parser_Term_structInstField___closed__4 = _init_l_Lean_Parser_Term_struct lean_mark_persistent(l_Lean_Parser_Term_structInstField___closed__4); l_Lean_Parser_Term_structInstField___closed__5 = _init_l_Lean_Parser_Term_structInstField___closed__5(); lean_mark_persistent(l_Lean_Parser_Term_structInstField___closed__5); +l_Lean_Parser_Term_structInstField___closed__6 = _init_l_Lean_Parser_Term_structInstField___closed__6(); +lean_mark_persistent(l_Lean_Parser_Term_structInstField___closed__6); l_Lean_Parser_Term_structInstField = _init_l_Lean_Parser_Term_structInstField(); lean_mark_persistent(l_Lean_Parser_Term_structInstField); l_Lean_Parser_Term_structInst___elambda__1___closed__1 = _init_l_Lean_Parser_Term_structInst___elambda__1___closed__1(); @@ -54852,6 +56621,8 @@ l_Lean_Parser_Term_typeSpec___closed__3 = _init_l_Lean_Parser_Term_typeSpec___cl lean_mark_persistent(l_Lean_Parser_Term_typeSpec___closed__3); l_Lean_Parser_Term_typeSpec___closed__4 = _init_l_Lean_Parser_Term_typeSpec___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_typeSpec___closed__4); +l_Lean_Parser_Term_typeSpec___closed__5 = _init_l_Lean_Parser_Term_typeSpec___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_typeSpec___closed__5); l_Lean_Parser_Term_typeSpec = _init_l_Lean_Parser_Term_typeSpec(); lean_mark_persistent(l_Lean_Parser_Term_typeSpec); l_Lean_Parser_Term_optType___closed__1 = _init_l_Lean_Parser_Term_optType___closed__1(); @@ -55093,6 +56864,8 @@ l_Lean_Parser_Term_binderTactic___closed__6 = _init_l_Lean_Parser_Term_binderTac lean_mark_persistent(l_Lean_Parser_Term_binderTactic___closed__6); l_Lean_Parser_Term_binderTactic___closed__7 = _init_l_Lean_Parser_Term_binderTactic___closed__7(); lean_mark_persistent(l_Lean_Parser_Term_binderTactic___closed__7); +l_Lean_Parser_Term_binderTactic___closed__8 = _init_l_Lean_Parser_Term_binderTactic___closed__8(); +lean_mark_persistent(l_Lean_Parser_Term_binderTactic___closed__8); l_Lean_Parser_Term_binderTactic = _init_l_Lean_Parser_Term_binderTactic(); lean_mark_persistent(l_Lean_Parser_Term_binderTactic); l_Lean_Parser_Term_binderDefault___elambda__1___closed__1 = _init_l_Lean_Parser_Term_binderDefault___elambda__1___closed__1(); @@ -55111,6 +56884,8 @@ l_Lean_Parser_Term_binderDefault___closed__3 = _init_l_Lean_Parser_Term_binderDe lean_mark_persistent(l_Lean_Parser_Term_binderDefault___closed__3); l_Lean_Parser_Term_binderDefault___closed__4 = _init_l_Lean_Parser_Term_binderDefault___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_binderDefault___closed__4); +l_Lean_Parser_Term_binderDefault___closed__5 = _init_l_Lean_Parser_Term_binderDefault___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_binderDefault___closed__5); l_Lean_Parser_Term_binderDefault = _init_l_Lean_Parser_Term_binderDefault(); lean_mark_persistent(l_Lean_Parser_Term_binderDefault); l_Lean_Parser_Term_explicitBinder___elambda__1___closed__1 = _init_l_Lean_Parser_Term_explicitBinder___elambda__1___closed__1(); @@ -55139,6 +56914,8 @@ l_Lean_Parser_Term_explicitBinder___closed__8 = _init_l_Lean_Parser_Term_explici lean_mark_persistent(l_Lean_Parser_Term_explicitBinder___closed__8); l_Lean_Parser_Term_explicitBinder___closed__9 = _init_l_Lean_Parser_Term_explicitBinder___closed__9(); lean_mark_persistent(l_Lean_Parser_Term_explicitBinder___closed__9); +l_Lean_Parser_Term_explicitBinder___closed__10 = _init_l_Lean_Parser_Term_explicitBinder___closed__10(); +lean_mark_persistent(l_Lean_Parser_Term_explicitBinder___closed__10); l_Lean_Parser_Term_implicitBinder___elambda__1___closed__1 = _init_l_Lean_Parser_Term_implicitBinder___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_implicitBinder___elambda__1___closed__1); l_Lean_Parser_Term_implicitBinder___elambda__1___closed__2 = _init_l_Lean_Parser_Term_implicitBinder___elambda__1___closed__2(); @@ -55171,6 +56948,8 @@ l_Lean_Parser_Term_instBinder___closed__5 = _init_l_Lean_Parser_Term_instBinder_ lean_mark_persistent(l_Lean_Parser_Term_instBinder___closed__5); l_Lean_Parser_Term_instBinder___closed__6 = _init_l_Lean_Parser_Term_instBinder___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_instBinder___closed__6); +l_Lean_Parser_Term_instBinder___closed__7 = _init_l_Lean_Parser_Term_instBinder___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_instBinder___closed__7); l_Lean_Parser_Term_instBinder = _init_l_Lean_Parser_Term_instBinder(); lean_mark_persistent(l_Lean_Parser_Term_instBinder); l_Lean_Parser_Term_depArrow___elambda__1___closed__1 = _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__1(); @@ -55201,8 +56980,6 @@ l_Lean_Parser_Term_depArrow___elambda__1___closed__13 = _init_l_Lean_Parser_Term lean_mark_persistent(l_Lean_Parser_Term_depArrow___elambda__1___closed__13); l_Lean_Parser_Term_depArrow___elambda__1___closed__14 = _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__14(); lean_mark_persistent(l_Lean_Parser_Term_depArrow___elambda__1___closed__14); -l_Lean_Parser_Term_depArrow___elambda__1___closed__15 = _init_l_Lean_Parser_Term_depArrow___elambda__1___closed__15(); -lean_mark_persistent(l_Lean_Parser_Term_depArrow___elambda__1___closed__15); l_Lean_Parser_Term_depArrow___closed__1 = _init_l_Lean_Parser_Term_depArrow___closed__1(); lean_mark_persistent(l_Lean_Parser_Term_depArrow___closed__1); l_Lean_Parser_Term_depArrow___closed__2 = _init_l_Lean_Parser_Term_depArrow___closed__2(); @@ -55242,6 +57019,8 @@ l_Lean_Parser_Term_simpleBinder___closed__3 = _init_l_Lean_Parser_Term_simpleBin lean_mark_persistent(l_Lean_Parser_Term_simpleBinder___closed__3); l_Lean_Parser_Term_simpleBinder___closed__4 = _init_l_Lean_Parser_Term_simpleBinder___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_simpleBinder___closed__4); +l_Lean_Parser_Term_simpleBinder___closed__5 = _init_l_Lean_Parser_Term_simpleBinder___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_simpleBinder___closed__5); l_Lean_Parser_Term_simpleBinder = _init_l_Lean_Parser_Term_simpleBinder(); lean_mark_persistent(l_Lean_Parser_Term_simpleBinder); l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1___closed__1 = _init_l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda__1___spec__1___closed__1(); @@ -55867,6 +57646,8 @@ l_Lean_Parser_Term_doLet___closed__4 = _init_l_Lean_Parser_Term_doLet___closed__ lean_mark_persistent(l_Lean_Parser_Term_doLet___closed__4); l_Lean_Parser_Term_doLet___closed__5 = _init_l_Lean_Parser_Term_doLet___closed__5(); lean_mark_persistent(l_Lean_Parser_Term_doLet___closed__5); +l_Lean_Parser_Term_doLet___closed__6 = _init_l_Lean_Parser_Term_doLet___closed__6(); +lean_mark_persistent(l_Lean_Parser_Term_doLet___closed__6); l_Lean_Parser_Term_doLet = _init_l_Lean_Parser_Term_doLet(); lean_mark_persistent(l_Lean_Parser_Term_doLet); l_Lean_Parser_Term_doId___elambda__1___closed__1 = _init_l_Lean_Parser_Term_doId___elambda__1___closed__1(); @@ -55891,6 +57672,8 @@ l_Lean_Parser_Term_doId___closed__6 = _init_l_Lean_Parser_Term_doId___closed__6( lean_mark_persistent(l_Lean_Parser_Term_doId___closed__6); l_Lean_Parser_Term_doId___closed__7 = _init_l_Lean_Parser_Term_doId___closed__7(); lean_mark_persistent(l_Lean_Parser_Term_doId___closed__7); +l_Lean_Parser_Term_doId___closed__8 = _init_l_Lean_Parser_Term_doId___closed__8(); +lean_mark_persistent(l_Lean_Parser_Term_doId___closed__8); l_Lean_Parser_Term_doId = _init_l_Lean_Parser_Term_doId(); lean_mark_persistent(l_Lean_Parser_Term_doId); l_Lean_Parser_Term_doPat___elambda__1___closed__1 = _init_l_Lean_Parser_Term_doPat___elambda__1___closed__1(); @@ -55931,6 +57714,8 @@ l_Lean_Parser_Term_doPat___closed__9 = _init_l_Lean_Parser_Term_doPat___closed__ lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__9); l_Lean_Parser_Term_doPat___closed__10 = _init_l_Lean_Parser_Term_doPat___closed__10(); lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__10); +l_Lean_Parser_Term_doPat___closed__11 = _init_l_Lean_Parser_Term_doPat___closed__11(); +lean_mark_persistent(l_Lean_Parser_Term_doPat___closed__11); l_Lean_Parser_Term_doPat = _init_l_Lean_Parser_Term_doPat(); lean_mark_persistent(l_Lean_Parser_Term_doPat); l_Lean_Parser_Term_doExpr___elambda__1___closed__1 = _init_l_Lean_Parser_Term_doExpr___elambda__1___closed__1(); @@ -55949,6 +57734,8 @@ l_Lean_Parser_Term_doExpr___closed__3 = _init_l_Lean_Parser_Term_doExpr___closed lean_mark_persistent(l_Lean_Parser_Term_doExpr___closed__3); l_Lean_Parser_Term_doExpr___closed__4 = _init_l_Lean_Parser_Term_doExpr___closed__4(); lean_mark_persistent(l_Lean_Parser_Term_doExpr___closed__4); +l_Lean_Parser_Term_doExpr___closed__5 = _init_l_Lean_Parser_Term_doExpr___closed__5(); +lean_mark_persistent(l_Lean_Parser_Term_doExpr___closed__5); l_Lean_Parser_Term_doExpr = _init_l_Lean_Parser_Term_doExpr(); lean_mark_persistent(l_Lean_Parser_Term_doExpr); l_Lean_Parser_Term_doElem___closed__1 = _init_l_Lean_Parser_Term_doElem___closed__1(); @@ -56089,6 +57876,8 @@ l_Lean_Parser_Term_nativeRefl___closed__5 = _init_l_Lean_Parser_Term_nativeRefl_ lean_mark_persistent(l_Lean_Parser_Term_nativeRefl___closed__5); l_Lean_Parser_Term_nativeRefl___closed__6 = _init_l_Lean_Parser_Term_nativeRefl___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_nativeRefl___closed__6); +l_Lean_Parser_Term_nativeRefl___closed__7 = _init_l_Lean_Parser_Term_nativeRefl___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_nativeRefl___closed__7); l_Lean_Parser_Term_nativeRefl = _init_l_Lean_Parser_Term_nativeRefl(); lean_mark_persistent(l_Lean_Parser_Term_nativeRefl); res = l___regBuiltinParser_Lean_Parser_Term_nativeRefl(lean_io_mk_world()); @@ -56124,6 +57913,8 @@ l_Lean_Parser_Term_nativeDecide___closed__5 = _init_l_Lean_Parser_Term_nativeDec lean_mark_persistent(l_Lean_Parser_Term_nativeDecide___closed__5); l_Lean_Parser_Term_nativeDecide___closed__6 = _init_l_Lean_Parser_Term_nativeDecide___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_nativeDecide___closed__6); +l_Lean_Parser_Term_nativeDecide___closed__7 = _init_l_Lean_Parser_Term_nativeDecide___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_nativeDecide___closed__7); l_Lean_Parser_Term_nativeDecide = _init_l_Lean_Parser_Term_nativeDecide(); lean_mark_persistent(l_Lean_Parser_Term_nativeDecide); res = l___regBuiltinParser_Lean_Parser_Term_nativeDecide(lean_io_mk_world()); @@ -56159,6 +57950,8 @@ l_Lean_Parser_Term_decide___closed__5 = _init_l_Lean_Parser_Term_decide___closed lean_mark_persistent(l_Lean_Parser_Term_decide___closed__5); l_Lean_Parser_Term_decide___closed__6 = _init_l_Lean_Parser_Term_decide___closed__6(); lean_mark_persistent(l_Lean_Parser_Term_decide___closed__6); +l_Lean_Parser_Term_decide___closed__7 = _init_l_Lean_Parser_Term_decide___closed__7(); +lean_mark_persistent(l_Lean_Parser_Term_decide___closed__7); l_Lean_Parser_Term_decide = _init_l_Lean_Parser_Term_decide(); lean_mark_persistent(l_Lean_Parser_Term_decide); res = l___regBuiltinParser_Lean_Parser_Term_decide(lean_io_mk_world()); @@ -56299,6 +58092,8 @@ l_Lean_Parser_Term_namedArgument___closed__6 = _init_l_Lean_Parser_Term_namedArg lean_mark_persistent(l_Lean_Parser_Term_namedArgument___closed__6); l_Lean_Parser_Term_namedArgument___closed__7 = _init_l_Lean_Parser_Term_namedArgument___closed__7(); lean_mark_persistent(l_Lean_Parser_Term_namedArgument___closed__7); +l_Lean_Parser_Term_namedArgument___closed__8 = _init_l_Lean_Parser_Term_namedArgument___closed__8(); +lean_mark_persistent(l_Lean_Parser_Term_namedArgument___closed__8); l_Lean_Parser_Term_namedArgument = _init_l_Lean_Parser_Term_namedArgument(); lean_mark_persistent(l_Lean_Parser_Term_namedArgument); l_Lean_Parser_Term_app___closed__1 = _init_l_Lean_Parser_Term_app___closed__1(); @@ -56355,6 +58150,8 @@ l_Lean_Parser_Term_arrow___closed__2 = _init_l_Lean_Parser_Term_arrow___closed__ lean_mark_persistent(l_Lean_Parser_Term_arrow___closed__2); l_Lean_Parser_Term_arrow___closed__3 = _init_l_Lean_Parser_Term_arrow___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_arrow___closed__3); +l_Lean_Parser_Term_arrow___closed__4 = _init_l_Lean_Parser_Term_arrow___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_arrow___closed__4); l_Lean_Parser_Term_arrow = _init_l_Lean_Parser_Term_arrow(); lean_mark_persistent(l_Lean_Parser_Term_arrow); res = l___regBuiltinParser_Lean_Parser_Term_arrow(lean_io_mk_world()); @@ -56490,6 +58287,8 @@ l_Lean_Parser_Term_fcomp___closed__2 = _init_l_Lean_Parser_Term_fcomp___closed__ lean_mark_persistent(l_Lean_Parser_Term_fcomp___closed__2); l_Lean_Parser_Term_fcomp___closed__3 = _init_l_Lean_Parser_Term_fcomp___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_fcomp___closed__3); +l_Lean_Parser_Term_fcomp___closed__4 = _init_l_Lean_Parser_Term_fcomp___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_fcomp___closed__4); l_Lean_Parser_Term_fcomp = _init_l_Lean_Parser_Term_fcomp(); lean_mark_persistent(l_Lean_Parser_Term_fcomp); res = l___regBuiltinParser_Lean_Parser_Term_fcomp(lean_io_mk_world()); @@ -56509,6 +58308,8 @@ l_Lean_Parser_Term_prod___closed__2 = _init_l_Lean_Parser_Term_prod___closed__2( lean_mark_persistent(l_Lean_Parser_Term_prod___closed__2); l_Lean_Parser_Term_prod___closed__3 = _init_l_Lean_Parser_Term_prod___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_prod___closed__3); +l_Lean_Parser_Term_prod___closed__4 = _init_l_Lean_Parser_Term_prod___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_prod___closed__4); l_Lean_Parser_Term_prod = _init_l_Lean_Parser_Term_prod(); lean_mark_persistent(l_Lean_Parser_Term_prod); res = l___regBuiltinParser_Lean_Parser_Term_prod(lean_io_mk_world()); @@ -56528,6 +58329,8 @@ l_Lean_Parser_Term_add___closed__2 = _init_l_Lean_Parser_Term_add___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_add___closed__2); l_Lean_Parser_Term_add___closed__3 = _init_l_Lean_Parser_Term_add___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_add___closed__3); +l_Lean_Parser_Term_add___closed__4 = _init_l_Lean_Parser_Term_add___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_add___closed__4); l_Lean_Parser_Term_add = _init_l_Lean_Parser_Term_add(); lean_mark_persistent(l_Lean_Parser_Term_add); res = l___regBuiltinParser_Lean_Parser_Term_add(lean_io_mk_world()); @@ -56547,6 +58350,8 @@ l_Lean_Parser_Term_sub___closed__2 = _init_l_Lean_Parser_Term_sub___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_sub___closed__2); l_Lean_Parser_Term_sub___closed__3 = _init_l_Lean_Parser_Term_sub___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_sub___closed__3); +l_Lean_Parser_Term_sub___closed__4 = _init_l_Lean_Parser_Term_sub___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_sub___closed__4); l_Lean_Parser_Term_sub = _init_l_Lean_Parser_Term_sub(); lean_mark_persistent(l_Lean_Parser_Term_sub); res = l___regBuiltinParser_Lean_Parser_Term_sub(lean_io_mk_world()); @@ -56566,6 +58371,8 @@ l_Lean_Parser_Term_mul___closed__2 = _init_l_Lean_Parser_Term_mul___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_mul___closed__2); l_Lean_Parser_Term_mul___closed__3 = _init_l_Lean_Parser_Term_mul___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_mul___closed__3); +l_Lean_Parser_Term_mul___closed__4 = _init_l_Lean_Parser_Term_mul___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_mul___closed__4); l_Lean_Parser_Term_mul = _init_l_Lean_Parser_Term_mul(); lean_mark_persistent(l_Lean_Parser_Term_mul); res = l___regBuiltinParser_Lean_Parser_Term_mul(lean_io_mk_world()); @@ -56585,6 +58392,8 @@ l_Lean_Parser_Term_div___closed__2 = _init_l_Lean_Parser_Term_div___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_div___closed__2); l_Lean_Parser_Term_div___closed__3 = _init_l_Lean_Parser_Term_div___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_div___closed__3); +l_Lean_Parser_Term_div___closed__4 = _init_l_Lean_Parser_Term_div___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_div___closed__4); l_Lean_Parser_Term_div = _init_l_Lean_Parser_Term_div(); lean_mark_persistent(l_Lean_Parser_Term_div); res = l___regBuiltinParser_Lean_Parser_Term_div(lean_io_mk_world()); @@ -56604,6 +58413,8 @@ l_Lean_Parser_Term_mod___closed__2 = _init_l_Lean_Parser_Term_mod___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_mod___closed__2); l_Lean_Parser_Term_mod___closed__3 = _init_l_Lean_Parser_Term_mod___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_mod___closed__3); +l_Lean_Parser_Term_mod___closed__4 = _init_l_Lean_Parser_Term_mod___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_mod___closed__4); l_Lean_Parser_Term_mod = _init_l_Lean_Parser_Term_mod(); lean_mark_persistent(l_Lean_Parser_Term_mod); res = l___regBuiltinParser_Lean_Parser_Term_mod(lean_io_mk_world()); @@ -56623,6 +58434,8 @@ l_Lean_Parser_Term_modN___closed__2 = _init_l_Lean_Parser_Term_modN___closed__2( lean_mark_persistent(l_Lean_Parser_Term_modN___closed__2); l_Lean_Parser_Term_modN___closed__3 = _init_l_Lean_Parser_Term_modN___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_modN___closed__3); +l_Lean_Parser_Term_modN___closed__4 = _init_l_Lean_Parser_Term_modN___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_modN___closed__4); l_Lean_Parser_Term_modN = _init_l_Lean_Parser_Term_modN(); lean_mark_persistent(l_Lean_Parser_Term_modN); res = l___regBuiltinParser_Lean_Parser_Term_modN(lean_io_mk_world()); @@ -56642,6 +58455,8 @@ l_Lean_Parser_Term_pow___closed__2 = _init_l_Lean_Parser_Term_pow___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_pow___closed__2); l_Lean_Parser_Term_pow___closed__3 = _init_l_Lean_Parser_Term_pow___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_pow___closed__3); +l_Lean_Parser_Term_pow___closed__4 = _init_l_Lean_Parser_Term_pow___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_pow___closed__4); l_Lean_Parser_Term_pow = _init_l_Lean_Parser_Term_pow(); lean_mark_persistent(l_Lean_Parser_Term_pow); res = l___regBuiltinParser_Lean_Parser_Term_pow(lean_io_mk_world()); @@ -56663,6 +58478,8 @@ l_Lean_Parser_Term_le___closed__2 = _init_l_Lean_Parser_Term_le___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_le___closed__2); l_Lean_Parser_Term_le___closed__3 = _init_l_Lean_Parser_Term_le___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_le___closed__3); +l_Lean_Parser_Term_le___closed__4 = _init_l_Lean_Parser_Term_le___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_le___closed__4); l_Lean_Parser_Term_le = _init_l_Lean_Parser_Term_le(); lean_mark_persistent(l_Lean_Parser_Term_le); res = l___regBuiltinParser_Lean_Parser_Term_le(lean_io_mk_world()); @@ -56684,6 +58501,8 @@ l_Lean_Parser_Term_ge___closed__2 = _init_l_Lean_Parser_Term_ge___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_ge___closed__2); l_Lean_Parser_Term_ge___closed__3 = _init_l_Lean_Parser_Term_ge___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_ge___closed__3); +l_Lean_Parser_Term_ge___closed__4 = _init_l_Lean_Parser_Term_ge___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_ge___closed__4); l_Lean_Parser_Term_ge = _init_l_Lean_Parser_Term_ge(); lean_mark_persistent(l_Lean_Parser_Term_ge); res = l___regBuiltinParser_Lean_Parser_Term_ge(lean_io_mk_world()); @@ -56703,6 +58522,8 @@ l_Lean_Parser_Term_lt___closed__2 = _init_l_Lean_Parser_Term_lt___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_lt___closed__2); l_Lean_Parser_Term_lt___closed__3 = _init_l_Lean_Parser_Term_lt___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_lt___closed__3); +l_Lean_Parser_Term_lt___closed__4 = _init_l_Lean_Parser_Term_lt___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_lt___closed__4); l_Lean_Parser_Term_lt = _init_l_Lean_Parser_Term_lt(); lean_mark_persistent(l_Lean_Parser_Term_lt); res = l___regBuiltinParser_Lean_Parser_Term_lt(lean_io_mk_world()); @@ -56722,6 +58543,8 @@ l_Lean_Parser_Term_gt___closed__2 = _init_l_Lean_Parser_Term_gt___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_gt___closed__2); l_Lean_Parser_Term_gt___closed__3 = _init_l_Lean_Parser_Term_gt___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_gt___closed__3); +l_Lean_Parser_Term_gt___closed__4 = _init_l_Lean_Parser_Term_gt___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_gt___closed__4); l_Lean_Parser_Term_gt = _init_l_Lean_Parser_Term_gt(); lean_mark_persistent(l_Lean_Parser_Term_gt); res = l___regBuiltinParser_Lean_Parser_Term_gt(lean_io_mk_world()); @@ -56741,6 +58564,8 @@ l_Lean_Parser_Term_eq___closed__2 = _init_l_Lean_Parser_Term_eq___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_eq___closed__2); l_Lean_Parser_Term_eq___closed__3 = _init_l_Lean_Parser_Term_eq___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_eq___closed__3); +l_Lean_Parser_Term_eq___closed__4 = _init_l_Lean_Parser_Term_eq___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_eq___closed__4); l_Lean_Parser_Term_eq = _init_l_Lean_Parser_Term_eq(); lean_mark_persistent(l_Lean_Parser_Term_eq); res = l___regBuiltinParser_Lean_Parser_Term_eq(lean_io_mk_world()); @@ -56760,6 +58585,8 @@ l_Lean_Parser_Term_ne___closed__2 = _init_l_Lean_Parser_Term_ne___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_ne___closed__2); l_Lean_Parser_Term_ne___closed__3 = _init_l_Lean_Parser_Term_ne___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_ne___closed__3); +l_Lean_Parser_Term_ne___closed__4 = _init_l_Lean_Parser_Term_ne___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_ne___closed__4); l_Lean_Parser_Term_ne = _init_l_Lean_Parser_Term_ne(); lean_mark_persistent(l_Lean_Parser_Term_ne); res = l___regBuiltinParser_Lean_Parser_Term_ne(lean_io_mk_world()); @@ -56779,6 +58606,8 @@ l_Lean_Parser_Term_beq___closed__2 = _init_l_Lean_Parser_Term_beq___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_beq___closed__2); l_Lean_Parser_Term_beq___closed__3 = _init_l_Lean_Parser_Term_beq___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_beq___closed__3); +l_Lean_Parser_Term_beq___closed__4 = _init_l_Lean_Parser_Term_beq___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_beq___closed__4); l_Lean_Parser_Term_beq = _init_l_Lean_Parser_Term_beq(); lean_mark_persistent(l_Lean_Parser_Term_beq); res = l___regBuiltinParser_Lean_Parser_Term_beq(lean_io_mk_world()); @@ -56798,6 +58627,8 @@ l_Lean_Parser_Term_bne___closed__2 = _init_l_Lean_Parser_Term_bne___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_bne___closed__2); l_Lean_Parser_Term_bne___closed__3 = _init_l_Lean_Parser_Term_bne___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_bne___closed__3); +l_Lean_Parser_Term_bne___closed__4 = _init_l_Lean_Parser_Term_bne___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_bne___closed__4); l_Lean_Parser_Term_bne = _init_l_Lean_Parser_Term_bne(); lean_mark_persistent(l_Lean_Parser_Term_bne); res = l___regBuiltinParser_Lean_Parser_Term_bne(lean_io_mk_world()); @@ -56819,6 +58650,8 @@ l_Lean_Parser_Term_heq___closed__2 = _init_l_Lean_Parser_Term_heq___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_heq___closed__2); l_Lean_Parser_Term_heq___closed__3 = _init_l_Lean_Parser_Term_heq___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_heq___closed__3); +l_Lean_Parser_Term_heq___closed__4 = _init_l_Lean_Parser_Term_heq___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_heq___closed__4); l_Lean_Parser_Term_heq = _init_l_Lean_Parser_Term_heq(); lean_mark_persistent(l_Lean_Parser_Term_heq); res = l___regBuiltinParser_Lean_Parser_Term_heq(lean_io_mk_world()); @@ -56838,6 +58671,8 @@ l_Lean_Parser_Term_equiv___closed__2 = _init_l_Lean_Parser_Term_equiv___closed__ lean_mark_persistent(l_Lean_Parser_Term_equiv___closed__2); l_Lean_Parser_Term_equiv___closed__3 = _init_l_Lean_Parser_Term_equiv___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_equiv___closed__3); +l_Lean_Parser_Term_equiv___closed__4 = _init_l_Lean_Parser_Term_equiv___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_equiv___closed__4); l_Lean_Parser_Term_equiv = _init_l_Lean_Parser_Term_equiv(); lean_mark_persistent(l_Lean_Parser_Term_equiv); res = l___regBuiltinParser_Lean_Parser_Term_equiv(lean_io_mk_world()); @@ -56894,6 +58729,8 @@ l_Lean_Parser_Term_and___closed__2 = _init_l_Lean_Parser_Term_and___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_and___closed__2); l_Lean_Parser_Term_and___closed__3 = _init_l_Lean_Parser_Term_and___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_and___closed__3); +l_Lean_Parser_Term_and___closed__4 = _init_l_Lean_Parser_Term_and___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_and___closed__4); l_Lean_Parser_Term_and = _init_l_Lean_Parser_Term_and(); lean_mark_persistent(l_Lean_Parser_Term_and); res = l___regBuiltinParser_Lean_Parser_Term_and(lean_io_mk_world()); @@ -56915,6 +58752,8 @@ l_Lean_Parser_Term_or___closed__2 = _init_l_Lean_Parser_Term_or___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_or___closed__2); l_Lean_Parser_Term_or___closed__3 = _init_l_Lean_Parser_Term_or___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_or___closed__3); +l_Lean_Parser_Term_or___closed__4 = _init_l_Lean_Parser_Term_or___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_or___closed__4); l_Lean_Parser_Term_or = _init_l_Lean_Parser_Term_or(); lean_mark_persistent(l_Lean_Parser_Term_or); res = l___regBuiltinParser_Lean_Parser_Term_or(lean_io_mk_world()); @@ -56936,6 +58775,8 @@ l_Lean_Parser_Term_iff___closed__2 = _init_l_Lean_Parser_Term_iff___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_iff___closed__2); l_Lean_Parser_Term_iff___closed__3 = _init_l_Lean_Parser_Term_iff___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_iff___closed__3); +l_Lean_Parser_Term_iff___closed__4 = _init_l_Lean_Parser_Term_iff___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_iff___closed__4); l_Lean_Parser_Term_iff = _init_l_Lean_Parser_Term_iff(); lean_mark_persistent(l_Lean_Parser_Term_iff); res = l___regBuiltinParser_Lean_Parser_Term_iff(lean_io_mk_world()); @@ -56955,6 +58796,8 @@ l_Lean_Parser_Term_band___closed__2 = _init_l_Lean_Parser_Term_band___closed__2( lean_mark_persistent(l_Lean_Parser_Term_band___closed__2); l_Lean_Parser_Term_band___closed__3 = _init_l_Lean_Parser_Term_band___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_band___closed__3); +l_Lean_Parser_Term_band___closed__4 = _init_l_Lean_Parser_Term_band___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_band___closed__4); l_Lean_Parser_Term_band = _init_l_Lean_Parser_Term_band(); lean_mark_persistent(l_Lean_Parser_Term_band); res = l___regBuiltinParser_Lean_Parser_Term_band(lean_io_mk_world()); @@ -56974,6 +58817,8 @@ l_Lean_Parser_Term_bor___closed__2 = _init_l_Lean_Parser_Term_bor___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_bor___closed__2); l_Lean_Parser_Term_bor___closed__3 = _init_l_Lean_Parser_Term_bor___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_bor___closed__3); +l_Lean_Parser_Term_bor___closed__4 = _init_l_Lean_Parser_Term_bor___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_bor___closed__4); l_Lean_Parser_Term_bor = _init_l_Lean_Parser_Term_bor(); lean_mark_persistent(l_Lean_Parser_Term_bor); res = l___regBuiltinParser_Lean_Parser_Term_bor(lean_io_mk_world()); @@ -56993,6 +58838,8 @@ l_Lean_Parser_Term_append___closed__2 = _init_l_Lean_Parser_Term_append___closed lean_mark_persistent(l_Lean_Parser_Term_append___closed__2); l_Lean_Parser_Term_append___closed__3 = _init_l_Lean_Parser_Term_append___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_append___closed__3); +l_Lean_Parser_Term_append___closed__4 = _init_l_Lean_Parser_Term_append___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_append___closed__4); l_Lean_Parser_Term_append = _init_l_Lean_Parser_Term_append(); lean_mark_persistent(l_Lean_Parser_Term_append); res = l___regBuiltinParser_Lean_Parser_Term_append(lean_io_mk_world()); @@ -57010,6 +58857,8 @@ l_Lean_Parser_Term_cons___closed__2 = _init_l_Lean_Parser_Term_cons___closed__2( lean_mark_persistent(l_Lean_Parser_Term_cons___closed__2); l_Lean_Parser_Term_cons___closed__3 = _init_l_Lean_Parser_Term_cons___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_cons___closed__3); +l_Lean_Parser_Term_cons___closed__4 = _init_l_Lean_Parser_Term_cons___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_cons___closed__4); l_Lean_Parser_Term_cons = _init_l_Lean_Parser_Term_cons(); lean_mark_persistent(l_Lean_Parser_Term_cons); res = l___regBuiltinParser_Lean_Parser_Term_cons(lean_io_mk_world()); @@ -57029,6 +58878,8 @@ l_Lean_Parser_Term_orelse___closed__2 = _init_l_Lean_Parser_Term_orelse___closed lean_mark_persistent(l_Lean_Parser_Term_orelse___closed__2); l_Lean_Parser_Term_orelse___closed__3 = _init_l_Lean_Parser_Term_orelse___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_orelse___closed__3); +l_Lean_Parser_Term_orelse___closed__4 = _init_l_Lean_Parser_Term_orelse___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_orelse___closed__4); l_Lean_Parser_Term_orelse = _init_l_Lean_Parser_Term_orelse(); lean_mark_persistent(l_Lean_Parser_Term_orelse); res = l___regBuiltinParser_Lean_Parser_Term_orelse(lean_io_mk_world()); @@ -57048,6 +58899,8 @@ l_Lean_Parser_Term_orM___closed__2 = _init_l_Lean_Parser_Term_orM___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_orM___closed__2); l_Lean_Parser_Term_orM___closed__3 = _init_l_Lean_Parser_Term_orM___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_orM___closed__3); +l_Lean_Parser_Term_orM___closed__4 = _init_l_Lean_Parser_Term_orM___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_orM___closed__4); l_Lean_Parser_Term_orM = _init_l_Lean_Parser_Term_orM(); lean_mark_persistent(l_Lean_Parser_Term_orM); res = l___regBuiltinParser_Lean_Parser_Term_orM(lean_io_mk_world()); @@ -57067,6 +58920,8 @@ l_Lean_Parser_Term_andM___closed__2 = _init_l_Lean_Parser_Term_andM___closed__2( lean_mark_persistent(l_Lean_Parser_Term_andM___closed__2); l_Lean_Parser_Term_andM___closed__3 = _init_l_Lean_Parser_Term_andM___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_andM___closed__3); +l_Lean_Parser_Term_andM___closed__4 = _init_l_Lean_Parser_Term_andM___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_andM___closed__4); l_Lean_Parser_Term_andM = _init_l_Lean_Parser_Term_andM(); lean_mark_persistent(l_Lean_Parser_Term_andM); res = l___regBuiltinParser_Lean_Parser_Term_andM(lean_io_mk_world()); @@ -57086,6 +58941,8 @@ l_Lean_Parser_Term_andthen___closed__2 = _init_l_Lean_Parser_Term_andthen___clos lean_mark_persistent(l_Lean_Parser_Term_andthen___closed__2); l_Lean_Parser_Term_andthen___closed__3 = _init_l_Lean_Parser_Term_andthen___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_andthen___closed__3); +l_Lean_Parser_Term_andthen___closed__4 = _init_l_Lean_Parser_Term_andthen___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_andthen___closed__4); l_Lean_Parser_Term_andthen = _init_l_Lean_Parser_Term_andthen(); lean_mark_persistent(l_Lean_Parser_Term_andthen); res = l___regBuiltinParser_Lean_Parser_Term_andthen(lean_io_mk_world()); @@ -57105,6 +58962,8 @@ l_Lean_Parser_Term_bindOp___closed__2 = _init_l_Lean_Parser_Term_bindOp___closed lean_mark_persistent(l_Lean_Parser_Term_bindOp___closed__2); l_Lean_Parser_Term_bindOp___closed__3 = _init_l_Lean_Parser_Term_bindOp___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_bindOp___closed__3); +l_Lean_Parser_Term_bindOp___closed__4 = _init_l_Lean_Parser_Term_bindOp___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_bindOp___closed__4); l_Lean_Parser_Term_bindOp = _init_l_Lean_Parser_Term_bindOp(); lean_mark_persistent(l_Lean_Parser_Term_bindOp); res = l___regBuiltinParser_Lean_Parser_Term_bindOp(lean_io_mk_world()); @@ -57124,6 +58983,8 @@ l_Lean_Parser_Term_mapRev___closed__2 = _init_l_Lean_Parser_Term_mapRev___closed lean_mark_persistent(l_Lean_Parser_Term_mapRev___closed__2); l_Lean_Parser_Term_mapRev___closed__3 = _init_l_Lean_Parser_Term_mapRev___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_mapRev___closed__3); +l_Lean_Parser_Term_mapRev___closed__4 = _init_l_Lean_Parser_Term_mapRev___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_mapRev___closed__4); l_Lean_Parser_Term_mapRev = _init_l_Lean_Parser_Term_mapRev(); lean_mark_persistent(l_Lean_Parser_Term_mapRev); res = l___regBuiltinParser_Lean_Parser_Term_mapRev(lean_io_mk_world()); @@ -57141,6 +59002,8 @@ l_Lean_Parser_Term_seq___closed__2 = _init_l_Lean_Parser_Term_seq___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_seq___closed__2); l_Lean_Parser_Term_seq___closed__3 = _init_l_Lean_Parser_Term_seq___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_seq___closed__3); +l_Lean_Parser_Term_seq___closed__4 = _init_l_Lean_Parser_Term_seq___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_seq___closed__4); l_Lean_Parser_Term_seq = _init_l_Lean_Parser_Term_seq(); lean_mark_persistent(l_Lean_Parser_Term_seq); res = l___regBuiltinParser_Lean_Parser_Term_seq(lean_io_mk_world()); @@ -57160,6 +59023,8 @@ l_Lean_Parser_Term_seqLeft___closed__2 = _init_l_Lean_Parser_Term_seqLeft___clos lean_mark_persistent(l_Lean_Parser_Term_seqLeft___closed__2); l_Lean_Parser_Term_seqLeft___closed__3 = _init_l_Lean_Parser_Term_seqLeft___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_seqLeft___closed__3); +l_Lean_Parser_Term_seqLeft___closed__4 = _init_l_Lean_Parser_Term_seqLeft___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_seqLeft___closed__4); l_Lean_Parser_Term_seqLeft = _init_l_Lean_Parser_Term_seqLeft(); lean_mark_persistent(l_Lean_Parser_Term_seqLeft); res = l___regBuiltinParser_Lean_Parser_Term_seqLeft(lean_io_mk_world()); @@ -57179,6 +59044,8 @@ l_Lean_Parser_Term_seqRight___closed__2 = _init_l_Lean_Parser_Term_seqRight___cl lean_mark_persistent(l_Lean_Parser_Term_seqRight___closed__2); l_Lean_Parser_Term_seqRight___closed__3 = _init_l_Lean_Parser_Term_seqRight___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_seqRight___closed__3); +l_Lean_Parser_Term_seqRight___closed__4 = _init_l_Lean_Parser_Term_seqRight___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_seqRight___closed__4); l_Lean_Parser_Term_seqRight = _init_l_Lean_Parser_Term_seqRight(); lean_mark_persistent(l_Lean_Parser_Term_seqRight); res = l___regBuiltinParser_Lean_Parser_Term_seqRight(lean_io_mk_world()); @@ -57198,6 +59065,8 @@ l_Lean_Parser_Term_map___closed__2 = _init_l_Lean_Parser_Term_map___closed__2(); lean_mark_persistent(l_Lean_Parser_Term_map___closed__2); l_Lean_Parser_Term_map___closed__3 = _init_l_Lean_Parser_Term_map___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_map___closed__3); +l_Lean_Parser_Term_map___closed__4 = _init_l_Lean_Parser_Term_map___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_map___closed__4); l_Lean_Parser_Term_map = _init_l_Lean_Parser_Term_map(); lean_mark_persistent(l_Lean_Parser_Term_map); res = l___regBuiltinParser_Lean_Parser_Term_map(lean_io_mk_world()); @@ -57217,6 +59086,8 @@ l_Lean_Parser_Term_mapConst___closed__2 = _init_l_Lean_Parser_Term_mapConst___cl lean_mark_persistent(l_Lean_Parser_Term_mapConst___closed__2); l_Lean_Parser_Term_mapConst___closed__3 = _init_l_Lean_Parser_Term_mapConst___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_mapConst___closed__3); +l_Lean_Parser_Term_mapConst___closed__4 = _init_l_Lean_Parser_Term_mapConst___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_mapConst___closed__4); l_Lean_Parser_Term_mapConst = _init_l_Lean_Parser_Term_mapConst(); lean_mark_persistent(l_Lean_Parser_Term_mapConst); res = l___regBuiltinParser_Lean_Parser_Term_mapConst(lean_io_mk_world()); @@ -57236,6 +59107,8 @@ l_Lean_Parser_Term_mapConstRev___closed__2 = _init_l_Lean_Parser_Term_mapConstRe lean_mark_persistent(l_Lean_Parser_Term_mapConstRev___closed__2); l_Lean_Parser_Term_mapConstRev___closed__3 = _init_l_Lean_Parser_Term_mapConstRev___closed__3(); lean_mark_persistent(l_Lean_Parser_Term_mapConstRev___closed__3); +l_Lean_Parser_Term_mapConstRev___closed__4 = _init_l_Lean_Parser_Term_mapConstRev___closed__4(); +lean_mark_persistent(l_Lean_Parser_Term_mapConstRev___closed__4); l_Lean_Parser_Term_mapConstRev = _init_l_Lean_Parser_Term_mapConstRev(); lean_mark_persistent(l_Lean_Parser_Term_mapConstRev); res = l___regBuiltinParser_Lean_Parser_Term_mapConstRev(lean_io_mk_world());