// Lean compiler output
// Module: Lean.Elab.Do.Legacy
// Imports: public import Lean.Elab.BindersUtil public import Lean.Elab.PatternVar public import Lean.Elab.Quotation.Util meta import Lean.Parser.Do import Init.Omega
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
#pragma clang diagnostic ignored "-Wunused-label"
#elif defined(__GNUC__) && !defined(__CLANG__)
#pragma GCC diagnostic ignored "-Wunused-parameter"
#pragma GCC diagnostic ignored "-Wunused-label"
#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
#endif
#ifdef __cplusplus
extern "C" {
#endif
lean_object* l_Lean_replaceRef(lean_object*, lean_object*);
lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t);
lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Name_mkStr1(lean_object*);
lean_object* lean_st_ref_get(lean_object*);
lean_object* l_Lean_instHashableExtraModUse_hash___boxed(lean_object*);
lean_object* l_Lean_instBEqExtraModUse_beq___boxed(lean_object*, lean_object*);
lean_object* l_Lean_PersistentHashMap_empty(lean_object*, lean_object*, lean_object*, lean_object*);
extern lean_object* l___private_Lean_ExtraModUses_0__Lean_extraModUses;
lean_object* lean_st_ref_take(lean_object*);
lean_object* l_Lean_PersistentEnvExtension_addEntry___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*);
lean_object* lean_st_ref_set(lean_object*, lean_object*);
lean_object* l_Lean_SimplePersistentEnvExtension_getState___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint64_t l_Lean_instHashableExtraModUse_hash(lean_object*);
size_t lean_uint64_to_usize(uint64_t);
size_t lean_usize_shift_left(size_t, size_t);
size_t lean_usize_sub(size_t, size_t);
size_t lean_usize_land(size_t, size_t);
lean_object* lean_usize_to_nat(size_t);
lean_object* lean_array_get(lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_instBEqExtraModUse_beq(lean_object*, lean_object*);
size_t lean_usize_shift_right(size_t, size_t);
lean_object* lean_array_get_size(lean_object*);
uint8_t lean_nat_dec_lt(lean_object*, lean_object*);
lean_object* lean_array_fget_borrowed(lean_object*, lean_object*);
lean_object* lean_nat_add(lean_object*, lean_object*);
lean_object* l_Lean_Name_append(lean_object*, lean_object*);
uint8_t l___private_Lean_Util_Trace_0__Lean_checkTraceOption_go(lean_object*, lean_object*, lean_object*);
double lean_float_of_nat(lean_object*);
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
lean_object* l_Lean_PersistentArray_push___redArg(lean_object*, lean_object*);
lean_object* l_Lean_stringToMessageData(lean_object*);
lean_object* l_Lean_MessageData_ofName(lean_object*);
uint8_t l_Lean_Name_isAnonymous(lean_object*);
uint8_t lean_usize_dec_lt(size_t, size_t);
lean_object* lean_array_uget_borrowed(lean_object*, size_t);
size_t lean_array_size(lean_object*);
size_t lean_usize_add(size_t, size_t);
lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*);
lean_object* lean_array_push(lean_object*, lean_object*);
uint8_t lean_nat_dec_le(lean_object*, lean_object*);
size_t lean_usize_of_nat(lean_object*);
uint8_t lean_usize_dec_eq(size_t, size_t);
lean_object* l_Lean_Syntax_getId(lean_object*);
uint8_t l_Lean_Name_cmp(lean_object*, lean_object*);
lean_object* lean_nat_mul(lean_object*, lean_object*);
lean_object* l_Std_DTreeMap_Internal_Impl_maxView___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Std_DTreeMap_Internal_Impl_minView___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_String_toRawSubstring_x27(lean_object*);
lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Elab_expandMacroImpl_x3f(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Environment_setExporting(lean_object*, uint8_t);
lean_object* l_Lean_mkPrivateName(lean_object*, lean_object*);
uint8_t l_Lean_Environment_contains(lean_object*, lean_object*, uint8_t);
lean_object* l_Lean_privateToUserName(lean_object*);
lean_object* l_Lean_ResolveName_resolveNamespace(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Environment_header(lean_object*);
extern lean_object* l_Lean_instInhabitedEffectiveImport_default;
lean_object* l_Lean_Environment_getModuleIdxFor_x3f(lean_object*, lean_object*);
lean_object* l_Lean_Name_hash___override___boxed(lean_object*);
lean_object* l_Lean_Name_beq___boxed(lean_object*, lean_object*);
lean_object* l_Std_HashMap_instInhabited(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
extern lean_object* l_Lean_indirectModUseExt;
uint64_t lean_uint64_shift_right(uint64_t, uint64_t);
uint64_t lean_uint64_xor(uint64_t, uint64_t);
uint8_t lean_name_eq(lean_object*, lean_object*);
uint64_t lean_uint64_of_nat(lean_object*);
uint8_t l_Lean_isMarkedMeta(lean_object*, lean_object*);
lean_object* l_List_reverse___redArg(lean_object*);
lean_object* l_Lean_MessageData_ofFormat(lean_object*);
uint8_t lean_string_dec_eq(lean_object*, lean_object*);
extern lean_object* l_Lean_maxRecDepthErrorMessage;
extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId;
lean_object* lean_array_uget(lean_object*, size_t);
lean_object* lean_array_uset(lean_object*, size_t, lean_object*);
lean_object* l_Lean_Core_mkFreshUserName(lean_object*, lean_object*, lean_object*);
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
lean_object* l_Array_mkArray0(lean_object*);
lean_object* l_Lean_Syntax_node4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Core_withFreshMacroScope___redArg(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getKind(lean_object*);
uint8_t l_Lean_Syntax_isNone(lean_object*);
lean_object* l_Lean_Syntax_getArgs(lean_object*);
lean_object* lean_array_to_list(lean_object*);
lean_object* l_List_appendTR___redArg(lean_object*, lean_object*);
lean_object* l_Lean_Core_checkSystem(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Macro_expandMacro_x3f(lean_object*, lean_object*, lean_object*);
lean_object* l_Array_reverse___redArg(lean_object*);
lean_object* l_Array_zip___redArg(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*);
lean_object* lean_array_mk(lean_object*);
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_set(lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Syntax_isQuot(lean_object*);
uint8_t l_Lean_Syntax_isAntiquot(lean_object*);
uint8_t l_Lean_Syntax_isEscapedAntiquot(lean_object*);
lean_object* l_Lean_Syntax_getNumArgs(lean_object*);
lean_object* lean_array_get_borrowed(lean_object*, lean_object*, lean_object*);
lean_object* l_List_lengthTR___redArg(lean_object*);
lean_object* l_Lean_Name_num___override(lean_object*, lean_object*);
lean_object* l_Lean_mkIdentFrom(lean_object*, lean_object*, uint8_t);
uint8_t l_Lean_Syntax_structEq(lean_object*, lean_object*);
uint8_t l_List_isEmpty___redArg(lean_object*);
lean_object* l_Lean_MessageData_ofSyntax(lean_object*);
lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*);
lean_object* lean_nat_sub(lean_object*, lean_object*);
lean_object* l_Array_extract___redArg(lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_instMonad___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_instMonad___lam__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_instMonad___lam__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_map(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_pure(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_seqRight(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_EStateM_bind(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_instInhabitedOfMonad___redArg(lean_object*, lean_object*);
lean_object* l_instInhabitedForall___redArg___lam__0___boxed(lean_object*, lean_object*);
lean_object* lean_panic_fn(lean_object*, lean_object*);
uint8_t l_Lean_Syntax_isIdent(lean_object*);
lean_object* lean_simp_macro_scopes(lean_object*);
lean_object* l_Lean_Macro_throwErrorAt___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Array_append___redArg(lean_object*, lean_object*);
lean_object* l_Lean_Name_mkStr5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_expandOptType(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_mkStrLit(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_node8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_mkAtomFrom(lean_object*, lean_object*, uint8_t);
lean_object* l_Lean_mkHole(lean_object*, uint8_t);
lean_object* l_Lean_Syntax_mkApp(lean_object*, lean_object*);
lean_object* lean_st_mk_ref(lean_object*);
lean_object* l_Lean_Elab_getBetterRef(lean_object*, lean_object*);
extern lean_object* l_Lean_Elab_pp_macroStack;
lean_object* l_Std_DTreeMap_Internal_Impl_Const_get_x3f___at___00Lean_NameMap_find_x3f_spec__0___redArg(lean_object*, lean_object*);
lean_object* l_Lean_indentD(lean_object*);
lean_object* l_Lean_Syntax_getSepArgs(lean_object*);
lean_object* l_Lean_Meta_saveState___redArg(lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_getPatternsVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_SavedState_restore___redArg(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_Quotation_getPatternsVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Exception_isInterrupt(lean_object*);
uint8_t l_Lean_Exception_isRuntime(lean_object*);
lean_object* l_Lean_Elab_Term_expandMatchAlt(lean_object*);
lean_object* l_Lean_Elab_Term_getPatternVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_Quotation_getPatternVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Array_eraseIdx___redArg(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_SepArray_ofElems(lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getOptional_x3f(lean_object*);
lean_object* l_Array_instInhabited(lean_object*);
lean_object* l_Lean_HygieneInfo_mkIdent(lean_object*, lean_object*, uint8_t);
lean_object* l_Lean_Elab_Term_withPushMacroExpansionStack___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*);
lean_object* l_Lean_MessageData_ofList(lean_object*);
lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_synthInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_mkFreshLevelMVar(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Level_succ___override(lean_object*);
lean_object* l_Lean_mkSort(lean_object*);
lean_object* l_Lean_mkArrow(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_mkFreshExprMVar(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_tryPostponeIfNoneOrMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_whnfCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t lean_expr_eqv(lean_object*, lean_object*);
lean_object* l_Lean_Expr_getAppFn(lean_object*);
uint8_t l_Lean_Expr_isMVar(lean_object*);
lean_object* l_Lean_Meta_unfoldDefinition_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_indentExpr(lean_object*);
lean_object* l_Lean_Elab_Term_exprToSyntax(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Elab_Term_elabTermEnsuringType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0___boxed(lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Lean"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "Parser"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Term"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "doSeqBracketed"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__3_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__3_value),LEAN_SCALAR_PTR_LITERAL(138, 57, 219, 150, 35, 125, 74, 168)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "doSeqIndent"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5_value),LEAN_SCALAR_PTR_LITERAL(93, 115, 138, 230, 225, 195, 43, 46)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3___boxed(lean_object*, lean_object*);
static lean_once_cell_t l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0;
static const lean_string_object l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = "while expanding"};
static const lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__1 = (const lean_object*)&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__1_value;
static const lean_ctor_object l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 3}, .m_objs = {((lean_object*)&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__1_value)}};
static const lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__2 = (const lean_object*)&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__2_value;
static lean_once_cell_t l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3;
LEAN_EXPORT lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4(lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 25, .m_capacity = 25, .m_length = 24, .m_data = "with resulting expansion"};
static const lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__0_value;
static const lean_ctor_object l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 3}, .m_objs = {((lean_object*)&l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__0_value)}};
static const lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__1 = (const lean_object*)&l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__1_value;
static lean_once_cell_t l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2;
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_elabLiftMethod___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 67, .m_capacity = 67, .m_length = 66, .m_data = "invalid use of `(<- ...)`, must be nested inside a 'do' expression"};
static const lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_elabLiftMethod___redArg___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "termReturn"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__0_value),LEAN_SCALAR_PTR_LITERAL(199, 245, 184, 22, 191, 152, 219, 48)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "termUnless"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__2_value),LEAN_SCALAR_PTR_LITERAL(177, 93, 2, 77, 146, 4, 53, 233)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "termTry"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__4_value),LEAN_SCALAR_PTR_LITERAL(126, 80, 182, 167, 150, 154, 214, 88)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "termFor"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__6_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__6_value),LEAN_SCALAR_PTR_LITERAL(97, 224, 91, 133, 33, 161, 189, 246)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "do"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8_value),LEAN_SCALAR_PTR_LITERAL(181, 206, 135, 90, 45, 65, 187, 80)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9_value;
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___boxed(lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "letPatDecl"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0_value),LEAN_SCALAR_PTR_LITERAL(9, 25, 156, 50, 29, 105, 147, 239)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "letEqnsDecl"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__2_value),LEAN_SCALAR_PTR_LITERAL(82, 210, 72, 51, 179, 245, 26, 94)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "letIdDecl"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__4_value),LEAN_SCALAR_PTR_LITERAL(82, 96, 243, 36, 251, 209, 136, 237)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 19, .m_capacity = 19, .m_length = 18, .m_data = "letIdDeclNoBinders"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__6_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__6_value),LEAN_SCALAR_PTR_LITERAL(205, 0, 127, 82, 201, 96, 42, 5)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7_value;
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___boxed(lean_object*);
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders___boxed(lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doLetRec"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__0_value),LEAN_SCALAR_PTR_LITERAL(82, 47, 84, 182, 64, 225, 123, 219)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "letrec"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__2_value),LEAN_SCALAR_PTR_LITERAL(164, 19, 234, 96, 193, 73, 5, 238)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "let"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4_value),LEAN_SCALAR_PTR_LITERAL(155, 166, 195, 152, 24, 103, 8, 2)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "doLet"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6_value),LEAN_SCALAR_PTR_LITERAL(60, 171, 222, 145, 87, 124, 9, 205)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "doLetArrow"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8_value),LEAN_SCALAR_PTR_LITERAL(155, 105, 77, 168, 26, 188, 17, 34)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "fun"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10_value),LEAN_SCALAR_PTR_LITERAL(249, 155, 133, 242, 71, 132, 191, 97)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "matchAlts"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__12 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__12_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__12_value),LEAN_SCALAR_PTR_LITERAL(193, 186, 26, 109, 82, 172, 197, 183)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13_value;
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___boxed(lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "liftMethod"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__0_value),LEAN_SCALAR_PTR_LITERAL(217, 228, 135, 132, 46, 84, 105, 88)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 18, .m_capacity = 18, .m_length = 17, .m_data = "termDepIfThenElse"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__2_value),LEAN_SCALAR_PTR_LITERAL(191, 94, 17, 11, 145, 108, 236, 173)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "termIfThenElse"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__4_value),LEAN_SCALAR_PTR_LITERAL(225, 209, 193, 165, 165, 31, 104, 198)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5_value;
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod(lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0(lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___boxed(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Bind"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(222, 192, 22, 179, 212, 181, 141, 219)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__1_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 64, .m_capacity = 64, .m_length = 63, .m_data = "invalid `do` notation, expected type is not a monad application"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__0_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 118, .m_capacity = 118, .m_length = 117, .m_data = "\nYou can use the `do` notation in pure code by writing `Id.run do` instead of `do`, where `Id` is the identity monad."};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__2_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_array_object l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_array_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 246}, .m_size = 0, .m_capacity = 0, .m_data = {}};
static const lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt_default(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr_default___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr_default(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr(lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "hole"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(135, 134, 219, 115, 97, 130, 74, 55)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_array_object l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_array_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 246}, .m_size = 0, .m_capacity = 0, .m_data = {}};
static const lean_object* l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_AltExpr_vars___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_AltExpr_vars(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorIdx(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorIdx___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_decl_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_decl_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_reassign_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_reassign_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_joinpoint_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_joinpoint_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_seq_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_seq_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_action_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_action_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_break_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_break_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_continue_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_continue_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_return_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_return_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ite_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ite_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_match_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_match_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_matchExpr_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_matchExpr_elim(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_jmp_elim___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_jmp_elim(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_ctor_object l_Lean_Elab_Term_Do_instInhabitedCode_default___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 4}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_instInhabitedCode_default___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_instInhabitedCode_default___closed__0_value;
LEAN_EXPORT const lean_object* l_Lean_Elab_Term_Do_instInhabitedCode_default = (const lean_object*)&l_Lean_Elab_Term_Do_instInhabitedCode_default___closed__0_value;
LEAN_EXPORT const lean_object* l_Lean_Elab_Term_Do_instInhabitedCode = (const lean_object*)&l_Lean_Elab_Term_Do_instInhabitedCode_default___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_getRef_x3f(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_getRef_x3f___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0___boxed(lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = " "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 3}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__0_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__1_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData(lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__4(lean_object*, lean_object*);
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0___boxed(lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "\n| "};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = " => "};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__2_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "let "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__0_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = " := ...\n"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__2_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = " := "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__4_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "\n"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__6_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "break "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__8_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "continue "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__10_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "return "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__12 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__12_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "if "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__14 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__14_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = " then "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__16 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__16_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "\nelse"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__18 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__18_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "match "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__20 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__20_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = " with"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__22 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__22_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 1, .m_capacity = 1, .m_length = 0, .m_data = ""};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "| _ => "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__24 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__24_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "match_expr "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__26 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__26_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "@"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 3}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__4_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3(lean_object*, lean_object*, size_t, size_t, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__28_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = "(meta := false)"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__28 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__28_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "jmp "};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__29 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__29_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_CodeBlock_toMessageData(lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPointPred(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPointPred___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPoint___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPoint___lam__0___boxed(lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_hasExitPoint___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasExitPoint___lam__0___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_hasExitPoint___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_hasExitPoint___closed__0_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPoint(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPoint___boxed(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasReturn___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasReturn___lam__0___boxed(lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_hasReturn___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasReturn___lam__0___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_hasReturn___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_hasReturn___closed__0_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasReturn(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasReturn___boxed(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasTerminalAction___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasTerminalAction___lam__0___boxed(lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_hasTerminalAction___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasTerminalAction___lam__0___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_hasTerminalAction___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_hasTerminalAction___closed__0_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasTerminalAction(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasTerminalAction___boxed(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinue___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinue___lam__0___boxed(lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_hasBreakContinue___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasBreakContinue___lam__0___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_hasBreakContinue___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_hasBreakContinue___closed__0_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinue(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinue___boxed(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0___boxed(lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_hasBreakContinueReturn___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_hasBreakContinueReturn___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_hasBreakContinueReturn___closed__0_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinueReturn(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinueReturn___boxed(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "null"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(24, 58, 49, 223, 146, 207, 197, 136)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doIdDecl"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__3_value),LEAN_SCALAR_PTR_LITERAL(41, 95, 84, 160, 28, 70, 78, 179)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "y"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__5_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__5_value),LEAN_SCALAR_PTR_LITERAL(72, 55, 55, 9, 143, 73, 230, 150)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 1, .m_data = "←"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "doExpr"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__9_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__9_value),LEAN_SCALAR_PTR_LITERAL(130, 168, 60, 255, 153, 218, 88, 77)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__3(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6___boxed(lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 19, .m_capacity = 19, .m_length = 18, .m_data = "ensureExpectedType"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__0_value),LEAN_SCALAR_PTR_LITERAL(5, 110, 46, 77, 98, 150, 56, 4)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 22, .m_capacity = 22, .m_length = 21, .m_data = "ensure_expected_type%"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "str"};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__3_value),LEAN_SCALAR_PTR_LITERAL(255, 188, 142, 1, 190, 33, 34, 128)}};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 30, .m_capacity = 30, .m_length = 29, .m_data = "\"type mismatch, result value\""};
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__10(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_convertTerminalActionIntoJmp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJP(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJP___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJPs(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJPs___boxed(lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "__do_jp"};
static const lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__0_value),LEAN_SCALAR_PTR_LITERAL(186, 121, 241, 59, 37, 189, 140, 219)}};
static const lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__1_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_insertVars(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_insertVars___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseVars(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseVars___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseOptVar(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0___boxed(lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "Unit.unit"};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Unit"};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__2_value;
static const lean_string_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "unit"};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__2_value),LEAN_SCALAR_PTR_LITERAL(230, 84, 106, 234, 91, 210, 120, 136)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__3_value),LEAN_SCALAR_PTR_LITERAL(87, 186, 243, 194, 96, 12, 218, 7)}};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__5_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__6_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg___boxed(lean_object*, lean_object*, lean_object*);
static lean_once_cell_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static size_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0;
static lean_once_cell_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static size_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1;
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg(lean_object*, size_t, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg___boxed(lean_object*, lean_object*);
static lean_once_cell_t l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static double l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0;
static const lean_array_object l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_array_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 246}, .m_size = 0, .m_capacity = 0, .m_data = {}};
static const lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1 = (const lean_object*)&l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1_value;
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "trace"};
static const lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__0 = (const lean_object*)&l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__0_value;
static const lean_ctor_object l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__0_value),LEAN_SCALAR_PTR_LITERAL(212, 145, 141, 177, 67, 149, 127, 197)}};
static const lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1 = (const lean_object*)&l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1_value;
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*);
static const lean_closure_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_instBEqExtraModUse_beq___boxed, .m_arity = 2, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__0 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__0_value;
static const lean_closure_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_instHashableExtraModUse_hash___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__1 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__1_value;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "extraModUses"};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__7 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__7_value;
static const lean_ctor_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__7_value),LEAN_SCALAR_PTR_LITERAL(27, 95, 70, 98, 97, 66, 56, 109)}};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8_value;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = " extra mod use "};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__9 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__9_value;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = " of "};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__11 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__11_value;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "recording "};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__13 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__13_value;
static lean_once_cell_t l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "regular"};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15_value;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "meta"};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16_value;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "private"};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17_value;
static const lean_string_object l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "public"};
static const lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18 = (const lean_object*)&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18_value;
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg___boxed(lean_object*, lean_object*);
static lean_once_cell_t l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static uint64_t l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0;
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___boxed(lean_object*, lean_object*);
static const lean_closure_object l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Name_beq___boxed, .m_arity = 2, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__0 = (const lean_object*)&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__0_value;
static const lean_closure_object l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Name_hash___override___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__1 = (const lean_object*)&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__1_value;
static lean_once_cell_t l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2;
static const lean_array_object l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_array_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 246}, .m_size = 0, .m_capacity = 0, .m_data = {}};
static const lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3 = (const lean_object*)&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3_value;
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3___boxed(lean_object*, lean_object*, lean_object*);
static lean_once_cell_t l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0;
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg();
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "runtime"};
static const lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__0 = (const lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__0_value;
static const lean_string_object l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "maxRecDepth"};
static const lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__1 = (const lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__1_value;
static const lean_ctor_object l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__0_value),LEAN_SCALAR_PTR_LITERAL(2, 128, 123, 132, 117, 90, 116, 101)}};
static const lean_ctor_object l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2_value_aux_0),((lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__1_value),LEAN_SCALAR_PTR_LITERAL(88, 230, 219, 180, 63, 89, 202, 3)}};
static const lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2 = (const lean_object*)&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2_value;
static lean_once_cell_t l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3;
static lean_once_cell_t l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4;
static lean_once_cell_t l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5;
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 158, .m_capacity = 158, .m_length = 157, .m_data = "maximum recursion depth has been reached\nuse `set_option maxRecDepth <num>` to increase limit\nuse `set_option diagnostics true` to get diagnostic information"};
static const lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkJmp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkJmp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11(lean_object*, lean_object*, size_t, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0___boxed, .m_arity = 9, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "app"};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(69, 118, 10, 41, 220, 156, 243, 179)}};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "Pure.pure"};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3;
static const lean_string_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Pure"};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "pure"};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__4_value),LEAN_SCALAR_PTR_LITERAL(121, 135, 27, 238, 232, 181, 75, 85)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value),LEAN_SCALAR_PTR_LITERAL(204, 106, 105, 165, 210, 13, 14, 1)}};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__7_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_closure_object l_Lean_Elab_Term_Do_pullExitPointsAux___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0, .m_arity = 3, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___closed__0_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_array_object l_Lean_Elab_Term_Do_pullExitPoints___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_array_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 246}, .m_size = 0, .m_capacity = 0, .m_data = {}};
static const lean_object* l_Lean_Elab_Term_Do_pullExitPoints___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_pullExitPoints___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPoints(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPoints___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVarsAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVarsAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_ctor_object l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(1) << 1) | 1))}};
static const lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__0 = (const lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__0_value;
static const lean_ctor_object l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 0}, .m_objs = {((lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__0_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__1 = (const lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__1_value;
static const lean_ctor_object l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__1_value)}};
static const lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__2 = (const lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__2_value;
static const lean_ctor_object l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 0}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__3 = (const lean_object*)&l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__3_value;
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_homogenize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_homogenize___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkVarDeclCore(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReassignCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReassignCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSeq(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSeq___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkTerminalAction(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReturn(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkBreak(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkContinue(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkIte(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkIte___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "typeAscription"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__0_value),LEAN_SCALAR_PTR_LITERAL(247, 209, 88, 141, 5, 195, 49, 74)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "hygienicLParen"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__2_value),LEAN_SCALAR_PTR_LITERAL(41, 104, 206, 51, 21, 254, 100, 101)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "("};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "hygieneInfo"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__5_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__5_value),LEAN_SCALAR_PTR_LITERAL(27, 64, 36, 144, 170, 151, 255, 136)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Elab"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "Do"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value),LEAN_SCALAR_PTR_LITERAL(52, 247, 248, 201, 92, 23, 188, 159)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(252, 225, 247, 249, 114, 131, 135, 109)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9_value),LEAN_SCALAR_PTR_LITERAL(188, 117, 138, 85, 211, 175, 171, 214)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__10_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__11 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__11_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "TSyntax"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__12 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__12_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "Compat"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__13 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__13_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__12_value),LEAN_SCALAR_PTR_LITERAL(208, 86, 51, 178, 37, 75, 0, 6)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__13_value),LEAN_SCALAR_PTR_LITERAL(233, 134, 124, 217, 96, 118, 79, 86)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__14_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__15 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__15_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "Meta"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__16 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__16_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__16_value),LEAN_SCALAR_PTR_LITERAL(194, 50, 106, 158, 41, 60, 103, 214)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__17_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__18 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__18_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__19_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__20 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__20_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__20_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__21 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__21_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__18_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__21_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__22 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__22_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__15_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__22_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__11_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__24 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__24_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "anonymousCtor"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__25 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__25_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__25_value),LEAN_SCALAR_PTR_LITERAL(56, 53, 154, 97, 179, 232, 94, 186)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__27_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 1, .m_data = "⟨"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__27 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__27_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__28_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 1, .m_data = "⟩"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__28 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__28_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = ":"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "PUnit"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30_value),LEAN_SCALAR_PTR_LITERAL(23, 153, 158, 141, 176, 162, 235, 153)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__33_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__33 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__33_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__34_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__34 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__34_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__35_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__34_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__35 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__35_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__36_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__33_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__35_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__36 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__36_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = ")"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit(lean_object*, lean_object*);
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value),LEAN_SCALAR_PTR_LITERAL(182, 237, 62, 79, 212, 57, 236, 253)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "PUnit.unit"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__2_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30_value),LEAN_SCALAR_PTR_LITERAL(23, 153, 158, 141, 176, 162, 235, 153)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__3_value),LEAN_SCALAR_PTR_LITERAL(146, 91, 82, 196, 249, 72, 203, 194)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__5_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__6_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__7_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__5_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__7_value)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkPureUnitAction(lean_object*, lean_object*);
static const lean_ctor_object l_Lean_Elab_Term_Do_mkUnless___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*3 + 0, .m_other = 3, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(2) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1_value),((lean_object*)&l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0_value)}};
static const lean_object* l_Lean_Elab_Term_Do_mkUnless___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_mkUnless___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkUnless(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkUnless___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatch(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatch___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatchExpr(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatchExpr___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg();
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_concat___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 28, .m_capacity = 28, .m_length = 27, .m_data = "`do` element is unreachable"};
static const lean_object* l_Lean_Elab_Term_Do_concat___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_concat___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_concat___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_concat___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_once_cell_t l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0;
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "letId"};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__0_value),LEAN_SCALAR_PTR_LITERAL(67, 92, 92, 51, 38, 250, 60, 190)}};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdVars___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 20, .m_capacity = 20, .m_length = 19, .m_data = "Lean.Elab.Do.Legacy"};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__2_value;
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdVars___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 31, .m_capacity = 31, .m_length = 30, .m_data = "Lean.Elab.Term.Do.getLetIdVars"};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__3_value;
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdVars___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 120, .m_capacity = 120, .m_length = 119, .m_data = "assertion violation: letId.isOfKind ``Parser.Term.letId\n  -- def letId := leading_parser binderIdent <|> hygieneInfo\n  "};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__4_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getLetIdVars___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__5;
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdVars___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "this"};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_getLetIdVars___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__6_value),LEAN_SCALAR_PTR_LITERAL(38, 116, 214, 236, 212, 160, 188, 150)}};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdVars___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdVars___closed__7_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetIdVars(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 35, .m_capacity = 35, .m_length = 34, .m_data = "Lean.Elab.Term.Do.getLetIdDeclVars"};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__0_value;
static const lean_string_object l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 272, .m_capacity = 272, .m_length = 271, .m_data = "assertion violation: letIdDecl.isOfKind ``Parser.Term.letIdDecl || letIdDecl.isOfKind ``Parser.Term.letIdDeclNoBinders\n  -- def letIdLhs : Parser := letId >> many (ppSpace >> letIdBinder) >> optType\n  -- def letIdDecl := leading_parser letIdLhs >> \" := \" >> termParser\n  "};
static const lean_object* l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__1_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetIdDeclVars(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternVarsEx(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternVarsEx___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternsVarsEx(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternsVarsEx___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetPatDeclVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetPatDeclVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 37, .m_capacity = 37, .m_length = 36, .m_data = "Lean.Elab.Term.Do.getLetEqnsDeclVars"};
static const lean_object* l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__0_value;
static const lean_string_object l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 212, .m_capacity = 212, .m_length = 211, .m_data = "assertion violation: letEqnsDecl.isOfKind ``Parser.Term.letEqnsDecl\n  -- def letIdLhs : Parser := letId >> many (ppSpace >> letIdBinder) >> optType\n  -- def letEqnsDecl := leading_parser letIdLhs >> matchAlts\n  "};
static const lean_object* l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__1_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetEqnsDeclVars(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getLetDeclVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 35, .m_capacity = 35, .m_length = 34, .m_data = "unexpected kind of let declaration"};
static const lean_object* l_Lean_Elab_Term_Do_getLetDeclVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getLetDeclVars___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getLetDeclVars___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getLetDeclVars___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetDeclVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetDeclVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoHaveVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoHaveVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetRecVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetRecVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoIdDeclVar(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoIdDeclVar___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoPatDeclVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoPatDeclVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "doPatDecl"};
static const lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__0_value),LEAN_SCALAR_PTR_LITERAL(205, 158, 71, 138, 110, 159, 158, 208)}};
static const lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 36, .m_capacity = 36, .m_length = 35, .m_data = "unexpected kind of `do` declaration"};
static const lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_getDoReassignVars___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 32, .m_capacity = 32, .m_length = 31, .m_data = "unexpected kind of reassignment"};
static const lean_object* l_Lean_Elab_Term_Do_getDoReassignVars___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_getDoReassignVars___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_getDoReassignVars___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_getDoReassignVars___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoReassignVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoReassignVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkDoSeq(lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1___boxed(lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "group"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(206, 113, 20, 57, 188, 177, 187, 30)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__1_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(uint8_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "doIf"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__0_value),LEAN_SCALAR_PTR_LITERAL(133, 56, 102, 181, 14, 156, 21, 0)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "doIfLet"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__2_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__2_value),LEAN_SCALAR_PTR_LITERAL(181, 227, 73, 225, 0, 143, 195, 11)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doIfProp"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__4_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__4_value),LEAN_SCALAR_PTR_LITERAL(55, 147, 210, 58, 86, 191, 41, 151)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "if"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "then"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "else"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "doIfLetPure"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__9 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__9_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__9_value),LEAN_SCALAR_PTR_LITERAL(30, 29, 142, 71, 96, 53, 139, 191)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "doIfLetBind"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__11 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__11_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__11_value),LEAN_SCALAR_PTR_LITERAL(251, 203, 116, 140, 48, 138, 26, 199)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "doMatch"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__13 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__13_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__13_value),LEAN_SCALAR_PTR_LITERAL(29, 50, 175, 23, 122, 111, 148, 60)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "match"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "matchDiscr"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__16 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__16_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__16_value),LEAN_SCALAR_PTR_LITERAL(99, 51, 127, 238, 206, 239, 57, 130)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "with"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "matchAlt"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__19 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__19_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__19_value),LEAN_SCALAR_PTR_LITERAL(178, 0, 203, 112, 215, 49, 100, 229)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "|"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "=>"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "_"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "doSeqItem"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24_value),LEAN_SCALAR_PTR_LITERAL(10, 94, 50, 120, 46, 251, 13, 13)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3(uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f(lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "doLetExpr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__0_value),LEAN_SCALAR_PTR_LITERAL(68, 239, 85, 151, 235, 111, 29, 229)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "doLetMetaExpr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__2_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__2_value),LEAN_SCALAR_PTR_LITERAL(231, 210, 172, 145, 91, 221, 30, 22)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "matchExprPat"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__4_value),LEAN_SCALAR_PTR_LITERAL(34, 152, 68, 102, 242, 224, 57, 35)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "doMatchExpr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__6_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__6_value),LEAN_SCALAR_PTR_LITERAL(72, 0, 49, 218, 206, 236, 229, 165)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "match_expr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "matchExprAlts"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__9_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__9_value),LEAN_SCALAR_PTR_LITERAL(88, 158, 245, 158, 91, 207, 89, 187)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "matchExprAlt"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__11 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__11_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__11_value),LEAN_SCALAR_PTR_LITERAL(156, 165, 255, 22, 123, 199, 70, 61)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 17, .m_capacity = 17, .m_length = 16, .m_data = "matchExprElseAlt"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__13 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__13_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__13_value),LEAN_SCALAR_PTR_LITERAL(249, 132, 98, 23, 98, 205, 167, 22)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = ":="};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "false"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__16 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__16_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkDoIfView(lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "MProd.mk"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "MProd"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "mk"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__3 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__3_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2_value),LEAN_SCALAR_PTR_LITERAL(14, 7, 204, 83, 215, 28, 179, 196)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value_aux_0),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__3_value),LEAN_SCALAR_PTR_LITERAL(206, 154, 92, 103, 254, 18, 5, 89)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__5 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__5_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__6 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__6_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__7 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__7_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__5_value),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__7_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_isDoExpr_x3f(lean_object*);
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_instMonad___lam__0, .m_arity = 5, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_instMonad___lam__1, .m_arity = 5, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_instMonad___lam__2, .m_arity = 5, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*2, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_map, .m_arity = 7, .m_num_fixed = 2, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*2, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_pure, .m_arity = 5, .m_num_fixed = 2, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*2, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_seqRight, .m_arity = 7, .m_num_fixed = 2, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5_value;
static const lean_closure_object l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*2, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_EStateM_bind, .m_arity = 7, .m_num_fixed = 2, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))} };
static const lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6 = (const lean_object*)&l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6_value;
LEAN_EXPORT lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0(lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "x"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__0_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__0_value),LEAN_SCALAR_PTR_LITERAL(243, 101, 181, 186, 114, 114, 131, 189)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__2_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "letConfig"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__3_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__3_value),LEAN_SCALAR_PTR_LITERAL(5, 186, 227, 151, 19, 40, 136, 241)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "letDecl"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5_value),LEAN_SCALAR_PTR_LITERAL(61, 47, 121, 206, 37, 68, 134, 111)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "proj"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__7 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__7_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__7_value),LEAN_SCALAR_PTR_LITERAL(103, 149, 207, 196, 17, 4, 77, 74)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "."};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "fieldIdx"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__10_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__10_value),LEAN_SCALAR_PTR_LITERAL(243, 141, 165, 29, 238, 211, 61, 163)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "1"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = ";"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "2"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 72, .m_capacity = 72, .m_length = 71, .m_data = "_private.Lean.Elab.Do.Legacy.0.Lean.Elab.Term.Do.destructTuple.destruct"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__15 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__15_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 34, .m_capacity = 34, .m_length = 33, .m_data = "unreachable code has been reached"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 17, .m_capacity = 17, .m_length = 16, .m_data = "withAnnotateTerm"};
static const lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__0_value),LEAN_SCALAR_PTR_LITERAL(245, 55, 241, 226, 210, 131, 126, 179)}};
static const lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 19, .m_capacity = 19, .m_length = 18, .m_data = "with_annotate_term"};
static const lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx(uint8_t);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_toCtorIdx(uint8_t);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_toCtorIdx___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToTerm_instInhabitedKind;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToTerm_Kind_isRegular(uint8_t);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_isRegular___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "paren"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__0_value),LEAN_SCALAR_PTR_LITERAL(124, 9, 161, 194, 227, 100, 20, 110)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "ToTerm"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value),LEAN_SCALAR_PTR_LITERAL(52, 247, 248, 201, 92, 23, 188, 159)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(252, 225, 247, 249, 114, 131, 135, 109)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_3 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9_value),LEAN_SCALAR_PTR_LITERAL(188, 117, 138, 85, 211, 175, 171, 214)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value_aux_3),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__2_value),LEAN_SCALAR_PTR_LITERAL(118, 146, 159, 211, 151, 69, 60, 92)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__3_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__20_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__18_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__5_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__15_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__6_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__4_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__7_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "ForInStep.done"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__9_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "ForInStep"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__11_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "done"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__12 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__12_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__11_value),LEAN_SCALAR_PTR_LITERAL(153, 23, 255, 201, 194, 179, 65, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__12_value),LEAN_SCALAR_PTR_LITERAL(186, 117, 97, 204, 25, 66, 148, 73)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__14_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__15_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__15_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__16_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__14_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__16_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "some"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18_value),LEAN_SCALAR_PTR_LITERAL(37, 202, 7, 33, 103, 74, 114, 212)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "Option"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value),LEAN_SCALAR_PTR_LITERAL(95, 234, 177, 188, 3, 226, 91, 252)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18_value),LEAN_SCALAR_PTR_LITERAL(89, 148, 40, 55, 221, 242, 231, 67)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__23_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__24_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 38, .m_capacity = 38, .m_length = 37, .m_data = "Lean.Elab.Term.Do.ToTerm.returnToTerm"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__25 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__25_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__27_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 22, .m_capacity = 22, .m_length = 19, .m_data = "DoResultPR.«return»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__27 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__27_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "DoResultPR"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__29 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__29_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "return"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__29_value),LEAN_SCALAR_PTR_LITERAL(176, 109, 168, 203, 201, 157, 227, 94)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30_value),LEAN_SCALAR_PTR_LITERAL(229, 234, 240, 122, 175, 247, 217, 144)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__32_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__32 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__32_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__33_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__33 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__33_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__34_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__33_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__34 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__34_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__35_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__32_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__34_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__35 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__35_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__36_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 27, .m_capacity = 27, .m_length = 24, .m_data = "DoResultSBC.«pureReturn»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__36 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__36_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "DoResultSBC"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "pureReturn"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38_value),LEAN_SCALAR_PTR_LITERAL(231, 121, 247, 1, 2, 231, 67, 183)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39_value),LEAN_SCALAR_PTR_LITERAL(234, 47, 151, 78, 194, 28, 208, 23)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__41_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__41 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__41_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__42_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__42 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__42_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__43_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__42_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__43 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__43_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__44_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__41_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__43_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__44 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__44_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__45_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 24, .m_capacity = 24, .m_length = 21, .m_data = "DoResultPRBC.«return»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__45 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__45_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "DoResultPRBC"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value),LEAN_SCALAR_PTR_LITERAL(100, 14, 199, 226, 15, 42, 73, 123)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30_value),LEAN_SCALAR_PTR_LITERAL(169, 70, 70, 155, 124, 83, 142, 151)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__49_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__49 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__49_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__50_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__50 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__50_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__51_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__50_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__51 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__51_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__52_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__49_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__51_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__52 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__52_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 40, .m_capacity = 40, .m_length = 39, .m_data = "Lean.Elab.Term.Do.ToTerm.continueToTerm"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = "ForInStep.yield"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "yield"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__11_value),LEAN_SCALAR_PTR_LITERAL(153, 23, 255, 201, 194, 179, 65, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(211, 51, 4, 170, 217, 84, 102, 241)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__7_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__8_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__6_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__8_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "none"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10_value),LEAN_SCALAR_PTR_LITERAL(73, 239, 30, 105, 8, 60, 178, 241)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value),LEAN_SCALAR_PTR_LITERAL(95, 234, 177, 188, 3, 226, 91, 252)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10_value),LEAN_SCALAR_PTR_LITERAL(149, 114, 34, 228, 75, 195, 143, 131)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__14_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__14_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 24, .m_capacity = 24, .m_length = 21, .m_data = "DoResultBC.«continue»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__16_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "DoResultBC"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__18_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "continue"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__18_value),LEAN_SCALAR_PTR_LITERAL(121, 124, 243, 214, 45, 116, 29, 129)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value),LEAN_SCALAR_PTR_LITERAL(123, 251, 241, 47, 103, 146, 113, 33)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__21_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__21_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__23_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__24_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 25, .m_capacity = 25, .m_length = 22, .m_data = "DoResultSBC.«continue»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__26 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__26_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38_value),LEAN_SCALAR_PTR_LITERAL(231, 121, 247, 1, 2, 231, 67, 183)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value),LEAN_SCALAR_PTR_LITERAL(37, 69, 144, 187, 231, 218, 255, 229)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__29 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__29_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__30_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__30 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__30_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__31_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__30_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__31 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__31_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__32_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__29_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__31_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__32 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__32_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__33_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 26, .m_capacity = 26, .m_length = 23, .m_data = "DoResultPRBC.«continue»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__33 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__33_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value),LEAN_SCALAR_PTR_LITERAL(100, 14, 199, 226, 15, 42, 73, 123)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value),LEAN_SCALAR_PTR_LITERAL(58, 210, 98, 167, 95, 212, 102, 25)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__36_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__36 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__36_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__37_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__37 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__37_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__38_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__37_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__38 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__38_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__39_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__36_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__38_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__39 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__39_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm(lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 37, .m_capacity = 37, .m_length = 36, .m_data = "Lean.Elab.Term.Do.ToTerm.breakToTerm"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 21, .m_capacity = 21, .m_length = 18, .m_data = "DoResultBC.«break»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "break"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__18_value),LEAN_SCALAR_PTR_LITERAL(121, 124, 243, 214, 45, 116, 29, 129)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(112, 220, 51, 32, 149, 228, 252, 150)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__7_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__8_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__6_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__8_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__9_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 22, .m_capacity = 22, .m_length = 19, .m_data = "DoResultSBC.«break»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__11_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__38_value),LEAN_SCALAR_PTR_LITERAL(231, 121, 247, 1, 2, 231, 67, 183)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(198, 127, 50, 183, 163, 46, 255, 75)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__14_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__15_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__15_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__16_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__14_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__16_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__17_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 23, .m_capacity = 23, .m_length = 20, .m_data = "DoResultPRBC.«break»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__18_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value),LEAN_SCALAR_PTR_LITERAL(100, 14, 199, 226, 15, 42, 73, 123)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(177, 229, 186, 141, 155, 121, 133, 101)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__21_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__21_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__23_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__24_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm(lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "Bind.bind"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "bind"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(222, 192, 22, 179, 212, 181, 141, 219)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__2_value),LEAN_SCALAR_PTR_LITERAL(155, 214, 105, 100, 54, 209, 36, 192)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "basicFun"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__6_value),LEAN_SCALAR_PTR_LITERAL(209, 134, 40, 160, 122, 195, 31, 223)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__8_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__34_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__9_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__8_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__9_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__10_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 46, .m_capacity = 46, .m_length = 45, .m_data = "Lean.Elab.Term.Do.ToTerm.actionTerminalToTerm"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__11_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 20, .m_capacity = 20, .m_length = 17, .m_data = "DoResultPR.«pure»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__13_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__29_value),LEAN_SCALAR_PTR_LITERAL(176, 109, 168, 203, 201, 157, 227, 94)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value),LEAN_SCALAR_PTR_LITERAL(121, 84, 89, 209, 13, 75, 50, 215)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__16_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__17_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__17_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__18_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__16_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__18_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__19 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__19_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 22, .m_capacity = 22, .m_length = 19, .m_data = "DoResultPRBC.«pure»"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__20_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__47_value),LEAN_SCALAR_PTR_LITERAL(100, 14, 199, 226, 15, 42, 73, 123)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5_value),LEAN_SCALAR_PTR_LITERAL(21, 133, 149, 118, 146, 14, 42, 41)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__24_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__24_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__25 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__25_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__23_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__25_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__26 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__26_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "doDbgTrace"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__0_value),LEAN_SCALAR_PTR_LITERAL(34, 125, 157, 23, 122, 81, 121, 195)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doAssert"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__2_value),LEAN_SCALAR_PTR_LITERAL(171, 15, 212, 125, 46, 208, 251, 33)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "doDebugAssert"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(219, 254, 62, 12, 192, 208, 196, 20)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__4_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__7_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "debugAssert"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__9_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__9_value),LEAN_SCALAR_PTR_LITERAL(113, 208, 242, 112, 42, 41, 92, 88)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "debug_assert!"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__11_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "assert"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__12 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__12_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__12_value),LEAN_SCALAR_PTR_LITERAL(193, 125, 133, 119, 190, 55, 66, 188)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "assert!"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__14_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "dbgTrace"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__15_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__15_value),LEAN_SCALAR_PTR_LITERAL(27, 50, 72, 98, 19, 158, 30, 218)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "dbg_trace"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__17_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "doHave"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__0_value),LEAN_SCALAR_PTR_LITERAL(103, 74, 100, 51, 242, 214, 142, 115)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 5, .m_capacity = 5, .m_length = 4, .m_data = "have"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__3_value),LEAN_SCALAR_PTR_LITERAL(55, 91, 239, 116, 115, 0, 62, 115)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "doReassign"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0_value),LEAN_SCALAR_PTR_LITERAL(31, 163, 103, 78, 29, 183, 93, 39)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 37, .m_capacity = 37, .m_length = 36, .m_data = "unexpected kind of `do` reassignment"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "ensureTypeOf"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__3_value),LEAN_SCALAR_PTR_LITERAL(230, 137, 150, 18, 219, 109, 114, 73)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = "ensure_type_of%"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__5_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 28, .m_capacity = 28, .m_length = 27, .m_data = "invalid reassignment, value"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__6_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "ident"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__8_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__8_value),LEAN_SCALAR_PTR_LITERAL(52, 159, 208, 51, 14, 60, 6, 71)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__9_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "binderIdent"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__0_value),LEAN_SCALAR_PTR_LITERAL(37, 194, 68, 106, 254, 181, 31, 191)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 15, .m_capacity = 15, .m_length = 14, .m_data = "explicitBinder"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__0_value),LEAN_SCALAR_PTR_LITERAL(49, 119, 193, 23, 170, 93, 183, 238)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "typeOf"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__0_value),LEAN_SCALAR_PTR_LITERAL(26, 238, 102, 207, 116, 185, 165, 59)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "type_of%"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__2_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg(size_t, size_t, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "let_delayed"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__0_value),LEAN_SCALAR_PTR_LITERAL(33, 71, 139, 72, 47, 176, 139, 254)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "typeSpec"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2_value),LEAN_SCALAR_PTR_LITERAL(77, 126, 241, 117, 174, 189, 108, 62)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJmp(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJmp___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15_value),LEAN_SCALAR_PTR_LITERAL(9, 208, 235, 82, 91, 230, 203, 159)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*3 + 0, .m_other = 3, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(2) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1_value),((lean_object*)&l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___closed__0_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "discr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__1_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__1_value),LEAN_SCALAR_PTR_LITERAL(193, 61, 20, 168, 108, 94, 13, 165)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__3_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "matchExpr"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__4 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__4_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__4_value),LEAN_SCALAR_PTR_LITERAL(72, 125, 75, 13, 242, 250, 162, 88)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 26, .m_capacity = 26, .m_length = 25, .m_data = "instantiateMVarsIfMVarApp"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6_value),LEAN_SCALAR_PTR_LITERAL(180, 221, 231, 68, 33, 162, 30, 45)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__8 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__8_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__16_value),LEAN_SCALAR_PTR_LITERAL(194, 50, 106, 158, 41, 60, 103, 214)}};
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6_value),LEAN_SCALAR_PTR_LITERAL(97, 89, 84, 0, 241, 26, 4, 203)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__9_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__10 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__10_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__10_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__11 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__11_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_toTerm(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_run(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_run___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0(lean_object*);
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0___boxed(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 38, .m_capacity = 38, .m_length = 37, .m_data = "Lean.Elab.Term.Do.ToTerm.mkNestedKind"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToTerm_mkNestedKind(uint8_t, uint8_t, uint8_t);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_matchNestedTermResult_spec__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0___boxed(lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 47, .m_capacity = 47, .m_length = 46, .m_data = "Lean.Elab.Term.Do.ToTerm.matchNestedTermResult"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "r"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__2_value),LEAN_SCALAR_PTR_LITERAL(201, 206, 29, 183, 206, 15, 98, 41)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "dotIdent"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__5_value),LEAN_SCALAR_PTR_LITERAL(173, 139, 76, 218, 89, 59, 213, 196)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4_value),LEAN_SCALAR_PTR_LITERAL(90, 104, 56, 60, 254, 161, 191, 93)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "u"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__9_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__9_value),LEAN_SCALAR_PTR_LITERAL(232, 178, 247, 241, 102, 42, 87, 174)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "doBreak"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__12 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__12_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__12_value),LEAN_SCALAR_PTR_LITERAL(100, 48, 134, 252, 224, 171, 60, 39)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19_value),LEAN_SCALAR_PTR_LITERAL(145, 106, 12, 145, 215, 38, 113, 97)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "doContinue"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__16_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__16_value),LEAN_SCALAR_PTR_LITERAL(99, 212, 187, 103, 216, 35, 231, 189)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doReturn"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__18_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__18_value),LEAN_SCALAR_PTR_LITERAL(210, 201, 30, 244, 146, 7, 54, 39)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39_value),LEAN_SCALAR_PTR_LITERAL(246, 231, 253, 57, 158, 126, 132, 123)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__21_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "a"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__22_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__22_value),LEAN_SCALAR_PTR_LITERAL(247, 80, 99, 121, 74, 33, 203, 108)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__25 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__25_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__25_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__28_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30_value),LEAN_SCALAR_PTR_LITERAL(34, 152, 23, 154, 183, 152, 121, 209)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__28 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__28_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "b"};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__29 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__29_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__31_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__29_value),LEAN_SCALAR_PTR_LITERAL(47, 22, 244, 233, 226, 169, 241, 142)}};
static const lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__31 = (const lean_object*)&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__31_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_isMutableLet___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "doLetElse"};
static const lean_object* l_Lean_Elab_Term_Do_isMutableLet___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_isMutableLet___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__0_value),LEAN_SCALAR_PTR_LITERAL(175, 153, 29, 134, 242, 228, 141, 99)}};
static const lean_object* l_Lean_Elab_Term_Do_isMutableLet___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_isMutableLet___closed__1_value;
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_isMutableLet(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_isMutableLet___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "`"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 122, .m_capacity = 122, .m_length = 121, .m_data = "` cannot be mutated, only variables declared using `let mut` can be mutated. If you did not intend to mutate but define `"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__2_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 24, .m_capacity = 24, .m_length = 23, .m_data = "`, consider using `let "};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__4_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "` instead"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__6 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__6_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 19, .m_capacity = 19, .m_length = 18, .m_data = "mutable variable `"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 21, .m_capacity = 21, .m_length = 20, .m_data = "` cannot be shadowed"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__2_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg();
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 46, .m_capacity = 46, .m_length = 45, .m_data = "invalid `do` element, it must be inside `for`"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 40, .m_capacity = 40, .m_length = 39, .m_data = "must be last element in a `do` sequence"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg(lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4(size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6(lean_object*, uint8_t, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 203, .m_capacity = 203, .m_length = 202, .m_data = "cannot lift `(<- ...)` over a binder, this error usually happens when you are trying to lift a method nested in a `fun`, `let`, or `match`-alternative, and it can often be fixed by adding a missing `do`"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__0_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0(lean_object*, uint8_t, uint8_t, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "choice"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__0 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__0_value;
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__0_value),LEAN_SCALAR_PTR_LITERAL(59, 66, 148, 42, 181, 100, 85, 166)}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__1 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__1_value;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0___boxed(lean_object**);
static const lean_ctor_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 0}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__2 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__2_value;
static const lean_string_object l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 100, .m_capacity = 100, .m_length = 99, .m_data = "cannot lift `(<- ...)` over inconsistent syntax variants, consider lifting out the binding manually"};
static const lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__3 = (const lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__3_value;
static lean_once_cell_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3(lean_object*, uint8_t, uint8_t, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 10, .m_capacity = 10, .m_length = 9, .m_data = "__do_lift"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__0_value),LEAN_SCALAR_PTR_LITERAL(205, 24, 119, 46, 142, 174, 151, 148)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__1_value;
static const lean_closure_object l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*1, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0___boxed, .m_arity = 4, .m_num_fixed = 1, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__1_value)} };
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__2_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 24, .m_capacity = 24, .m_length = 23, .m_data = "invalid kind of value `"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 19, .m_capacity = 19, .m_length = 18, .m_data = "` in an assignment"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 16, .m_capacity = 16, .m_length = 15, .m_data = "doReassignArrow"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__4_value),LEAN_SCALAR_PTR_LITERAL(24, 63, 28, 32, 90, 193, 231, 114)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "__discr"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__0_value),LEAN_SCALAR_PTR_LITERAL(167, 107, 223, 4, 107, 76, 58, 232)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1(uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___boxed(lean_object**);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "tryCatchThe"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__0_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__0_value),LEAN_SCALAR_PTR_LITERAL(34, 194, 87, 82, 168, 232, 231, 97)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__3 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__3_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__3_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__4_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "ToCodeBlock"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__5 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__5_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value),LEAN_SCALAR_PTR_LITERAL(52, 247, 248, 201, 92, 23, 188, 159)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(252, 225, 247, 249, 114, 131, 135, 109)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_3 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_2),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__9_value),LEAN_SCALAR_PTR_LITERAL(188, 117, 138, 85, 211, 175, 171, 214)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value_aux_3),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__5_value),LEAN_SCALAR_PTR_LITERAL(77, 201, 109, 245, 60, 249, 131, 12)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__6_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__7 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__7_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__7_value),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__7_value)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 21, .m_capacity = 21, .m_length = 20, .m_data = "MonadExcept.tryCatch"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__9 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__9_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "MonadExcept"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__11 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__11_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "tryCatch"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__12 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__12_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__11_value),LEAN_SCALAR_PTR_LITERAL(162, 154, 253, 120, 110, 153, 103, 113)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13_value_aux_0),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__12_value),LEAN_SCALAR_PTR_LITERAL(167, 129, 71, 246, 198, 229, 11, 131)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__14 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__14_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__14_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__15 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__15_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___boxed(lean_object**);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4___boxed(lean_object**);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "tryFinally"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__0_value),LEAN_SCALAR_PTR_LITERAL(98, 44, 194, 252, 68, 153, 47, 79)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__2_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__3_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 59, .m_capacity = 59, .m_length = 58, .m_data = "`finally` currently does `return`, `break`, nor `continue`"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__5_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "mut"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___boxed(lean_object**);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg(uint8_t, size_t, size_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg(size_t, size_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12(lean_object*, size_t, size_t, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 14, .m_capacity = 14, .m_length = 13, .m_data = "`do`-expander"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__0_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doUnless"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__1_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__1_value),LEAN_SCALAR_PTR_LITERAL(231, 120, 137, 73, 40, 67, 249, 239)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "doFor"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__14_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__14_value),LEAN_SCALAR_PTR_LITERAL(164, 12, 178, 2, 144, 97, 71, 235)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "doTry"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__3_value),LEAN_SCALAR_PTR_LITERAL(183, 105, 89, 167, 131, 32, 5, 203)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__30_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "doNested"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__30 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__30_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__30_value),LEAN_SCALAR_PTR_LITERAL(220, 154, 41, 109, 103, 76, 110, 63)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 31, .m_capacity = 31, .m_length = 30, .m_data = "unexpected do-element of kind "};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__5_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = ":\n"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__7_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "doCatch"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__0 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__0_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__0_value),LEAN_SCALAR_PTR_LITERAL(24, 196, 191, 146, 79, 230, 20, 8)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "doCatchMatch"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__2 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__2_value;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value_aux_2),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__2_value),LEAN_SCALAR_PTR_LITERAL(70, 106, 10, 98, 177, 11, 181, 30)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3_value;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 27, .m_capacity = 27, .m_length = 26, .m_data = "unexpected kind of `catch`"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__4 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__4_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5;
static const lean_string_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "ex"};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__6 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__6_value;
static lean_once_cell_t l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7;
static const lean_ctor_object l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__6_value),LEAN_SCALAR_PTR_LITERAL(184, 45, 58, 6, 126, 47, 125, 220)}};
static const lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__8 = (const lean_object*)&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__8_value;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 51, .m_capacity = 51, .m_length = 50, .m_data = "`finally` currently does not support reassignments"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__0_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1;
static const lean_closure_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasTerminalAction___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__2_value;
static const lean_closure_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasReturn___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__3_value;
static const lean_closure_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_closure_object) + sizeof(void*)*0, .m_other = 0, .m_tag = 245}, .m_fun = (void*)l_Lean_Elab_Term_Do_hasBreakContinue___boxed, .m_arity = 1, .m_num_fixed = 0, .m_objs = {} };
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__4_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 51, .m_capacity = 51, .m_length = 50, .m_data = "invalid `try`, it must have a `catch` or `finally`"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__5_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__7_value),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__23_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 23, .m_capacity = 23, .m_length = 22, .m_data = "\"type mismatch, `for`\""};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__1_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__3_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__3 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__3_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__2_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__2_value),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__3_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__13_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__5_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__5_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__7_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__8_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 12, .m_capacity = 12, .m_length = 11, .m_data = "forInMacro'"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__9_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__9_value),LEAN_SCALAR_PTR_LITERAL(7, 76, 157, 146, 186, 53, 21, 82)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "for_in'%"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__11_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__12_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 11, .m_capacity = 11, .m_length = 10, .m_data = "forInMacro"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__12 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__12_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__12_value),LEAN_SCALAR_PTR_LITERAL(235, 146, 198, 65, 99, 218, 100, 233)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__14_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 8, .m_capacity = 8, .m_length = 7, .m_data = "for_in%"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__14 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__14_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value),LEAN_SCALAR_PTR_LITERAL(95, 234, 177, 188, 3, 226, 91, 252)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__16_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21_value),LEAN_SCALAR_PTR_LITERAL(54, 183, 132, 140, 253, 175, 101, 43)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__19_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__18_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__19 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__19_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__19_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__20_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__16_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__17_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__17_value),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__20_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__21_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__6_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__22_value),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__23_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__24_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2_value),LEAN_SCALAR_PTR_LITERAL(14, 7, 204, 83, 215, 28, 179, 196)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__28_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*1 + 0, .m_other = 1, .m_tag = 0}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__28 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__28_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__28_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__29 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__29_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__27_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__27 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__27_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__30_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__27_value),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__29_value)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__30 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__30_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "explicit"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__0_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__0_value),LEAN_SCALAR_PTR_LITERAL(141, 201, 75, 195, 250, 223, 114, 184)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__2_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 13, .m_capacity = 13, .m_length = 12, .m_data = "Std.toStream"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__2 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__2_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__5_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "toStream"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__5 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__5_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "Std"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4_value),LEAN_SCALAR_PTR_LITERAL(48, 144, 193, 124, 159, 137, 91, 218)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__5_value),LEAN_SCALAR_PTR_LITERAL(165, 78, 6, 120, 105, 250, 102, 183)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__7_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 9, .m_capacity = 9, .m_length = 8, .m_data = "ToStream"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__7 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__7_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4_value),LEAN_SCALAR_PTR_LITERAL(48, 144, 193, 124, 159, 137, 91, 218)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__7_value),LEAN_SCALAR_PTR_LITERAL(131, 221, 81, 225, 58, 10, 156, 107)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value_aux_1),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__5_value),LEAN_SCALAR_PTR_LITERAL(10, 224, 141, 229, 184, 244, 208, 180)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__9_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__8_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__9 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__9_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__10_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__9_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__10 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__10_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__11_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = "s"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__11 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__11_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__13_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__11_value),LEAN_SCALAR_PTR_LITERAL(203, 235, 49, 11, 232, 138, 137, 74)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__13 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__13_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__16_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 4, .m_capacity = 4, .m_length = 3, .m_data = "for"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__16 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__16_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__17_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 2, .m_capacity = 2, .m_length = 1, .m_data = ","};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__17 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__17_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__18_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 17, .m_capacity = 17, .m_length = 16, .m_data = "Std.Stream.next\?"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__18 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__18_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__21_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "next\?"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__21 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__21_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__20_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 7, .m_capacity = 7, .m_length = 6, .m_data = "Stream"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__20 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__20_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__4_value),LEAN_SCALAR_PTR_LITERAL(48, 144, 193, 124, 159, 137, 91, 218)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value_aux_0),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__20_value),LEAN_SCALAR_PTR_LITERAL(131, 33, 225, 197, 4, 77, 215, 237)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value_aux_1),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__21_value),LEAN_SCALAR_PTR_LITERAL(223, 69, 181, 194, 149, 37, 29, 54)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__23_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__23 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__23_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__24_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 0, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__23_value),((lean_object*)(((size_t)(0) << 1) | 1))}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__24 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__24_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__25_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 6, .m_capacity = 6, .m_length = 5, .m_data = "tuple"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__25 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__25_value;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0_value),LEAN_SCALAR_PTR_LITERAL(70, 193, 83, 126, 233, 67, 208, 165)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_1 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1_value),LEAN_SCALAR_PTR_LITERAL(103, 136, 125, 166, 167, 98, 71, 111)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_2 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_1),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2_value),LEAN_SCALAR_PTR_LITERAL(75, 170, 162, 138, 136, 204, 251, 229)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value_aux_2),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__25_value),LEAN_SCALAR_PTR_LITERAL(191, 24, 88, 245, 200, 250, 27, 217)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26_value;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__27_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 3, .m_capacity = 3, .m_length = 2, .m_data = "s'"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__27 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__27_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28;
static const lean_ctor_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__29_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__27_value),LEAN_SCALAR_PTR_LITERAL(203, 110, 194, 112, 150, 40, 11, 92)}};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__29 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__29_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__31_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 55, .m_capacity = 55, .m_length = 54, .m_data = "the proof annotation here has not been implemented yet"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__31 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__31_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0;
static const lean_string_object l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__1_value = {.m_header = {.m_rc = 0, .m_cs_sz = 0, .m_other = 0, .m_tag = 249}, .m_size = 71, .m_capacity = 71, .m_length = 70, .m_data = "reassignment with `|` (i.e., \"else clause\") is not currently supported"};
static const lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__1 = (const lean_object*)&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__1_value;
static lean_once_cell_t l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_concatWith___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19(uint8_t, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_run(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_run___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_once_cell_t l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0;
static lean_once_cell_t l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1_once = LEAN_ONCE_CELL_INITIALIZER;
static lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1;
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static const lean_ctor_object l_Lean_Elab_Term_Do_elabDo___closed__0_value_aux_0 = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)(((size_t)(0) << 1) | 1)),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__8_value),LEAN_SCALAR_PTR_LITERAL(13, 84, 199, 228, 250, 36, 60, 178)}};
static const lean_ctor_object l_Lean_Elab_Term_Do_elabDo___closed__0_value = {.m_header = {.m_rc = 0, .m_cs_sz = sizeof(lean_ctor_object) + sizeof(void*)*2 + 8, .m_other = 2, .m_tag = 1}, .m_objs = {((lean_object*)&l_Lean_Elab_Term_Do_elabDo___closed__0_value_aux_0),((lean_object*)&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8_value),LEAN_SCALAR_PTR_LITERAL(115, 179, 20, 242, 208, 252, 205, 79)}};
static const lean_object* l_Lean_Elab_Term_Do_elabDo___closed__0 = (const lean_object*)&l_Lean_Elab_Term_Do_elabDo___closed__0_value;
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_elabDo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_elabDo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0(lean_object* v_a_1_, lean_object* v_a_2_){
_start:
{
if (lean_obj_tag(v_a_1_) == 0)
{
lean_object* v___x_3_; 
v___x_3_ = l_List_reverse___redArg(v_a_2_);
return v___x_3_;
}
else
{
lean_object* v_head_4_; lean_object* v_tail_5_; lean_object* v___x_6_; lean_object* v___x_7_; lean_object* v___x_8_; 
v_head_4_ = lean_ctor_get(v_a_1_, 0);
v_tail_5_ = lean_ctor_get(v_a_1_, 1);
v___x_6_ = lean_unsigned_to_nat(0u);
v___x_7_ = l_Lean_Syntax_getArg(v_head_4_, v___x_6_);
v___x_8_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_8_, 0, v___x_7_);
lean_ctor_set(v___x_8_, 1, v_a_2_);
v_a_1_ = v_tail_5_;
v_a_2_ = v___x_8_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0___boxed(lean_object* v_a_10_, lean_object* v_a_11_){
_start:
{
lean_object* v_res_12_; 
v_res_12_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0(v_a_10_, v_a_11_);
lean_dec(v_a_10_);
return v_res_12_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(lean_object* v_doSeq_28_){
_start:
{
lean_object* v___x_29_; lean_object* v___x_30_; uint8_t v___x_31_; 
lean_inc(v_doSeq_28_);
v___x_29_ = l_Lean_Syntax_getKind(v_doSeq_28_);
v___x_30_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4));
v___x_31_ = lean_name_eq(v___x_29_, v___x_30_);
if (v___x_31_ == 0)
{
lean_object* v___x_32_; uint8_t v___x_33_; 
v___x_32_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_33_ = lean_name_eq(v___x_29_, v___x_32_);
lean_dec(v___x_29_);
if (v___x_33_ == 0)
{
lean_object* v___x_34_; 
lean_dec(v_doSeq_28_);
v___x_34_ = lean_box(0);
return v___x_34_;
}
else
{
lean_object* v___x_35_; lean_object* v___x_36_; lean_object* v___x_37_; lean_object* v___x_38_; lean_object* v___x_39_; lean_object* v___x_40_; 
v___x_35_ = lean_unsigned_to_nat(0u);
v___x_36_ = l_Lean_Syntax_getArg(v_doSeq_28_, v___x_35_);
lean_dec(v_doSeq_28_);
v___x_37_ = l_Lean_Syntax_getArgs(v___x_36_);
lean_dec(v___x_36_);
v___x_38_ = lean_array_to_list(v___x_37_);
v___x_39_ = lean_box(0);
v___x_40_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0(v___x_38_, v___x_39_);
lean_dec(v___x_38_);
return v___x_40_;
}
}
else
{
lean_object* v___x_41_; lean_object* v___x_42_; lean_object* v___x_43_; lean_object* v___x_44_; lean_object* v___x_45_; lean_object* v___x_46_; 
lean_dec(v___x_29_);
v___x_41_ = lean_unsigned_to_nat(1u);
v___x_42_ = l_Lean_Syntax_getArg(v_doSeq_28_, v___x_41_);
lean_dec(v_doSeq_28_);
v___x_43_ = l_Lean_Syntax_getArgs(v___x_42_);
lean_dec(v___x_42_);
v___x_44_ = lean_array_to_list(v___x_43_);
v___x_45_ = lean_box(0);
v___x_46_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems_spec__0(v___x_44_, v___x_45_);
lean_dec(v___x_44_);
return v___x_46_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(lean_object* v_doStx_47_){
_start:
{
lean_object* v___x_48_; lean_object* v___x_49_; 
v___x_48_ = lean_unsigned_to_nat(1u);
v___x_49_ = l_Lean_Syntax_getArg(v_doStx_47_, v___x_48_);
return v___x_49_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq___boxed(lean_object* v_doStx_50_){
_start:
{
lean_object* v_res_51_; 
v_res_51_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v_doStx_50_);
lean_dec(v_doStx_50_);
return v_res_51_;
}
}
LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(lean_object* v_msgData_52_, lean_object* v___y_53_, lean_object* v___y_54_, lean_object* v___y_55_, lean_object* v___y_56_){
_start:
{
lean_object* v___x_58_; lean_object* v_env_59_; lean_object* v___x_60_; lean_object* v_mctx_61_; lean_object* v_lctx_62_; lean_object* v_options_63_; lean_object* v___x_64_; lean_object* v___x_65_; lean_object* v___x_66_; 
v___x_58_ = lean_st_ref_get(v___y_56_);
v_env_59_ = lean_ctor_get(v___x_58_, 0);
lean_inc_ref(v_env_59_);
lean_dec(v___x_58_);
v___x_60_ = lean_st_ref_get(v___y_54_);
v_mctx_61_ = lean_ctor_get(v___x_60_, 0);
lean_inc_ref(v_mctx_61_);
lean_dec(v___x_60_);
v_lctx_62_ = lean_ctor_get(v___y_53_, 2);
v_options_63_ = lean_ctor_get(v___y_55_, 2);
lean_inc_ref(v_options_63_);
lean_inc_ref(v_lctx_62_);
v___x_64_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_64_, 0, v_env_59_);
lean_ctor_set(v___x_64_, 1, v_mctx_61_);
lean_ctor_set(v___x_64_, 2, v_lctx_62_);
lean_ctor_set(v___x_64_, 3, v_options_63_);
v___x_65_ = lean_alloc_ctor(3, 2, 0);
lean_ctor_set(v___x_65_, 0, v___x_64_);
lean_ctor_set(v___x_65_, 1, v_msgData_52_);
v___x_66_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_66_, 0, v___x_65_);
return v___x_66_;
}
}
LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1___boxed(lean_object* v_msgData_67_, lean_object* v___y_68_, lean_object* v___y_69_, lean_object* v___y_70_, lean_object* v___y_71_, lean_object* v___y_72_){
_start:
{
lean_object* v_res_73_; 
v_res_73_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msgData_67_, v___y_68_, v___y_69_, v___y_70_, v___y_71_);
lean_dec(v___y_71_);
lean_dec_ref(v___y_70_);
lean_dec(v___y_69_);
lean_dec_ref(v___y_68_);
return v_res_73_;
}
}
LEAN_EXPORT uint8_t l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3(lean_object* v_opts_74_, lean_object* v_opt_75_){
_start:
{
lean_object* v_name_76_; lean_object* v_defValue_77_; lean_object* v_map_78_; lean_object* v___x_79_; 
v_name_76_ = lean_ctor_get(v_opt_75_, 0);
v_defValue_77_ = lean_ctor_get(v_opt_75_, 1);
v_map_78_ = lean_ctor_get(v_opts_74_, 0);
v___x_79_ = l_Std_DTreeMap_Internal_Impl_Const_get_x3f___at___00Lean_NameMap_find_x3f_spec__0___redArg(v_map_78_, v_name_76_);
if (lean_obj_tag(v___x_79_) == 0)
{
uint8_t v___x_80_; 
v___x_80_ = lean_unbox(v_defValue_77_);
return v___x_80_;
}
else
{
lean_object* v_val_81_; 
v_val_81_ = lean_ctor_get(v___x_79_, 0);
lean_inc(v_val_81_);
lean_dec_ref(v___x_79_);
if (lean_obj_tag(v_val_81_) == 1)
{
uint8_t v_v_82_; 
v_v_82_ = lean_ctor_get_uint8(v_val_81_, 0);
lean_dec_ref(v_val_81_);
return v_v_82_;
}
else
{
uint8_t v___x_83_; 
lean_dec(v_val_81_);
v___x_83_ = lean_unbox(v_defValue_77_);
return v___x_83_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3___boxed(lean_object* v_opts_84_, lean_object* v_opt_85_){
_start:
{
uint8_t v_res_86_; lean_object* v_r_87_; 
v_res_86_ = l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3(v_opts_84_, v_opt_85_);
lean_dec_ref(v_opt_85_);
lean_dec_ref(v_opts_84_);
v_r_87_ = lean_box(v_res_86_);
return v_r_87_;
}
}
static lean_object* _init_l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0(void){
_start:
{
lean_object* v___x_88_; lean_object* v___x_89_; 
v___x_88_ = lean_box(1);
v___x_89_ = l_Lean_MessageData_ofFormat(v___x_88_);
return v___x_89_;
}
}
static lean_object* _init_l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3(void){
_start:
{
lean_object* v___x_93_; lean_object* v___x_94_; 
v___x_93_ = ((lean_object*)(l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__2));
v___x_94_ = l_Lean_MessageData_ofFormat(v___x_93_);
return v___x_94_;
}
}
LEAN_EXPORT lean_object* l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4(lean_object* v_x_95_, lean_object* v_x_96_){
_start:
{
if (lean_obj_tag(v_x_96_) == 0)
{
return v_x_95_;
}
else
{
lean_object* v_head_97_; lean_object* v_tail_98_; lean_object* v_before_99_; lean_object* v___x_100_; lean_object* v___x_101_; lean_object* v___x_102_; lean_object* v___x_103_; lean_object* v___x_104_; lean_object* v___x_105_; lean_object* v___x_106_; 
v_head_97_ = lean_ctor_get(v_x_96_, 0);
lean_inc(v_head_97_);
v_tail_98_ = lean_ctor_get(v_x_96_, 1);
lean_inc(v_tail_98_);
lean_dec_ref(v_x_96_);
v_before_99_ = lean_ctor_get(v_head_97_, 0);
lean_inc(v_before_99_);
lean_dec(v_head_97_);
v___x_100_ = lean_obj_once(&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0, &l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0_once, _init_l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0);
v___x_101_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_101_, 0, v_x_95_);
lean_ctor_set(v___x_101_, 1, v___x_100_);
v___x_102_ = lean_obj_once(&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3, &l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3_once, _init_l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__3);
v___x_103_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_103_, 0, v___x_101_);
lean_ctor_set(v___x_103_, 1, v___x_102_);
v___x_104_ = l_Lean_MessageData_ofSyntax(v_before_99_);
v___x_105_ = l_Lean_indentD(v___x_104_);
v___x_106_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_106_, 0, v___x_103_);
lean_ctor_set(v___x_106_, 1, v___x_105_);
v_x_95_ = v___x_106_;
v_x_96_ = v_tail_98_;
goto _start;
}
}
}
static lean_object* _init_l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2(void){
_start:
{
lean_object* v___x_111_; lean_object* v___x_112_; 
v___x_111_ = ((lean_object*)(l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__1));
v___x_112_ = l_Lean_MessageData_ofFormat(v___x_111_);
return v___x_112_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg(lean_object* v_msgData_113_, lean_object* v_macroStack_114_, lean_object* v___y_115_){
_start:
{
lean_object* v_options_117_; lean_object* v___x_118_; uint8_t v___x_119_; 
v_options_117_ = lean_ctor_get(v___y_115_, 2);
v___x_118_ = l_Lean_Elab_pp_macroStack;
v___x_119_ = l_Lean_Option_get___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__3(v_options_117_, v___x_118_);
if (v___x_119_ == 0)
{
lean_object* v___x_120_; 
lean_dec(v_macroStack_114_);
v___x_120_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_120_, 0, v_msgData_113_);
return v___x_120_;
}
else
{
if (lean_obj_tag(v_macroStack_114_) == 0)
{
lean_object* v___x_121_; 
v___x_121_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_121_, 0, v_msgData_113_);
return v___x_121_;
}
else
{
lean_object* v_head_122_; lean_object* v_after_123_; lean_object* v___x_124_; lean_object* v___x_125_; lean_object* v___x_126_; lean_object* v___x_127_; lean_object* v___x_128_; lean_object* v___x_129_; lean_object* v_msgData_130_; lean_object* v___x_131_; lean_object* v___x_132_; 
v_head_122_ = lean_ctor_get(v_macroStack_114_, 0);
v_after_123_ = lean_ctor_get(v_head_122_, 1);
v___x_124_ = lean_obj_once(&l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0, &l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0_once, _init_l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4___closed__0);
v___x_125_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_125_, 0, v_msgData_113_);
lean_ctor_set(v___x_125_, 1, v___x_124_);
v___x_126_ = lean_obj_once(&l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2, &l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2_once, _init_l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___closed__2);
v___x_127_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_127_, 0, v___x_125_);
lean_ctor_set(v___x_127_, 1, v___x_126_);
lean_inc(v_after_123_);
v___x_128_ = l_Lean_MessageData_ofSyntax(v_after_123_);
v___x_129_ = l_Lean_indentD(v___x_128_);
v_msgData_130_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_msgData_130_, 0, v___x_127_);
lean_ctor_set(v_msgData_130_, 1, v___x_129_);
v___x_131_ = l_List_foldl___at___00Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2_spec__4(v_msgData_130_, v_macroStack_114_);
v___x_132_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_132_, 0, v___x_131_);
return v___x_132_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg___boxed(lean_object* v_msgData_133_, lean_object* v_macroStack_134_, lean_object* v___y_135_, lean_object* v___y_136_){
_start:
{
lean_object* v_res_137_; 
v_res_137_ = l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg(v_msgData_133_, v_macroStack_134_, v___y_135_);
lean_dec_ref(v___y_135_);
return v_res_137_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(lean_object* v_msg_138_, lean_object* v___y_139_, lean_object* v___y_140_, lean_object* v___y_141_, lean_object* v___y_142_, lean_object* v___y_143_, lean_object* v___y_144_){
_start:
{
lean_object* v_ref_146_; lean_object* v___x_147_; lean_object* v_a_148_; lean_object* v_macroStack_149_; lean_object* v___x_150_; lean_object* v___x_151_; lean_object* v_a_152_; lean_object* v___x_153_; lean_object* v___x_154_; 
v_ref_146_ = lean_ctor_get(v___y_143_, 5);
v___x_147_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_138_, v___y_141_, v___y_142_, v___y_143_, v___y_144_);
v_a_148_ = lean_ctor_get(v___x_147_, 0);
lean_inc(v_a_148_);
lean_dec_ref(v___x_147_);
v_macroStack_149_ = lean_ctor_get(v___y_139_, 1);
lean_inc(v_macroStack_149_);
lean_dec_ref(v___y_139_);
lean_inc(v_macroStack_149_);
v___x_150_ = l_Lean_Elab_getBetterRef(v_ref_146_, v_macroStack_149_);
v___x_151_ = l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg(v_a_148_, v_macroStack_149_, v___y_143_);
v_a_152_ = lean_ctor_get(v___x_151_, 0);
lean_inc(v_a_152_);
lean_dec_ref(v___x_151_);
v___x_153_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_153_, 0, v___x_150_);
lean_ctor_set(v___x_153_, 1, v_a_152_);
v___x_154_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_154_, 0, v___x_153_);
return v___x_154_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg___boxed(lean_object* v_msg_155_, lean_object* v___y_156_, lean_object* v___y_157_, lean_object* v___y_158_, lean_object* v___y_159_, lean_object* v___y_160_, lean_object* v___y_161_, lean_object* v___y_162_){
_start:
{
lean_object* v_res_163_; 
v_res_163_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v_msg_155_, v___y_156_, v___y_157_, v___y_158_, v___y_159_, v___y_160_, v___y_161_);
lean_dec(v___y_161_);
lean_dec_ref(v___y_160_);
lean_dec(v___y_159_);
lean_dec_ref(v___y_158_);
lean_dec(v___y_157_);
return v_res_163_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(lean_object* v_ref_164_, lean_object* v_msg_165_, lean_object* v___y_166_, lean_object* v___y_167_, lean_object* v___y_168_, lean_object* v___y_169_, lean_object* v___y_170_, lean_object* v___y_171_){
_start:
{
lean_object* v_fileName_173_; lean_object* v_fileMap_174_; lean_object* v_options_175_; lean_object* v_currRecDepth_176_; lean_object* v_maxRecDepth_177_; lean_object* v_ref_178_; lean_object* v_currNamespace_179_; lean_object* v_openDecls_180_; lean_object* v_initHeartbeats_181_; lean_object* v_maxHeartbeats_182_; lean_object* v_quotContext_183_; lean_object* v_currMacroScope_184_; uint8_t v_diag_185_; lean_object* v_cancelTk_x3f_186_; uint8_t v_suppressElabErrors_187_; lean_object* v_inheritedTraceOptions_188_; lean_object* v_ref_189_; lean_object* v___x_190_; lean_object* v___x_191_; 
v_fileName_173_ = lean_ctor_get(v___y_170_, 0);
v_fileMap_174_ = lean_ctor_get(v___y_170_, 1);
v_options_175_ = lean_ctor_get(v___y_170_, 2);
v_currRecDepth_176_ = lean_ctor_get(v___y_170_, 3);
v_maxRecDepth_177_ = lean_ctor_get(v___y_170_, 4);
v_ref_178_ = lean_ctor_get(v___y_170_, 5);
v_currNamespace_179_ = lean_ctor_get(v___y_170_, 6);
v_openDecls_180_ = lean_ctor_get(v___y_170_, 7);
v_initHeartbeats_181_ = lean_ctor_get(v___y_170_, 8);
v_maxHeartbeats_182_ = lean_ctor_get(v___y_170_, 9);
v_quotContext_183_ = lean_ctor_get(v___y_170_, 10);
v_currMacroScope_184_ = lean_ctor_get(v___y_170_, 11);
v_diag_185_ = lean_ctor_get_uint8(v___y_170_, sizeof(void*)*14);
v_cancelTk_x3f_186_ = lean_ctor_get(v___y_170_, 12);
v_suppressElabErrors_187_ = lean_ctor_get_uint8(v___y_170_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_188_ = lean_ctor_get(v___y_170_, 13);
v_ref_189_ = l_Lean_replaceRef(v_ref_164_, v_ref_178_);
lean_inc_ref(v_inheritedTraceOptions_188_);
lean_inc(v_cancelTk_x3f_186_);
lean_inc(v_currMacroScope_184_);
lean_inc(v_quotContext_183_);
lean_inc(v_maxHeartbeats_182_);
lean_inc(v_initHeartbeats_181_);
lean_inc(v_openDecls_180_);
lean_inc(v_currNamespace_179_);
lean_inc(v_maxRecDepth_177_);
lean_inc(v_currRecDepth_176_);
lean_inc_ref(v_options_175_);
lean_inc_ref(v_fileMap_174_);
lean_inc_ref(v_fileName_173_);
v___x_190_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_190_, 0, v_fileName_173_);
lean_ctor_set(v___x_190_, 1, v_fileMap_174_);
lean_ctor_set(v___x_190_, 2, v_options_175_);
lean_ctor_set(v___x_190_, 3, v_currRecDepth_176_);
lean_ctor_set(v___x_190_, 4, v_maxRecDepth_177_);
lean_ctor_set(v___x_190_, 5, v_ref_189_);
lean_ctor_set(v___x_190_, 6, v_currNamespace_179_);
lean_ctor_set(v___x_190_, 7, v_openDecls_180_);
lean_ctor_set(v___x_190_, 8, v_initHeartbeats_181_);
lean_ctor_set(v___x_190_, 9, v_maxHeartbeats_182_);
lean_ctor_set(v___x_190_, 10, v_quotContext_183_);
lean_ctor_set(v___x_190_, 11, v_currMacroScope_184_);
lean_ctor_set(v___x_190_, 12, v_cancelTk_x3f_186_);
lean_ctor_set(v___x_190_, 13, v_inheritedTraceOptions_188_);
lean_ctor_set_uint8(v___x_190_, sizeof(void*)*14, v_diag_185_);
lean_ctor_set_uint8(v___x_190_, sizeof(void*)*14 + 1, v_suppressElabErrors_187_);
v___x_191_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v_msg_165_, v___y_166_, v___y_167_, v___y_168_, v___y_169_, v___x_190_, v___y_171_);
lean_dec_ref(v___x_190_);
return v___x_191_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg___boxed(lean_object* v_ref_192_, lean_object* v_msg_193_, lean_object* v___y_194_, lean_object* v___y_195_, lean_object* v___y_196_, lean_object* v___y_197_, lean_object* v___y_198_, lean_object* v___y_199_, lean_object* v___y_200_){
_start:
{
lean_object* v_res_201_; 
v_res_201_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(v_ref_192_, v_msg_193_, v___y_194_, v___y_195_, v___y_196_, v___y_197_, v___y_198_, v___y_199_);
lean_dec(v___y_199_);
lean_dec_ref(v___y_198_);
lean_dec(v___y_197_);
lean_dec_ref(v___y_196_);
lean_dec(v___y_195_);
lean_dec(v_ref_192_);
return v_res_201_;
}
}
static lean_object* _init_l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1(void){
_start:
{
lean_object* v___x_203_; lean_object* v___x_204_; 
v___x_203_ = ((lean_object*)(l_Lean_Elab_Term_elabLiftMethod___redArg___closed__0));
v___x_204_ = l_Lean_stringToMessageData(v___x_203_);
return v___x_204_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg(lean_object* v_stx_205_, lean_object* v_a_206_, lean_object* v_a_207_, lean_object* v_a_208_, lean_object* v_a_209_, lean_object* v_a_210_, lean_object* v_a_211_){
_start:
{
lean_object* v___x_213_; lean_object* v___x_214_; 
v___x_213_ = lean_obj_once(&l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1, &l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1_once, _init_l_Lean_Elab_Term_elabLiftMethod___redArg___closed__1);
v___x_214_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(v_stx_205_, v___x_213_, v_a_206_, v_a_207_, v_a_208_, v_a_209_, v_a_210_, v_a_211_);
return v___x_214_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___redArg___boxed(lean_object* v_stx_215_, lean_object* v_a_216_, lean_object* v_a_217_, lean_object* v_a_218_, lean_object* v_a_219_, lean_object* v_a_220_, lean_object* v_a_221_, lean_object* v_a_222_){
_start:
{
lean_object* v_res_223_; 
v_res_223_ = l_Lean_Elab_Term_elabLiftMethod___redArg(v_stx_215_, v_a_216_, v_a_217_, v_a_218_, v_a_219_, v_a_220_, v_a_221_);
lean_dec(v_a_221_);
lean_dec_ref(v_a_220_);
lean_dec(v_a_219_);
lean_dec_ref(v_a_218_);
lean_dec(v_a_217_);
lean_dec(v_stx_215_);
return v_res_223_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod(lean_object* v_stx_224_, lean_object* v_x_225_, lean_object* v_a_226_, lean_object* v_a_227_, lean_object* v_a_228_, lean_object* v_a_229_, lean_object* v_a_230_, lean_object* v_a_231_){
_start:
{
lean_object* v___x_233_; 
v___x_233_ = l_Lean_Elab_Term_elabLiftMethod___redArg(v_stx_224_, v_a_226_, v_a_227_, v_a_228_, v_a_229_, v_a_230_, v_a_231_);
return v___x_233_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLiftMethod___boxed(lean_object* v_stx_234_, lean_object* v_x_235_, lean_object* v_a_236_, lean_object* v_a_237_, lean_object* v_a_238_, lean_object* v_a_239_, lean_object* v_a_240_, lean_object* v_a_241_, lean_object* v_a_242_){
_start:
{
lean_object* v_res_243_; 
v_res_243_ = l_Lean_Elab_Term_elabLiftMethod(v_stx_234_, v_x_235_, v_a_236_, v_a_237_, v_a_238_, v_a_239_, v_a_240_, v_a_241_);
lean_dec(v_a_241_);
lean_dec_ref(v_a_240_);
lean_dec(v_a_239_);
lean_dec_ref(v_a_238_);
lean_dec(v_a_237_);
lean_dec(v_x_235_);
lean_dec(v_stx_234_);
return v_res_243_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0(lean_object* v_00_u03b1_244_, lean_object* v_ref_245_, lean_object* v_msg_246_, lean_object* v___y_247_, lean_object* v___y_248_, lean_object* v___y_249_, lean_object* v___y_250_, lean_object* v___y_251_, lean_object* v___y_252_){
_start:
{
lean_object* v___x_254_; 
v___x_254_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(v_ref_245_, v_msg_246_, v___y_247_, v___y_248_, v___y_249_, v___y_250_, v___y_251_, v___y_252_);
return v___x_254_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___boxed(lean_object* v_00_u03b1_255_, lean_object* v_ref_256_, lean_object* v_msg_257_, lean_object* v___y_258_, lean_object* v___y_259_, lean_object* v___y_260_, lean_object* v___y_261_, lean_object* v___y_262_, lean_object* v___y_263_, lean_object* v___y_264_){
_start:
{
lean_object* v_res_265_; 
v_res_265_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0(v_00_u03b1_255_, v_ref_256_, v_msg_257_, v___y_258_, v___y_259_, v___y_260_, v___y_261_, v___y_262_, v___y_263_);
lean_dec(v___y_263_);
lean_dec_ref(v___y_262_);
lean_dec(v___y_261_);
lean_dec_ref(v___y_260_);
lean_dec(v___y_259_);
lean_dec(v_ref_256_);
return v_res_265_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0(lean_object* v_00_u03b1_266_, lean_object* v_msg_267_, lean_object* v___y_268_, lean_object* v___y_269_, lean_object* v___y_270_, lean_object* v___y_271_, lean_object* v___y_272_, lean_object* v___y_273_){
_start:
{
lean_object* v___x_275_; 
v___x_275_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v_msg_267_, v___y_268_, v___y_269_, v___y_270_, v___y_271_, v___y_272_, v___y_273_);
return v___x_275_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___boxed(lean_object* v_00_u03b1_276_, lean_object* v_msg_277_, lean_object* v___y_278_, lean_object* v___y_279_, lean_object* v___y_280_, lean_object* v___y_281_, lean_object* v___y_282_, lean_object* v___y_283_, lean_object* v___y_284_){
_start:
{
lean_object* v_res_285_; 
v_res_285_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0(v_00_u03b1_276_, v_msg_277_, v___y_278_, v___y_279_, v___y_280_, v___y_281_, v___y_282_, v___y_283_);
lean_dec(v___y_283_);
lean_dec_ref(v___y_282_);
lean_dec(v___y_281_);
lean_dec_ref(v___y_280_);
lean_dec(v___y_279_);
return v_res_285_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2(lean_object* v_msgData_286_, lean_object* v_macroStack_287_, lean_object* v___y_288_, lean_object* v___y_289_, lean_object* v___y_290_, lean_object* v___y_291_, lean_object* v___y_292_, lean_object* v___y_293_){
_start:
{
lean_object* v___x_295_; 
v___x_295_ = l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___redArg(v_msgData_286_, v_macroStack_287_, v___y_292_);
return v___x_295_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2___boxed(lean_object* v_msgData_296_, lean_object* v_macroStack_297_, lean_object* v___y_298_, lean_object* v___y_299_, lean_object* v___y_300_, lean_object* v___y_301_, lean_object* v___y_302_, lean_object* v___y_303_, lean_object* v___y_304_){
_start:
{
lean_object* v_res_305_; 
v_res_305_ = l_Lean_Elab_addMacroStack___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__2(v_msgData_296_, v_macroStack_297_, v___y_298_, v___y_299_, v___y_300_, v___y_301_, v___y_302_, v___y_303_);
lean_dec(v___y_303_);
lean_dec_ref(v___y_302_);
lean_dec(v___y_301_);
lean_dec_ref(v___y_300_);
lean_dec(v___y_299_);
lean_dec_ref(v___y_298_);
return v_res_305_;
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter(lean_object* v_k_336_){
_start:
{
uint8_t v___y_338_; lean_object* v___x_349_; uint8_t v___x_350_; 
v___x_349_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
v___x_350_ = lean_name_eq(v_k_336_, v___x_349_);
if (v___x_350_ == 0)
{
lean_object* v___x_351_; uint8_t v___x_352_; 
v___x_351_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_352_ = lean_name_eq(v_k_336_, v___x_351_);
v___y_338_ = v___x_352_;
goto v___jp_337_;
}
else
{
v___y_338_ = v___x_350_;
goto v___jp_337_;
}
v___jp_337_:
{
if (v___y_338_ == 0)
{
lean_object* v___x_339_; uint8_t v___x_340_; 
v___x_339_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__4));
v___x_340_ = lean_name_eq(v_k_336_, v___x_339_);
if (v___x_340_ == 0)
{
lean_object* v___x_341_; uint8_t v___x_342_; 
v___x_341_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__1));
v___x_342_ = lean_name_eq(v_k_336_, v___x_341_);
if (v___x_342_ == 0)
{
lean_object* v___x_343_; uint8_t v___x_344_; 
v___x_343_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__3));
v___x_344_ = lean_name_eq(v_k_336_, v___x_343_);
if (v___x_344_ == 0)
{
lean_object* v___x_345_; uint8_t v___x_346_; 
v___x_345_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__5));
v___x_346_ = lean_name_eq(v_k_336_, v___x_345_);
if (v___x_346_ == 0)
{
lean_object* v___x_347_; uint8_t v___x_348_; 
v___x_347_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__7));
v___x_348_ = lean_name_eq(v_k_336_, v___x_347_);
return v___x_348_;
}
else
{
return v___x_346_;
}
}
else
{
return v___x_344_;
}
}
else
{
return v___x_342_;
}
}
else
{
return v___x_340_;
}
}
else
{
return v___y_338_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___boxed(lean_object* v_k_353_){
_start:
{
uint8_t v_res_354_; lean_object* v_r_355_; 
v_res_354_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter(v_k_353_);
lean_dec(v_k_353_);
v_r_355_ = lean_box(v_res_354_);
return v_r_355_;
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders(lean_object* v_letDeclArg_380_){
_start:
{
lean_object* v_k_387_; lean_object* v___x_388_; uint8_t v___x_389_; 
lean_inc(v_letDeclArg_380_);
v_k_387_ = l_Lean_Syntax_getKind(v_letDeclArg_380_);
v___x_388_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_389_ = lean_name_eq(v_k_387_, v___x_388_);
if (v___x_389_ == 0)
{
lean_object* v___x_390_; uint8_t v___x_391_; 
v___x_390_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3));
v___x_391_ = lean_name_eq(v_k_387_, v___x_390_);
if (v___x_391_ == 0)
{
lean_object* v___x_392_; uint8_t v___x_393_; 
v___x_392_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_393_ = lean_name_eq(v_k_387_, v___x_392_);
if (v___x_393_ == 0)
{
lean_object* v___x_394_; uint8_t v___x_395_; 
v___x_394_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
v___x_395_ = lean_name_eq(v_k_387_, v___x_394_);
lean_dec(v_k_387_);
if (v___x_395_ == 0)
{
lean_dec(v_letDeclArg_380_);
return v___x_395_;
}
else
{
goto v___jp_381_;
}
}
else
{
lean_dec(v_k_387_);
goto v___jp_381_;
}
}
else
{
lean_dec(v_k_387_);
lean_dec(v_letDeclArg_380_);
return v___x_391_;
}
}
else
{
uint8_t v___x_396_; 
lean_dec(v_k_387_);
lean_dec(v_letDeclArg_380_);
v___x_396_ = 0;
return v___x_396_;
}
v___jp_381_:
{
lean_object* v___x_382_; lean_object* v_binders_383_; lean_object* v___x_384_; lean_object* v___x_385_; uint8_t v___x_386_; 
v___x_382_ = lean_unsigned_to_nat(1u);
v_binders_383_ = l_Lean_Syntax_getArg(v_letDeclArg_380_, v___x_382_);
lean_dec(v_letDeclArg_380_);
v___x_384_ = lean_unsigned_to_nat(0u);
v___x_385_ = l_Lean_Syntax_getNumArgs(v_binders_383_);
lean_dec(v_binders_383_);
v___x_386_ = lean_nat_dec_lt(v___x_384_, v___x_385_);
lean_dec(v___x_385_);
return v___x_386_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___boxed(lean_object* v_letDeclArg_397_){
_start:
{
uint8_t v_res_398_; lean_object* v_r_399_; 
v_res_398_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders(v_letDeclArg_397_);
v_r_399_ = lean_box(v_res_398_);
return v_r_399_;
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders(lean_object* v_letDecl_400_){
_start:
{
lean_object* v___x_401_; lean_object* v___x_402_; uint8_t v___x_403_; 
v___x_401_ = lean_unsigned_to_nat(0u);
v___x_402_ = l_Lean_Syntax_getArg(v_letDecl_400_, v___x_401_);
v___x_403_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders(v___x_402_);
return v___x_403_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders___boxed(lean_object* v_letDecl_404_){
_start:
{
uint8_t v_res_405_; lean_object* v_r_406_; 
v_res_405_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders(v_letDecl_404_);
lean_dec(v_letDecl_404_);
v_r_406_ = lean_box(v_res_405_);
return v_r_406_;
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder(lean_object* v_stx_449_){
_start:
{
lean_object* v_k_450_; uint8_t v___y_452_; lean_object* v___x_472_; uint8_t v___x_473_; 
lean_inc(v_stx_449_);
v_k_450_ = l_Lean_Syntax_getKind(v_stx_449_);
v___x_472_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
v___x_473_ = lean_name_eq(v_k_450_, v___x_472_);
if (v___x_473_ == 0)
{
lean_object* v___x_474_; uint8_t v___x_475_; 
v___x_474_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_475_ = lean_name_eq(v_k_450_, v___x_474_);
v___y_452_ = v___x_475_;
goto v___jp_451_;
}
else
{
v___y_452_ = v___x_473_;
goto v___jp_451_;
}
v___jp_451_:
{
if (v___y_452_ == 0)
{
lean_object* v___x_453_; uint8_t v___x_454_; 
v___x_453_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1));
v___x_454_ = lean_name_eq(v_k_450_, v___x_453_);
if (v___x_454_ == 0)
{
lean_object* v___x_455_; uint8_t v___x_456_; 
v___x_455_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3));
v___x_456_ = lean_name_eq(v_k_450_, v___x_455_);
if (v___x_456_ == 0)
{
lean_object* v___x_457_; uint8_t v___x_458_; 
v___x_457_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
v___x_458_ = lean_name_eq(v_k_450_, v___x_457_);
if (v___x_458_ == 0)
{
lean_object* v___x_459_; uint8_t v___x_460_; 
v___x_459_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_460_ = lean_name_eq(v_k_450_, v___x_459_);
if (v___x_460_ == 0)
{
lean_object* v___x_461_; uint8_t v___x_462_; 
v___x_461_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_462_ = lean_name_eq(v_k_450_, v___x_461_);
lean_dec(v_k_450_);
if (v___x_462_ == 0)
{
lean_dec(v_stx_449_);
return v___x_462_;
}
else
{
lean_object* v___x_463_; lean_object* v___x_464_; uint8_t v___x_465_; 
v___x_463_ = lean_unsigned_to_nat(2u);
v___x_464_ = l_Lean_Syntax_getArg(v_stx_449_, v___x_463_);
lean_dec(v_stx_449_);
v___x_465_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders(v___x_464_);
return v___x_465_;
}
}
else
{
lean_object* v___x_466_; lean_object* v___x_467_; uint8_t v___x_468_; 
lean_dec(v_k_450_);
v___x_466_ = lean_unsigned_to_nat(2u);
v___x_467_ = l_Lean_Syntax_getArg(v_stx_449_, v___x_466_);
lean_dec(v_stx_449_);
v___x_468_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders(v___x_467_);
lean_dec(v___x_467_);
return v___x_468_;
}
}
else
{
lean_object* v___x_469_; lean_object* v___x_470_; uint8_t v___x_471_; 
lean_dec(v_k_450_);
v___x_469_ = lean_unsigned_to_nat(1u);
v___x_470_ = l_Lean_Syntax_getArg(v_stx_449_, v___x_469_);
lean_dec(v_stx_449_);
v___x_471_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclHasBinders(v___x_470_);
lean_dec(v___x_470_);
return v___x_471_;
}
}
else
{
lean_dec(v_k_450_);
lean_dec(v_stx_449_);
return v___x_456_;
}
}
else
{
lean_dec(v_k_450_);
lean_dec(v_stx_449_);
return v___x_454_;
}
}
else
{
lean_dec(v_k_450_);
lean_dec(v_stx_449_);
return v___y_452_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___boxed(lean_object* v_stx_476_){
_start:
{
uint8_t v_res_477_; lean_object* v_r_478_; 
v_res_477_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder(v_stx_476_);
v_r_478_ = lean_box(v_res_477_);
return v_r_478_;
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod(lean_object* v_x_491_){
_start:
{
if (lean_obj_tag(v_x_491_) == 1)
{
lean_object* v_kind_492_; lean_object* v_args_493_; uint8_t v___x_502_; 
v_kind_492_ = lean_ctor_get(v_x_491_, 1);
lean_inc(v_kind_492_);
v_args_493_ = lean_ctor_get(v_x_491_, 2);
lean_inc_ref(v_args_493_);
lean_dec_ref(v_x_491_);
v___x_502_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter(v_kind_492_);
if (v___x_502_ == 0)
{
lean_object* v___x_503_; uint8_t v___x_504_; 
v___x_503_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1));
v___x_504_ = lean_name_eq(v_kind_492_, v___x_503_);
if (v___x_504_ == 0)
{
lean_object* v___x_505_; uint8_t v___x_506_; 
v___x_505_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3));
v___x_506_ = lean_name_eq(v_kind_492_, v___x_505_);
if (v___x_506_ == 0)
{
lean_object* v___x_507_; uint8_t v___x_508_; 
v___x_507_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5));
v___x_508_ = lean_name_eq(v_kind_492_, v___x_507_);
lean_dec(v_kind_492_);
if (v___x_508_ == 0)
{
lean_object* v___x_509_; lean_object* v___x_510_; uint8_t v___x_511_; 
v___x_509_ = lean_unsigned_to_nat(0u);
v___x_510_ = lean_array_get_size(v_args_493_);
v___x_511_ = lean_nat_dec_lt(v___x_509_, v___x_510_);
if (v___x_511_ == 0)
{
lean_dec_ref(v_args_493_);
return v___x_508_;
}
else
{
if (v___x_511_ == 0)
{
lean_dec_ref(v_args_493_);
return v___x_508_;
}
else
{
size_t v___x_512_; size_t v___x_513_; uint8_t v___x_514_; 
v___x_512_ = ((size_t)0ULL);
v___x_513_ = lean_usize_of_nat(v___x_510_);
v___x_514_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0(v_args_493_, v___x_512_, v___x_513_);
lean_dec_ref(v_args_493_);
return v___x_514_;
}
}
}
else
{
goto v___jp_494_;
}
}
else
{
lean_dec(v_kind_492_);
goto v___jp_494_;
}
}
else
{
lean_dec_ref(v_args_493_);
lean_dec(v_kind_492_);
return v___x_504_;
}
}
else
{
uint8_t v___x_515_; 
lean_dec_ref(v_args_493_);
lean_dec(v_kind_492_);
v___x_515_ = 0;
return v___x_515_;
}
v___jp_494_:
{
lean_object* v___x_495_; lean_object* v___x_496_; uint8_t v___x_497_; 
v___x_495_ = lean_unsigned_to_nat(2u);
v___x_496_ = lean_array_get_size(v_args_493_);
v___x_497_ = lean_nat_dec_le(v___x_495_, v___x_496_);
if (v___x_497_ == 0)
{
lean_dec_ref(v_args_493_);
return v___x_497_;
}
else
{
lean_object* v___x_498_; lean_object* v___x_499_; lean_object* v___x_500_; 
v___x_498_ = lean_box(0);
v___x_499_ = lean_unsigned_to_nat(1u);
v___x_500_ = lean_array_get(v___x_498_, v_args_493_, v___x_499_);
lean_dec_ref(v_args_493_);
v_x_491_ = v___x_500_;
goto _start;
}
}
}
else
{
uint8_t v___x_516_; 
lean_dec(v_x_491_);
v___x_516_ = 0;
return v___x_516_;
}
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0(lean_object* v_as_517_, size_t v_i_518_, size_t v_stop_519_){
_start:
{
uint8_t v___x_520_; 
v___x_520_ = lean_usize_dec_eq(v_i_518_, v_stop_519_);
if (v___x_520_ == 0)
{
lean_object* v___x_521_; uint8_t v___x_522_; 
v___x_521_ = lean_array_uget_borrowed(v_as_517_, v_i_518_);
lean_inc(v___x_521_);
v___x_522_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod(v___x_521_);
if (v___x_522_ == 0)
{
size_t v___x_523_; size_t v___x_524_; 
v___x_523_ = ((size_t)1ULL);
v___x_524_ = lean_usize_add(v_i_518_, v___x_523_);
v_i_518_ = v___x_524_;
goto _start;
}
else
{
return v___x_522_;
}
}
else
{
uint8_t v___x_526_; 
v___x_526_ = 0;
return v___x_526_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0___boxed(lean_object* v_as_527_, lean_object* v_i_528_, lean_object* v_stop_529_){
_start:
{
size_t v_i_boxed_530_; size_t v_stop_boxed_531_; uint8_t v_res_532_; lean_object* v_r_533_; 
v_i_boxed_530_ = lean_unbox_usize(v_i_528_);
lean_dec(v_i_528_);
v_stop_boxed_531_ = lean_unbox_usize(v_stop_529_);
lean_dec(v_stop_529_);
v_res_532_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod_spec__0(v_as_527_, v_i_boxed_530_, v_stop_boxed_531_);
lean_dec_ref(v_as_527_);
v_r_533_ = lean_box(v_res_532_);
return v_r_533_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___boxed(lean_object* v_x_534_){
_start:
{
uint8_t v_res_535_; lean_object* v_r_536_; 
v_res_535_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod(v_x_534_);
v_r_536_ = lean_box(v_res_535_);
return v_r_536_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult(lean_object* v_a_537_, lean_object* v_a_538_, lean_object* v_a_539_, lean_object* v_a_540_){
_start:
{
lean_object* v___x_542_; 
v___x_542_ = l_Lean_Meta_mkFreshLevelMVar(v_a_537_, v_a_538_, v_a_539_, v_a_540_);
if (lean_obj_tag(v___x_542_) == 0)
{
lean_object* v_a_543_; lean_object* v___x_544_; 
v_a_543_ = lean_ctor_get(v___x_542_, 0);
lean_inc(v_a_543_);
lean_dec_ref(v___x_542_);
v___x_544_ = l_Lean_Meta_mkFreshLevelMVar(v_a_537_, v_a_538_, v_a_539_, v_a_540_);
if (lean_obj_tag(v___x_544_) == 0)
{
lean_object* v_a_545_; lean_object* v___x_546_; lean_object* v___x_547_; lean_object* v___x_548_; lean_object* v___x_549_; lean_object* v___x_550_; 
v_a_545_ = lean_ctor_get(v___x_544_, 0);
lean_inc(v_a_545_);
lean_dec_ref(v___x_544_);
v___x_546_ = l_Lean_Level_succ___override(v_a_543_);
v___x_547_ = l_Lean_mkSort(v___x_546_);
v___x_548_ = l_Lean_Level_succ___override(v_a_545_);
v___x_549_ = l_Lean_mkSort(v___x_548_);
lean_inc(v_a_540_);
lean_inc_ref(v_a_539_);
lean_inc_ref(v___x_547_);
v___x_550_ = l_Lean_mkArrow(v___x_547_, v___x_549_, v_a_539_, v_a_540_);
if (lean_obj_tag(v___x_550_) == 0)
{
lean_object* v_a_551_; lean_object* v___x_552_; uint8_t v___x_553_; lean_object* v___x_554_; lean_object* v___x_555_; 
v_a_551_ = lean_ctor_get(v___x_550_, 0);
lean_inc(v_a_551_);
lean_dec_ref(v___x_550_);
v___x_552_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_552_, 0, v_a_551_);
v___x_553_ = 0;
v___x_554_ = lean_box(0);
lean_inc_ref(v_a_537_);
v___x_555_ = l_Lean_Meta_mkFreshExprMVar(v___x_552_, v___x_553_, v___x_554_, v_a_537_, v_a_538_, v_a_539_, v_a_540_);
if (lean_obj_tag(v___x_555_) == 0)
{
lean_object* v_a_556_; lean_object* v___x_557_; lean_object* v___x_558_; 
v_a_556_ = lean_ctor_get(v___x_555_, 0);
lean_inc(v_a_556_);
lean_dec_ref(v___x_555_);
v___x_557_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_557_, 0, v___x_547_);
v___x_558_ = l_Lean_Meta_mkFreshExprMVar(v___x_557_, v___x_553_, v___x_554_, v_a_537_, v_a_538_, v_a_539_, v_a_540_);
lean_dec(v_a_540_);
lean_dec_ref(v_a_539_);
if (lean_obj_tag(v___x_558_) == 0)
{
lean_object* v_a_559_; lean_object* v___x_560_; lean_object* v___x_561_; lean_object* v___x_562_; 
v_a_559_ = lean_ctor_get(v___x_558_, 0);
lean_inc(v_a_559_);
lean_dec_ref(v___x_558_);
lean_inc(v_a_559_);
lean_inc(v_a_556_);
v___x_560_ = l_Lean_Expr_app___override(v_a_556_, v_a_559_);
v___x_561_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_561_, 0, v_a_556_);
lean_ctor_set(v___x_561_, 1, v_a_559_);
lean_ctor_set(v___x_561_, 2, v___x_560_);
v___x_562_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_562_, 0, v___x_561_);
return v___x_562_;
}
else
{
lean_object* v_a_563_; lean_object* v___x_564_; 
lean_dec(v_a_556_);
v_a_563_ = lean_ctor_get(v___x_558_, 0);
lean_inc(v_a_563_);
lean_dec_ref(v___x_558_);
v___x_564_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_564_, 0, v_a_563_);
return v___x_564_;
}
}
else
{
lean_object* v_a_565_; lean_object* v___x_566_; 
lean_dec_ref(v___x_547_);
lean_dec(v_a_540_);
lean_dec_ref(v_a_539_);
lean_dec_ref(v_a_537_);
v_a_565_ = lean_ctor_get(v___x_555_, 0);
lean_inc(v_a_565_);
lean_dec_ref(v___x_555_);
v___x_566_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_566_, 0, v_a_565_);
return v___x_566_;
}
}
else
{
lean_object* v_a_567_; lean_object* v___x_568_; 
lean_dec_ref(v___x_547_);
lean_dec(v_a_540_);
lean_dec_ref(v_a_539_);
lean_dec_ref(v_a_537_);
v_a_567_ = lean_ctor_get(v___x_550_, 0);
lean_inc(v_a_567_);
lean_dec_ref(v___x_550_);
v___x_568_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_568_, 0, v_a_567_);
return v___x_568_;
}
}
else
{
lean_object* v_a_569_; lean_object* v___x_570_; 
lean_dec(v_a_543_);
lean_dec(v_a_540_);
lean_dec_ref(v_a_539_);
lean_dec_ref(v_a_537_);
v_a_569_ = lean_ctor_get(v___x_544_, 0);
lean_inc(v_a_569_);
lean_dec_ref(v___x_544_);
v___x_570_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_570_, 0, v_a_569_);
return v___x_570_;
}
}
else
{
lean_object* v_a_571_; lean_object* v___x_572_; 
lean_dec(v_a_540_);
lean_dec_ref(v_a_539_);
lean_dec_ref(v_a_537_);
v_a_571_ = lean_ctor_get(v___x_542_, 0);
lean_inc(v_a_571_);
lean_dec_ref(v___x_542_);
v___x_572_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_572_, 0, v_a_571_);
return v___x_572_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult___boxed(lean_object* v_a_573_, lean_object* v_a_574_, lean_object* v_a_575_, lean_object* v_a_576_, lean_object* v_a_577_){
_start:
{
lean_object* v_res_578_; 
v_res_578_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult(v_a_573_, v_a_574_, v_a_575_, v_a_576_);
lean_dec(v_a_574_);
return v_res_578_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f(lean_object* v_extractStep_x3f_579_, lean_object* v_type_580_, lean_object* v_a_581_, lean_object* v_a_582_, lean_object* v_a_583_, lean_object* v_a_584_){
_start:
{
lean_object* v___x_586_; 
lean_inc_ref(v_extractStep_x3f_579_);
lean_inc(v_a_584_);
lean_inc_ref(v_a_583_);
lean_inc(v_a_582_);
lean_inc_ref(v_a_581_);
lean_inc_ref(v_type_580_);
v___x_586_ = lean_apply_6(v_extractStep_x3f_579_, v_type_580_, v_a_581_, v_a_582_, v_a_583_, v_a_584_, lean_box(0));
if (lean_obj_tag(v___x_586_) == 0)
{
lean_object* v_a_587_; 
v_a_587_ = lean_ctor_get(v___x_586_, 0);
lean_inc(v_a_587_);
if (lean_obj_tag(v_a_587_) == 0)
{
lean_object* v___x_588_; 
lean_dec_ref(v___x_586_);
lean_inc(v_a_584_);
lean_inc_ref(v_a_583_);
lean_inc(v_a_582_);
lean_inc_ref(v_a_581_);
lean_inc_ref(v_type_580_);
v___x_588_ = l_Lean_Meta_whnfCore(v_type_580_, v_a_581_, v_a_582_, v_a_583_, v_a_584_);
if (lean_obj_tag(v___x_588_) == 0)
{
lean_object* v_a_589_; uint8_t v___x_590_; 
v_a_589_ = lean_ctor_get(v___x_588_, 0);
lean_inc(v_a_589_);
lean_dec_ref(v___x_588_);
v___x_590_ = lean_expr_eqv(v_a_589_, v_type_580_);
lean_dec_ref(v_type_580_);
if (v___x_590_ == 0)
{
v_type_580_ = v_a_589_;
goto _start;
}
else
{
lean_object* v___x_592_; uint8_t v___x_593_; 
v___x_592_ = l_Lean_Expr_getAppFn(v_a_589_);
v___x_593_ = l_Lean_Expr_isMVar(v___x_592_);
lean_dec_ref(v___x_592_);
if (v___x_593_ == 0)
{
lean_object* v___x_594_; 
lean_inc(v_a_584_);
lean_inc_ref(v_a_583_);
lean_inc(v_a_582_);
lean_inc_ref(v_a_581_);
v___x_594_ = l_Lean_Meta_unfoldDefinition_x3f(v_a_589_, v___x_593_, v_a_581_, v_a_582_, v_a_583_, v_a_584_);
if (lean_obj_tag(v___x_594_) == 0)
{
lean_object* v_a_595_; 
v_a_595_ = lean_ctor_get(v___x_594_, 0);
lean_inc(v_a_595_);
lean_dec_ref(v___x_594_);
if (lean_obj_tag(v_a_595_) == 0)
{
lean_object* v___x_596_; 
lean_dec(v_a_584_);
lean_dec_ref(v_a_583_);
lean_dec(v_a_582_);
lean_dec_ref(v_a_581_);
lean_dec_ref(v_extractStep_x3f_579_);
v___x_596_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_596_, 0, v_a_587_);
return v___x_596_;
}
else
{
lean_object* v_val_597_; 
v_val_597_ = lean_ctor_get(v_a_595_, 0);
lean_inc(v_val_597_);
lean_dec_ref(v_a_595_);
v_type_580_ = v_val_597_;
goto _start;
}
}
else
{
lean_object* v_a_599_; lean_object* v___x_600_; 
lean_dec(v_a_584_);
lean_dec_ref(v_a_583_);
lean_dec(v_a_582_);
lean_dec_ref(v_a_581_);
lean_dec_ref(v_extractStep_x3f_579_);
v_a_599_ = lean_ctor_get(v___x_594_, 0);
lean_inc(v_a_599_);
lean_dec_ref(v___x_594_);
v___x_600_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_600_, 0, v_a_599_);
return v___x_600_;
}
}
else
{
lean_object* v___x_601_; 
lean_dec(v_a_589_);
lean_dec_ref(v_extractStep_x3f_579_);
v___x_601_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult(v_a_581_, v_a_582_, v_a_583_, v_a_584_);
lean_dec(v_a_582_);
if (lean_obj_tag(v___x_601_) == 0)
{
lean_object* v_a_602_; lean_object* v___x_603_; lean_object* v___x_604_; 
v_a_602_ = lean_ctor_get(v___x_601_, 0);
lean_inc(v_a_602_);
lean_dec_ref(v___x_601_);
v___x_603_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_603_, 0, v_a_602_);
v___x_604_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_604_, 0, v___x_603_);
return v___x_604_;
}
else
{
lean_object* v_a_605_; lean_object* v___x_606_; 
v_a_605_ = lean_ctor_get(v___x_601_, 0);
lean_inc(v_a_605_);
lean_dec_ref(v___x_601_);
v___x_606_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_606_, 0, v_a_605_);
return v___x_606_;
}
}
}
}
else
{
lean_object* v_a_607_; lean_object* v___x_608_; 
lean_dec(v_a_584_);
lean_dec_ref(v_a_583_);
lean_dec(v_a_582_);
lean_dec_ref(v_a_581_);
lean_dec_ref(v_type_580_);
lean_dec_ref(v_extractStep_x3f_579_);
v_a_607_ = lean_ctor_get(v___x_588_, 0);
lean_inc(v_a_607_);
lean_dec_ref(v___x_588_);
v___x_608_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_608_, 0, v_a_607_);
return v___x_608_;
}
}
else
{
lean_dec_ref(v_a_587_);
lean_dec(v_a_584_);
lean_dec_ref(v_a_583_);
lean_dec(v_a_582_);
lean_dec_ref(v_a_581_);
lean_dec_ref(v_type_580_);
lean_dec_ref(v_extractStep_x3f_579_);
return v___x_586_;
}
}
else
{
lean_dec(v_a_584_);
lean_dec_ref(v_a_583_);
lean_dec(v_a_582_);
lean_dec_ref(v_a_581_);
lean_dec_ref(v_type_580_);
lean_dec_ref(v_extractStep_x3f_579_);
return v___x_586_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f___boxed(lean_object* v_extractStep_x3f_609_, lean_object* v_type_610_, lean_object* v_a_611_, lean_object* v_a_612_, lean_object* v_a_613_, lean_object* v_a_614_, lean_object* v_a_615_){
_start:
{
lean_object* v_res_616_; 
v_res_616_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f(v_extractStep_x3f_609_, v_type_610_, v_a_611_, v_a_612_, v_a_613_, v_a_614_);
return v_res_616_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0(lean_object* v_val_620_, lean_object* v_type_621_, lean_object* v___y_622_, lean_object* v___y_623_, lean_object* v___y_624_, lean_object* v___y_625_){
_start:
{
lean_object* v___y_628_; uint8_t v___y_629_; lean_object* v_a_634_; 
if (lean_obj_tag(v_type_621_) == 5)
{
lean_object* v_fn_637_; lean_object* v_arg_638_; lean_object* v___x_639_; lean_object* v___x_640_; lean_object* v___x_641_; lean_object* v___x_642_; lean_object* v___x_643_; 
v_fn_637_ = lean_ctor_get(v_type_621_, 0);
lean_inc_ref(v_fn_637_);
v_arg_638_ = lean_ctor_get(v_type_621_, 1);
lean_inc_ref(v_arg_638_);
lean_dec_ref(v_type_621_);
v___x_639_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___closed__1));
v___x_640_ = lean_unsigned_to_nat(1u);
v___x_641_ = lean_mk_empty_array_with_capacity(v___x_640_);
lean_inc_ref(v_fn_637_);
v___x_642_ = lean_array_push(v___x_641_, v_fn_637_);
lean_inc(v___y_625_);
lean_inc_ref(v___y_624_);
lean_inc(v___y_623_);
lean_inc_ref(v___y_622_);
v___x_643_ = l_Lean_Meta_mkAppM(v___x_639_, v___x_642_, v___y_622_, v___y_623_, v___y_624_, v___y_625_);
if (lean_obj_tag(v___x_643_) == 0)
{
lean_object* v_a_644_; lean_object* v___x_645_; lean_object* v___x_646_; 
v_a_644_ = lean_ctor_get(v___x_643_, 0);
lean_inc(v_a_644_);
lean_dec_ref(v___x_643_);
v___x_645_ = lean_box(0);
v___x_646_ = l_Lean_Meta_synthInstance(v_a_644_, v___x_645_, v___y_622_, v___y_623_, v___y_624_, v___y_625_);
if (lean_obj_tag(v___x_646_) == 0)
{
lean_object* v___x_647_; lean_object* v___x_648_; lean_object* v___x_649_; 
lean_dec_ref(v___x_646_);
v___x_647_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_647_, 0, v_fn_637_);
lean_ctor_set(v___x_647_, 1, v_arg_638_);
lean_ctor_set(v___x_647_, 2, v_val_620_);
v___x_648_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_648_, 0, v___x_647_);
v___x_649_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_649_, 0, v___x_648_);
return v___x_649_;
}
else
{
lean_object* v_a_650_; 
lean_dec_ref(v_arg_638_);
lean_dec_ref(v_fn_637_);
lean_dec_ref(v_val_620_);
v_a_650_ = lean_ctor_get(v___x_646_, 0);
lean_inc(v_a_650_);
lean_dec_ref(v___x_646_);
v_a_634_ = v_a_650_;
goto v___jp_633_;
}
}
else
{
lean_object* v_a_651_; 
lean_dec_ref(v_arg_638_);
lean_dec_ref(v_fn_637_);
lean_dec(v___y_625_);
lean_dec_ref(v___y_624_);
lean_dec(v___y_623_);
lean_dec_ref(v___y_622_);
lean_dec_ref(v_val_620_);
v_a_651_ = lean_ctor_get(v___x_643_, 0);
lean_inc(v_a_651_);
lean_dec_ref(v___x_643_);
v_a_634_ = v_a_651_;
goto v___jp_633_;
}
}
else
{
lean_object* v___x_652_; lean_object* v___x_653_; 
lean_dec(v___y_625_);
lean_dec_ref(v___y_624_);
lean_dec(v___y_623_);
lean_dec_ref(v___y_622_);
lean_dec_ref(v_type_621_);
lean_dec_ref(v_val_620_);
v___x_652_ = lean_box(0);
v___x_653_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_653_, 0, v___x_652_);
return v___x_653_;
}
v___jp_627_:
{
if (v___y_629_ == 0)
{
lean_object* v___x_630_; lean_object* v___x_631_; 
lean_dec_ref(v___y_628_);
v___x_630_ = lean_box(0);
v___x_631_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_631_, 0, v___x_630_);
return v___x_631_;
}
else
{
lean_object* v___x_632_; 
v___x_632_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_632_, 0, v___y_628_);
return v___x_632_;
}
}
v___jp_633_:
{
uint8_t v___x_635_; 
v___x_635_ = l_Lean_Exception_isInterrupt(v_a_634_);
if (v___x_635_ == 0)
{
uint8_t v___x_636_; 
lean_inc_ref(v_a_634_);
v___x_636_ = l_Lean_Exception_isRuntime(v_a_634_);
v___y_628_ = v_a_634_;
v___y_629_ = v___x_636_;
goto v___jp_627_;
}
else
{
v___y_628_ = v_a_634_;
v___y_629_ = v___x_635_;
goto v___jp_627_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___boxed(lean_object* v_val_654_, lean_object* v_type_655_, lean_object* v___y_656_, lean_object* v___y_657_, lean_object* v___y_658_, lean_object* v___y_659_, lean_object* v___y_660_){
_start:
{
lean_object* v_res_661_; 
v_res_661_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0(v_val_654_, v_type_655_, v___y_656_, v___y_657_, v___y_658_, v___y_659_);
return v_res_661_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1(void){
_start:
{
lean_object* v___x_663_; lean_object* v___x_664_; 
v___x_663_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__0));
v___x_664_ = l_Lean_stringToMessageData(v___x_663_);
return v___x_664_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3(void){
_start:
{
lean_object* v___x_666_; lean_object* v___x_667_; 
v___x_666_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__2));
v___x_667_ = l_Lean_stringToMessageData(v___x_666_);
return v___x_667_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind(lean_object* v_expectedType_x3f_668_, lean_object* v_a_669_, lean_object* v_a_670_, lean_object* v_a_671_, lean_object* v_a_672_, lean_object* v_a_673_, lean_object* v_a_674_){
_start:
{
if (lean_obj_tag(v_expectedType_x3f_668_) == 1)
{
lean_object* v_val_676_; lean_object* v_extractStep_x3f_677_; lean_object* v___x_678_; 
v_val_676_ = lean_ctor_get(v_expectedType_x3f_668_, 0);
lean_inc(v_val_676_);
lean_dec_ref(v_expectedType_x3f_668_);
lean_inc(v_val_676_);
v_extractStep_x3f_677_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___lam__0___boxed), 7, 1);
lean_closure_set(v_extractStep_x3f_677_, 0, v_val_676_);
lean_inc(v_a_674_);
lean_inc_ref(v_a_673_);
lean_inc(v_a_672_);
lean_inc_ref(v_a_671_);
lean_inc(v_val_676_);
v___x_678_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind_extract_x3f(v_extractStep_x3f_677_, v_val_676_, v_a_671_, v_a_672_, v_a_673_, v_a_674_);
if (lean_obj_tag(v___x_678_) == 0)
{
lean_object* v_a_679_; 
v_a_679_ = lean_ctor_get(v___x_678_, 0);
lean_inc(v_a_679_);
lean_dec_ref(v___x_678_);
if (lean_obj_tag(v_a_679_) == 0)
{
lean_object* v___x_680_; lean_object* v___x_681_; lean_object* v___x_682_; lean_object* v___x_683_; lean_object* v___x_684_; lean_object* v___x_685_; 
v___x_680_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__1);
v___x_681_ = l_Lean_indentExpr(v_val_676_);
v___x_682_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_682_, 0, v___x_680_);
lean_ctor_set(v___x_682_, 1, v___x_681_);
v___x_683_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___closed__3);
v___x_684_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_684_, 0, v___x_682_);
lean_ctor_set(v___x_684_, 1, v___x_683_);
v___x_685_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v___x_684_, v_a_669_, v_a_670_, v_a_671_, v_a_672_, v_a_673_, v_a_674_);
lean_dec(v_a_674_);
lean_dec_ref(v_a_673_);
lean_dec(v_a_672_);
lean_dec_ref(v_a_671_);
return v___x_685_;
}
else
{
lean_object* v_val_686_; lean_object* v___x_687_; 
lean_dec(v_val_676_);
lean_dec(v_a_674_);
lean_dec_ref(v_a_673_);
lean_dec(v_a_672_);
lean_dec_ref(v_a_671_);
lean_dec_ref(v_a_669_);
v_val_686_ = lean_ctor_get(v_a_679_, 0);
lean_inc(v_val_686_);
lean_dec_ref(v_a_679_);
v___x_687_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_687_, 0, v_val_686_);
return v___x_687_;
}
}
else
{
lean_object* v_a_688_; lean_object* v___x_689_; 
lean_dec(v_val_676_);
lean_dec(v_a_674_);
lean_dec_ref(v_a_673_);
lean_dec(v_a_672_);
lean_dec_ref(v_a_671_);
lean_dec_ref(v_a_669_);
v_a_688_ = lean_ctor_get(v___x_678_, 0);
lean_inc(v_a_688_);
lean_dec_ref(v___x_678_);
v___x_689_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_689_, 0, v_a_688_);
return v___x_689_;
}
}
else
{
lean_object* v___x_690_; 
lean_dec_ref(v_a_669_);
lean_dec(v_expectedType_x3f_668_);
v___x_690_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_mkUnknownMonadResult(v_a_671_, v_a_672_, v_a_673_, v_a_674_);
lean_dec(v_a_672_);
return v___x_690_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind___boxed(lean_object* v_expectedType_x3f_691_, lean_object* v_a_692_, lean_object* v_a_693_, lean_object* v_a_694_, lean_object* v_a_695_, lean_object* v_a_696_, lean_object* v_a_697_, lean_object* v_a_698_){
_start:
{
lean_object* v_res_699_; 
v_res_699_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind(v_expectedType_x3f_691_, v_a_692_, v_a_693_, v_a_694_, v_a_695_, v_a_696_, v_a_697_);
lean_dec(v_a_693_);
return v_res_699_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg(lean_object* v_inst_702_){
_start:
{
lean_object* v___x_703_; lean_object* v___x_704_; lean_object* v___x_705_; 
v___x_703_ = lean_box(0);
v___x_704_ = ((lean_object*)(l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0));
v___x_705_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_705_, 0, v___x_703_);
lean_ctor_set(v___x_705_, 1, v___x_704_);
lean_ctor_set(v___x_705_, 2, v___x_703_);
lean_ctor_set(v___x_705_, 3, v_inst_702_);
return v___x_705_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt_default(lean_object* v_a_706_, lean_object* v_inst_707_){
_start:
{
lean_object* v___x_708_; 
v___x_708_ = l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg(v_inst_707_);
return v___x_708_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt___redArg(lean_object* v_inst_709_){
_start:
{
lean_object* v___x_710_; 
v___x_710_ = l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg(v_inst_709_);
return v___x_710_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAlt(lean_object* v_a_711_, lean_object* v_inst_712_){
_start:
{
lean_object* v___x_713_; 
v___x_713_ = l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg(v_inst_712_);
return v___x_713_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr_default___redArg(lean_object* v_inst_714_){
_start:
{
lean_object* v___x_715_; lean_object* v___x_716_; lean_object* v___x_717_; lean_object* v___x_718_; 
v___x_715_ = lean_box(0);
v___x_716_ = lean_box(0);
v___x_717_ = ((lean_object*)(l_Lean_Elab_Term_Do_instInhabitedAlt_default___redArg___closed__0));
v___x_718_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_718_, 0, v___x_715_);
lean_ctor_set(v___x_718_, 1, v___x_716_);
lean_ctor_set(v___x_718_, 2, v___x_715_);
lean_ctor_set(v___x_718_, 3, v___x_717_);
lean_ctor_set(v___x_718_, 4, v_inst_714_);
return v___x_718_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr_default(lean_object* v_a_719_, lean_object* v_inst_720_){
_start:
{
lean_object* v___x_721_; 
v___x_721_ = l_Lean_Elab_Term_Do_instInhabitedAltExpr_default___redArg(v_inst_720_);
return v___x_721_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr___redArg(lean_object* v_inst_722_){
_start:
{
lean_object* v___x_723_; 
v___x_723_ = l_Lean_Elab_Term_Do_instInhabitedAltExpr_default___redArg(v_inst_722_);
return v___x_723_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_instInhabitedAltExpr(lean_object* v_a_724_, lean_object* v_inst_725_){
_start:
{
lean_object* v___x_726_; 
v___x_726_ = l_Lean_Elab_Term_Do_instInhabitedAltExpr_default___redArg(v_inst_725_);
return v___x_726_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0(lean_object* v_as_733_, size_t v_sz_734_, size_t v_i_735_, lean_object* v_b_736_){
_start:
{
lean_object* v_a_738_; uint8_t v___x_742_; 
v___x_742_ = lean_usize_dec_lt(v_i_735_, v_sz_734_);
if (v___x_742_ == 0)
{
return v_b_736_;
}
else
{
lean_object* v_a_743_; lean_object* v___x_744_; uint8_t v___x_745_; 
v_a_743_ = lean_array_uget_borrowed(v_as_733_, v_i_735_);
v___x_744_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
lean_inc(v_a_743_);
v___x_745_ = l_Lean_Syntax_isOfKind(v_a_743_, v___x_744_);
if (v___x_745_ == 0)
{
lean_object* v___x_746_; 
lean_inc(v_a_743_);
v___x_746_ = lean_array_push(v_b_736_, v_a_743_);
v_a_738_ = v___x_746_;
goto v___jp_737_;
}
else
{
v_a_738_ = v_b_736_;
goto v___jp_737_;
}
}
v___jp_737_:
{
size_t v___x_739_; size_t v___x_740_; 
v___x_739_ = ((size_t)1ULL);
v___x_740_ = lean_usize_add(v_i_735_, v___x_739_);
v_i_735_ = v___x_740_;
v_b_736_ = v_a_738_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___boxed(lean_object* v_as_747_, lean_object* v_sz_748_, lean_object* v_i_749_, lean_object* v_b_750_){
_start:
{
size_t v_sz_boxed_751_; size_t v_i_boxed_752_; lean_object* v_res_753_; 
v_sz_boxed_751_ = lean_unbox_usize(v_sz_748_);
lean_dec(v_sz_748_);
v_i_boxed_752_ = lean_unbox_usize(v_i_749_);
lean_dec(v_i_749_);
v_res_753_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0(v_as_747_, v_sz_boxed_751_, v_i_boxed_752_, v_b_750_);
lean_dec_ref(v_as_747_);
return v_res_753_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_AltExpr_vars___redArg(lean_object* v_alt_756_){
_start:
{
lean_object* v_var_x3f_757_; lean_object* v_pvars_758_; lean_object* v_vars_760_; lean_object* v_vars_764_; 
v_var_x3f_757_ = lean_ctor_get(v_alt_756_, 1);
lean_inc(v_var_x3f_757_);
v_pvars_758_ = lean_ctor_get(v_alt_756_, 3);
lean_inc_ref(v_pvars_758_);
lean_dec_ref(v_alt_756_);
v_vars_764_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
if (lean_obj_tag(v_var_x3f_757_) == 1)
{
lean_object* v_val_765_; lean_object* v_vars_766_; 
v_val_765_ = lean_ctor_get(v_var_x3f_757_, 0);
lean_inc(v_val_765_);
lean_dec_ref(v_var_x3f_757_);
v_vars_766_ = lean_array_push(v_vars_764_, v_val_765_);
v_vars_760_ = v_vars_766_;
goto v___jp_759_;
}
else
{
lean_dec(v_var_x3f_757_);
v_vars_760_ = v_vars_764_;
goto v___jp_759_;
}
v___jp_759_:
{
size_t v_sz_761_; size_t v___x_762_; lean_object* v___x_763_; 
v_sz_761_ = lean_array_size(v_pvars_758_);
v___x_762_ = ((size_t)0ULL);
v___x_763_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0(v_pvars_758_, v_sz_761_, v___x_762_, v_vars_760_);
lean_dec_ref(v_pvars_758_);
return v___x_763_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_AltExpr_vars(lean_object* v_00_u03c3_767_, lean_object* v_alt_768_){
_start:
{
lean_object* v___x_769_; 
v___x_769_ = l_Lean_Elab_Term_Do_AltExpr_vars___redArg(v_alt_768_);
return v___x_769_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorIdx(lean_object* v_x_770_){
_start:
{
switch(lean_obj_tag(v_x_770_))
{
case 0:
{
lean_object* v___x_771_; 
v___x_771_ = lean_unsigned_to_nat(0u);
return v___x_771_;
}
case 1:
{
lean_object* v___x_772_; 
v___x_772_ = lean_unsigned_to_nat(1u);
return v___x_772_;
}
case 2:
{
lean_object* v___x_773_; 
v___x_773_ = lean_unsigned_to_nat(2u);
return v___x_773_;
}
case 3:
{
lean_object* v___x_774_; 
v___x_774_ = lean_unsigned_to_nat(3u);
return v___x_774_;
}
case 4:
{
lean_object* v___x_775_; 
v___x_775_ = lean_unsigned_to_nat(4u);
return v___x_775_;
}
case 5:
{
lean_object* v___x_776_; 
v___x_776_ = lean_unsigned_to_nat(5u);
return v___x_776_;
}
case 6:
{
lean_object* v___x_777_; 
v___x_777_ = lean_unsigned_to_nat(6u);
return v___x_777_;
}
case 7:
{
lean_object* v___x_778_; 
v___x_778_ = lean_unsigned_to_nat(7u);
return v___x_778_;
}
case 8:
{
lean_object* v___x_779_; 
v___x_779_ = lean_unsigned_to_nat(8u);
return v___x_779_;
}
case 9:
{
lean_object* v___x_780_; 
v___x_780_ = lean_unsigned_to_nat(9u);
return v___x_780_;
}
case 10:
{
lean_object* v___x_781_; 
v___x_781_ = lean_unsigned_to_nat(10u);
return v___x_781_;
}
default: 
{
lean_object* v___x_782_; 
v___x_782_ = lean_unsigned_to_nat(11u);
return v___x_782_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorIdx___boxed(lean_object* v_x_783_){
_start:
{
lean_object* v_res_784_; 
v_res_784_ = l_Lean_Elab_Term_Do_Code_ctorIdx(v_x_783_);
lean_dec_ref(v_x_783_);
return v_res_784_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim___redArg(lean_object* v_t_785_, lean_object* v_k_786_){
_start:
{
switch(lean_obj_tag(v_t_785_))
{
case 0:
{
lean_object* v_xs_787_; lean_object* v_doElem_788_; lean_object* v_k_789_; lean_object* v___x_790_; 
v_xs_787_ = lean_ctor_get(v_t_785_, 0);
lean_inc_ref(v_xs_787_);
v_doElem_788_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_doElem_788_);
v_k_789_ = lean_ctor_get(v_t_785_, 2);
lean_inc_ref(v_k_789_);
lean_dec_ref(v_t_785_);
v___x_790_ = lean_apply_3(v_k_786_, v_xs_787_, v_doElem_788_, v_k_789_);
return v___x_790_;
}
case 1:
{
lean_object* v_xs_791_; lean_object* v_doElem_792_; lean_object* v_k_793_; lean_object* v___x_794_; 
v_xs_791_ = lean_ctor_get(v_t_785_, 0);
lean_inc_ref(v_xs_791_);
v_doElem_792_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_doElem_792_);
v_k_793_ = lean_ctor_get(v_t_785_, 2);
lean_inc_ref(v_k_793_);
lean_dec_ref(v_t_785_);
v___x_794_ = lean_apply_3(v_k_786_, v_xs_791_, v_doElem_792_, v_k_793_);
return v___x_794_;
}
case 2:
{
lean_object* v_name_795_; lean_object* v_params_796_; lean_object* v_body_797_; lean_object* v_k_798_; lean_object* v___x_799_; 
v_name_795_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_name_795_);
v_params_796_ = lean_ctor_get(v_t_785_, 1);
lean_inc_ref(v_params_796_);
v_body_797_ = lean_ctor_get(v_t_785_, 2);
lean_inc_ref(v_body_797_);
v_k_798_ = lean_ctor_get(v_t_785_, 3);
lean_inc_ref(v_k_798_);
lean_dec_ref(v_t_785_);
v___x_799_ = lean_apply_4(v_k_786_, v_name_795_, v_params_796_, v_body_797_, v_k_798_);
return v___x_799_;
}
case 3:
{
lean_object* v_action_800_; lean_object* v_k_801_; lean_object* v___x_802_; 
v_action_800_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_action_800_);
v_k_801_ = lean_ctor_get(v_t_785_, 1);
lean_inc_ref(v_k_801_);
lean_dec_ref(v_t_785_);
v___x_802_ = lean_apply_2(v_k_786_, v_action_800_, v_k_801_);
return v___x_802_;
}
case 7:
{
lean_object* v_ref_803_; lean_object* v_val_804_; lean_object* v___x_805_; 
v_ref_803_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_ref_803_);
v_val_804_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_val_804_);
lean_dec_ref(v_t_785_);
v___x_805_ = lean_apply_2(v_k_786_, v_ref_803_, v_val_804_);
return v___x_805_;
}
case 8:
{
lean_object* v_ref_806_; lean_object* v_h_x3f_807_; lean_object* v_optIdent_808_; lean_object* v_cond_809_; lean_object* v_thenBranch_810_; lean_object* v_elseBranch_811_; lean_object* v___x_812_; 
v_ref_806_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_ref_806_);
v_h_x3f_807_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_h_x3f_807_);
v_optIdent_808_ = lean_ctor_get(v_t_785_, 2);
lean_inc(v_optIdent_808_);
v_cond_809_ = lean_ctor_get(v_t_785_, 3);
lean_inc(v_cond_809_);
v_thenBranch_810_ = lean_ctor_get(v_t_785_, 4);
lean_inc_ref(v_thenBranch_810_);
v_elseBranch_811_ = lean_ctor_get(v_t_785_, 5);
lean_inc_ref(v_elseBranch_811_);
lean_dec_ref(v_t_785_);
v___x_812_ = lean_apply_6(v_k_786_, v_ref_806_, v_h_x3f_807_, v_optIdent_808_, v_cond_809_, v_thenBranch_810_, v_elseBranch_811_);
return v___x_812_;
}
case 9:
{
lean_object* v_ref_813_; lean_object* v_gen_814_; lean_object* v_discrs_815_; lean_object* v_optMotive_816_; lean_object* v_alts_817_; lean_object* v___x_818_; 
v_ref_813_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_ref_813_);
v_gen_814_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_gen_814_);
v_discrs_815_ = lean_ctor_get(v_t_785_, 2);
lean_inc(v_discrs_815_);
v_optMotive_816_ = lean_ctor_get(v_t_785_, 3);
lean_inc(v_optMotive_816_);
v_alts_817_ = lean_ctor_get(v_t_785_, 4);
lean_inc_ref(v_alts_817_);
lean_dec_ref(v_t_785_);
v___x_818_ = lean_apply_5(v_k_786_, v_ref_813_, v_gen_814_, v_discrs_815_, v_optMotive_816_, v_alts_817_);
return v___x_818_;
}
case 10:
{
lean_object* v_ref_819_; uint8_t v_meta_820_; lean_object* v_discr_821_; lean_object* v_alts_822_; lean_object* v_elseBranch_823_; lean_object* v___x_824_; lean_object* v___x_825_; 
v_ref_819_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_ref_819_);
v_meta_820_ = lean_ctor_get_uint8(v_t_785_, sizeof(void*)*4);
v_discr_821_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_discr_821_);
v_alts_822_ = lean_ctor_get(v_t_785_, 2);
lean_inc_ref(v_alts_822_);
v_elseBranch_823_ = lean_ctor_get(v_t_785_, 3);
lean_inc_ref(v_elseBranch_823_);
lean_dec_ref(v_t_785_);
v___x_824_ = lean_box(v_meta_820_);
v___x_825_ = lean_apply_5(v_k_786_, v_ref_819_, v___x_824_, v_discr_821_, v_alts_822_, v_elseBranch_823_);
return v___x_825_;
}
case 11:
{
lean_object* v_ref_826_; lean_object* v_jpName_827_; lean_object* v_args_828_; lean_object* v___x_829_; 
v_ref_826_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_ref_826_);
v_jpName_827_ = lean_ctor_get(v_t_785_, 1);
lean_inc(v_jpName_827_);
v_args_828_ = lean_ctor_get(v_t_785_, 2);
lean_inc_ref(v_args_828_);
lean_dec_ref(v_t_785_);
v___x_829_ = lean_apply_3(v_k_786_, v_ref_826_, v_jpName_827_, v_args_828_);
return v___x_829_;
}
default: 
{
lean_object* v_action_830_; lean_object* v___x_831_; 
v_action_830_ = lean_ctor_get(v_t_785_, 0);
lean_inc(v_action_830_);
lean_dec_ref(v_t_785_);
v___x_831_ = lean_apply_1(v_k_786_, v_action_830_);
return v___x_831_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim(lean_object* v_motive__1_832_, lean_object* v_ctorIdx_833_, lean_object* v_t_834_, lean_object* v_h_835_, lean_object* v_k_836_){
_start:
{
lean_object* v___x_837_; 
v___x_837_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_834_, v_k_836_);
return v___x_837_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ctorElim___boxed(lean_object* v_motive__1_838_, lean_object* v_ctorIdx_839_, lean_object* v_t_840_, lean_object* v_h_841_, lean_object* v_k_842_){
_start:
{
lean_object* v_res_843_; 
v_res_843_ = l_Lean_Elab_Term_Do_Code_ctorElim(v_motive__1_838_, v_ctorIdx_839_, v_t_840_, v_h_841_, v_k_842_);
lean_dec(v_ctorIdx_839_);
return v_res_843_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_decl_elim___redArg(lean_object* v_t_844_, lean_object* v_decl_845_){
_start:
{
lean_object* v___x_846_; 
v___x_846_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_844_, v_decl_845_);
return v___x_846_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_decl_elim(lean_object* v_motive__1_847_, lean_object* v_t_848_, lean_object* v_h_849_, lean_object* v_decl_850_){
_start:
{
lean_object* v___x_851_; 
v___x_851_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_848_, v_decl_850_);
return v___x_851_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_reassign_elim___redArg(lean_object* v_t_852_, lean_object* v_reassign_853_){
_start:
{
lean_object* v___x_854_; 
v___x_854_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_852_, v_reassign_853_);
return v___x_854_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_reassign_elim(lean_object* v_motive__1_855_, lean_object* v_t_856_, lean_object* v_h_857_, lean_object* v_reassign_858_){
_start:
{
lean_object* v___x_859_; 
v___x_859_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_856_, v_reassign_858_);
return v___x_859_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_joinpoint_elim___redArg(lean_object* v_t_860_, lean_object* v_joinpoint_861_){
_start:
{
lean_object* v___x_862_; 
v___x_862_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_860_, v_joinpoint_861_);
return v___x_862_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_joinpoint_elim(lean_object* v_motive__1_863_, lean_object* v_t_864_, lean_object* v_h_865_, lean_object* v_joinpoint_866_){
_start:
{
lean_object* v___x_867_; 
v___x_867_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_864_, v_joinpoint_866_);
return v___x_867_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_seq_elim___redArg(lean_object* v_t_868_, lean_object* v_seq_869_){
_start:
{
lean_object* v___x_870_; 
v___x_870_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_868_, v_seq_869_);
return v___x_870_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_seq_elim(lean_object* v_motive__1_871_, lean_object* v_t_872_, lean_object* v_h_873_, lean_object* v_seq_874_){
_start:
{
lean_object* v___x_875_; 
v___x_875_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_872_, v_seq_874_);
return v___x_875_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_action_elim___redArg(lean_object* v_t_876_, lean_object* v_action_877_){
_start:
{
lean_object* v___x_878_; 
v___x_878_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_876_, v_action_877_);
return v___x_878_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_action_elim(lean_object* v_motive__1_879_, lean_object* v_t_880_, lean_object* v_h_881_, lean_object* v_action_882_){
_start:
{
lean_object* v___x_883_; 
v___x_883_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_880_, v_action_882_);
return v___x_883_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_break_elim___redArg(lean_object* v_t_884_, lean_object* v_break_885_){
_start:
{
lean_object* v___x_886_; 
v___x_886_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_884_, v_break_885_);
return v___x_886_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_break_elim(lean_object* v_motive__1_887_, lean_object* v_t_888_, lean_object* v_h_889_, lean_object* v_break_890_){
_start:
{
lean_object* v___x_891_; 
v___x_891_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_888_, v_break_890_);
return v___x_891_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_continue_elim___redArg(lean_object* v_t_892_, lean_object* v_continue_893_){
_start:
{
lean_object* v___x_894_; 
v___x_894_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_892_, v_continue_893_);
return v___x_894_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_continue_elim(lean_object* v_motive__1_895_, lean_object* v_t_896_, lean_object* v_h_897_, lean_object* v_continue_898_){
_start:
{
lean_object* v___x_899_; 
v___x_899_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_896_, v_continue_898_);
return v___x_899_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_return_elim___redArg(lean_object* v_t_900_, lean_object* v_return_901_){
_start:
{
lean_object* v___x_902_; 
v___x_902_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_900_, v_return_901_);
return v___x_902_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_return_elim(lean_object* v_motive__1_903_, lean_object* v_t_904_, lean_object* v_h_905_, lean_object* v_return_906_){
_start:
{
lean_object* v___x_907_; 
v___x_907_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_904_, v_return_906_);
return v___x_907_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ite_elim___redArg(lean_object* v_t_908_, lean_object* v_ite_909_){
_start:
{
lean_object* v___x_910_; 
v___x_910_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_908_, v_ite_909_);
return v___x_910_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_ite_elim(lean_object* v_motive__1_911_, lean_object* v_t_912_, lean_object* v_h_913_, lean_object* v_ite_914_){
_start:
{
lean_object* v___x_915_; 
v___x_915_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_912_, v_ite_914_);
return v___x_915_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_match_elim___redArg(lean_object* v_t_916_, lean_object* v_match_917_){
_start:
{
lean_object* v___x_918_; 
v___x_918_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_916_, v_match_917_);
return v___x_918_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_match_elim(lean_object* v_motive__1_919_, lean_object* v_t_920_, lean_object* v_h_921_, lean_object* v_match_922_){
_start:
{
lean_object* v___x_923_; 
v___x_923_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_920_, v_match_922_);
return v___x_923_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_matchExpr_elim___redArg(lean_object* v_t_924_, lean_object* v_matchExpr_925_){
_start:
{
lean_object* v___x_926_; 
v___x_926_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_924_, v_matchExpr_925_);
return v___x_926_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_matchExpr_elim(lean_object* v_motive__1_927_, lean_object* v_t_928_, lean_object* v_h_929_, lean_object* v_matchExpr_930_){
_start:
{
lean_object* v___x_931_; 
v___x_931_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_928_, v_matchExpr_930_);
return v___x_931_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_jmp_elim___redArg(lean_object* v_t_932_, lean_object* v_jmp_933_){
_start:
{
lean_object* v___x_934_; 
v___x_934_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_932_, v_jmp_933_);
return v___x_934_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_jmp_elim(lean_object* v_motive__1_935_, lean_object* v_t_936_, lean_object* v_h_937_, lean_object* v_jmp_938_){
_start:
{
lean_object* v___x_939_; 
v___x_939_ = l_Lean_Elab_Term_Do_Code_ctorElim___redArg(v_t_936_, v_jmp_938_);
return v___x_939_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_getRef_x3f(lean_object* v_x_944_){
_start:
{
switch(lean_obj_tag(v_x_944_))
{
case 0:
{
lean_object* v_doElem_945_; lean_object* v___x_946_; 
v_doElem_945_ = lean_ctor_get(v_x_944_, 1);
lean_inc(v_doElem_945_);
v___x_946_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_946_, 0, v_doElem_945_);
return v___x_946_;
}
case 1:
{
lean_object* v_doElem_947_; lean_object* v___x_948_; 
v_doElem_947_ = lean_ctor_get(v_x_944_, 1);
lean_inc(v_doElem_947_);
v___x_948_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_948_, 0, v_doElem_947_);
return v___x_948_;
}
case 2:
{
lean_object* v___x_949_; 
v___x_949_ = lean_box(0);
return v___x_949_;
}
default: 
{
lean_object* v_action_950_; lean_object* v___x_951_; 
v_action_950_ = lean_ctor_get(v_x_944_, 0);
lean_inc(v_action_950_);
v___x_951_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_951_, 0, v_action_950_);
return v___x_951_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_Code_getRef_x3f___boxed(lean_object* v_x_952_){
_start:
{
lean_object* v_res_953_; 
v_res_953_ = l_Lean_Elab_Term_Do_Code_getRef_x3f(v_x_952_);
lean_dec_ref(v_x_952_);
return v_res_953_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0_spec__0(lean_object* v_init_954_, lean_object* v_x_955_){
_start:
{
if (lean_obj_tag(v_x_955_) == 0)
{
lean_object* v_v_956_; lean_object* v_l_957_; lean_object* v_r_958_; lean_object* v___x_959_; lean_object* v___x_960_; 
v_v_956_ = lean_ctor_get(v_x_955_, 2);
lean_inc(v_v_956_);
v_l_957_ = lean_ctor_get(v_x_955_, 3);
lean_inc(v_l_957_);
v_r_958_ = lean_ctor_get(v_x_955_, 4);
lean_inc(v_r_958_);
lean_dec_ref(v_x_955_);
v___x_959_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0_spec__0(v_init_954_, v_l_957_);
v___x_960_ = lean_array_push(v___x_959_, v_v_956_);
v_init_954_ = v___x_960_;
v_x_955_ = v_r_958_;
goto _start;
}
else
{
return v_init_954_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(lean_object* v_s_962_){
_start:
{
lean_object* v___x_963_; lean_object* v___x_964_; 
v___x_963_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v___x_964_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0_spec__0(v___x_963_, v_s_962_);
return v___x_964_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0(lean_object* v_init_965_, lean_object* v_t_966_){
_start:
{
lean_object* v___x_967_; 
v___x_967_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray_spec__0_spec__0(v_init_965_, v_t_966_);
return v___x_967_;
}
}
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0(lean_object* v_a_968_, lean_object* v_a_969_){
_start:
{
if (lean_obj_tag(v_a_968_) == 0)
{
lean_object* v___x_970_; 
v___x_970_ = l_List_reverse___redArg(v_a_969_);
return v___x_970_;
}
else
{
lean_object* v_head_971_; lean_object* v_tail_972_; lean_object* v___x_973_; lean_object* v___x_974_; lean_object* v___x_975_; lean_object* v___x_976_; 
v_head_971_ = lean_ctor_get(v_a_968_, 0);
v_tail_972_ = lean_ctor_get(v_a_968_, 1);
v___x_973_ = l_Lean_Syntax_getId(v_head_971_);
v___x_974_ = lean_simp_macro_scopes(v___x_973_);
v___x_975_ = l_Lean_MessageData_ofName(v___x_974_);
v___x_976_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_976_, 0, v___x_975_);
lean_ctor_set(v___x_976_, 1, v_a_969_);
v_a_968_ = v_tail_972_;
v_a_969_ = v___x_976_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0___boxed(lean_object* v_a_978_, lean_object* v_a_979_){
_start:
{
lean_object* v_res_980_; 
v_res_980_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0(v_a_978_, v_a_979_);
lean_dec(v_a_978_);
return v_res_980_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2(void){
_start:
{
lean_object* v___x_984_; lean_object* v___x_985_; 
v___x_984_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__1));
v___x_985_ = l_Lean_MessageData_ofFormat(v___x_984_);
return v___x_985_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData(lean_object* v_vars_986_){
_start:
{
lean_object* v___x_987_; lean_object* v___x_988_; lean_object* v___x_989_; lean_object* v___x_990_; lean_object* v___x_991_; 
v___x_987_ = lean_array_to_list(v_vars_986_);
v___x_988_ = lean_box(0);
v___x_989_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData_spec__0(v___x_987_, v___x_988_);
lean_dec(v___x_987_);
v___x_990_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__2);
v___x_991_ = l_Lean_MessageData_joinSep(v___x_989_, v___x_990_);
return v___x_991_;
}
}
LEAN_EXPORT lean_object* l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__4(lean_object* v_a_992_, lean_object* v_a_993_){
_start:
{
if (lean_obj_tag(v_a_992_) == 0)
{
lean_object* v___x_994_; 
v___x_994_ = l_List_reverse___redArg(v_a_993_);
return v___x_994_;
}
else
{
lean_object* v_head_995_; lean_object* v_tail_996_; lean_object* v___x_997_; lean_object* v___x_998_; 
v_head_995_ = lean_ctor_get(v_a_992_, 0);
lean_inc(v_head_995_);
v_tail_996_ = lean_ctor_get(v_a_992_, 1);
lean_inc(v_tail_996_);
lean_dec_ref(v_a_992_);
v___x_997_ = l_Lean_MessageData_ofSyntax(v_head_995_);
v___x_998_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_998_, 0, v___x_997_);
lean_ctor_set(v___x_998_, 1, v_a_993_);
v_a_992_ = v_tail_996_;
v_a_993_ = v___x_998_;
goto _start;
}
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0(void){
_start:
{
lean_object* v___x_1000_; lean_object* v___x_1001_; 
v___x_1000_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData___closed__0));
v___x_1001_ = l_Lean_stringToMessageData(v___x_1000_);
return v___x_1001_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2(lean_object* v_as_1002_, size_t v_i_1003_, size_t v_stop_1004_, lean_object* v_b_1005_){
_start:
{
uint8_t v___x_1006_; 
v___x_1006_ = lean_usize_dec_eq(v_i_1003_, v_stop_1004_);
if (v___x_1006_ == 0)
{
lean_object* v___x_1007_; lean_object* v___x_1008_; lean_object* v___x_1009_; lean_object* v___x_1010_; lean_object* v___x_1011_; size_t v___x_1012_; size_t v___x_1013_; 
v___x_1007_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_1008_ = lean_array_uget_borrowed(v_as_1002_, v_i_1003_);
lean_inc(v___x_1008_);
v___x_1009_ = l_Lean_MessageData_ofSyntax(v___x_1008_);
v___x_1010_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1010_, 0, v___x_1007_);
lean_ctor_set(v___x_1010_, 1, v___x_1009_);
v___x_1011_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1011_, 0, v_b_1005_);
lean_ctor_set(v___x_1011_, 1, v___x_1010_);
v___x_1012_ = ((size_t)1ULL);
v___x_1013_ = lean_usize_add(v_i_1003_, v___x_1012_);
v_i_1003_ = v___x_1013_;
v_b_1005_ = v___x_1011_;
goto _start;
}
else
{
return v_b_1005_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___boxed(lean_object* v_as_1015_, lean_object* v_i_1016_, lean_object* v_stop_1017_, lean_object* v_b_1018_){
_start:
{
size_t v_i_boxed_1019_; size_t v_stop_boxed_1020_; lean_object* v_res_1021_; 
v_i_boxed_1019_ = lean_unbox_usize(v_i_1016_);
lean_dec(v_i_1016_);
v_stop_boxed_1020_ = lean_unbox_usize(v_stop_1017_);
lean_dec(v_stop_1017_);
v_res_1021_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2(v_as_1015_, v_i_boxed_1019_, v_stop_boxed_1020_, v_b_1018_);
lean_dec_ref(v_as_1015_);
return v_res_1021_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0(size_t v_sz_1022_, size_t v_i_1023_, lean_object* v_bs_1024_){
_start:
{
uint8_t v___x_1025_; 
v___x_1025_ = lean_usize_dec_lt(v_i_1023_, v_sz_1022_);
if (v___x_1025_ == 0)
{
return v_bs_1024_;
}
else
{
lean_object* v_v_1026_; lean_object* v_fst_1027_; lean_object* v___x_1028_; lean_object* v_bs_x27_1029_; size_t v___x_1030_; size_t v___x_1031_; lean_object* v___x_1032_; 
v_v_1026_ = lean_array_uget_borrowed(v_bs_1024_, v_i_1023_);
v_fst_1027_ = lean_ctor_get(v_v_1026_, 0);
lean_inc(v_fst_1027_);
v___x_1028_ = lean_unsigned_to_nat(0u);
v_bs_x27_1029_ = lean_array_uset(v_bs_1024_, v_i_1023_, v___x_1028_);
v___x_1030_ = ((size_t)1ULL);
v___x_1031_ = lean_usize_add(v_i_1023_, v___x_1030_);
v___x_1032_ = lean_array_uset(v_bs_x27_1029_, v_i_1023_, v_fst_1027_);
v_i_1023_ = v___x_1031_;
v_bs_1024_ = v___x_1032_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0___boxed(lean_object* v_sz_1034_, lean_object* v_i_1035_, lean_object* v_bs_1036_){
_start:
{
size_t v_sz_boxed_1037_; size_t v_i_boxed_1038_; lean_object* v_res_1039_; 
v_sz_boxed_1037_ = lean_unbox_usize(v_sz_1034_);
lean_dec(v_sz_1034_);
v_i_boxed_1038_ = lean_unbox_usize(v_i_1035_);
lean_dec(v_i_1035_);
v_res_1039_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0(v_sz_boxed_1037_, v_i_boxed_1038_, v_bs_1036_);
return v_res_1039_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1(void){
_start:
{
lean_object* v___x_1041_; lean_object* v___x_1042_; 
v___x_1041_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__0));
v___x_1042_ = l_Lean_stringToMessageData(v___x_1041_);
return v___x_1042_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3(void){
_start:
{
lean_object* v___x_1044_; lean_object* v___x_1045_; 
v___x_1044_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__2));
v___x_1045_ = l_Lean_stringToMessageData(v___x_1044_);
return v___x_1045_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1(void){
_start:
{
lean_object* v___x_1047_; lean_object* v___x_1048_; 
v___x_1047_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__0));
v___x_1048_ = l_Lean_stringToMessageData(v___x_1047_);
return v___x_1048_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3(void){
_start:
{
lean_object* v___x_1050_; lean_object* v___x_1051_; 
v___x_1050_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__2));
v___x_1051_ = l_Lean_stringToMessageData(v___x_1050_);
return v___x_1051_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5(void){
_start:
{
lean_object* v___x_1053_; lean_object* v___x_1054_; 
v___x_1053_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__4));
v___x_1054_ = l_Lean_stringToMessageData(v___x_1053_);
return v___x_1054_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7(void){
_start:
{
lean_object* v___x_1056_; lean_object* v___x_1057_; 
v___x_1056_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__6));
v___x_1057_ = l_Lean_stringToMessageData(v___x_1056_);
return v___x_1057_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9(void){
_start:
{
lean_object* v___x_1059_; lean_object* v___x_1060_; 
v___x_1059_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__8));
v___x_1060_ = l_Lean_stringToMessageData(v___x_1059_);
return v___x_1060_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11(void){
_start:
{
lean_object* v___x_1062_; lean_object* v___x_1063_; 
v___x_1062_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__10));
v___x_1063_ = l_Lean_stringToMessageData(v___x_1062_);
return v___x_1063_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13(void){
_start:
{
lean_object* v___x_1065_; lean_object* v___x_1066_; 
v___x_1065_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__12));
v___x_1066_ = l_Lean_stringToMessageData(v___x_1065_);
return v___x_1066_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15(void){
_start:
{
lean_object* v___x_1068_; lean_object* v___x_1069_; 
v___x_1068_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__14));
v___x_1069_ = l_Lean_stringToMessageData(v___x_1068_);
return v___x_1069_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17(void){
_start:
{
lean_object* v___x_1071_; lean_object* v___x_1072_; 
v___x_1071_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__16));
v___x_1072_ = l_Lean_stringToMessageData(v___x_1071_);
return v___x_1072_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19(void){
_start:
{
lean_object* v___x_1074_; lean_object* v___x_1075_; 
v___x_1074_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__18));
v___x_1075_ = l_Lean_stringToMessageData(v___x_1074_);
return v___x_1075_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21(void){
_start:
{
lean_object* v___x_1077_; lean_object* v___x_1078_; 
v___x_1077_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__20));
v___x_1078_ = l_Lean_stringToMessageData(v___x_1077_);
return v___x_1078_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23(void){
_start:
{
lean_object* v___x_1080_; lean_object* v___x_1081_; 
v___x_1080_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__22));
v___x_1081_ = l_Lean_stringToMessageData(v___x_1080_);
return v___x_1081_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1(void){
_start:
{
lean_object* v___x_1083_; lean_object* v___x_1084_; 
v___x_1083_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___x_1084_ = l_Lean_stringToMessageData(v___x_1083_);
return v___x_1084_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25(void){
_start:
{
lean_object* v___x_1086_; lean_object* v___x_1087_; 
v___x_1086_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__24));
v___x_1087_ = l_Lean_stringToMessageData(v___x_1086_);
return v___x_1087_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27(void){
_start:
{
lean_object* v___x_1089_; lean_object* v___x_1090_; 
v___x_1089_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__26));
v___x_1090_ = l_Lean_stringToMessageData(v___x_1089_);
return v___x_1090_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3(void){
_start:
{
lean_object* v___x_1092_; lean_object* v___x_1093_; 
v___x_1092_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2));
v___x_1093_ = l_Lean_stringToMessageData(v___x_1092_);
return v___x_1093_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5(void){
_start:
{
lean_object* v___x_1096_; lean_object* v___x_1097_; 
v___x_1096_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__4));
v___x_1097_ = l_Lean_MessageData_ofFormat(v___x_1096_);
return v___x_1097_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3(lean_object* v_us_1098_, lean_object* v_as_1099_, size_t v_i_1100_, size_t v_stop_1101_, lean_object* v_b_1102_){
_start:
{
lean_object* v___y_1104_; lean_object* v___y_1105_; lean_object* v___y_1106_; uint8_t v___x_1115_; 
v___x_1115_ = lean_usize_dec_eq(v_i_1100_, v_stop_1101_);
if (v___x_1115_ == 0)
{
lean_object* v___x_1116_; lean_object* v_var_x3f_1117_; lean_object* v___x_1118_; lean_object* v___y_1120_; 
v___x_1116_ = lean_array_uget_borrowed(v_as_1099_, v_i_1100_);
v_var_x3f_1117_ = lean_ctor_get(v___x_1116_, 1);
v___x_1118_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1);
if (lean_obj_tag(v_var_x3f_1117_) == 1)
{
lean_object* v_val_1139_; lean_object* v___x_1140_; lean_object* v___x_1141_; lean_object* v___x_1142_; 
v_val_1139_ = lean_ctor_get(v_var_x3f_1117_, 0);
lean_inc(v_val_1139_);
v___x_1140_ = l_Lean_MessageData_ofSyntax(v_val_1139_);
v___x_1141_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__3);
v___x_1142_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1142_, 0, v___x_1140_);
lean_ctor_set(v___x_1142_, 1, v___x_1141_);
v___y_1120_ = v___x_1142_;
goto v___jp_1119_;
}
else
{
lean_object* v___x_1143_; 
v___x_1143_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__5);
v___y_1120_ = v___x_1143_;
goto v___jp_1119_;
}
v___jp_1119_:
{
lean_object* v_funName_1121_; lean_object* v_pvars_1122_; lean_object* v_rhs_1123_; lean_object* v___x_1124_; lean_object* v_acc_1125_; lean_object* v___x_1126_; lean_object* v_acc_1127_; lean_object* v___x_1128_; lean_object* v___x_1129_; lean_object* v___x_1130_; uint8_t v___x_1131_; 
v_funName_1121_ = lean_ctor_get(v___x_1116_, 2);
v_pvars_1122_ = lean_ctor_get(v___x_1116_, 3);
v_rhs_1123_ = lean_ctor_get(v___x_1116_, 4);
v___x_1124_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1124_, 0, v___x_1118_);
lean_ctor_set(v___x_1124_, 1, v___y_1120_);
v_acc_1125_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_acc_1125_, 0, v_b_1102_);
lean_ctor_set(v_acc_1125_, 1, v___x_1124_);
lean_inc(v_funName_1121_);
v___x_1126_ = l_Lean_MessageData_ofSyntax(v_funName_1121_);
v_acc_1127_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_acc_1127_, 0, v_acc_1125_);
lean_ctor_set(v_acc_1127_, 1, v___x_1126_);
v___x_1128_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___x_1129_ = lean_unsigned_to_nat(0u);
v___x_1130_ = lean_array_get_size(v_pvars_1122_);
v___x_1131_ = lean_nat_dec_lt(v___x_1129_, v___x_1130_);
if (v___x_1131_ == 0)
{
lean_inc(v_rhs_1123_);
v___y_1104_ = v_acc_1127_;
v___y_1105_ = v_rhs_1123_;
v___y_1106_ = v___x_1128_;
goto v___jp_1103_;
}
else
{
uint8_t v___x_1132_; 
v___x_1132_ = lean_nat_dec_le(v___x_1130_, v___x_1130_);
if (v___x_1132_ == 0)
{
if (v___x_1131_ == 0)
{
lean_inc(v_rhs_1123_);
v___y_1104_ = v_acc_1127_;
v___y_1105_ = v_rhs_1123_;
v___y_1106_ = v___x_1128_;
goto v___jp_1103_;
}
else
{
size_t v___x_1133_; size_t v___x_1134_; lean_object* v___x_1135_; 
v___x_1133_ = ((size_t)0ULL);
v___x_1134_ = lean_usize_of_nat(v___x_1130_);
v___x_1135_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2(v_pvars_1122_, v___x_1133_, v___x_1134_, v___x_1128_);
lean_inc(v_rhs_1123_);
v___y_1104_ = v_acc_1127_;
v___y_1105_ = v_rhs_1123_;
v___y_1106_ = v___x_1135_;
goto v___jp_1103_;
}
}
else
{
size_t v___x_1136_; size_t v___x_1137_; lean_object* v___x_1138_; 
v___x_1136_ = ((size_t)0ULL);
v___x_1137_ = lean_usize_of_nat(v___x_1130_);
v___x_1138_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2(v_pvars_1122_, v___x_1136_, v___x_1137_, v___x_1128_);
lean_inc(v_rhs_1123_);
v___y_1104_ = v_acc_1127_;
v___y_1105_ = v_rhs_1123_;
v___y_1106_ = v___x_1138_;
goto v___jp_1103_;
}
}
}
}
else
{
lean_dec_ref(v_us_1098_);
return v_b_1102_;
}
v___jp_1103_:
{
lean_object* v_acc_1107_; lean_object* v___x_1108_; lean_object* v___x_1109_; lean_object* v___x_1110_; lean_object* v___x_1111_; size_t v___x_1112_; size_t v___x_1113_; 
v_acc_1107_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_acc_1107_, 0, v___y_1104_);
lean_ctor_set(v_acc_1107_, 1, v___y_1106_);
v___x_1108_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3);
lean_inc_ref(v_us_1098_);
v___x_1109_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1098_, v___y_1105_);
v___x_1110_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1110_, 0, v___x_1108_);
lean_ctor_set(v___x_1110_, 1, v___x_1109_);
v___x_1111_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1111_, 0, v_acc_1107_);
lean_ctor_set(v___x_1111_, 1, v___x_1110_);
v___x_1112_ = ((size_t)1ULL);
v___x_1113_ = lean_usize_add(v_i_1100_, v___x_1112_);
v_i_1100_ = v___x_1113_;
v_b_1102_ = v___x_1111_;
goto _start;
}
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30(void){
_start:
{
lean_object* v___x_1146_; lean_object* v___x_1147_; 
v___x_1146_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__29));
v___x_1147_ = l_Lean_stringToMessageData(v___x_1146_);
return v___x_1147_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(lean_object* v_us_1148_, lean_object* v_a_1149_){
_start:
{
switch(lean_obj_tag(v_a_1149_))
{
case 0:
{
lean_object* v_xs_1150_; lean_object* v_k_1151_; lean_object* v___x_1152_; lean_object* v___x_1153_; lean_object* v___x_1154_; lean_object* v___x_1155_; lean_object* v___x_1156_; lean_object* v___x_1157_; lean_object* v___x_1158_; 
v_xs_1150_ = lean_ctor_get(v_a_1149_, 0);
lean_inc_ref(v_xs_1150_);
v_k_1151_ = lean_ctor_get(v_a_1149_, 2);
lean_inc_ref(v_k_1151_);
lean_dec_ref(v_a_1149_);
v___x_1152_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1);
v___x_1153_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData(v_xs_1150_);
v___x_1154_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1154_, 0, v___x_1152_);
lean_ctor_set(v___x_1154_, 1, v___x_1153_);
v___x_1155_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3);
v___x_1156_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1156_, 0, v___x_1154_);
lean_ctor_set(v___x_1156_, 1, v___x_1155_);
v___x_1157_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_k_1151_);
v___x_1158_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1158_, 0, v___x_1156_);
lean_ctor_set(v___x_1158_, 1, v___x_1157_);
return v___x_1158_;
}
case 1:
{
lean_object* v_xs_1159_; lean_object* v_k_1160_; lean_object* v___x_1161_; lean_object* v___x_1162_; lean_object* v___x_1163_; lean_object* v___x_1164_; lean_object* v___x_1165_; 
v_xs_1159_ = lean_ctor_get(v_a_1149_, 0);
lean_inc_ref(v_xs_1159_);
v_k_1160_ = lean_ctor_get(v_a_1149_, 2);
lean_inc_ref(v_k_1160_);
lean_dec_ref(v_a_1149_);
v___x_1161_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData(v_xs_1159_);
v___x_1162_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__3);
v___x_1163_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1163_, 0, v___x_1161_);
lean_ctor_set(v___x_1163_, 1, v___x_1162_);
v___x_1164_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_k_1160_);
v___x_1165_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1165_, 0, v___x_1163_);
lean_ctor_set(v___x_1165_, 1, v___x_1164_);
return v___x_1165_;
}
case 2:
{
lean_object* v_name_1166_; lean_object* v_params_1167_; lean_object* v_body_1168_; lean_object* v_k_1169_; lean_object* v___x_1170_; lean_object* v___x_1171_; lean_object* v___x_1172_; lean_object* v___x_1173_; lean_object* v___x_1174_; lean_object* v___x_1175_; size_t v_sz_1176_; size_t v___x_1177_; lean_object* v___x_1178_; lean_object* v___x_1179_; lean_object* v___x_1180_; lean_object* v___x_1181_; lean_object* v___x_1182_; lean_object* v___x_1183_; lean_object* v___x_1184_; lean_object* v___x_1185_; lean_object* v___x_1186_; lean_object* v___x_1187_; lean_object* v___x_1188_; lean_object* v___x_1189_; 
v_name_1166_ = lean_ctor_get(v_a_1149_, 0);
lean_inc(v_name_1166_);
v_params_1167_ = lean_ctor_get(v_a_1149_, 1);
lean_inc_ref(v_params_1167_);
v_body_1168_ = lean_ctor_get(v_a_1149_, 2);
lean_inc_ref(v_body_1168_);
v_k_1169_ = lean_ctor_get(v_a_1149_, 3);
lean_inc_ref(v_k_1169_);
lean_dec_ref(v_a_1149_);
v___x_1170_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__1);
v___x_1171_ = lean_simp_macro_scopes(v_name_1166_);
v___x_1172_ = l_Lean_MessageData_ofName(v___x_1171_);
v___x_1173_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1173_, 0, v___x_1170_);
lean_ctor_set(v___x_1173_, 1, v___x_1172_);
v___x_1174_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_1175_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1175_, 0, v___x_1173_);
lean_ctor_set(v___x_1175_, 1, v___x_1174_);
v_sz_1176_ = lean_array_size(v_params_1167_);
v___x_1177_ = ((size_t)0ULL);
v___x_1178_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0(v_sz_1176_, v___x_1177_, v_params_1167_);
v___x_1179_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varsToMessageData(v___x_1178_);
v___x_1180_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1180_, 0, v___x_1175_);
lean_ctor_set(v___x_1180_, 1, v___x_1179_);
v___x_1181_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__5);
v___x_1182_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1182_, 0, v___x_1180_);
lean_ctor_set(v___x_1182_, 1, v___x_1181_);
lean_inc_ref(v_us_1148_);
v___x_1183_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_body_1168_);
v___x_1184_ = l_Lean_indentD(v___x_1183_);
v___x_1185_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1185_, 0, v___x_1182_);
lean_ctor_set(v___x_1185_, 1, v___x_1184_);
v___x_1186_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7);
v___x_1187_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1187_, 0, v___x_1185_);
lean_ctor_set(v___x_1187_, 1, v___x_1186_);
v___x_1188_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_k_1169_);
v___x_1189_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1189_, 0, v___x_1187_);
lean_ctor_set(v___x_1189_, 1, v___x_1188_);
return v___x_1189_;
}
case 3:
{
lean_object* v_action_1190_; lean_object* v_k_1191_; lean_object* v___x_1192_; lean_object* v___x_1193_; lean_object* v___x_1194_; lean_object* v___x_1195_; lean_object* v___x_1196_; 
v_action_1190_ = lean_ctor_get(v_a_1149_, 0);
lean_inc(v_action_1190_);
v_k_1191_ = lean_ctor_get(v_a_1149_, 1);
lean_inc_ref(v_k_1191_);
lean_dec_ref(v_a_1149_);
v___x_1192_ = l_Lean_MessageData_ofSyntax(v_action_1190_);
v___x_1193_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__7);
v___x_1194_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1194_, 0, v___x_1192_);
lean_ctor_set(v___x_1194_, 1, v___x_1193_);
v___x_1195_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_k_1191_);
v___x_1196_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1196_, 0, v___x_1194_);
lean_ctor_set(v___x_1196_, 1, v___x_1195_);
return v___x_1196_;
}
case 4:
{
lean_object* v_action_1197_; lean_object* v___x_1198_; 
lean_dec_ref(v_us_1148_);
v_action_1197_ = lean_ctor_get(v_a_1149_, 0);
lean_inc(v_action_1197_);
lean_dec_ref(v_a_1149_);
v___x_1198_ = l_Lean_MessageData_ofSyntax(v_action_1197_);
return v___x_1198_;
}
case 5:
{
lean_object* v___x_1199_; lean_object* v___x_1200_; 
lean_dec_ref(v_a_1149_);
v___x_1199_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__9);
v___x_1200_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1200_, 0, v___x_1199_);
lean_ctor_set(v___x_1200_, 1, v_us_1148_);
return v___x_1200_;
}
case 6:
{
lean_object* v___x_1201_; lean_object* v___x_1202_; 
lean_dec_ref(v_a_1149_);
v___x_1201_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__11);
v___x_1202_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1202_, 0, v___x_1201_);
lean_ctor_set(v___x_1202_, 1, v_us_1148_);
return v___x_1202_;
}
case 7:
{
lean_object* v_val_1203_; lean_object* v___x_1204_; lean_object* v___x_1205_; lean_object* v___x_1206_; lean_object* v___x_1207_; lean_object* v___x_1208_; lean_object* v___x_1209_; 
v_val_1203_ = lean_ctor_get(v_a_1149_, 1);
lean_inc(v_val_1203_);
lean_dec_ref(v_a_1149_);
v___x_1204_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__13);
v___x_1205_ = l_Lean_MessageData_ofSyntax(v_val_1203_);
v___x_1206_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1206_, 0, v___x_1204_);
lean_ctor_set(v___x_1206_, 1, v___x_1205_);
v___x_1207_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_1208_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1208_, 0, v___x_1206_);
lean_ctor_set(v___x_1208_, 1, v___x_1207_);
v___x_1209_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1209_, 0, v___x_1208_);
lean_ctor_set(v___x_1209_, 1, v_us_1148_);
return v___x_1209_;
}
case 8:
{
lean_object* v_cond_1210_; lean_object* v_thenBranch_1211_; lean_object* v_elseBranch_1212_; lean_object* v___x_1213_; lean_object* v___x_1214_; lean_object* v___x_1215_; lean_object* v___x_1216_; lean_object* v___x_1217_; lean_object* v___x_1218_; lean_object* v___x_1219_; lean_object* v___x_1220_; lean_object* v___x_1221_; lean_object* v___x_1222_; lean_object* v___x_1223_; lean_object* v___x_1224_; 
v_cond_1210_ = lean_ctor_get(v_a_1149_, 3);
lean_inc(v_cond_1210_);
v_thenBranch_1211_ = lean_ctor_get(v_a_1149_, 4);
lean_inc_ref(v_thenBranch_1211_);
v_elseBranch_1212_ = lean_ctor_get(v_a_1149_, 5);
lean_inc_ref(v_elseBranch_1212_);
lean_dec_ref(v_a_1149_);
v___x_1213_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__15);
v___x_1214_ = l_Lean_MessageData_ofSyntax(v_cond_1210_);
v___x_1215_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1215_, 0, v___x_1213_);
lean_ctor_set(v___x_1215_, 1, v___x_1214_);
v___x_1216_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__17);
v___x_1217_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1217_, 0, v___x_1215_);
lean_ctor_set(v___x_1217_, 1, v___x_1216_);
lean_inc_ref(v_us_1148_);
v___x_1218_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_thenBranch_1211_);
v___x_1219_ = l_Lean_indentD(v___x_1218_);
v___x_1220_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1220_, 0, v___x_1217_);
lean_ctor_set(v___x_1220_, 1, v___x_1219_);
v___x_1221_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__19);
v___x_1222_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1222_, 0, v___x_1220_);
lean_ctor_set(v___x_1222_, 1, v___x_1221_);
v___x_1223_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_elseBranch_1212_);
v___x_1224_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1224_, 0, v___x_1222_);
lean_ctor_set(v___x_1224_, 1, v___x_1223_);
return v___x_1224_;
}
case 9:
{
lean_object* v_discrs_1225_; lean_object* v_alts_1226_; lean_object* v___x_1227_; lean_object* v___x_1228_; lean_object* v___x_1229_; lean_object* v___x_1230_; lean_object* v___x_1231_; lean_object* v___x_1232_; lean_object* v___x_1233_; lean_object* v___x_1234_; uint8_t v___x_1235_; 
v_discrs_1225_ = lean_ctor_get(v_a_1149_, 2);
lean_inc(v_discrs_1225_);
v_alts_1226_ = lean_ctor_get(v_a_1149_, 4);
lean_inc_ref(v_alts_1226_);
lean_dec_ref(v_a_1149_);
v___x_1227_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__21);
v___x_1228_ = l_Lean_MessageData_ofSyntax(v_discrs_1225_);
v___x_1229_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1229_, 0, v___x_1227_);
lean_ctor_set(v___x_1229_, 1, v___x_1228_);
v___x_1230_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23);
v___x_1231_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1231_, 0, v___x_1229_);
lean_ctor_set(v___x_1231_, 1, v___x_1230_);
v___x_1232_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___x_1233_ = lean_unsigned_to_nat(0u);
v___x_1234_ = lean_array_get_size(v_alts_1226_);
v___x_1235_ = lean_nat_dec_lt(v___x_1233_, v___x_1234_);
if (v___x_1235_ == 0)
{
lean_object* v___x_1236_; 
lean_dec_ref(v_alts_1226_);
lean_dec_ref(v_us_1148_);
v___x_1236_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1236_, 0, v___x_1231_);
lean_ctor_set(v___x_1236_, 1, v___x_1232_);
return v___x_1236_;
}
else
{
uint8_t v___x_1237_; 
v___x_1237_ = lean_nat_dec_le(v___x_1234_, v___x_1234_);
if (v___x_1237_ == 0)
{
if (v___x_1235_ == 0)
{
lean_object* v___x_1238_; 
lean_dec_ref(v_alts_1226_);
lean_dec_ref(v_us_1148_);
v___x_1238_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1238_, 0, v___x_1231_);
lean_ctor_set(v___x_1238_, 1, v___x_1232_);
return v___x_1238_;
}
else
{
size_t v___x_1239_; size_t v___x_1240_; lean_object* v___x_1241_; lean_object* v___x_1242_; 
v___x_1239_ = ((size_t)0ULL);
v___x_1240_ = lean_usize_of_nat(v___x_1234_);
v___x_1241_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1(v_us_1148_, v_alts_1226_, v___x_1239_, v___x_1240_, v___x_1232_);
lean_dec_ref(v_alts_1226_);
v___x_1242_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1242_, 0, v___x_1231_);
lean_ctor_set(v___x_1242_, 1, v___x_1241_);
return v___x_1242_;
}
}
else
{
size_t v___x_1243_; size_t v___x_1244_; lean_object* v___x_1245_; lean_object* v___x_1246_; 
v___x_1243_ = ((size_t)0ULL);
v___x_1244_ = lean_usize_of_nat(v___x_1234_);
v___x_1245_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1(v_us_1148_, v_alts_1226_, v___x_1243_, v___x_1244_, v___x_1232_);
lean_dec_ref(v_alts_1226_);
v___x_1246_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1246_, 0, v___x_1231_);
lean_ctor_set(v___x_1246_, 1, v___x_1245_);
return v___x_1246_;
}
}
}
case 10:
{
uint8_t v_meta_1247_; lean_object* v_discr_1248_; lean_object* v_alts_1249_; lean_object* v_elseBranch_1250_; lean_object* v___y_1252_; lean_object* v___y_1253_; lean_object* v___x_1259_; lean_object* v___y_1261_; 
v_meta_1247_ = lean_ctor_get_uint8(v_a_1149_, sizeof(void*)*4);
v_discr_1248_ = lean_ctor_get(v_a_1149_, 1);
lean_inc(v_discr_1248_);
v_alts_1249_ = lean_ctor_get(v_a_1149_, 2);
lean_inc_ref(v_alts_1249_);
v_elseBranch_1250_ = lean_ctor_get(v_a_1149_, 3);
lean_inc_ref(v_elseBranch_1250_);
lean_dec_ref(v_a_1149_);
v___x_1259_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__27);
if (v_meta_1247_ == 0)
{
lean_object* v___x_1281_; 
v___x_1281_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__28));
v___y_1261_ = v___x_1281_;
goto v___jp_1260_;
}
else
{
lean_object* v___x_1282_; 
v___x_1282_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___y_1261_ = v___x_1282_;
goto v___jp_1260_;
}
v___jp_1251_:
{
lean_object* v_r_1254_; lean_object* v___x_1255_; lean_object* v___x_1256_; lean_object* v___x_1257_; lean_object* v___x_1258_; 
v_r_1254_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_r_1254_, 0, v___y_1252_);
lean_ctor_set(v_r_1254_, 1, v___y_1253_);
v___x_1255_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__25);
v___x_1256_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1148_, v_elseBranch_1250_);
v___x_1257_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1257_, 0, v___x_1255_);
lean_ctor_set(v___x_1257_, 1, v___x_1256_);
v___x_1258_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1258_, 0, v_r_1254_);
lean_ctor_set(v___x_1258_, 1, v___x_1257_);
return v___x_1258_;
}
v___jp_1260_:
{
lean_object* v___x_1262_; lean_object* v___x_1263_; lean_object* v___x_1264_; lean_object* v___x_1265_; lean_object* v___x_1266_; lean_object* v___x_1267_; lean_object* v___x_1268_; lean_object* v_r_1269_; lean_object* v___x_1270_; lean_object* v___x_1271_; lean_object* v___x_1272_; uint8_t v___x_1273_; 
v___x_1262_ = l_Lean_stringToMessageData(v___y_1261_);
v___x_1263_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1263_, 0, v___x_1259_);
lean_ctor_set(v___x_1263_, 1, v___x_1262_);
v___x_1264_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_1265_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1265_, 0, v___x_1263_);
lean_ctor_set(v___x_1265_, 1, v___x_1264_);
v___x_1266_ = l_Lean_MessageData_ofSyntax(v_discr_1248_);
v___x_1267_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1267_, 0, v___x_1265_);
lean_ctor_set(v___x_1267_, 1, v___x_1266_);
v___x_1268_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__23);
v_r_1269_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v_r_1269_, 0, v___x_1267_);
lean_ctor_set(v_r_1269_, 1, v___x_1268_);
v___x_1270_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___x_1271_ = lean_unsigned_to_nat(0u);
v___x_1272_ = lean_array_get_size(v_alts_1249_);
v___x_1273_ = lean_nat_dec_lt(v___x_1271_, v___x_1272_);
if (v___x_1273_ == 0)
{
lean_dec_ref(v_alts_1249_);
v___y_1252_ = v_r_1269_;
v___y_1253_ = v___x_1270_;
goto v___jp_1251_;
}
else
{
uint8_t v___x_1274_; 
v___x_1274_ = lean_nat_dec_le(v___x_1272_, v___x_1272_);
if (v___x_1274_ == 0)
{
if (v___x_1273_ == 0)
{
lean_dec_ref(v_alts_1249_);
v___y_1252_ = v_r_1269_;
v___y_1253_ = v___x_1270_;
goto v___jp_1251_;
}
else
{
size_t v___x_1275_; size_t v___x_1276_; lean_object* v___x_1277_; 
v___x_1275_ = ((size_t)0ULL);
v___x_1276_ = lean_usize_of_nat(v___x_1272_);
lean_inc_ref(v_us_1148_);
v___x_1277_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3(v_us_1148_, v_alts_1249_, v___x_1275_, v___x_1276_, v___x_1270_);
lean_dec_ref(v_alts_1249_);
v___y_1252_ = v_r_1269_;
v___y_1253_ = v___x_1277_;
goto v___jp_1251_;
}
}
else
{
size_t v___x_1278_; size_t v___x_1279_; lean_object* v___x_1280_; 
v___x_1278_ = ((size_t)0ULL);
v___x_1279_ = lean_usize_of_nat(v___x_1272_);
lean_inc_ref(v_us_1148_);
v___x_1280_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3(v_us_1148_, v_alts_1249_, v___x_1278_, v___x_1279_, v___x_1270_);
lean_dec_ref(v_alts_1249_);
v___y_1252_ = v_r_1269_;
v___y_1253_ = v___x_1280_;
goto v___jp_1251_;
}
}
}
}
default: 
{
lean_object* v_jpName_1283_; lean_object* v_args_1284_; lean_object* v___x_1285_; lean_object* v___x_1286_; lean_object* v___x_1287_; lean_object* v___x_1288_; lean_object* v___x_1289_; lean_object* v___x_1290_; lean_object* v___x_1291_; lean_object* v___x_1292_; lean_object* v___x_1293_; lean_object* v___x_1294_; lean_object* v___x_1295_; 
lean_dec_ref(v_us_1148_);
v_jpName_1283_ = lean_ctor_get(v_a_1149_, 1);
lean_inc(v_jpName_1283_);
v_args_1284_ = lean_ctor_get(v_a_1149_, 2);
lean_inc_ref(v_args_1284_);
lean_dec_ref(v_a_1149_);
v___x_1285_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop___closed__30);
v___x_1286_ = lean_simp_macro_scopes(v_jpName_1283_);
v___x_1287_ = l_Lean_MessageData_ofName(v___x_1286_);
v___x_1288_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1288_, 0, v___x_1285_);
lean_ctor_set(v___x_1288_, 1, v___x_1287_);
v___x_1289_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_1290_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1290_, 0, v___x_1288_);
lean_ctor_set(v___x_1290_, 1, v___x_1289_);
v___x_1291_ = lean_array_to_list(v_args_1284_);
v___x_1292_ = lean_box(0);
v___x_1293_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__4(v___x_1291_, v___x_1292_);
v___x_1294_ = l_Lean_MessageData_ofList(v___x_1293_);
v___x_1295_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1295_, 0, v___x_1290_);
lean_ctor_set(v___x_1295_, 1, v___x_1294_);
return v___x_1295_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1(lean_object* v_us_1296_, lean_object* v_as_1297_, size_t v_i_1298_, size_t v_stop_1299_, lean_object* v_b_1300_){
_start:
{
uint8_t v___x_1301_; 
v___x_1301_ = lean_usize_dec_eq(v_i_1298_, v_stop_1299_);
if (v___x_1301_ == 0)
{
lean_object* v___x_1302_; lean_object* v_patterns_1303_; lean_object* v_rhs_1304_; lean_object* v___x_1305_; lean_object* v___x_1306_; lean_object* v___x_1307_; lean_object* v___x_1308_; lean_object* v___x_1309_; lean_object* v___x_1310_; lean_object* v___x_1311_; lean_object* v___x_1312_; size_t v___x_1313_; size_t v___x_1314_; 
v___x_1302_ = lean_array_uget_borrowed(v_as_1297_, v_i_1298_);
v_patterns_1303_ = lean_ctor_get(v___x_1302_, 2);
v_rhs_1304_ = lean_ctor_get(v___x_1302_, 3);
v___x_1305_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__1);
lean_inc(v_patterns_1303_);
v___x_1306_ = l_Lean_MessageData_ofSyntax(v_patterns_1303_);
v___x_1307_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1307_, 0, v___x_1305_);
lean_ctor_set(v___x_1307_, 1, v___x_1306_);
v___x_1308_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___closed__3);
v___x_1309_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1309_, 0, v___x_1307_);
lean_ctor_set(v___x_1309_, 1, v___x_1308_);
lean_inc(v_rhs_1304_);
lean_inc_ref(v_us_1296_);
v___x_1310_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1296_, v_rhs_1304_);
v___x_1311_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1311_, 0, v___x_1309_);
lean_ctor_set(v___x_1311_, 1, v___x_1310_);
v___x_1312_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_1312_, 0, v_b_1300_);
lean_ctor_set(v___x_1312_, 1, v___x_1311_);
v___x_1313_ = ((size_t)1ULL);
v___x_1314_ = lean_usize_add(v_i_1298_, v___x_1313_);
v_i_1298_ = v___x_1314_;
v_b_1300_ = v___x_1312_;
goto _start;
}
else
{
lean_dec_ref(v_us_1296_);
return v_b_1300_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1___boxed(lean_object* v_us_1316_, lean_object* v_as_1317_, lean_object* v_i_1318_, lean_object* v_stop_1319_, lean_object* v_b_1320_){
_start:
{
size_t v_i_boxed_1321_; size_t v_stop_boxed_1322_; lean_object* v_res_1323_; 
v_i_boxed_1321_ = lean_unbox_usize(v_i_1318_);
lean_dec(v_i_1318_);
v_stop_boxed_1322_ = lean_unbox_usize(v_stop_1319_);
lean_dec(v_stop_1319_);
v_res_1323_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__1(v_us_1316_, v_as_1317_, v_i_boxed_1321_, v_stop_boxed_1322_, v_b_1320_);
lean_dec_ref(v_as_1317_);
return v_res_1323_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___boxed(lean_object* v_us_1324_, lean_object* v_as_1325_, lean_object* v_i_1326_, lean_object* v_stop_1327_, lean_object* v_b_1328_){
_start:
{
size_t v_i_boxed_1329_; size_t v_stop_boxed_1330_; lean_object* v_res_1331_; 
v_i_boxed_1329_ = lean_unbox_usize(v_i_1326_);
lean_dec(v_i_1326_);
v_stop_boxed_1330_ = lean_unbox_usize(v_stop_1327_);
lean_dec(v_stop_1327_);
v_res_1331_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3(v_us_1324_, v_as_1325_, v_i_boxed_1329_, v_stop_boxed_1330_, v_b_1328_);
lean_dec_ref(v_as_1325_);
return v_res_1331_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_CodeBlock_toMessageData(lean_object* v_codeBlock_1332_){
_start:
{
lean_object* v_code_1333_; lean_object* v_uvars_1334_; lean_object* v___x_1335_; lean_object* v___x_1336_; lean_object* v___x_1337_; lean_object* v___x_1338_; lean_object* v_us_1339_; lean_object* v___x_1340_; 
v_code_1333_ = lean_ctor_get(v_codeBlock_1332_, 0);
lean_inc_ref(v_code_1333_);
v_uvars_1334_ = lean_ctor_get(v_codeBlock_1332_, 1);
lean_inc(v_uvars_1334_);
lean_dec_ref(v_codeBlock_1332_);
v___x_1335_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v_uvars_1334_);
v___x_1336_ = lean_array_to_list(v___x_1335_);
v___x_1337_ = lean_box(0);
v___x_1338_ = l_List_mapTR_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__4(v___x_1336_, v___x_1337_);
v_us_1339_ = l_Lean_MessageData_ofList(v___x_1338_);
v___x_1340_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop(v_us_1339_, v_code_1333_);
return v___x_1340_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1(lean_object* v_p_1341_, lean_object* v_as_1342_, size_t v_i_1343_, size_t v_stop_1344_){
_start:
{
uint8_t v___x_1345_; 
v___x_1345_ = lean_usize_dec_eq(v_i_1343_, v_stop_1344_);
if (v___x_1345_ == 0)
{
lean_object* v___x_1346_; lean_object* v_rhs_1347_; uint8_t v___x_1348_; 
v___x_1346_ = lean_array_uget_borrowed(v_as_1342_, v_i_1343_);
v_rhs_1347_ = lean_ctor_get(v___x_1346_, 4);
lean_inc(v_rhs_1347_);
lean_inc_ref(v_p_1341_);
v___x_1348_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1341_, v_rhs_1347_);
if (v___x_1348_ == 0)
{
size_t v___x_1349_; size_t v___x_1350_; 
v___x_1349_ = ((size_t)1ULL);
v___x_1350_ = lean_usize_add(v_i_1343_, v___x_1349_);
v_i_1343_ = v___x_1350_;
goto _start;
}
else
{
lean_dec_ref(v_p_1341_);
return v___x_1348_;
}
}
else
{
uint8_t v___x_1352_; 
lean_dec_ref(v_p_1341_);
v___x_1352_ = 0;
return v___x_1352_;
}
}
}
LEAN_EXPORT uint8_t l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(lean_object* v_p_1353_, lean_object* v_a_1354_){
_start:
{
switch(lean_obj_tag(v_a_1354_))
{
case 0:
{
lean_object* v_k_1355_; 
v_k_1355_ = lean_ctor_get(v_a_1354_, 2);
lean_inc_ref(v_k_1355_);
lean_dec_ref(v_a_1354_);
v_a_1354_ = v_k_1355_;
goto _start;
}
case 1:
{
lean_object* v_k_1357_; 
v_k_1357_ = lean_ctor_get(v_a_1354_, 2);
lean_inc_ref(v_k_1357_);
lean_dec_ref(v_a_1354_);
v_a_1354_ = v_k_1357_;
goto _start;
}
case 2:
{
lean_object* v_body_1359_; lean_object* v_k_1360_; uint8_t v___x_1361_; 
v_body_1359_ = lean_ctor_get(v_a_1354_, 2);
lean_inc_ref(v_body_1359_);
v_k_1360_ = lean_ctor_get(v_a_1354_, 3);
lean_inc_ref(v_k_1360_);
lean_dec_ref(v_a_1354_);
lean_inc_ref(v_p_1353_);
v___x_1361_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1353_, v_body_1359_);
if (v___x_1361_ == 0)
{
v_a_1354_ = v_k_1360_;
goto _start;
}
else
{
lean_dec_ref(v_k_1360_);
lean_dec_ref(v_p_1353_);
return v___x_1361_;
}
}
case 3:
{
lean_object* v_k_1363_; 
v_k_1363_ = lean_ctor_get(v_a_1354_, 1);
lean_inc_ref(v_k_1363_);
lean_dec_ref(v_a_1354_);
v_a_1354_ = v_k_1363_;
goto _start;
}
case 8:
{
lean_object* v_thenBranch_1365_; lean_object* v_elseBranch_1366_; uint8_t v___x_1367_; 
v_thenBranch_1365_ = lean_ctor_get(v_a_1354_, 4);
lean_inc_ref(v_thenBranch_1365_);
v_elseBranch_1366_ = lean_ctor_get(v_a_1354_, 5);
lean_inc_ref(v_elseBranch_1366_);
lean_dec_ref(v_a_1354_);
lean_inc_ref(v_p_1353_);
v___x_1367_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1353_, v_thenBranch_1365_);
if (v___x_1367_ == 0)
{
v_a_1354_ = v_elseBranch_1366_;
goto _start;
}
else
{
lean_dec_ref(v_elseBranch_1366_);
lean_dec_ref(v_p_1353_);
return v___x_1367_;
}
}
case 9:
{
lean_object* v_alts_1369_; lean_object* v___x_1370_; lean_object* v___x_1371_; uint8_t v___x_1372_; 
v_alts_1369_ = lean_ctor_get(v_a_1354_, 4);
lean_inc_ref(v_alts_1369_);
lean_dec_ref(v_a_1354_);
v___x_1370_ = lean_unsigned_to_nat(0u);
v___x_1371_ = lean_array_get_size(v_alts_1369_);
v___x_1372_ = lean_nat_dec_lt(v___x_1370_, v___x_1371_);
if (v___x_1372_ == 0)
{
lean_dec_ref(v_alts_1369_);
lean_dec_ref(v_p_1353_);
return v___x_1372_;
}
else
{
if (v___x_1372_ == 0)
{
lean_dec_ref(v_alts_1369_);
lean_dec_ref(v_p_1353_);
return v___x_1372_;
}
else
{
size_t v___x_1373_; size_t v___x_1374_; uint8_t v___x_1375_; 
v___x_1373_ = ((size_t)0ULL);
v___x_1374_ = lean_usize_of_nat(v___x_1371_);
v___x_1375_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0(v_p_1353_, v_alts_1369_, v___x_1373_, v___x_1374_);
lean_dec_ref(v_alts_1369_);
return v___x_1375_;
}
}
}
case 10:
{
lean_object* v_alts_1376_; lean_object* v_elseBranch_1377_; lean_object* v___x_1378_; lean_object* v___x_1379_; uint8_t v___x_1380_; 
v_alts_1376_ = lean_ctor_get(v_a_1354_, 2);
lean_inc_ref(v_alts_1376_);
v_elseBranch_1377_ = lean_ctor_get(v_a_1354_, 3);
lean_inc_ref(v_elseBranch_1377_);
lean_dec_ref(v_a_1354_);
v___x_1378_ = lean_unsigned_to_nat(0u);
v___x_1379_ = lean_array_get_size(v_alts_1376_);
v___x_1380_ = lean_nat_dec_lt(v___x_1378_, v___x_1379_);
if (v___x_1380_ == 0)
{
lean_dec_ref(v_alts_1376_);
v_a_1354_ = v_elseBranch_1377_;
goto _start;
}
else
{
if (v___x_1380_ == 0)
{
lean_dec_ref(v_alts_1376_);
v_a_1354_ = v_elseBranch_1377_;
goto _start;
}
else
{
size_t v___x_1383_; size_t v___x_1384_; uint8_t v___x_1385_; 
v___x_1383_ = ((size_t)0ULL);
v___x_1384_ = lean_usize_of_nat(v___x_1379_);
lean_inc_ref(v_p_1353_);
v___x_1385_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1(v_p_1353_, v_alts_1376_, v___x_1383_, v___x_1384_);
lean_dec_ref(v_alts_1376_);
if (v___x_1385_ == 0)
{
v_a_1354_ = v_elseBranch_1377_;
goto _start;
}
else
{
lean_dec_ref(v_elseBranch_1377_);
lean_dec_ref(v_p_1353_);
return v___x_1385_;
}
}
}
}
case 11:
{
uint8_t v___x_1387_; 
lean_dec_ref(v_a_1354_);
lean_dec_ref(v_p_1353_);
v___x_1387_ = 0;
return v___x_1387_;
}
default: 
{
lean_object* v___x_1388_; uint8_t v___x_1389_; 
v___x_1388_ = lean_apply_1(v_p_1353_, v_a_1354_);
v___x_1389_ = lean_unbox(v___x_1388_);
return v___x_1389_;
}
}
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0(lean_object* v_p_1390_, lean_object* v_as_1391_, size_t v_i_1392_, size_t v_stop_1393_){
_start:
{
uint8_t v___x_1394_; 
v___x_1394_ = lean_usize_dec_eq(v_i_1392_, v_stop_1393_);
if (v___x_1394_ == 0)
{
lean_object* v___x_1395_; lean_object* v_rhs_1396_; uint8_t v___x_1397_; 
v___x_1395_ = lean_array_uget_borrowed(v_as_1391_, v_i_1392_);
v_rhs_1396_ = lean_ctor_get(v___x_1395_, 3);
lean_inc(v_rhs_1396_);
lean_inc_ref(v_p_1390_);
v___x_1397_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1390_, v_rhs_1396_);
if (v___x_1397_ == 0)
{
size_t v___x_1398_; size_t v___x_1399_; 
v___x_1398_ = ((size_t)1ULL);
v___x_1399_ = lean_usize_add(v_i_1392_, v___x_1398_);
v_i_1392_ = v___x_1399_;
goto _start;
}
else
{
lean_dec_ref(v_p_1390_);
return v___x_1397_;
}
}
else
{
uint8_t v___x_1401_; 
lean_dec_ref(v_p_1390_);
v___x_1401_ = 0;
return v___x_1401_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0___boxed(lean_object* v_p_1402_, lean_object* v_as_1403_, lean_object* v_i_1404_, lean_object* v_stop_1405_){
_start:
{
size_t v_i_boxed_1406_; size_t v_stop_boxed_1407_; uint8_t v_res_1408_; lean_object* v_r_1409_; 
v_i_boxed_1406_ = lean_unbox_usize(v_i_1404_);
lean_dec(v_i_1404_);
v_stop_boxed_1407_ = lean_unbox_usize(v_stop_1405_);
lean_dec(v_stop_1405_);
v_res_1408_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__0(v_p_1402_, v_as_1403_, v_i_boxed_1406_, v_stop_boxed_1407_);
lean_dec_ref(v_as_1403_);
v_r_1409_ = lean_box(v_res_1408_);
return v_r_1409_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1___boxed(lean_object* v_p_1410_, lean_object* v_as_1411_, lean_object* v_i_1412_, lean_object* v_stop_1413_){
_start:
{
size_t v_i_boxed_1414_; size_t v_stop_boxed_1415_; uint8_t v_res_1416_; lean_object* v_r_1417_; 
v_i_boxed_1414_ = lean_unbox_usize(v_i_1412_);
lean_dec(v_i_1412_);
v_stop_boxed_1415_ = lean_unbox_usize(v_stop_1413_);
lean_dec(v_stop_1413_);
v_res_1416_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop_spec__1(v_p_1410_, v_as_1411_, v_i_boxed_1414_, v_stop_boxed_1415_);
lean_dec_ref(v_as_1411_);
v_r_1417_ = lean_box(v_res_1416_);
return v_r_1417_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop___boxed(lean_object* v_p_1418_, lean_object* v_a_1419_){
_start:
{
uint8_t v_res_1420_; lean_object* v_r_1421_; 
v_res_1420_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1418_, v_a_1419_);
v_r_1421_ = lean_box(v_res_1420_);
return v_r_1421_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPointPred(lean_object* v_c_1422_, lean_object* v_p_1423_){
_start:
{
uint8_t v___x_1424_; 
v___x_1424_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v_p_1423_, v_c_1422_);
return v___x_1424_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPointPred___boxed(lean_object* v_c_1425_, lean_object* v_p_1426_){
_start:
{
uint8_t v_res_1427_; lean_object* v_r_1428_; 
v_res_1427_ = l_Lean_Elab_Term_Do_hasExitPointPred(v_c_1425_, v_p_1426_);
v_r_1428_ = lean_box(v_res_1427_);
return v_r_1428_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPoint___lam__0(lean_object* v_x_1429_){
_start:
{
uint8_t v___x_1430_; 
v___x_1430_ = 1;
return v___x_1430_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPoint___lam__0___boxed(lean_object* v_x_1431_){
_start:
{
uint8_t v_res_1432_; lean_object* v_r_1433_; 
v_res_1432_ = l_Lean_Elab_Term_Do_hasExitPoint___lam__0(v_x_1431_);
lean_dec_ref(v_x_1431_);
v_r_1433_ = lean_box(v_res_1432_);
return v_r_1433_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasExitPoint(lean_object* v_c_1435_){
_start:
{
lean_object* v___f_1436_; uint8_t v___x_1437_; 
v___f_1436_ = ((lean_object*)(l_Lean_Elab_Term_Do_hasExitPoint___closed__0));
v___x_1437_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v___f_1436_, v_c_1435_);
return v___x_1437_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasExitPoint___boxed(lean_object* v_c_1438_){
_start:
{
uint8_t v_res_1439_; lean_object* v_r_1440_; 
v_res_1439_ = l_Lean_Elab_Term_Do_hasExitPoint(v_c_1438_);
v_r_1440_ = lean_box(v_res_1439_);
return v_r_1440_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasReturn___lam__0(lean_object* v_x_1441_){
_start:
{
if (lean_obj_tag(v_x_1441_) == 7)
{
uint8_t v___x_1442_; 
v___x_1442_ = 1;
return v___x_1442_;
}
else
{
uint8_t v___x_1443_; 
v___x_1443_ = 0;
return v___x_1443_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasReturn___lam__0___boxed(lean_object* v_x_1444_){
_start:
{
uint8_t v_res_1445_; lean_object* v_r_1446_; 
v_res_1445_ = l_Lean_Elab_Term_Do_hasReturn___lam__0(v_x_1444_);
lean_dec_ref(v_x_1444_);
v_r_1446_ = lean_box(v_res_1445_);
return v_r_1446_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasReturn(lean_object* v_c_1448_){
_start:
{
lean_object* v___f_1449_; uint8_t v___x_1450_; 
v___f_1449_ = ((lean_object*)(l_Lean_Elab_Term_Do_hasReturn___closed__0));
v___x_1450_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v___f_1449_, v_c_1448_);
return v___x_1450_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasReturn___boxed(lean_object* v_c_1451_){
_start:
{
uint8_t v_res_1452_; lean_object* v_r_1453_; 
v_res_1452_ = l_Lean_Elab_Term_Do_hasReturn(v_c_1451_);
v_r_1453_ = lean_box(v_res_1452_);
return v_r_1453_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasTerminalAction___lam__0(lean_object* v_x_1454_){
_start:
{
if (lean_obj_tag(v_x_1454_) == 4)
{
uint8_t v___x_1455_; 
v___x_1455_ = 1;
return v___x_1455_;
}
else
{
uint8_t v___x_1456_; 
v___x_1456_ = 0;
return v___x_1456_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasTerminalAction___lam__0___boxed(lean_object* v_x_1457_){
_start:
{
uint8_t v_res_1458_; lean_object* v_r_1459_; 
v_res_1458_ = l_Lean_Elab_Term_Do_hasTerminalAction___lam__0(v_x_1457_);
lean_dec_ref(v_x_1457_);
v_r_1459_ = lean_box(v_res_1458_);
return v_r_1459_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasTerminalAction(lean_object* v_c_1461_){
_start:
{
lean_object* v___f_1462_; uint8_t v___x_1463_; 
v___f_1462_ = ((lean_object*)(l_Lean_Elab_Term_Do_hasTerminalAction___closed__0));
v___x_1463_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v___f_1462_, v_c_1461_);
return v___x_1463_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasTerminalAction___boxed(lean_object* v_c_1464_){
_start:
{
uint8_t v_res_1465_; lean_object* v_r_1466_; 
v_res_1465_ = l_Lean_Elab_Term_Do_hasTerminalAction(v_c_1464_);
v_r_1466_ = lean_box(v_res_1465_);
return v_r_1466_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinue___lam__0(lean_object* v_x_1467_){
_start:
{
switch(lean_obj_tag(v_x_1467_))
{
case 5:
{
uint8_t v___x_1468_; 
v___x_1468_ = 1;
return v___x_1468_;
}
case 6:
{
uint8_t v___x_1469_; 
v___x_1469_ = 1;
return v___x_1469_;
}
default: 
{
uint8_t v___x_1470_; 
v___x_1470_ = 0;
return v___x_1470_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinue___lam__0___boxed(lean_object* v_x_1471_){
_start:
{
uint8_t v_res_1472_; lean_object* v_r_1473_; 
v_res_1472_ = l_Lean_Elab_Term_Do_hasBreakContinue___lam__0(v_x_1471_);
lean_dec_ref(v_x_1471_);
v_r_1473_ = lean_box(v_res_1472_);
return v_r_1473_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinue(lean_object* v_c_1475_){
_start:
{
lean_object* v___f_1476_; uint8_t v___x_1477_; 
v___f_1476_ = ((lean_object*)(l_Lean_Elab_Term_Do_hasBreakContinue___closed__0));
v___x_1477_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v___f_1476_, v_c_1475_);
return v___x_1477_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinue___boxed(lean_object* v_c_1478_){
_start:
{
uint8_t v_res_1479_; lean_object* v_r_1480_; 
v_res_1479_ = l_Lean_Elab_Term_Do_hasBreakContinue(v_c_1478_);
v_r_1480_ = lean_box(v_res_1479_);
return v_r_1480_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0(lean_object* v_x_1481_){
_start:
{
switch(lean_obj_tag(v_x_1481_))
{
case 5:
{
uint8_t v___x_1482_; 
v___x_1482_ = 1;
return v___x_1482_;
}
case 6:
{
uint8_t v___x_1483_; 
v___x_1483_ = 1;
return v___x_1483_;
}
case 7:
{
uint8_t v___x_1484_; 
v___x_1484_ = 1;
return v___x_1484_;
}
default: 
{
uint8_t v___x_1485_; 
v___x_1485_ = 0;
return v___x_1485_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0___boxed(lean_object* v_x_1486_){
_start:
{
uint8_t v_res_1487_; lean_object* v_r_1488_; 
v_res_1487_ = l_Lean_Elab_Term_Do_hasBreakContinueReturn___lam__0(v_x_1486_);
lean_dec_ref(v_x_1486_);
v_r_1488_ = lean_box(v_res_1487_);
return v_r_1488_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_hasBreakContinueReturn(lean_object* v_c_1490_){
_start:
{
lean_object* v___f_1491_; uint8_t v___x_1492_; 
v___f_1491_ = ((lean_object*)(l_Lean_Elab_Term_Do_hasBreakContinueReturn___closed__0));
v___x_1492_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_hasExitPointPred_loop(v___f_1491_, v_c_1490_);
return v___x_1492_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_hasBreakContinueReturn___boxed(lean_object* v_c_1493_){
_start:
{
uint8_t v_res_1494_; lean_object* v_r_1495_; 
v_res_1494_ = l_Lean_Elab_Term_Do_hasBreakContinueReturn(v_c_1493_);
v_r_1495_ = lean_box(v_res_1494_);
return v_r_1495_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2(void){
_start:
{
lean_object* v___x_1499_; 
v___x_1499_ = l_Array_mkArray0(lean_box(0));
return v___x_1499_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6(void){
_start:
{
lean_object* v___x_1507_; lean_object* v___x_1508_; 
v___x_1507_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__5));
v___x_1508_ = l_String_toRawSubstring_x27(v___x_1507_);
return v___x_1508_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0(lean_object* v_info_1518_, lean_object* v_scp_1519_, lean_object* v_e_1520_, lean_object* v_toPure_1521_, lean_object* v_quotCtx_1522_){
_start:
{
lean_object* v___x_1523_; lean_object* v___x_1524_; lean_object* v___x_1525_; lean_object* v___x_1526_; lean_object* v___x_1527_; lean_object* v___x_1528_; lean_object* v___x_1529_; lean_object* v___x_1530_; lean_object* v___x_1531_; lean_object* v___x_1532_; lean_object* v___x_1533_; lean_object* v___x_1534_; lean_object* v___x_1535_; lean_object* v___x_1536_; lean_object* v___x_1537_; lean_object* v___x_1538_; lean_object* v___x_1539_; lean_object* v___x_1540_; lean_object* v___x_1541_; 
v___x_1523_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_1524_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v_info_1518_);
v___x_1525_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1525_, 0, v_info_1518_);
lean_ctor_set(v___x_1525_, 1, v___x_1524_);
v___x_1526_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_1527_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_info_1518_);
v___x_1528_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_1528_, 0, v_info_1518_);
lean_ctor_set(v___x_1528_, 1, v___x_1526_);
lean_ctor_set(v___x_1528_, 2, v___x_1527_);
v___x_1529_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_1530_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_1531_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
v___x_1532_ = l_Lean_addMacroScope(v_quotCtx_1522_, v___x_1531_, v_scp_1519_);
v___x_1533_ = lean_box(0);
lean_inc(v_info_1518_);
v___x_1534_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_1534_, 0, v_info_1518_);
lean_ctor_set(v___x_1534_, 1, v___x_1530_);
lean_ctor_set(v___x_1534_, 2, v___x_1532_);
lean_ctor_set(v___x_1534_, 3, v___x_1533_);
v___x_1535_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_info_1518_);
v___x_1536_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1536_, 0, v_info_1518_);
lean_ctor_set(v___x_1536_, 1, v___x_1535_);
v___x_1537_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v_info_1518_);
v___x_1538_ = l_Lean_Syntax_node1(v_info_1518_, v___x_1537_, v_e_1520_);
lean_inc_ref(v___x_1528_);
lean_inc(v_info_1518_);
v___x_1539_ = l_Lean_Syntax_node4(v_info_1518_, v___x_1529_, v___x_1534_, v___x_1528_, v___x_1536_, v___x_1538_);
v___x_1540_ = l_Lean_Syntax_node3(v_info_1518_, v___x_1523_, v___x_1525_, v___x_1528_, v___x_1539_);
v___x_1541_ = lean_apply_2(v_toPure_1521_, lean_box(0), v___x_1540_);
return v___x_1541_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__1(lean_object* v_info_1542_, lean_object* v_e_1543_, lean_object* v_toPure_1544_, lean_object* v_toBind_1545_, lean_object* v_getContext_1546_, lean_object* v_scp_1547_){
_start:
{
lean_object* v___f_1548_; lean_object* v___x_1549_; 
v___f_1548_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0), 5, 4);
lean_closure_set(v___f_1548_, 0, v_info_1542_);
lean_closure_set(v___f_1548_, 1, v_scp_1547_);
lean_closure_set(v___f_1548_, 2, v_e_1543_);
lean_closure_set(v___f_1548_, 3, v_toPure_1544_);
v___x_1549_ = lean_apply_4(v_toBind_1545_, lean_box(0), lean_box(0), v_getContext_1546_, v___f_1548_);
return v___x_1549_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__2(lean_object* v_e_1550_, lean_object* v_toPure_1551_, lean_object* v_toBind_1552_, lean_object* v_getContext_1553_, lean_object* v_getCurrMacroScope_1554_, lean_object* v_info_1555_){
_start:
{
lean_object* v___f_1556_; lean_object* v___x_1557_; 
lean_inc(v_toBind_1552_);
v___f_1556_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__1), 6, 5);
lean_closure_set(v___f_1556_, 0, v_info_1555_);
lean_closure_set(v___f_1556_, 1, v_e_1550_);
lean_closure_set(v___f_1556_, 2, v_toPure_1551_);
lean_closure_set(v___f_1556_, 3, v_toBind_1552_);
lean_closure_set(v___f_1556_, 4, v_getContext_1553_);
v___x_1557_ = lean_apply_4(v_toBind_1552_, lean_box(0), lean_box(0), v_getCurrMacroScope_1554_, v___f_1556_);
return v___x_1557_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__3(lean_object* v_scp_1558_, lean_object* v_info_1559_, lean_object* v_toPure_1560_, lean_object* v_quotCtx_1561_){
_start:
{
lean_object* v___x_1562_; lean_object* v___x_1563_; lean_object* v___x_1564_; lean_object* v___x_1565_; lean_object* v___x_1566_; lean_object* v___x_1567_; 
v___x_1562_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_1563_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
v___x_1564_ = l_Lean_addMacroScope(v_quotCtx_1561_, v___x_1563_, v_scp_1558_);
v___x_1565_ = lean_box(0);
v___x_1566_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_1566_, 0, v_info_1559_);
lean_ctor_set(v___x_1566_, 1, v___x_1562_);
lean_ctor_set(v___x_1566_, 2, v___x_1564_);
lean_ctor_set(v___x_1566_, 3, v___x_1565_);
v___x_1567_ = lean_apply_2(v_toPure_1560_, lean_box(0), v___x_1566_);
return v___x_1567_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__4(lean_object* v_info_1568_, lean_object* v_toPure_1569_, lean_object* v_toBind_1570_, lean_object* v_getContext_1571_, lean_object* v_scp_1572_){
_start:
{
lean_object* v___f_1573_; lean_object* v___x_1574_; 
v___f_1573_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__3), 4, 3);
lean_closure_set(v___f_1573_, 0, v_scp_1572_);
lean_closure_set(v___f_1573_, 1, v_info_1568_);
lean_closure_set(v___f_1573_, 2, v_toPure_1569_);
v___x_1574_ = lean_apply_4(v_toBind_1570_, lean_box(0), lean_box(0), v_getContext_1571_, v___f_1573_);
return v___x_1574_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__5(lean_object* v_toPure_1575_, lean_object* v_toBind_1576_, lean_object* v_getContext_1577_, lean_object* v_getCurrMacroScope_1578_, lean_object* v_info_1579_){
_start:
{
lean_object* v___f_1580_; lean_object* v___x_1581_; 
lean_inc(v_toBind_1576_);
v___f_1580_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__4), 5, 4);
lean_closure_set(v___f_1580_, 0, v_info_1579_);
lean_closure_set(v___f_1580_, 1, v_toPure_1575_);
lean_closure_set(v___f_1580_, 2, v_toBind_1576_);
lean_closure_set(v___f_1580_, 3, v_getContext_1577_);
v___x_1581_ = lean_apply_4(v_toBind_1576_, lean_box(0), lean_box(0), v_getCurrMacroScope_1578_, v___f_1580_);
return v___x_1581_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6(lean_object* v_toPure_1582_, lean_object* v_____do__lift_1583_){
_start:
{
uint8_t v___x_1584_; lean_object* v___x_1585_; lean_object* v___x_1586_; 
v___x_1584_ = 0;
v___x_1585_ = l_Lean_SourceInfo_fromRef(v_____do__lift_1583_, v___x_1584_);
v___x_1586_ = lean_apply_2(v_toPure_1582_, lean_box(0), v___x_1585_);
return v___x_1586_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6___boxed(lean_object* v_toPure_1587_, lean_object* v_____do__lift_1588_){
_start:
{
lean_object* v_res_1589_; 
v_res_1589_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6(v_toPure_1587_, v_____do__lift_1588_);
lean_dec(v_____do__lift_1588_);
return v_res_1589_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7(lean_object* v_info_1601_, lean_object* v_y_1602_, lean_object* v_toPure_1603_, lean_object* v_quotCtx_1604_){
_start:
{
lean_object* v___x_1605_; lean_object* v___x_1606_; lean_object* v___x_1607_; lean_object* v___x_1608_; lean_object* v___x_1609_; lean_object* v___x_1610_; lean_object* v___x_1611_; lean_object* v___x_1612_; lean_object* v___x_1613_; 
v___x_1605_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1));
v___x_1606_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2));
lean_inc(v_info_1601_);
v___x_1607_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1607_, 0, v_info_1601_);
lean_ctor_set(v___x_1607_, 1, v___x_1606_);
v___x_1608_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4));
v___x_1609_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5));
lean_inc(v_info_1601_);
v___x_1610_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1610_, 0, v_info_1601_);
lean_ctor_set(v___x_1610_, 1, v___x_1609_);
lean_inc(v_info_1601_);
v___x_1611_ = l_Lean_Syntax_node1(v_info_1601_, v___x_1608_, v___x_1610_);
v___x_1612_ = l_Lean_Syntax_node3(v_info_1601_, v___x_1605_, v___x_1607_, v___x_1611_, v_y_1602_);
v___x_1613_ = lean_apply_2(v_toPure_1603_, lean_box(0), v___x_1612_);
return v___x_1613_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___boxed(lean_object* v_info_1614_, lean_object* v_y_1615_, lean_object* v_toPure_1616_, lean_object* v_quotCtx_1617_){
_start:
{
lean_object* v_res_1618_; 
v_res_1618_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7(v_info_1614_, v_y_1615_, v_toPure_1616_, v_quotCtx_1617_);
lean_dec(v_quotCtx_1617_);
return v_res_1618_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8(lean_object* v_toBind_1619_, lean_object* v_getContext_1620_, lean_object* v___f_1621_, lean_object* v_scp_1622_){
_start:
{
lean_object* v___x_1623_; 
v___x_1623_ = lean_apply_4(v_toBind_1619_, lean_box(0), lean_box(0), v_getContext_1620_, v___f_1621_);
return v___x_1623_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8___boxed(lean_object* v_toBind_1624_, lean_object* v_getContext_1625_, lean_object* v___f_1626_, lean_object* v_scp_1627_){
_start:
{
lean_object* v_res_1628_; 
v_res_1628_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8(v_toBind_1624_, v_getContext_1625_, v___f_1626_, v_scp_1627_);
lean_dec(v_scp_1627_);
return v_res_1628_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__9(lean_object* v_y_1629_, lean_object* v_toPure_1630_, lean_object* v_toBind_1631_, lean_object* v_getContext_1632_, lean_object* v_getCurrMacroScope_1633_, lean_object* v_info_1634_){
_start:
{
lean_object* v___f_1635_; lean_object* v___f_1636_; lean_object* v___x_1637_; 
v___f_1635_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___boxed), 4, 3);
lean_closure_set(v___f_1635_, 0, v_info_1634_);
lean_closure_set(v___f_1635_, 1, v_y_1629_);
lean_closure_set(v___f_1635_, 2, v_toPure_1630_);
lean_inc(v_toBind_1631_);
v___f_1636_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8___boxed), 4, 3);
lean_closure_set(v___f_1636_, 0, v_toBind_1631_);
lean_closure_set(v___f_1636_, 1, v_getContext_1632_);
lean_closure_set(v___f_1636_, 2, v___f_1635_);
v___x_1637_ = lean_apply_4(v_toBind_1631_, lean_box(0), lean_box(0), v_getCurrMacroScope_1633_, v___f_1636_);
return v___x_1637_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__10(lean_object* v_y_1638_, lean_object* v_doElem_1639_, lean_object* v_toPure_1640_, lean_object* v_k_1641_){
_start:
{
lean_object* v___x_1642_; lean_object* v___x_1643_; lean_object* v___x_1644_; lean_object* v___x_1645_; lean_object* v___x_1646_; 
v___x_1642_ = lean_unsigned_to_nat(1u);
v___x_1643_ = lean_mk_empty_array_with_capacity(v___x_1642_);
v___x_1644_ = lean_array_push(v___x_1643_, v_y_1638_);
v___x_1645_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_1645_, 0, v___x_1644_);
lean_ctor_set(v___x_1645_, 1, v_doElem_1639_);
lean_ctor_set(v___x_1645_, 2, v_k_1641_);
v___x_1646_ = lean_apply_2(v_toPure_1640_, lean_box(0), v___x_1645_);
return v___x_1646_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__11(lean_object* v_doElem_1647_, lean_object* v_toPure_1648_, lean_object* v_mkCont_1649_, lean_object* v_toBind_1650_, lean_object* v_y_1651_){
_start:
{
lean_object* v___f_1652_; lean_object* v___x_1653_; lean_object* v___x_1654_; 
lean_inc(v_y_1651_);
v___f_1652_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__10), 4, 3);
lean_closure_set(v___f_1652_, 0, v_y_1651_);
lean_closure_set(v___f_1652_, 1, v_doElem_1647_);
lean_closure_set(v___f_1652_, 2, v_toPure_1648_);
v___x_1653_ = lean_apply_1(v_mkCont_1649_, v_y_1651_);
v___x_1654_ = lean_apply_4(v_toBind_1650_, lean_box(0), lean_box(0), v___x_1653_, v___f_1652_);
return v___x_1654_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__12(lean_object* v_toPure_1655_, lean_object* v_mkCont_1656_, lean_object* v_toBind_1657_, lean_object* v___x_1658_, lean_object* v___f_1659_, lean_object* v_doElem_1660_){
_start:
{
lean_object* v___f_1661_; lean_object* v___x_1662_; lean_object* v___x_1663_; 
lean_inc(v_toBind_1657_);
v___f_1661_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__11), 5, 4);
lean_closure_set(v___f_1661_, 0, v_doElem_1660_);
lean_closure_set(v___f_1661_, 1, v_toPure_1655_);
lean_closure_set(v___f_1661_, 2, v_mkCont_1656_);
lean_closure_set(v___f_1661_, 3, v_toBind_1657_);
lean_inc(v_toBind_1657_);
v___x_1662_ = lean_apply_4(v_toBind_1657_, lean_box(0), lean_box(0), v___x_1658_, v___f_1659_);
v___x_1663_ = lean_apply_4(v_toBind_1657_, lean_box(0), lean_box(0), v___x_1662_, v___f_1661_);
return v___x_1663_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__13(lean_object* v_toPure_1664_, lean_object* v_toBind_1665_, lean_object* v_getContext_1666_, lean_object* v_getCurrMacroScope_1667_, lean_object* v_mkCont_1668_, lean_object* v___x_1669_, lean_object* v___f_1670_, lean_object* v_y_1671_){
_start:
{
lean_object* v___f_1672_; lean_object* v___f_1673_; lean_object* v___x_1674_; lean_object* v___x_1675_; 
lean_inc(v_toBind_1665_);
lean_inc(v_toPure_1664_);
v___f_1672_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__9), 6, 5);
lean_closure_set(v___f_1672_, 0, v_y_1671_);
lean_closure_set(v___f_1672_, 1, v_toPure_1664_);
lean_closure_set(v___f_1672_, 2, v_toBind_1665_);
lean_closure_set(v___f_1672_, 3, v_getContext_1666_);
lean_closure_set(v___f_1672_, 4, v_getCurrMacroScope_1667_);
lean_inc(v___x_1669_);
lean_inc(v_toBind_1665_);
v___f_1673_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__12), 6, 5);
lean_closure_set(v___f_1673_, 0, v_toPure_1664_);
lean_closure_set(v___f_1673_, 1, v_mkCont_1668_);
lean_closure_set(v___f_1673_, 2, v_toBind_1665_);
lean_closure_set(v___f_1673_, 3, v___x_1669_);
lean_closure_set(v___f_1673_, 4, v___f_1672_);
lean_inc(v_toBind_1665_);
v___x_1674_ = lean_apply_4(v_toBind_1665_, lean_box(0), lean_box(0), v___x_1669_, v___f_1670_);
v___x_1675_ = lean_apply_4(v_toBind_1665_, lean_box(0), lean_box(0), v___x_1674_, v___f_1673_);
return v___x_1675_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14(lean_object* v_e_1676_, lean_object* v_withRef_1677_, lean_object* v___x_1678_, lean_object* v_oldRef_1679_){
_start:
{
lean_object* v_ref_1680_; lean_object* v___x_1681_; 
v_ref_1680_ = l_Lean_replaceRef(v_e_1676_, v_oldRef_1679_);
v___x_1681_ = lean_apply_3(v_withRef_1677_, lean_box(0), v_ref_1680_, v___x_1678_);
return v___x_1681_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14___boxed(lean_object* v_e_1682_, lean_object* v_withRef_1683_, lean_object* v___x_1684_, lean_object* v_oldRef_1685_){
_start:
{
lean_object* v_res_1686_; 
v_res_1686_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14(v_e_1682_, v_withRef_1683_, v___x_1684_, v_oldRef_1685_);
lean_dec(v_oldRef_1685_);
lean_dec(v_e_1682_);
return v_res_1686_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg(lean_object* v_inst_1687_, lean_object* v_inst_1688_, lean_object* v_e_1689_, lean_object* v_mkCont_1690_){
_start:
{
lean_object* v_toMonadRef_1691_; lean_object* v_toApplicative_1692_; lean_object* v_getCurrMacroScope_1693_; lean_object* v_getContext_1694_; lean_object* v_withFreshMacroScope_1695_; lean_object* v_toBind_1696_; lean_object* v_getRef_1697_; lean_object* v_withRef_1698_; lean_object* v_toPure_1699_; lean_object* v___f_1700_; lean_object* v___f_1701_; lean_object* v___f_1702_; lean_object* v___x_1703_; lean_object* v___f_1704_; lean_object* v___x_1705_; lean_object* v___x_1706_; lean_object* v___x_1707_; lean_object* v___f_1708_; lean_object* v___x_1709_; 
v_toMonadRef_1691_ = lean_ctor_get(v_inst_1688_, 0);
lean_inc_ref(v_toMonadRef_1691_);
v_toApplicative_1692_ = lean_ctor_get(v_inst_1687_, 0);
lean_inc_ref(v_toApplicative_1692_);
v_getCurrMacroScope_1693_ = lean_ctor_get(v_inst_1688_, 1);
lean_inc(v_getCurrMacroScope_1693_);
v_getContext_1694_ = lean_ctor_get(v_inst_1688_, 2);
lean_inc(v_getContext_1694_);
v_withFreshMacroScope_1695_ = lean_ctor_get(v_inst_1688_, 3);
lean_inc(v_withFreshMacroScope_1695_);
lean_dec_ref(v_inst_1688_);
v_toBind_1696_ = lean_ctor_get(v_inst_1687_, 1);
lean_inc(v_toBind_1696_);
lean_dec_ref(v_inst_1687_);
v_getRef_1697_ = lean_ctor_get(v_toMonadRef_1691_, 0);
lean_inc(v_getRef_1697_);
v_withRef_1698_ = lean_ctor_get(v_toMonadRef_1691_, 1);
lean_inc(v_withRef_1698_);
lean_dec_ref(v_toMonadRef_1691_);
v_toPure_1699_ = lean_ctor_get(v_toApplicative_1692_, 1);
lean_inc(v_toPure_1699_);
lean_dec_ref(v_toApplicative_1692_);
lean_inc(v_getCurrMacroScope_1693_);
lean_inc(v_getContext_1694_);
lean_inc(v_toBind_1696_);
lean_inc(v_toPure_1699_);
lean_inc(v_e_1689_);
v___f_1700_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__2), 6, 5);
lean_closure_set(v___f_1700_, 0, v_e_1689_);
lean_closure_set(v___f_1700_, 1, v_toPure_1699_);
lean_closure_set(v___f_1700_, 2, v_toBind_1696_);
lean_closure_set(v___f_1700_, 3, v_getContext_1694_);
lean_closure_set(v___f_1700_, 4, v_getCurrMacroScope_1693_);
lean_inc(v_getCurrMacroScope_1693_);
lean_inc(v_getContext_1694_);
lean_inc(v_toBind_1696_);
lean_inc(v_toPure_1699_);
v___f_1701_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__5), 5, 4);
lean_closure_set(v___f_1701_, 0, v_toPure_1699_);
lean_closure_set(v___f_1701_, 1, v_toBind_1696_);
lean_closure_set(v___f_1701_, 2, v_getContext_1694_);
lean_closure_set(v___f_1701_, 3, v_getCurrMacroScope_1693_);
lean_inc(v_toPure_1699_);
v___f_1702_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6___boxed), 2, 1);
lean_closure_set(v___f_1702_, 0, v_toPure_1699_);
lean_inc(v_toBind_1696_);
lean_inc(v_getRef_1697_);
v___x_1703_ = lean_apply_4(v_toBind_1696_, lean_box(0), lean_box(0), v_getRef_1697_, v___f_1702_);
lean_inc(v___x_1703_);
lean_inc(v_toBind_1696_);
v___f_1704_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__13), 8, 7);
lean_closure_set(v___f_1704_, 0, v_toPure_1699_);
lean_closure_set(v___f_1704_, 1, v_toBind_1696_);
lean_closure_set(v___f_1704_, 2, v_getContext_1694_);
lean_closure_set(v___f_1704_, 3, v_getCurrMacroScope_1693_);
lean_closure_set(v___f_1704_, 4, v_mkCont_1690_);
lean_closure_set(v___f_1704_, 5, v___x_1703_);
lean_closure_set(v___f_1704_, 6, v___f_1700_);
lean_inc(v_toBind_1696_);
v___x_1705_ = lean_apply_4(v_toBind_1696_, lean_box(0), lean_box(0), v___x_1703_, v___f_1701_);
lean_inc(v_toBind_1696_);
v___x_1706_ = lean_apply_4(v_toBind_1696_, lean_box(0), lean_box(0), v___x_1705_, v___f_1704_);
v___x_1707_ = lean_apply_2(v_withFreshMacroScope_1695_, lean_box(0), v___x_1706_);
v___f_1708_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__14___boxed), 4, 3);
lean_closure_set(v___f_1708_, 0, v_e_1689_);
lean_closure_set(v___f_1708_, 1, v_withRef_1698_);
lean_closure_set(v___f_1708_, 2, v___x_1707_);
v___x_1709_ = lean_apply_4(v_toBind_1696_, lean_box(0), lean_box(0), v_getRef_1697_, v___f_1708_);
return v___x_1709_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor(lean_object* v_m_1710_, lean_object* v_inst_1711_, lean_object* v_inst_1712_, lean_object* v_e_1713_, lean_object* v_mkCont_1714_){
_start:
{
lean_object* v___x_1715_; 
v___x_1715_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg(v_inst_1711_, v_inst_1712_, v_e_1713_, v_mkCont_1714_);
return v___x_1715_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0(lean_object* v_____do__lift_1716_, lean_object* v___y_1717_, lean_object* v___y_1718_){
_start:
{
uint8_t v___x_1719_; lean_object* v___x_1720_; lean_object* v___x_1721_; 
v___x_1719_ = 0;
v___x_1720_ = l_Lean_SourceInfo_fromRef(v_____do__lift_1716_, v___x_1719_);
v___x_1721_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1721_, 0, v___x_1720_);
lean_ctor_set(v___x_1721_, 1, v___y_1718_);
return v___x_1721_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0___boxed(lean_object* v_____do__lift_1722_, lean_object* v___y_1723_, lean_object* v___y_1724_){
_start:
{
lean_object* v_res_1725_; 
v_res_1725_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0(v_____do__lift_1722_, v___y_1723_, v___y_1724_);
lean_dec_ref(v___y_1723_);
lean_dec(v_____do__lift_1722_);
return v_res_1725_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0(lean_object* v_e_1726_, lean_object* v_mkCont_1727_, lean_object* v___y_1728_, lean_object* v___y_1729_){
_start:
{
lean_object* v_methods_1730_; lean_object* v_quotContext_1731_; lean_object* v_currRecDepth_1732_; lean_object* v_maxRecDepth_1733_; lean_object* v_ref_1734_; lean_object* v_macroScope_1735_; lean_object* v_traceMsgs_1736_; lean_object* v_expandedMacroDecls_1737_; lean_object* v_ref_1738_; lean_object* v___x_1739_; lean_object* v___x_1740_; lean_object* v___x_1741_; lean_object* v___x_1742_; lean_object* v___x_1743_; lean_object* v_a_1744_; lean_object* v_a_1745_; lean_object* v___x_1746_; lean_object* v_a_1747_; lean_object* v_a_1748_; lean_object* v___x_1749_; lean_object* v___x_1750_; lean_object* v___x_1751_; lean_object* v___x_1752_; lean_object* v___x_1753_; lean_object* v___x_1754_; lean_object* v___x_1755_; lean_object* v___x_1756_; lean_object* v___x_1757_; lean_object* v___x_1758_; lean_object* v___x_1759_; lean_object* v___x_1760_; lean_object* v___x_1761_; lean_object* v___x_1762_; lean_object* v___x_1763_; lean_object* v___x_1764_; lean_object* v___x_1765_; uint8_t v___x_1766_; lean_object* v___x_1767_; lean_object* v___x_1768_; lean_object* v___x_1769_; lean_object* v___x_1770_; lean_object* v___x_1771_; lean_object* v___x_1772_; lean_object* v___x_1773_; lean_object* v___x_1774_; lean_object* v___x_1775_; lean_object* v___x_1776_; 
v_methods_1730_ = lean_ctor_get(v___y_1728_, 0);
lean_inc(v_methods_1730_);
v_quotContext_1731_ = lean_ctor_get(v___y_1728_, 1);
lean_inc(v_quotContext_1731_);
v_currRecDepth_1732_ = lean_ctor_get(v___y_1728_, 3);
lean_inc(v_currRecDepth_1732_);
v_maxRecDepth_1733_ = lean_ctor_get(v___y_1728_, 4);
lean_inc(v_maxRecDepth_1733_);
v_ref_1734_ = lean_ctor_get(v___y_1728_, 5);
lean_inc(v_ref_1734_);
lean_dec_ref(v___y_1728_);
v_macroScope_1735_ = lean_ctor_get(v___y_1729_, 0);
lean_inc(v_macroScope_1735_);
v_traceMsgs_1736_ = lean_ctor_get(v___y_1729_, 1);
lean_inc(v_traceMsgs_1736_);
v_expandedMacroDecls_1737_ = lean_ctor_get(v___y_1729_, 2);
lean_inc(v_expandedMacroDecls_1737_);
lean_dec_ref(v___y_1729_);
v_ref_1738_ = l_Lean_replaceRef(v_e_1726_, v_ref_1734_);
lean_dec(v_ref_1734_);
v___x_1739_ = lean_unsigned_to_nat(1u);
v___x_1740_ = lean_nat_add(v_macroScope_1735_, v___x_1739_);
v___x_1741_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_1741_, 0, v___x_1740_);
lean_ctor_set(v___x_1741_, 1, v_traceMsgs_1736_);
lean_ctor_set(v___x_1741_, 2, v_expandedMacroDecls_1737_);
lean_inc(v_ref_1738_);
lean_inc(v_macroScope_1735_);
lean_inc(v_quotContext_1731_);
v___x_1742_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_1742_, 0, v_methods_1730_);
lean_ctor_set(v___x_1742_, 1, v_quotContext_1731_);
lean_ctor_set(v___x_1742_, 2, v_macroScope_1735_);
lean_ctor_set(v___x_1742_, 3, v_currRecDepth_1732_);
lean_ctor_set(v___x_1742_, 4, v_maxRecDepth_1733_);
lean_ctor_set(v___x_1742_, 5, v_ref_1738_);
v___x_1743_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0(v_ref_1738_, v___x_1742_, v___x_1741_);
v_a_1744_ = lean_ctor_get(v___x_1743_, 0);
lean_inc(v_a_1744_);
v_a_1745_ = lean_ctor_get(v___x_1743_, 1);
lean_inc(v_a_1745_);
lean_dec_ref(v___x_1743_);
v___x_1746_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0___lam__0(v_ref_1738_, v___x_1742_, v_a_1745_);
v_a_1747_ = lean_ctor_get(v___x_1746_, 0);
lean_inc(v_a_1747_);
v_a_1748_ = lean_ctor_get(v___x_1746_, 1);
lean_inc(v_a_1748_);
lean_dec_ref(v___x_1746_);
v___x_1749_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_1750_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
v___x_1751_ = l_Lean_addMacroScope(v_quotContext_1731_, v___x_1750_, v_macroScope_1735_);
v___x_1752_ = lean_box(0);
lean_inc(v___x_1751_);
v___x_1753_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_1753_, 0, v_a_1744_);
lean_ctor_set(v___x_1753_, 1, v___x_1749_);
lean_ctor_set(v___x_1753_, 2, v___x_1751_);
lean_ctor_set(v___x_1753_, 3, v___x_1752_);
v___x_1754_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_1755_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v_a_1747_);
v___x_1756_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1756_, 0, v_a_1747_);
lean_ctor_set(v___x_1756_, 1, v___x_1755_);
v___x_1757_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_1758_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_1747_);
v___x_1759_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_1759_, 0, v_a_1747_);
lean_ctor_set(v___x_1759_, 1, v___x_1757_);
lean_ctor_set(v___x_1759_, 2, v___x_1758_);
v___x_1760_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
lean_inc(v_a_1747_);
v___x_1761_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_1761_, 0, v_a_1747_);
lean_ctor_set(v___x_1761_, 1, v___x_1749_);
lean_ctor_set(v___x_1761_, 2, v___x_1751_);
lean_ctor_set(v___x_1761_, 3, v___x_1752_);
v___x_1762_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_a_1747_);
v___x_1763_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1763_, 0, v_a_1747_);
lean_ctor_set(v___x_1763_, 1, v___x_1762_);
v___x_1764_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v_a_1747_);
v___x_1765_ = l_Lean_Syntax_node1(v_a_1747_, v___x_1764_, v_e_1726_);
v___x_1766_ = 0;
v___x_1767_ = l_Lean_SourceInfo_fromRef(v_ref_1738_, v___x_1766_);
lean_dec(v_ref_1738_);
v___x_1768_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1));
v___x_1769_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2));
lean_inc(v___x_1767_);
v___x_1770_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1770_, 0, v___x_1767_);
lean_ctor_set(v___x_1770_, 1, v___x_1769_);
v___x_1771_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4));
v___x_1772_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5));
lean_inc(v___x_1767_);
v___x_1773_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_1773_, 0, v___x_1767_);
lean_ctor_set(v___x_1773_, 1, v___x_1772_);
lean_inc(v___x_1767_);
v___x_1774_ = l_Lean_Syntax_node1(v___x_1767_, v___x_1771_, v___x_1773_);
v___x_1775_ = l_Lean_Syntax_node3(v___x_1767_, v___x_1768_, v___x_1770_, v___x_1774_, v___x_1753_);
lean_inc(v___x_1775_);
v___x_1776_ = lean_apply_3(v_mkCont_1727_, v___x_1775_, v___x_1742_, v_a_1748_);
if (lean_obj_tag(v___x_1776_) == 0)
{
lean_object* v_a_1777_; lean_object* v_a_1778_; lean_object* v___x_1779_; lean_object* v___x_1780_; lean_object* v___x_1781_; lean_object* v___x_1782_; lean_object* v___x_1783_; lean_object* v___x_1784_; 
v_a_1777_ = lean_ctor_get(v___x_1776_, 0);
lean_inc(v_a_1777_);
v_a_1778_ = lean_ctor_get(v___x_1776_, 1);
lean_inc(v_a_1778_);
lean_dec_ref(v___x_1776_);
lean_inc_ref(v___x_1759_);
lean_inc(v_a_1747_);
v___x_1779_ = l_Lean_Syntax_node4(v_a_1747_, v___x_1760_, v___x_1761_, v___x_1759_, v___x_1763_, v___x_1765_);
v___x_1780_ = l_Lean_Syntax_node3(v_a_1747_, v___x_1754_, v___x_1756_, v___x_1759_, v___x_1779_);
v___x_1781_ = lean_mk_empty_array_with_capacity(v___x_1739_);
v___x_1782_ = lean_array_push(v___x_1781_, v___x_1775_);
v___x_1783_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_1783_, 0, v___x_1782_);
lean_ctor_set(v___x_1783_, 1, v___x_1780_);
lean_ctor_set(v___x_1783_, 2, v_a_1777_);
v___x_1784_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1784_, 0, v___x_1783_);
lean_ctor_set(v___x_1784_, 1, v_a_1778_);
return v___x_1784_;
}
else
{
lean_dec(v___x_1775_);
lean_dec(v___x_1765_);
lean_dec_ref(v___x_1763_);
lean_dec_ref(v___x_1761_);
lean_dec_ref(v___x_1759_);
lean_dec_ref(v___x_1756_);
lean_dec(v_a_1747_);
return v___x_1776_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0(lean_object* v_xs_1785_, lean_object* v_action_1786_, lean_object* v_jp_1787_, lean_object* v_y_1788_, lean_object* v___y_1789_, lean_object* v___y_1790_){
_start:
{
lean_object* v_jmpArgs_1791_; lean_object* v___x_1792_; lean_object* v___x_1793_; 
v_jmpArgs_1791_ = lean_array_push(v_xs_1785_, v_y_1788_);
v___x_1792_ = lean_alloc_ctor(11, 3, 0);
lean_ctor_set(v___x_1792_, 0, v_action_1786_);
lean_ctor_set(v___x_1792_, 1, v_jp_1787_);
lean_ctor_set(v___x_1792_, 2, v_jmpArgs_1791_);
v___x_1793_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1793_, 0, v___x_1792_);
lean_ctor_set(v___x_1793_, 1, v___y_1790_);
return v___x_1793_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0___boxed(lean_object* v_xs_1794_, lean_object* v_action_1795_, lean_object* v_jp_1796_, lean_object* v_y_1797_, lean_object* v___y_1798_, lean_object* v___y_1799_){
_start:
{
lean_object* v_res_1800_; 
v_res_1800_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0(v_xs_1794_, v_action_1795_, v_jp_1796_, v_y_1797_, v___y_1798_, v___y_1799_);
lean_dec_ref(v___y_1798_);
return v_res_1800_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2(lean_object* v_jp_1801_, lean_object* v_xs_1802_, size_t v_sz_1803_, size_t v_i_1804_, lean_object* v_bs_1805_, lean_object* v___y_1806_, lean_object* v___y_1807_){
_start:
{
uint8_t v___x_1808_; 
v___x_1808_ = lean_usize_dec_lt(v_i_1804_, v_sz_1803_);
if (v___x_1808_ == 0)
{
lean_object* v___x_1809_; 
lean_dec_ref(v___y_1806_);
lean_dec_ref(v_xs_1802_);
lean_dec(v_jp_1801_);
v___x_1809_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1809_, 0, v_bs_1805_);
lean_ctor_set(v___x_1809_, 1, v___y_1807_);
return v___x_1809_;
}
else
{
lean_object* v_v_1810_; lean_object* v_ref_1811_; lean_object* v_var_x3f_1812_; lean_object* v_funName_1813_; lean_object* v_pvars_1814_; lean_object* v_rhs_1815_; lean_object* v___x_1816_; 
v_v_1810_ = lean_array_uget_borrowed(v_bs_1805_, v_i_1804_);
v_ref_1811_ = lean_ctor_get(v_v_1810_, 0);
lean_inc(v_ref_1811_);
v_var_x3f_1812_ = lean_ctor_get(v_v_1810_, 1);
lean_inc(v_var_x3f_1812_);
v_funName_1813_ = lean_ctor_get(v_v_1810_, 2);
lean_inc(v_funName_1813_);
v_pvars_1814_ = lean_ctor_get(v_v_1810_, 3);
lean_inc_ref(v_pvars_1814_);
v_rhs_1815_ = lean_ctor_get(v_v_1810_, 4);
lean_inc_ref(v___y_1806_);
lean_inc(v_rhs_1815_);
lean_inc_ref(v_xs_1802_);
lean_inc(v_jp_1801_);
v___x_1816_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1801_, v_xs_1802_, v_rhs_1815_, v___y_1806_, v___y_1807_);
if (lean_obj_tag(v___x_1816_) == 0)
{
lean_object* v_a_1817_; lean_object* v_a_1818_; lean_object* v___x_1819_; lean_object* v_bs_x27_1820_; lean_object* v___x_1821_; size_t v___x_1822_; size_t v___x_1823_; lean_object* v___x_1824_; 
v_a_1817_ = lean_ctor_get(v___x_1816_, 0);
lean_inc(v_a_1817_);
v_a_1818_ = lean_ctor_get(v___x_1816_, 1);
lean_inc(v_a_1818_);
lean_dec_ref(v___x_1816_);
v___x_1819_ = lean_unsigned_to_nat(0u);
v_bs_x27_1820_ = lean_array_uset(v_bs_1805_, v_i_1804_, v___x_1819_);
v___x_1821_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_1821_, 0, v_ref_1811_);
lean_ctor_set(v___x_1821_, 1, v_var_x3f_1812_);
lean_ctor_set(v___x_1821_, 2, v_funName_1813_);
lean_ctor_set(v___x_1821_, 3, v_pvars_1814_);
lean_ctor_set(v___x_1821_, 4, v_a_1817_);
v___x_1822_ = ((size_t)1ULL);
v___x_1823_ = lean_usize_add(v_i_1804_, v___x_1822_);
v___x_1824_ = lean_array_uset(v_bs_x27_1820_, v_i_1804_, v___x_1821_);
v_i_1804_ = v___x_1823_;
v_bs_1805_ = v___x_1824_;
v___y_1807_ = v_a_1818_;
goto _start;
}
else
{
lean_object* v_a_1826_; lean_object* v_a_1827_; lean_object* v___x_1828_; 
lean_dec_ref(v_pvars_1814_);
lean_dec(v_funName_1813_);
lean_dec(v_var_x3f_1812_);
lean_dec(v_ref_1811_);
lean_dec_ref(v___y_1806_);
lean_dec_ref(v_bs_1805_);
lean_dec_ref(v_xs_1802_);
lean_dec(v_jp_1801_);
v_a_1826_ = lean_ctor_get(v___x_1816_, 0);
lean_inc(v_a_1826_);
v_a_1827_ = lean_ctor_get(v___x_1816_, 1);
lean_inc(v_a_1827_);
lean_dec_ref(v___x_1816_);
v___x_1828_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_1828_, 0, v_a_1826_);
lean_ctor_set(v___x_1828_, 1, v_a_1827_);
return v___x_1828_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(lean_object* v_jp_1829_, lean_object* v_xs_1830_, lean_object* v_a_1831_, lean_object* v_a_1832_, lean_object* v_a_1833_){
_start:
{
switch(lean_obj_tag(v_a_1831_))
{
case 0:
{
lean_object* v_xs_1834_; lean_object* v_doElem_1835_; lean_object* v_k_1836_; lean_object* v___x_1837_; 
v_xs_1834_ = lean_ctor_get(v_a_1831_, 0);
lean_inc_ref(v_xs_1834_);
v_doElem_1835_ = lean_ctor_get(v_a_1831_, 1);
lean_inc(v_doElem_1835_);
v_k_1836_ = lean_ctor_get(v_a_1831_, 2);
lean_inc_ref(v_k_1836_);
lean_dec_ref(v_a_1831_);
v___x_1837_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_k_1836_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1837_) == 0)
{
lean_object* v_a_1838_; lean_object* v_a_1839_; lean_object* v___x_1840_; lean_object* v___x_1841_; 
v_a_1838_ = lean_ctor_get(v___x_1837_, 0);
lean_inc(v_a_1838_);
v_a_1839_ = lean_ctor_get(v___x_1837_, 1);
lean_inc(v_a_1839_);
lean_dec_ref(v___x_1837_);
v___x_1840_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_1840_, 0, v_xs_1834_);
lean_ctor_set(v___x_1840_, 1, v_doElem_1835_);
lean_ctor_set(v___x_1840_, 2, v_a_1838_);
v___x_1841_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1841_, 0, v___x_1840_);
lean_ctor_set(v___x_1841_, 1, v_a_1839_);
return v___x_1841_;
}
else
{
lean_dec(v_doElem_1835_);
lean_dec_ref(v_xs_1834_);
return v___x_1837_;
}
}
case 1:
{
lean_object* v_xs_1842_; lean_object* v_doElem_1843_; lean_object* v_k_1844_; lean_object* v___x_1845_; 
v_xs_1842_ = lean_ctor_get(v_a_1831_, 0);
lean_inc_ref(v_xs_1842_);
v_doElem_1843_ = lean_ctor_get(v_a_1831_, 1);
lean_inc(v_doElem_1843_);
v_k_1844_ = lean_ctor_get(v_a_1831_, 2);
lean_inc_ref(v_k_1844_);
lean_dec_ref(v_a_1831_);
v___x_1845_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_k_1844_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1845_) == 0)
{
lean_object* v_a_1846_; lean_object* v_a_1847_; lean_object* v___x_1848_; lean_object* v___x_1849_; 
v_a_1846_ = lean_ctor_get(v___x_1845_, 0);
lean_inc(v_a_1846_);
v_a_1847_ = lean_ctor_get(v___x_1845_, 1);
lean_inc(v_a_1847_);
lean_dec_ref(v___x_1845_);
v___x_1848_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_1848_, 0, v_xs_1842_);
lean_ctor_set(v___x_1848_, 1, v_doElem_1843_);
lean_ctor_set(v___x_1848_, 2, v_a_1846_);
v___x_1849_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1849_, 0, v___x_1848_);
lean_ctor_set(v___x_1849_, 1, v_a_1847_);
return v___x_1849_;
}
else
{
lean_dec(v_doElem_1843_);
lean_dec_ref(v_xs_1842_);
return v___x_1845_;
}
}
case 2:
{
lean_object* v_name_1850_; lean_object* v_params_1851_; lean_object* v_body_1852_; lean_object* v_k_1853_; lean_object* v___x_1854_; 
v_name_1850_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_name_1850_);
v_params_1851_ = lean_ctor_get(v_a_1831_, 1);
lean_inc_ref(v_params_1851_);
v_body_1852_ = lean_ctor_get(v_a_1831_, 2);
lean_inc_ref(v_body_1852_);
v_k_1853_ = lean_ctor_get(v_a_1831_, 3);
lean_inc_ref(v_k_1853_);
lean_dec_ref(v_a_1831_);
lean_inc_ref(v_a_1832_);
lean_inc_ref(v_xs_1830_);
lean_inc(v_jp_1829_);
v___x_1854_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_body_1852_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1854_) == 0)
{
lean_object* v_a_1855_; lean_object* v_a_1856_; lean_object* v___x_1857_; 
v_a_1855_ = lean_ctor_get(v___x_1854_, 0);
lean_inc(v_a_1855_);
v_a_1856_ = lean_ctor_get(v___x_1854_, 1);
lean_inc(v_a_1856_);
lean_dec_ref(v___x_1854_);
v___x_1857_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_k_1853_, v_a_1832_, v_a_1856_);
if (lean_obj_tag(v___x_1857_) == 0)
{
lean_object* v_a_1858_; lean_object* v_a_1859_; lean_object* v___x_1860_; lean_object* v___x_1861_; 
v_a_1858_ = lean_ctor_get(v___x_1857_, 0);
lean_inc(v_a_1858_);
v_a_1859_ = lean_ctor_get(v___x_1857_, 1);
lean_inc(v_a_1859_);
lean_dec_ref(v___x_1857_);
v___x_1860_ = lean_alloc_ctor(2, 4, 0);
lean_ctor_set(v___x_1860_, 0, v_name_1850_);
lean_ctor_set(v___x_1860_, 1, v_params_1851_);
lean_ctor_set(v___x_1860_, 2, v_a_1855_);
lean_ctor_set(v___x_1860_, 3, v_a_1858_);
v___x_1861_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1861_, 0, v___x_1860_);
lean_ctor_set(v___x_1861_, 1, v_a_1859_);
return v___x_1861_;
}
else
{
lean_dec(v_a_1855_);
lean_dec_ref(v_params_1851_);
lean_dec(v_name_1850_);
return v___x_1857_;
}
}
else
{
lean_dec_ref(v_k_1853_);
lean_dec_ref(v_params_1851_);
lean_dec(v_name_1850_);
lean_dec_ref(v_a_1832_);
lean_dec_ref(v_xs_1830_);
lean_dec(v_jp_1829_);
return v___x_1854_;
}
}
case 3:
{
lean_object* v_action_1862_; lean_object* v_k_1863_; lean_object* v___x_1864_; 
v_action_1862_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_action_1862_);
v_k_1863_ = lean_ctor_get(v_a_1831_, 1);
lean_inc_ref(v_k_1863_);
lean_dec_ref(v_a_1831_);
v___x_1864_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_k_1863_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1864_) == 0)
{
lean_object* v_a_1865_; lean_object* v_a_1866_; lean_object* v___x_1867_; lean_object* v___x_1868_; 
v_a_1865_ = lean_ctor_get(v___x_1864_, 0);
lean_inc(v_a_1865_);
v_a_1866_ = lean_ctor_get(v___x_1864_, 1);
lean_inc(v_a_1866_);
lean_dec_ref(v___x_1864_);
v___x_1867_ = lean_alloc_ctor(3, 2, 0);
lean_ctor_set(v___x_1867_, 0, v_action_1862_);
lean_ctor_set(v___x_1867_, 1, v_a_1865_);
v___x_1868_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1868_, 0, v___x_1867_);
lean_ctor_set(v___x_1868_, 1, v_a_1866_);
return v___x_1868_;
}
else
{
lean_dec(v_action_1862_);
return v___x_1864_;
}
}
case 8:
{
lean_object* v_ref_1869_; lean_object* v_h_x3f_1870_; lean_object* v_optIdent_1871_; lean_object* v_cond_1872_; lean_object* v_thenBranch_1873_; lean_object* v_elseBranch_1874_; lean_object* v___x_1875_; 
v_ref_1869_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_ref_1869_);
v_h_x3f_1870_ = lean_ctor_get(v_a_1831_, 1);
lean_inc(v_h_x3f_1870_);
v_optIdent_1871_ = lean_ctor_get(v_a_1831_, 2);
lean_inc(v_optIdent_1871_);
v_cond_1872_ = lean_ctor_get(v_a_1831_, 3);
lean_inc(v_cond_1872_);
v_thenBranch_1873_ = lean_ctor_get(v_a_1831_, 4);
lean_inc_ref(v_thenBranch_1873_);
v_elseBranch_1874_ = lean_ctor_get(v_a_1831_, 5);
lean_inc_ref(v_elseBranch_1874_);
lean_dec_ref(v_a_1831_);
lean_inc_ref(v_a_1832_);
lean_inc_ref(v_xs_1830_);
lean_inc(v_jp_1829_);
v___x_1875_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_thenBranch_1873_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1875_) == 0)
{
lean_object* v_a_1876_; lean_object* v_a_1877_; lean_object* v___x_1878_; 
v_a_1876_ = lean_ctor_get(v___x_1875_, 0);
lean_inc(v_a_1876_);
v_a_1877_ = lean_ctor_get(v___x_1875_, 1);
lean_inc(v_a_1877_);
lean_dec_ref(v___x_1875_);
v___x_1878_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_elseBranch_1874_, v_a_1832_, v_a_1877_);
if (lean_obj_tag(v___x_1878_) == 0)
{
lean_object* v_a_1879_; lean_object* v_a_1880_; lean_object* v___x_1881_; lean_object* v___x_1882_; 
v_a_1879_ = lean_ctor_get(v___x_1878_, 0);
lean_inc(v_a_1879_);
v_a_1880_ = lean_ctor_get(v___x_1878_, 1);
lean_inc(v_a_1880_);
lean_dec_ref(v___x_1878_);
v___x_1881_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_1881_, 0, v_ref_1869_);
lean_ctor_set(v___x_1881_, 1, v_h_x3f_1870_);
lean_ctor_set(v___x_1881_, 2, v_optIdent_1871_);
lean_ctor_set(v___x_1881_, 3, v_cond_1872_);
lean_ctor_set(v___x_1881_, 4, v_a_1876_);
lean_ctor_set(v___x_1881_, 5, v_a_1879_);
v___x_1882_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1882_, 0, v___x_1881_);
lean_ctor_set(v___x_1882_, 1, v_a_1880_);
return v___x_1882_;
}
else
{
lean_dec(v_a_1876_);
lean_dec(v_cond_1872_);
lean_dec(v_optIdent_1871_);
lean_dec(v_h_x3f_1870_);
lean_dec(v_ref_1869_);
return v___x_1878_;
}
}
else
{
lean_dec_ref(v_elseBranch_1874_);
lean_dec(v_cond_1872_);
lean_dec(v_optIdent_1871_);
lean_dec(v_h_x3f_1870_);
lean_dec(v_ref_1869_);
lean_dec_ref(v_a_1832_);
lean_dec_ref(v_xs_1830_);
lean_dec(v_jp_1829_);
return v___x_1875_;
}
}
case 4:
{
lean_object* v_action_1883_; lean_object* v___f_1884_; lean_object* v___x_1885_; 
v_action_1883_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_action_1883_);
lean_dec_ref(v_a_1831_);
lean_inc(v_action_1883_);
v___f_1884_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop___lam__0___boxed), 6, 3);
lean_closure_set(v___f_1884_, 0, v_xs_1830_);
lean_closure_set(v___f_1884_, 1, v_action_1883_);
lean_closure_set(v___f_1884_, 2, v_jp_1829_);
v___x_1885_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__0(v_action_1883_, v___f_1884_, v_a_1832_, v_a_1833_);
return v___x_1885_;
}
case 9:
{
lean_object* v_ref_1886_; lean_object* v_gen_1887_; lean_object* v_discrs_1888_; lean_object* v_optMotive_1889_; lean_object* v_alts_1890_; size_t v_sz_1891_; size_t v___x_1892_; lean_object* v___x_1893_; 
v_ref_1886_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_ref_1886_);
v_gen_1887_ = lean_ctor_get(v_a_1831_, 1);
lean_inc(v_gen_1887_);
v_discrs_1888_ = lean_ctor_get(v_a_1831_, 2);
lean_inc(v_discrs_1888_);
v_optMotive_1889_ = lean_ctor_get(v_a_1831_, 3);
lean_inc(v_optMotive_1889_);
v_alts_1890_ = lean_ctor_get(v_a_1831_, 4);
lean_inc_ref(v_alts_1890_);
lean_dec_ref(v_a_1831_);
v_sz_1891_ = lean_array_size(v_alts_1890_);
v___x_1892_ = ((size_t)0ULL);
v___x_1893_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1(v_jp_1829_, v_xs_1830_, v_sz_1891_, v___x_1892_, v_alts_1890_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1893_) == 0)
{
lean_object* v_a_1894_; lean_object* v_a_1895_; lean_object* v___x_1896_; lean_object* v___x_1897_; 
v_a_1894_ = lean_ctor_get(v___x_1893_, 0);
lean_inc(v_a_1894_);
v_a_1895_ = lean_ctor_get(v___x_1893_, 1);
lean_inc(v_a_1895_);
lean_dec_ref(v___x_1893_);
v___x_1896_ = lean_alloc_ctor(9, 5, 0);
lean_ctor_set(v___x_1896_, 0, v_ref_1886_);
lean_ctor_set(v___x_1896_, 1, v_gen_1887_);
lean_ctor_set(v___x_1896_, 2, v_discrs_1888_);
lean_ctor_set(v___x_1896_, 3, v_optMotive_1889_);
lean_ctor_set(v___x_1896_, 4, v_a_1894_);
v___x_1897_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1897_, 0, v___x_1896_);
lean_ctor_set(v___x_1897_, 1, v_a_1895_);
return v___x_1897_;
}
else
{
lean_object* v_a_1898_; lean_object* v_a_1899_; lean_object* v___x_1900_; 
lean_dec(v_optMotive_1889_);
lean_dec(v_discrs_1888_);
lean_dec(v_gen_1887_);
lean_dec(v_ref_1886_);
v_a_1898_ = lean_ctor_get(v___x_1893_, 0);
lean_inc(v_a_1898_);
v_a_1899_ = lean_ctor_get(v___x_1893_, 1);
lean_inc(v_a_1899_);
lean_dec_ref(v___x_1893_);
v___x_1900_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_1900_, 0, v_a_1898_);
lean_ctor_set(v___x_1900_, 1, v_a_1899_);
return v___x_1900_;
}
}
case 10:
{
lean_object* v_ref_1901_; uint8_t v_meta_1902_; lean_object* v_discr_1903_; lean_object* v_alts_1904_; lean_object* v_elseBranch_1905_; size_t v_sz_1906_; size_t v___x_1907_; lean_object* v___x_1908_; 
v_ref_1901_ = lean_ctor_get(v_a_1831_, 0);
lean_inc(v_ref_1901_);
v_meta_1902_ = lean_ctor_get_uint8(v_a_1831_, sizeof(void*)*4);
v_discr_1903_ = lean_ctor_get(v_a_1831_, 1);
lean_inc(v_discr_1903_);
v_alts_1904_ = lean_ctor_get(v_a_1831_, 2);
lean_inc_ref(v_alts_1904_);
v_elseBranch_1905_ = lean_ctor_get(v_a_1831_, 3);
lean_inc_ref(v_elseBranch_1905_);
lean_dec_ref(v_a_1831_);
v_sz_1906_ = lean_array_size(v_alts_1904_);
v___x_1907_ = ((size_t)0ULL);
lean_inc_ref(v_a_1832_);
lean_inc_ref(v_xs_1830_);
lean_inc(v_jp_1829_);
v___x_1908_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2(v_jp_1829_, v_xs_1830_, v_sz_1906_, v___x_1907_, v_alts_1904_, v_a_1832_, v_a_1833_);
if (lean_obj_tag(v___x_1908_) == 0)
{
lean_object* v_a_1909_; lean_object* v_a_1910_; lean_object* v___x_1911_; 
v_a_1909_ = lean_ctor_get(v___x_1908_, 0);
lean_inc(v_a_1909_);
v_a_1910_ = lean_ctor_get(v___x_1908_, 1);
lean_inc(v_a_1910_);
lean_dec_ref(v___x_1908_);
v___x_1911_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1829_, v_xs_1830_, v_elseBranch_1905_, v_a_1832_, v_a_1910_);
if (lean_obj_tag(v___x_1911_) == 0)
{
lean_object* v_a_1912_; lean_object* v_a_1913_; lean_object* v___x_1914_; lean_object* v___x_1915_; 
v_a_1912_ = lean_ctor_get(v___x_1911_, 0);
lean_inc(v_a_1912_);
v_a_1913_ = lean_ctor_get(v___x_1911_, 1);
lean_inc(v_a_1913_);
lean_dec_ref(v___x_1911_);
v___x_1914_ = lean_alloc_ctor(10, 4, 1);
lean_ctor_set(v___x_1914_, 0, v_ref_1901_);
lean_ctor_set(v___x_1914_, 1, v_discr_1903_);
lean_ctor_set(v___x_1914_, 2, v_a_1909_);
lean_ctor_set(v___x_1914_, 3, v_a_1912_);
lean_ctor_set_uint8(v___x_1914_, sizeof(void*)*4, v_meta_1902_);
v___x_1915_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1915_, 0, v___x_1914_);
lean_ctor_set(v___x_1915_, 1, v_a_1913_);
return v___x_1915_;
}
else
{
lean_dec(v_a_1909_);
lean_dec(v_discr_1903_);
lean_dec(v_ref_1901_);
return v___x_1911_;
}
}
else
{
lean_object* v_a_1916_; lean_object* v_a_1917_; lean_object* v___x_1918_; 
lean_dec_ref(v_elseBranch_1905_);
lean_dec(v_discr_1903_);
lean_dec(v_ref_1901_);
lean_dec_ref(v_a_1832_);
lean_dec_ref(v_xs_1830_);
lean_dec(v_jp_1829_);
v_a_1916_ = lean_ctor_get(v___x_1908_, 0);
lean_inc(v_a_1916_);
v_a_1917_ = lean_ctor_get(v___x_1908_, 1);
lean_inc(v_a_1917_);
lean_dec_ref(v___x_1908_);
v___x_1918_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_1918_, 0, v_a_1916_);
lean_ctor_set(v___x_1918_, 1, v_a_1917_);
return v___x_1918_;
}
}
default: 
{
lean_object* v___x_1919_; 
lean_dec_ref(v_a_1832_);
lean_dec_ref(v_xs_1830_);
lean_dec(v_jp_1829_);
v___x_1919_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1919_, 0, v_a_1831_);
lean_ctor_set(v___x_1919_, 1, v_a_1833_);
return v___x_1919_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1(lean_object* v_jp_1920_, lean_object* v_xs_1921_, size_t v_sz_1922_, size_t v_i_1923_, lean_object* v_bs_1924_, lean_object* v___y_1925_, lean_object* v___y_1926_){
_start:
{
uint8_t v___x_1927_; 
v___x_1927_ = lean_usize_dec_lt(v_i_1923_, v_sz_1922_);
if (v___x_1927_ == 0)
{
lean_object* v___x_1928_; 
lean_dec_ref(v___y_1925_);
lean_dec_ref(v_xs_1921_);
lean_dec(v_jp_1920_);
v___x_1928_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_1928_, 0, v_bs_1924_);
lean_ctor_set(v___x_1928_, 1, v___y_1926_);
return v___x_1928_;
}
else
{
lean_object* v_v_1929_; lean_object* v_ref_1930_; lean_object* v_vars_1931_; lean_object* v_patterns_1932_; lean_object* v_rhs_1933_; lean_object* v___x_1934_; 
v_v_1929_ = lean_array_uget_borrowed(v_bs_1924_, v_i_1923_);
v_ref_1930_ = lean_ctor_get(v_v_1929_, 0);
lean_inc(v_ref_1930_);
v_vars_1931_ = lean_ctor_get(v_v_1929_, 1);
lean_inc_ref(v_vars_1931_);
v_patterns_1932_ = lean_ctor_get(v_v_1929_, 2);
lean_inc(v_patterns_1932_);
v_rhs_1933_ = lean_ctor_get(v_v_1929_, 3);
lean_inc_ref(v___y_1925_);
lean_inc(v_rhs_1933_);
lean_inc_ref(v_xs_1921_);
lean_inc(v_jp_1920_);
v___x_1934_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1920_, v_xs_1921_, v_rhs_1933_, v___y_1925_, v___y_1926_);
if (lean_obj_tag(v___x_1934_) == 0)
{
lean_object* v_a_1935_; lean_object* v_a_1936_; lean_object* v___x_1937_; lean_object* v_bs_x27_1938_; lean_object* v___x_1939_; size_t v___x_1940_; size_t v___x_1941_; lean_object* v___x_1942_; 
v_a_1935_ = lean_ctor_get(v___x_1934_, 0);
lean_inc(v_a_1935_);
v_a_1936_ = lean_ctor_get(v___x_1934_, 1);
lean_inc(v_a_1936_);
lean_dec_ref(v___x_1934_);
v___x_1937_ = lean_unsigned_to_nat(0u);
v_bs_x27_1938_ = lean_array_uset(v_bs_1924_, v_i_1923_, v___x_1937_);
v___x_1939_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_1939_, 0, v_ref_1930_);
lean_ctor_set(v___x_1939_, 1, v_vars_1931_);
lean_ctor_set(v___x_1939_, 2, v_patterns_1932_);
lean_ctor_set(v___x_1939_, 3, v_a_1935_);
v___x_1940_ = ((size_t)1ULL);
v___x_1941_ = lean_usize_add(v_i_1923_, v___x_1940_);
v___x_1942_ = lean_array_uset(v_bs_x27_1938_, v_i_1923_, v___x_1939_);
v_i_1923_ = v___x_1941_;
v_bs_1924_ = v___x_1942_;
v___y_1926_ = v_a_1936_;
goto _start;
}
else
{
lean_object* v_a_1944_; lean_object* v_a_1945_; lean_object* v___x_1946_; 
lean_dec(v_patterns_1932_);
lean_dec_ref(v_vars_1931_);
lean_dec(v_ref_1930_);
lean_dec_ref(v___y_1925_);
lean_dec_ref(v_bs_1924_);
lean_dec_ref(v_xs_1921_);
lean_dec(v_jp_1920_);
v_a_1944_ = lean_ctor_get(v___x_1934_, 0);
lean_inc(v_a_1944_);
v_a_1945_ = lean_ctor_get(v___x_1934_, 1);
lean_inc(v_a_1945_);
lean_dec_ref(v___x_1934_);
v___x_1946_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_1946_, 0, v_a_1944_);
lean_ctor_set(v___x_1946_, 1, v_a_1945_);
return v___x_1946_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1___boxed(lean_object* v_jp_1947_, lean_object* v_xs_1948_, lean_object* v_sz_1949_, lean_object* v_i_1950_, lean_object* v_bs_1951_, lean_object* v___y_1952_, lean_object* v___y_1953_){
_start:
{
size_t v_sz_boxed_1954_; size_t v_i_boxed_1955_; lean_object* v_res_1956_; 
v_sz_boxed_1954_ = lean_unbox_usize(v_sz_1949_);
lean_dec(v_sz_1949_);
v_i_boxed_1955_ = lean_unbox_usize(v_i_1950_);
lean_dec(v_i_1950_);
v_res_1956_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__1(v_jp_1947_, v_xs_1948_, v_sz_boxed_1954_, v_i_boxed_1955_, v_bs_1951_, v___y_1952_, v___y_1953_);
return v_res_1956_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2___boxed(lean_object* v_jp_1957_, lean_object* v_xs_1958_, lean_object* v_sz_1959_, lean_object* v_i_1960_, lean_object* v_bs_1961_, lean_object* v___y_1962_, lean_object* v___y_1963_){
_start:
{
size_t v_sz_boxed_1964_; size_t v_i_boxed_1965_; lean_object* v_res_1966_; 
v_sz_boxed_1964_ = lean_unbox_usize(v_sz_1959_);
lean_dec(v_sz_1959_);
v_i_boxed_1965_ = lean_unbox_usize(v_i_1960_);
lean_dec(v_i_1960_);
v_res_1966_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop_spec__2(v_jp_1957_, v_xs_1958_, v_sz_boxed_1964_, v_i_boxed_1965_, v_bs_1961_, v___y_1962_, v___y_1963_);
return v_res_1966_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_convertTerminalActionIntoJmp(lean_object* v_code_1967_, lean_object* v_jp_1968_, lean_object* v_xs_1969_, lean_object* v_a_1970_, lean_object* v_a_1971_){
_start:
{
lean_object* v___x_1972_; 
v___x_1972_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_jp_1968_, v_xs_1969_, v_code_1967_, v_a_1970_, v_a_1971_);
return v___x_1972_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJP(lean_object* v_jpDecl_1973_, lean_object* v_k_1974_){
_start:
{
lean_object* v_name_1975_; lean_object* v_params_1976_; lean_object* v_body_1977_; lean_object* v___x_1978_; 
v_name_1975_ = lean_ctor_get(v_jpDecl_1973_, 0);
v_params_1976_ = lean_ctor_get(v_jpDecl_1973_, 1);
v_body_1977_ = lean_ctor_get(v_jpDecl_1973_, 2);
lean_inc_ref(v_body_1977_);
lean_inc_ref(v_params_1976_);
lean_inc(v_name_1975_);
v___x_1978_ = lean_alloc_ctor(2, 4, 0);
lean_ctor_set(v___x_1978_, 0, v_name_1975_);
lean_ctor_set(v___x_1978_, 1, v_params_1976_);
lean_ctor_set(v___x_1978_, 2, v_body_1977_);
lean_ctor_set(v___x_1978_, 3, v_k_1974_);
return v___x_1978_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJP___boxed(lean_object* v_jpDecl_1979_, lean_object* v_k_1980_){
_start:
{
lean_object* v_res_1981_; 
v_res_1981_ = l_Lean_Elab_Term_Do_attachJP(v_jpDecl_1979_, v_k_1980_);
lean_dec_ref(v_jpDecl_1979_);
return v_res_1981_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0(lean_object* v_as_1982_, size_t v_i_1983_, size_t v_stop_1984_, lean_object* v_b_1985_){
_start:
{
uint8_t v___x_1986_; 
v___x_1986_ = lean_usize_dec_eq(v_i_1983_, v_stop_1984_);
if (v___x_1986_ == 0)
{
size_t v___x_1987_; size_t v___x_1988_; lean_object* v___x_1989_; lean_object* v___x_1990_; 
v___x_1987_ = ((size_t)1ULL);
v___x_1988_ = lean_usize_sub(v_i_1983_, v___x_1987_);
v___x_1989_ = lean_array_uget_borrowed(v_as_1982_, v___x_1988_);
v___x_1990_ = l_Lean_Elab_Term_Do_attachJP(v___x_1989_, v_b_1985_);
v_i_1983_ = v___x_1988_;
v_b_1985_ = v___x_1990_;
goto _start;
}
else
{
return v_b_1985_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0___boxed(lean_object* v_as_1992_, lean_object* v_i_1993_, lean_object* v_stop_1994_, lean_object* v_b_1995_){
_start:
{
size_t v_i_boxed_1996_; size_t v_stop_boxed_1997_; lean_object* v_res_1998_; 
v_i_boxed_1996_ = lean_unbox_usize(v_i_1993_);
lean_dec(v_i_1993_);
v_stop_boxed_1997_ = lean_unbox_usize(v_stop_1994_);
lean_dec(v_stop_1994_);
v_res_1998_ = l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0(v_as_1992_, v_i_boxed_1996_, v_stop_boxed_1997_, v_b_1995_);
lean_dec_ref(v_as_1992_);
return v_res_1998_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJPs(lean_object* v_jpDecls_1999_, lean_object* v_k_2000_){
_start:
{
lean_object* v___x_2001_; lean_object* v___x_2002_; uint8_t v___x_2003_; 
v___x_2001_ = lean_array_get_size(v_jpDecls_1999_);
v___x_2002_ = lean_unsigned_to_nat(0u);
v___x_2003_ = lean_nat_dec_lt(v___x_2002_, v___x_2001_);
if (v___x_2003_ == 0)
{
return v_k_2000_;
}
else
{
size_t v___x_2004_; size_t v___x_2005_; lean_object* v___x_2006_; 
v___x_2004_ = lean_usize_of_nat(v___x_2001_);
v___x_2005_ = ((size_t)0ULL);
v___x_2006_ = l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00Lean_Elab_Term_Do_attachJPs_spec__0(v_jpDecls_1999_, v___x_2004_, v___x_2005_, v_k_2000_);
return v___x_2006_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_attachJPs___boxed(lean_object* v_jpDecls_2007_, lean_object* v_k_2008_){
_start:
{
lean_object* v_res_2009_; 
v_res_2009_ = l_Lean_Elab_Term_Do_attachJPs(v_jpDecls_2007_, v_k_2008_);
lean_dec_ref(v_jpDecls_2007_);
return v_res_2009_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg(lean_object* v_ps_2013_, lean_object* v_body_2014_, lean_object* v_a_2015_, lean_object* v_a_2016_){
_start:
{
lean_object* v_ps_2019_; lean_object* v___y_2020_; lean_object* v___y_2021_; lean_object* v___x_2029_; lean_object* v___x_2030_; uint8_t v___x_2031_; 
v___x_2029_ = lean_array_get_size(v_ps_2013_);
v___x_2030_ = lean_unsigned_to_nat(0u);
v___x_2031_ = lean_nat_dec_eq(v___x_2029_, v___x_2030_);
if (v___x_2031_ == 0)
{
v_ps_2019_ = v_ps_2013_;
v___y_2020_ = v_a_2015_;
v___y_2021_ = v_a_2016_;
goto v___jp_2018_;
}
else
{
lean_object* v_ref_2032_; lean_object* v_quotContext_2033_; lean_object* v_currMacroScope_2034_; uint8_t v___x_2035_; lean_object* v___x_2036_; lean_object* v___x_2037_; lean_object* v___x_2038_; lean_object* v___x_2039_; lean_object* v___x_2040_; lean_object* v___x_2041_; lean_object* v___x_2042_; lean_object* v___x_2043_; lean_object* v___x_2044_; lean_object* v___x_2045_; lean_object* v___x_2046_; 
lean_dec_ref(v_ps_2013_);
v_ref_2032_ = lean_ctor_get(v_a_2015_, 5);
v_quotContext_2033_ = lean_ctor_get(v_a_2015_, 10);
v_currMacroScope_2034_ = lean_ctor_get(v_a_2015_, 11);
v___x_2035_ = 0;
v___x_2036_ = l_Lean_SourceInfo_fromRef(v_ref_2032_, v___x_2035_);
v___x_2037_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_2038_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_currMacroScope_2034_);
lean_inc(v_quotContext_2033_);
v___x_2039_ = l_Lean_addMacroScope(v_quotContext_2033_, v___x_2038_, v_currMacroScope_2034_);
v___x_2040_ = lean_box(0);
v___x_2041_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_2041_, 0, v___x_2036_);
lean_ctor_set(v___x_2041_, 1, v___x_2037_);
lean_ctor_set(v___x_2041_, 2, v___x_2039_);
lean_ctor_set(v___x_2041_, 3, v___x_2040_);
v___x_2042_ = lean_box(v___x_2035_);
v___x_2043_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2043_, 0, v___x_2041_);
lean_ctor_set(v___x_2043_, 1, v___x_2042_);
v___x_2044_ = lean_unsigned_to_nat(1u);
v___x_2045_ = lean_mk_empty_array_with_capacity(v___x_2044_);
v___x_2046_ = lean_array_push(v___x_2045_, v___x_2043_);
v_ps_2019_ = v___x_2046_;
v___y_2020_ = v_a_2015_;
v___y_2021_ = v_a_2016_;
goto v___jp_2018_;
}
v___jp_2018_:
{
lean_object* v___x_2022_; lean_object* v___x_2023_; 
v___x_2022_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkFreshJP___redArg___closed__1));
v___x_2023_ = l_Lean_Core_mkFreshUserName(v___x_2022_, v___y_2020_, v___y_2021_);
if (lean_obj_tag(v___x_2023_) == 0)
{
lean_object* v_a_2024_; lean_object* v___x_2025_; lean_object* v___x_2026_; 
v_a_2024_ = lean_ctor_get(v___x_2023_, 0);
lean_inc(v_a_2024_);
lean_dec_ref(v___x_2023_);
v___x_2025_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_2025_, 0, v_a_2024_);
lean_ctor_set(v___x_2025_, 1, v_ps_2019_);
lean_ctor_set(v___x_2025_, 2, v_body_2014_);
v___x_2026_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2026_, 0, v___x_2025_);
return v___x_2026_;
}
else
{
lean_object* v_a_2027_; lean_object* v___x_2028_; 
lean_dec_ref(v_ps_2019_);
lean_dec_ref(v_body_2014_);
v_a_2027_ = lean_ctor_get(v___x_2023_, 0);
lean_inc(v_a_2027_);
lean_dec_ref(v___x_2023_);
v___x_2028_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_2028_, 0, v_a_2027_);
return v___x_2028_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___redArg___boxed(lean_object* v_ps_2047_, lean_object* v_body_2048_, lean_object* v_a_2049_, lean_object* v_a_2050_, lean_object* v_a_2051_){
_start:
{
lean_object* v_res_2052_; 
v_res_2052_ = l_Lean_Elab_Term_Do_mkFreshJP___redArg(v_ps_2047_, v_body_2048_, v_a_2049_, v_a_2050_);
return v_res_2052_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP(lean_object* v_ps_2053_, lean_object* v_body_2054_, lean_object* v_a_2055_, lean_object* v_a_2056_, lean_object* v_a_2057_, lean_object* v_a_2058_, lean_object* v_a_2059_, lean_object* v_a_2060_){
_start:
{
lean_object* v___x_2062_; 
v___x_2062_ = l_Lean_Elab_Term_Do_mkFreshJP___redArg(v_ps_2053_, v_body_2054_, v_a_2059_, v_a_2060_);
return v___x_2062_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkFreshJP___boxed(lean_object* v_ps_2063_, lean_object* v_body_2064_, lean_object* v_a_2065_, lean_object* v_a_2066_, lean_object* v_a_2067_, lean_object* v_a_2068_, lean_object* v_a_2069_, lean_object* v_a_2070_, lean_object* v_a_2071_){
_start:
{
lean_object* v_res_2072_; 
v_res_2072_ = l_Lean_Elab_Term_Do_mkFreshJP(v_ps_2063_, v_body_2064_, v_a_2065_, v_a_2066_, v_a_2067_, v_a_2068_, v_a_2069_, v_a_2070_);
lean_dec(v_a_2068_);
lean_dec_ref(v_a_2067_);
lean_dec(v_a_2066_);
lean_dec_ref(v_a_2065_);
return v_res_2072_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___redArg(lean_object* v_ps_2073_, lean_object* v_body_2074_, lean_object* v_a_2075_, lean_object* v_a_2076_, lean_object* v_a_2077_){
_start:
{
lean_object* v___x_2079_; 
v___x_2079_ = l_Lean_Elab_Term_Do_mkFreshJP___redArg(v_ps_2073_, v_body_2074_, v_a_2076_, v_a_2077_);
if (lean_obj_tag(v___x_2079_) == 0)
{
lean_object* v_a_2080_; lean_object* v___x_2081_; lean_object* v___x_2082_; lean_object* v___x_2083_; lean_object* v_name_2084_; lean_object* v___x_2085_; 
v_a_2080_ = lean_ctor_get(v___x_2079_, 0);
lean_inc(v_a_2080_);
lean_dec_ref(v___x_2079_);
v___x_2081_ = lean_st_ref_take(v_a_2075_);
lean_inc(v_a_2080_);
v___x_2082_ = lean_array_push(v___x_2081_, v_a_2080_);
v___x_2083_ = lean_st_ref_set(v_a_2075_, v___x_2082_);
v_name_2084_ = lean_ctor_get(v_a_2080_, 0);
lean_inc(v_name_2084_);
lean_dec(v_a_2080_);
v___x_2085_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2085_, 0, v_name_2084_);
return v___x_2085_;
}
else
{
lean_object* v_a_2086_; lean_object* v___x_2087_; 
v_a_2086_ = lean_ctor_get(v___x_2079_, 0);
lean_inc(v_a_2086_);
lean_dec_ref(v___x_2079_);
v___x_2087_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_2087_, 0, v_a_2086_);
return v___x_2087_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___redArg___boxed(lean_object* v_ps_2088_, lean_object* v_body_2089_, lean_object* v_a_2090_, lean_object* v_a_2091_, lean_object* v_a_2092_, lean_object* v_a_2093_){
_start:
{
lean_object* v_res_2094_; 
v_res_2094_ = l_Lean_Elab_Term_Do_addFreshJP___redArg(v_ps_2088_, v_body_2089_, v_a_2090_, v_a_2091_, v_a_2092_);
lean_dec(v_a_2090_);
return v_res_2094_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP(lean_object* v_ps_2095_, lean_object* v_body_2096_, lean_object* v_a_2097_, lean_object* v_a_2098_, lean_object* v_a_2099_, lean_object* v_a_2100_, lean_object* v_a_2101_, lean_object* v_a_2102_, lean_object* v_a_2103_){
_start:
{
lean_object* v___x_2105_; 
v___x_2105_ = l_Lean_Elab_Term_Do_addFreshJP___redArg(v_ps_2095_, v_body_2096_, v_a_2097_, v_a_2102_, v_a_2103_);
return v___x_2105_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_addFreshJP___boxed(lean_object* v_ps_2106_, lean_object* v_body_2107_, lean_object* v_a_2108_, lean_object* v_a_2109_, lean_object* v_a_2110_, lean_object* v_a_2111_, lean_object* v_a_2112_, lean_object* v_a_2113_, lean_object* v_a_2114_, lean_object* v_a_2115_){
_start:
{
lean_object* v_res_2116_; 
v_res_2116_ = l_Lean_Elab_Term_Do_addFreshJP(v_ps_2106_, v_body_2107_, v_a_2108_, v_a_2109_, v_a_2110_, v_a_2111_, v_a_2112_, v_a_2113_, v_a_2114_);
lean_dec(v_a_2112_);
lean_dec_ref(v_a_2111_);
lean_dec(v_a_2110_);
lean_dec_ref(v_a_2109_);
lean_dec(v_a_2108_);
return v_res_2116_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(lean_object* v_k_2117_, lean_object* v_v_2118_, lean_object* v_t_2119_){
_start:
{
if (lean_obj_tag(v_t_2119_) == 0)
{
lean_object* v_size_2120_; lean_object* v_k_2121_; lean_object* v_v_2122_; lean_object* v_l_2123_; lean_object* v_r_2124_; uint8_t v___x_2125_; 
v_size_2120_ = lean_ctor_get(v_t_2119_, 0);
lean_inc(v_size_2120_);
v_k_2121_ = lean_ctor_get(v_t_2119_, 1);
lean_inc(v_k_2121_);
v_v_2122_ = lean_ctor_get(v_t_2119_, 2);
lean_inc(v_v_2122_);
v_l_2123_ = lean_ctor_get(v_t_2119_, 3);
lean_inc(v_l_2123_);
v_r_2124_ = lean_ctor_get(v_t_2119_, 4);
lean_inc(v_r_2124_);
lean_dec_ref(v_t_2119_);
v___x_2125_ = l_Lean_Name_cmp(v_k_2117_, v_k_2121_);
switch(v___x_2125_)
{
case 0:
{
lean_object* v_impl_2126_; lean_object* v___x_2127_; 
lean_dec(v_size_2120_);
v_impl_2126_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v_k_2117_, v_v_2118_, v_l_2123_);
v___x_2127_ = lean_unsigned_to_nat(1u);
if (lean_obj_tag(v_r_2124_) == 0)
{
lean_object* v_size_2128_; lean_object* v_size_2129_; lean_object* v_k_2130_; lean_object* v_v_2131_; lean_object* v_l_2132_; lean_object* v_r_2133_; lean_object* v___x_2134_; lean_object* v___x_2135_; uint8_t v___x_2136_; 
v_size_2128_ = lean_ctor_get(v_r_2124_, 0);
v_size_2129_ = lean_ctor_get(v_impl_2126_, 0);
lean_inc(v_size_2129_);
v_k_2130_ = lean_ctor_get(v_impl_2126_, 1);
lean_inc(v_k_2130_);
v_v_2131_ = lean_ctor_get(v_impl_2126_, 2);
lean_inc(v_v_2131_);
v_l_2132_ = lean_ctor_get(v_impl_2126_, 3);
lean_inc(v_l_2132_);
v_r_2133_ = lean_ctor_get(v_impl_2126_, 4);
lean_inc(v_r_2133_);
v___x_2134_ = lean_unsigned_to_nat(3u);
v___x_2135_ = lean_nat_mul(v___x_2134_, v_size_2128_);
v___x_2136_ = lean_nat_dec_lt(v___x_2135_, v_size_2129_);
lean_dec(v___x_2135_);
if (v___x_2136_ == 0)
{
lean_object* v___x_2137_; lean_object* v___x_2138_; lean_object* v___x_2139_; 
lean_dec(v_r_2133_);
lean_dec(v_l_2132_);
lean_dec(v_v_2131_);
lean_dec(v_k_2130_);
v___x_2137_ = lean_nat_add(v___x_2127_, v_size_2129_);
lean_dec(v_size_2129_);
v___x_2138_ = lean_nat_add(v___x_2137_, v_size_2128_);
lean_dec(v___x_2137_);
v___x_2139_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2139_, 0, v___x_2138_);
lean_ctor_set(v___x_2139_, 1, v_k_2121_);
lean_ctor_set(v___x_2139_, 2, v_v_2122_);
lean_ctor_set(v___x_2139_, 3, v_impl_2126_);
lean_ctor_set(v___x_2139_, 4, v_r_2124_);
return v___x_2139_;
}
else
{
lean_object* v_size_2140_; lean_object* v_size_2141_; lean_object* v_k_2142_; lean_object* v_v_2143_; lean_object* v_l_2144_; lean_object* v_r_2145_; lean_object* v___x_2146_; lean_object* v___x_2147_; uint8_t v___x_2148_; 
lean_dec(v_impl_2126_);
v_size_2140_ = lean_ctor_get(v_l_2132_, 0);
v_size_2141_ = lean_ctor_get(v_r_2133_, 0);
v_k_2142_ = lean_ctor_get(v_r_2133_, 1);
v_v_2143_ = lean_ctor_get(v_r_2133_, 2);
v_l_2144_ = lean_ctor_get(v_r_2133_, 3);
v_r_2145_ = lean_ctor_get(v_r_2133_, 4);
v___x_2146_ = lean_unsigned_to_nat(2u);
v___x_2147_ = lean_nat_mul(v___x_2146_, v_size_2140_);
v___x_2148_ = lean_nat_dec_lt(v_size_2141_, v___x_2147_);
lean_dec(v___x_2147_);
if (v___x_2148_ == 0)
{
lean_object* v___x_2149_; lean_object* v___x_2150_; lean_object* v___y_2152_; lean_object* v___y_2153_; lean_object* v___y_2154_; lean_object* v___x_2158_; lean_object* v___y_2160_; 
lean_inc(v_r_2145_);
lean_inc(v_l_2144_);
lean_inc(v_v_2143_);
lean_inc(v_k_2142_);
lean_dec(v_r_2133_);
v___x_2149_ = lean_nat_add(v___x_2127_, v_size_2129_);
lean_dec(v_size_2129_);
v___x_2150_ = lean_nat_add(v___x_2149_, v_size_2128_);
lean_dec(v___x_2149_);
v___x_2158_ = lean_nat_add(v___x_2127_, v_size_2140_);
if (lean_obj_tag(v_l_2144_) == 0)
{
lean_object* v_size_2166_; 
v_size_2166_ = lean_ctor_get(v_l_2144_, 0);
lean_inc(v_size_2166_);
v___y_2160_ = v_size_2166_;
goto v___jp_2159_;
}
else
{
lean_object* v___x_2167_; 
v___x_2167_ = lean_unsigned_to_nat(0u);
v___y_2160_ = v___x_2167_;
goto v___jp_2159_;
}
v___jp_2151_:
{
lean_object* v___x_2155_; lean_object* v___x_2156_; lean_object* v___x_2157_; 
v___x_2155_ = lean_nat_add(v___y_2153_, v___y_2154_);
lean_dec(v___y_2154_);
lean_dec(v___y_2153_);
v___x_2156_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2156_, 0, v___x_2155_);
lean_ctor_set(v___x_2156_, 1, v_k_2121_);
lean_ctor_set(v___x_2156_, 2, v_v_2122_);
lean_ctor_set(v___x_2156_, 3, v_r_2145_);
lean_ctor_set(v___x_2156_, 4, v_r_2124_);
v___x_2157_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2157_, 0, v___x_2150_);
lean_ctor_set(v___x_2157_, 1, v_k_2142_);
lean_ctor_set(v___x_2157_, 2, v_v_2143_);
lean_ctor_set(v___x_2157_, 3, v___y_2152_);
lean_ctor_set(v___x_2157_, 4, v___x_2156_);
return v___x_2157_;
}
v___jp_2159_:
{
lean_object* v___x_2161_; lean_object* v___x_2162_; lean_object* v___x_2163_; 
v___x_2161_ = lean_nat_add(v___x_2158_, v___y_2160_);
lean_dec(v___y_2160_);
lean_dec(v___x_2158_);
v___x_2162_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2162_, 0, v___x_2161_);
lean_ctor_set(v___x_2162_, 1, v_k_2130_);
lean_ctor_set(v___x_2162_, 2, v_v_2131_);
lean_ctor_set(v___x_2162_, 3, v_l_2132_);
lean_ctor_set(v___x_2162_, 4, v_l_2144_);
v___x_2163_ = lean_nat_add(v___x_2127_, v_size_2128_);
if (lean_obj_tag(v_r_2145_) == 0)
{
lean_object* v_size_2164_; 
v_size_2164_ = lean_ctor_get(v_r_2145_, 0);
lean_inc(v_size_2164_);
v___y_2152_ = v___x_2162_;
v___y_2153_ = v___x_2163_;
v___y_2154_ = v_size_2164_;
goto v___jp_2151_;
}
else
{
lean_object* v___x_2165_; 
v___x_2165_ = lean_unsigned_to_nat(0u);
v___y_2152_ = v___x_2162_;
v___y_2153_ = v___x_2163_;
v___y_2154_ = v___x_2165_;
goto v___jp_2151_;
}
}
}
else
{
lean_object* v___x_2168_; lean_object* v___x_2169_; lean_object* v___x_2170_; lean_object* v___x_2171_; lean_object* v___x_2172_; lean_object* v___x_2173_; 
v___x_2168_ = lean_nat_add(v___x_2127_, v_size_2129_);
lean_dec(v_size_2129_);
v___x_2169_ = lean_nat_add(v___x_2168_, v_size_2128_);
lean_dec(v___x_2168_);
v___x_2170_ = lean_nat_add(v___x_2127_, v_size_2128_);
v___x_2171_ = lean_nat_add(v___x_2170_, v_size_2141_);
lean_dec(v___x_2170_);
v___x_2172_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2172_, 0, v___x_2171_);
lean_ctor_set(v___x_2172_, 1, v_k_2121_);
lean_ctor_set(v___x_2172_, 2, v_v_2122_);
lean_ctor_set(v___x_2172_, 3, v_r_2133_);
lean_ctor_set(v___x_2172_, 4, v_r_2124_);
v___x_2173_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2173_, 0, v___x_2169_);
lean_ctor_set(v___x_2173_, 1, v_k_2130_);
lean_ctor_set(v___x_2173_, 2, v_v_2131_);
lean_ctor_set(v___x_2173_, 3, v_l_2132_);
lean_ctor_set(v___x_2173_, 4, v___x_2172_);
return v___x_2173_;
}
}
}
else
{
lean_object* v_l_2174_; 
v_l_2174_ = lean_ctor_get(v_impl_2126_, 3);
lean_inc(v_l_2174_);
if (lean_obj_tag(v_l_2174_) == 0)
{
lean_object* v_r_2175_; lean_object* v_k_2176_; lean_object* v_v_2177_; lean_object* v___x_2178_; lean_object* v___x_2179_; lean_object* v___x_2180_; 
v_r_2175_ = lean_ctor_get(v_impl_2126_, 4);
lean_inc(v_r_2175_);
v_k_2176_ = lean_ctor_get(v_impl_2126_, 1);
lean_inc(v_k_2176_);
v_v_2177_ = lean_ctor_get(v_impl_2126_, 2);
lean_inc(v_v_2177_);
lean_dec(v_impl_2126_);
v___x_2178_ = lean_unsigned_to_nat(3u);
lean_inc(v_r_2175_);
v___x_2179_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2179_, 0, v___x_2127_);
lean_ctor_set(v___x_2179_, 1, v_k_2121_);
lean_ctor_set(v___x_2179_, 2, v_v_2122_);
lean_ctor_set(v___x_2179_, 3, v_r_2175_);
lean_ctor_set(v___x_2179_, 4, v_r_2175_);
v___x_2180_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2180_, 0, v___x_2178_);
lean_ctor_set(v___x_2180_, 1, v_k_2176_);
lean_ctor_set(v___x_2180_, 2, v_v_2177_);
lean_ctor_set(v___x_2180_, 3, v_l_2174_);
lean_ctor_set(v___x_2180_, 4, v___x_2179_);
return v___x_2180_;
}
else
{
lean_object* v_r_2181_; 
v_r_2181_ = lean_ctor_get(v_impl_2126_, 4);
lean_inc(v_r_2181_);
if (lean_obj_tag(v_r_2181_) == 0)
{
lean_object* v_k_2182_; lean_object* v_v_2183_; lean_object* v_k_2184_; lean_object* v_v_2185_; lean_object* v___x_2186_; lean_object* v___x_2187_; lean_object* v___x_2188_; lean_object* v___x_2189_; 
v_k_2182_ = lean_ctor_get(v_impl_2126_, 1);
lean_inc(v_k_2182_);
v_v_2183_ = lean_ctor_get(v_impl_2126_, 2);
lean_inc(v_v_2183_);
lean_dec(v_impl_2126_);
v_k_2184_ = lean_ctor_get(v_r_2181_, 1);
lean_inc(v_k_2184_);
v_v_2185_ = lean_ctor_get(v_r_2181_, 2);
lean_inc(v_v_2185_);
lean_dec_ref(v_r_2181_);
v___x_2186_ = lean_unsigned_to_nat(3u);
v___x_2187_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2187_, 0, v___x_2127_);
lean_ctor_set(v___x_2187_, 1, v_k_2182_);
lean_ctor_set(v___x_2187_, 2, v_v_2183_);
lean_ctor_set(v___x_2187_, 3, v_l_2174_);
lean_ctor_set(v___x_2187_, 4, v_l_2174_);
v___x_2188_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2188_, 0, v___x_2127_);
lean_ctor_set(v___x_2188_, 1, v_k_2121_);
lean_ctor_set(v___x_2188_, 2, v_v_2122_);
lean_ctor_set(v___x_2188_, 3, v_l_2174_);
lean_ctor_set(v___x_2188_, 4, v_l_2174_);
v___x_2189_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2189_, 0, v___x_2186_);
lean_ctor_set(v___x_2189_, 1, v_k_2184_);
lean_ctor_set(v___x_2189_, 2, v_v_2185_);
lean_ctor_set(v___x_2189_, 3, v___x_2187_);
lean_ctor_set(v___x_2189_, 4, v___x_2188_);
return v___x_2189_;
}
else
{
lean_object* v___x_2190_; lean_object* v___x_2191_; 
v___x_2190_ = lean_unsigned_to_nat(2u);
v___x_2191_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2191_, 0, v___x_2190_);
lean_ctor_set(v___x_2191_, 1, v_k_2121_);
lean_ctor_set(v___x_2191_, 2, v_v_2122_);
lean_ctor_set(v___x_2191_, 3, v_impl_2126_);
lean_ctor_set(v___x_2191_, 4, v_r_2181_);
return v___x_2191_;
}
}
}
}
case 1:
{
lean_object* v___x_2192_; 
lean_dec(v_v_2122_);
lean_dec(v_k_2121_);
v___x_2192_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2192_, 0, v_size_2120_);
lean_ctor_set(v___x_2192_, 1, v_k_2117_);
lean_ctor_set(v___x_2192_, 2, v_v_2118_);
lean_ctor_set(v___x_2192_, 3, v_l_2123_);
lean_ctor_set(v___x_2192_, 4, v_r_2124_);
return v___x_2192_;
}
default: 
{
lean_object* v_impl_2193_; lean_object* v___x_2194_; 
lean_dec(v_size_2120_);
v_impl_2193_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v_k_2117_, v_v_2118_, v_r_2124_);
v___x_2194_ = lean_unsigned_to_nat(1u);
if (lean_obj_tag(v_l_2123_) == 0)
{
lean_object* v_size_2195_; lean_object* v_size_2196_; lean_object* v_k_2197_; lean_object* v_v_2198_; lean_object* v_l_2199_; lean_object* v_r_2200_; lean_object* v___x_2201_; lean_object* v___x_2202_; uint8_t v___x_2203_; 
v_size_2195_ = lean_ctor_get(v_l_2123_, 0);
v_size_2196_ = lean_ctor_get(v_impl_2193_, 0);
lean_inc(v_size_2196_);
v_k_2197_ = lean_ctor_get(v_impl_2193_, 1);
lean_inc(v_k_2197_);
v_v_2198_ = lean_ctor_get(v_impl_2193_, 2);
lean_inc(v_v_2198_);
v_l_2199_ = lean_ctor_get(v_impl_2193_, 3);
lean_inc(v_l_2199_);
v_r_2200_ = lean_ctor_get(v_impl_2193_, 4);
lean_inc(v_r_2200_);
v___x_2201_ = lean_unsigned_to_nat(3u);
v___x_2202_ = lean_nat_mul(v___x_2201_, v_size_2195_);
v___x_2203_ = lean_nat_dec_lt(v___x_2202_, v_size_2196_);
lean_dec(v___x_2202_);
if (v___x_2203_ == 0)
{
lean_object* v___x_2204_; lean_object* v___x_2205_; lean_object* v___x_2206_; 
lean_dec(v_r_2200_);
lean_dec(v_l_2199_);
lean_dec(v_v_2198_);
lean_dec(v_k_2197_);
v___x_2204_ = lean_nat_add(v___x_2194_, v_size_2195_);
v___x_2205_ = lean_nat_add(v___x_2204_, v_size_2196_);
lean_dec(v_size_2196_);
lean_dec(v___x_2204_);
v___x_2206_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2206_, 0, v___x_2205_);
lean_ctor_set(v___x_2206_, 1, v_k_2121_);
lean_ctor_set(v___x_2206_, 2, v_v_2122_);
lean_ctor_set(v___x_2206_, 3, v_l_2123_);
lean_ctor_set(v___x_2206_, 4, v_impl_2193_);
return v___x_2206_;
}
else
{
lean_object* v_size_2207_; lean_object* v_k_2208_; lean_object* v_v_2209_; lean_object* v_l_2210_; lean_object* v_r_2211_; lean_object* v_size_2212_; lean_object* v___x_2213_; lean_object* v___x_2214_; uint8_t v___x_2215_; 
lean_dec(v_impl_2193_);
v_size_2207_ = lean_ctor_get(v_l_2199_, 0);
v_k_2208_ = lean_ctor_get(v_l_2199_, 1);
v_v_2209_ = lean_ctor_get(v_l_2199_, 2);
v_l_2210_ = lean_ctor_get(v_l_2199_, 3);
v_r_2211_ = lean_ctor_get(v_l_2199_, 4);
v_size_2212_ = lean_ctor_get(v_r_2200_, 0);
v___x_2213_ = lean_unsigned_to_nat(2u);
v___x_2214_ = lean_nat_mul(v___x_2213_, v_size_2212_);
v___x_2215_ = lean_nat_dec_lt(v_size_2207_, v___x_2214_);
lean_dec(v___x_2214_);
if (v___x_2215_ == 0)
{
lean_object* v___x_2216_; lean_object* v___x_2217_; lean_object* v___y_2219_; lean_object* v___y_2220_; lean_object* v___y_2221_; lean_object* v___y_2226_; 
lean_inc(v_r_2211_);
lean_inc(v_l_2210_);
lean_inc(v_v_2209_);
lean_inc(v_k_2208_);
lean_dec(v_l_2199_);
v___x_2216_ = lean_nat_add(v___x_2194_, v_size_2195_);
v___x_2217_ = lean_nat_add(v___x_2216_, v_size_2196_);
lean_dec(v_size_2196_);
if (lean_obj_tag(v_l_2210_) == 0)
{
lean_object* v_size_2232_; 
v_size_2232_ = lean_ctor_get(v_l_2210_, 0);
lean_inc(v_size_2232_);
v___y_2226_ = v_size_2232_;
goto v___jp_2225_;
}
else
{
lean_object* v___x_2233_; 
v___x_2233_ = lean_unsigned_to_nat(0u);
v___y_2226_ = v___x_2233_;
goto v___jp_2225_;
}
v___jp_2218_:
{
lean_object* v___x_2222_; lean_object* v___x_2223_; lean_object* v___x_2224_; 
v___x_2222_ = lean_nat_add(v___y_2219_, v___y_2221_);
lean_dec(v___y_2221_);
lean_dec(v___y_2219_);
v___x_2223_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2223_, 0, v___x_2222_);
lean_ctor_set(v___x_2223_, 1, v_k_2197_);
lean_ctor_set(v___x_2223_, 2, v_v_2198_);
lean_ctor_set(v___x_2223_, 3, v_r_2211_);
lean_ctor_set(v___x_2223_, 4, v_r_2200_);
v___x_2224_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2224_, 0, v___x_2217_);
lean_ctor_set(v___x_2224_, 1, v_k_2208_);
lean_ctor_set(v___x_2224_, 2, v_v_2209_);
lean_ctor_set(v___x_2224_, 3, v___y_2220_);
lean_ctor_set(v___x_2224_, 4, v___x_2223_);
return v___x_2224_;
}
v___jp_2225_:
{
lean_object* v___x_2227_; lean_object* v___x_2228_; lean_object* v___x_2229_; 
v___x_2227_ = lean_nat_add(v___x_2216_, v___y_2226_);
lean_dec(v___y_2226_);
lean_dec(v___x_2216_);
v___x_2228_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2228_, 0, v___x_2227_);
lean_ctor_set(v___x_2228_, 1, v_k_2121_);
lean_ctor_set(v___x_2228_, 2, v_v_2122_);
lean_ctor_set(v___x_2228_, 3, v_l_2123_);
lean_ctor_set(v___x_2228_, 4, v_l_2210_);
v___x_2229_ = lean_nat_add(v___x_2194_, v_size_2212_);
if (lean_obj_tag(v_r_2211_) == 0)
{
lean_object* v_size_2230_; 
v_size_2230_ = lean_ctor_get(v_r_2211_, 0);
lean_inc(v_size_2230_);
v___y_2219_ = v___x_2229_;
v___y_2220_ = v___x_2228_;
v___y_2221_ = v_size_2230_;
goto v___jp_2218_;
}
else
{
lean_object* v___x_2231_; 
v___x_2231_ = lean_unsigned_to_nat(0u);
v___y_2219_ = v___x_2229_;
v___y_2220_ = v___x_2228_;
v___y_2221_ = v___x_2231_;
goto v___jp_2218_;
}
}
}
else
{
lean_object* v___x_2234_; lean_object* v___x_2235_; lean_object* v___x_2236_; lean_object* v___x_2237_; lean_object* v___x_2238_; 
v___x_2234_ = lean_nat_add(v___x_2194_, v_size_2195_);
v___x_2235_ = lean_nat_add(v___x_2234_, v_size_2196_);
lean_dec(v_size_2196_);
v___x_2236_ = lean_nat_add(v___x_2234_, v_size_2207_);
lean_dec(v___x_2234_);
v___x_2237_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2237_, 0, v___x_2236_);
lean_ctor_set(v___x_2237_, 1, v_k_2121_);
lean_ctor_set(v___x_2237_, 2, v_v_2122_);
lean_ctor_set(v___x_2237_, 3, v_l_2123_);
lean_ctor_set(v___x_2237_, 4, v_l_2199_);
v___x_2238_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2238_, 0, v___x_2235_);
lean_ctor_set(v___x_2238_, 1, v_k_2197_);
lean_ctor_set(v___x_2238_, 2, v_v_2198_);
lean_ctor_set(v___x_2238_, 3, v___x_2237_);
lean_ctor_set(v___x_2238_, 4, v_r_2200_);
return v___x_2238_;
}
}
}
else
{
lean_object* v_l_2239_; 
v_l_2239_ = lean_ctor_get(v_impl_2193_, 3);
lean_inc(v_l_2239_);
if (lean_obj_tag(v_l_2239_) == 0)
{
lean_object* v_r_2240_; lean_object* v_k_2241_; lean_object* v_v_2242_; lean_object* v_k_2243_; lean_object* v_v_2244_; lean_object* v___x_2245_; lean_object* v___x_2246_; lean_object* v___x_2247_; lean_object* v___x_2248_; 
v_r_2240_ = lean_ctor_get(v_impl_2193_, 4);
lean_inc(v_r_2240_);
v_k_2241_ = lean_ctor_get(v_impl_2193_, 1);
lean_inc(v_k_2241_);
v_v_2242_ = lean_ctor_get(v_impl_2193_, 2);
lean_inc(v_v_2242_);
lean_dec(v_impl_2193_);
v_k_2243_ = lean_ctor_get(v_l_2239_, 1);
lean_inc(v_k_2243_);
v_v_2244_ = lean_ctor_get(v_l_2239_, 2);
lean_inc(v_v_2244_);
lean_dec_ref(v_l_2239_);
v___x_2245_ = lean_unsigned_to_nat(3u);
lean_inc_n(v_r_2240_, 2);
v___x_2246_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2246_, 0, v___x_2194_);
lean_ctor_set(v___x_2246_, 1, v_k_2121_);
lean_ctor_set(v___x_2246_, 2, v_v_2122_);
lean_ctor_set(v___x_2246_, 3, v_r_2240_);
lean_ctor_set(v___x_2246_, 4, v_r_2240_);
lean_inc(v_r_2240_);
v___x_2247_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2247_, 0, v___x_2194_);
lean_ctor_set(v___x_2247_, 1, v_k_2241_);
lean_ctor_set(v___x_2247_, 2, v_v_2242_);
lean_ctor_set(v___x_2247_, 3, v_r_2240_);
lean_ctor_set(v___x_2247_, 4, v_r_2240_);
v___x_2248_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2248_, 0, v___x_2245_);
lean_ctor_set(v___x_2248_, 1, v_k_2243_);
lean_ctor_set(v___x_2248_, 2, v_v_2244_);
lean_ctor_set(v___x_2248_, 3, v___x_2246_);
lean_ctor_set(v___x_2248_, 4, v___x_2247_);
return v___x_2248_;
}
else
{
lean_object* v_r_2249_; 
v_r_2249_ = lean_ctor_get(v_impl_2193_, 4);
lean_inc(v_r_2249_);
if (lean_obj_tag(v_r_2249_) == 0)
{
lean_object* v_k_2250_; lean_object* v_v_2251_; lean_object* v___x_2252_; lean_object* v___x_2253_; lean_object* v___x_2254_; 
v_k_2250_ = lean_ctor_get(v_impl_2193_, 1);
lean_inc(v_k_2250_);
v_v_2251_ = lean_ctor_get(v_impl_2193_, 2);
lean_inc(v_v_2251_);
lean_dec(v_impl_2193_);
v___x_2252_ = lean_unsigned_to_nat(3u);
v___x_2253_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2253_, 0, v___x_2194_);
lean_ctor_set(v___x_2253_, 1, v_k_2121_);
lean_ctor_set(v___x_2253_, 2, v_v_2122_);
lean_ctor_set(v___x_2253_, 3, v_l_2239_);
lean_ctor_set(v___x_2253_, 4, v_l_2239_);
v___x_2254_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2254_, 0, v___x_2252_);
lean_ctor_set(v___x_2254_, 1, v_k_2250_);
lean_ctor_set(v___x_2254_, 2, v_v_2251_);
lean_ctor_set(v___x_2254_, 3, v___x_2253_);
lean_ctor_set(v___x_2254_, 4, v_r_2249_);
return v___x_2254_;
}
else
{
lean_object* v___x_2255_; lean_object* v___x_2256_; 
v___x_2255_ = lean_unsigned_to_nat(2u);
v___x_2256_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2256_, 0, v___x_2255_);
lean_ctor_set(v___x_2256_, 1, v_k_2121_);
lean_ctor_set(v___x_2256_, 2, v_v_2122_);
lean_ctor_set(v___x_2256_, 3, v_r_2249_);
lean_ctor_set(v___x_2256_, 4, v_impl_2193_);
return v___x_2256_;
}
}
}
}
}
}
else
{
lean_object* v___x_2257_; lean_object* v___x_2258_; 
v___x_2257_ = lean_unsigned_to_nat(1u);
v___x_2258_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2258_, 0, v___x_2257_);
lean_ctor_set(v___x_2258_, 1, v_k_2117_);
lean_ctor_set(v___x_2258_, 2, v_v_2118_);
lean_ctor_set(v___x_2258_, 3, v_t_2119_);
lean_ctor_set(v___x_2258_, 4, v_t_2119_);
return v___x_2258_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1(lean_object* v_as_2259_, size_t v_i_2260_, size_t v_stop_2261_, lean_object* v_b_2262_){
_start:
{
uint8_t v___x_2263_; 
v___x_2263_ = lean_usize_dec_eq(v_i_2260_, v_stop_2261_);
if (v___x_2263_ == 0)
{
lean_object* v___x_2264_; lean_object* v___x_2265_; lean_object* v___x_2266_; size_t v___x_2267_; size_t v___x_2268_; 
v___x_2264_ = lean_array_uget_borrowed(v_as_2259_, v_i_2260_);
v___x_2265_ = l_Lean_Syntax_getId(v___x_2264_);
lean_inc(v___x_2264_);
v___x_2266_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v___x_2265_, v___x_2264_, v_b_2262_);
v___x_2267_ = ((size_t)1ULL);
v___x_2268_ = lean_usize_add(v_i_2260_, v___x_2267_);
v_i_2260_ = v___x_2268_;
v_b_2262_ = v___x_2266_;
goto _start;
}
else
{
return v_b_2262_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1___boxed(lean_object* v_as_2270_, lean_object* v_i_2271_, lean_object* v_stop_2272_, lean_object* v_b_2273_){
_start:
{
size_t v_i_boxed_2274_; size_t v_stop_boxed_2275_; lean_object* v_res_2276_; 
v_i_boxed_2274_ = lean_unbox_usize(v_i_2271_);
lean_dec(v_i_2271_);
v_stop_boxed_2275_ = lean_unbox_usize(v_stop_2272_);
lean_dec(v_stop_2272_);
v_res_2276_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1(v_as_2270_, v_i_boxed_2274_, v_stop_boxed_2275_, v_b_2273_);
lean_dec_ref(v_as_2270_);
return v_res_2276_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_insertVars(lean_object* v_rs_2277_, lean_object* v_xs_2278_){
_start:
{
lean_object* v___x_2279_; lean_object* v___x_2280_; uint8_t v___x_2281_; 
v___x_2279_ = lean_unsigned_to_nat(0u);
v___x_2280_ = lean_array_get_size(v_xs_2278_);
v___x_2281_ = lean_nat_dec_lt(v___x_2279_, v___x_2280_);
if (v___x_2281_ == 0)
{
return v_rs_2277_;
}
else
{
uint8_t v___x_2282_; 
v___x_2282_ = lean_nat_dec_le(v___x_2280_, v___x_2280_);
if (v___x_2282_ == 0)
{
if (v___x_2281_ == 0)
{
return v_rs_2277_;
}
else
{
size_t v___x_2283_; size_t v___x_2284_; lean_object* v___x_2285_; 
v___x_2283_ = ((size_t)0ULL);
v___x_2284_ = lean_usize_of_nat(v___x_2280_);
v___x_2285_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1(v_xs_2278_, v___x_2283_, v___x_2284_, v_rs_2277_);
return v___x_2285_;
}
}
else
{
size_t v___x_2286_; size_t v___x_2287_; lean_object* v___x_2288_; 
v___x_2286_ = ((size_t)0ULL);
v___x_2287_ = lean_usize_of_nat(v___x_2280_);
v___x_2288_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_insertVars_spec__1(v_xs_2278_, v___x_2286_, v___x_2287_, v_rs_2277_);
return v___x_2288_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_insertVars___boxed(lean_object* v_rs_2289_, lean_object* v_xs_2290_){
_start:
{
lean_object* v_res_2291_; 
v_res_2291_ = l_Lean_Elab_Term_Do_insertVars(v_rs_2289_, v_xs_2290_);
lean_dec_ref(v_xs_2290_);
return v_res_2291_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0(lean_object* v_00_u03b2_2292_, lean_object* v_k_2293_, lean_object* v_v_2294_, lean_object* v_t_2295_, lean_object* v_hl_2296_){
_start:
{
lean_object* v___x_2297_; 
v___x_2297_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v_k_2293_, v_v_2294_, v_t_2295_);
return v___x_2297_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(lean_object* v_k_2298_, lean_object* v_t_2299_){
_start:
{
if (lean_obj_tag(v_t_2299_) == 0)
{
lean_object* v_k_2300_; lean_object* v_v_2301_; lean_object* v_l_2302_; lean_object* v_r_2303_; uint8_t v___x_2304_; 
v_k_2300_ = lean_ctor_get(v_t_2299_, 1);
lean_inc(v_k_2300_);
v_v_2301_ = lean_ctor_get(v_t_2299_, 2);
lean_inc(v_v_2301_);
v_l_2302_ = lean_ctor_get(v_t_2299_, 3);
lean_inc(v_l_2302_);
v_r_2303_ = lean_ctor_get(v_t_2299_, 4);
lean_inc(v_r_2303_);
lean_dec_ref(v_t_2299_);
v___x_2304_ = l_Lean_Name_cmp(v_k_2298_, v_k_2300_);
switch(v___x_2304_)
{
case 0:
{
lean_object* v_impl_2305_; lean_object* v___x_2306_; 
v_impl_2305_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(v_k_2298_, v_l_2302_);
v___x_2306_ = lean_unsigned_to_nat(1u);
if (lean_obj_tag(v_impl_2305_) == 0)
{
if (lean_obj_tag(v_r_2303_) == 0)
{
lean_object* v_size_2307_; lean_object* v_size_2308_; lean_object* v_k_2309_; lean_object* v_v_2310_; lean_object* v_l_2311_; lean_object* v_r_2312_; lean_object* v___x_2313_; lean_object* v___x_2314_; uint8_t v___x_2315_; 
v_size_2307_ = lean_ctor_get(v_impl_2305_, 0);
lean_inc(v_size_2307_);
v_size_2308_ = lean_ctor_get(v_r_2303_, 0);
v_k_2309_ = lean_ctor_get(v_r_2303_, 1);
v_v_2310_ = lean_ctor_get(v_r_2303_, 2);
v_l_2311_ = lean_ctor_get(v_r_2303_, 3);
v_r_2312_ = lean_ctor_get(v_r_2303_, 4);
v___x_2313_ = lean_unsigned_to_nat(3u);
v___x_2314_ = lean_nat_mul(v___x_2313_, v_size_2307_);
v___x_2315_ = lean_nat_dec_lt(v___x_2314_, v_size_2308_);
lean_dec(v___x_2314_);
if (v___x_2315_ == 0)
{
lean_object* v___x_2316_; lean_object* v___x_2317_; lean_object* v___x_2318_; 
v___x_2316_ = lean_nat_add(v___x_2306_, v_size_2307_);
lean_dec(v_size_2307_);
v___x_2317_ = lean_nat_add(v___x_2316_, v_size_2308_);
lean_dec(v___x_2316_);
v___x_2318_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2318_, 0, v___x_2317_);
lean_ctor_set(v___x_2318_, 1, v_k_2300_);
lean_ctor_set(v___x_2318_, 2, v_v_2301_);
lean_ctor_set(v___x_2318_, 3, v_impl_2305_);
lean_ctor_set(v___x_2318_, 4, v_r_2303_);
return v___x_2318_;
}
else
{
lean_object* v_size_2319_; lean_object* v_k_2320_; lean_object* v_v_2321_; lean_object* v_l_2322_; lean_object* v_r_2323_; lean_object* v_size_2324_; lean_object* v___x_2325_; lean_object* v___x_2326_; uint8_t v___x_2327_; 
lean_inc(v_r_2312_);
lean_inc(v_l_2311_);
lean_inc(v_v_2310_);
lean_inc(v_k_2309_);
lean_inc(v_size_2308_);
lean_dec_ref(v_r_2303_);
v_size_2319_ = lean_ctor_get(v_l_2311_, 0);
v_k_2320_ = lean_ctor_get(v_l_2311_, 1);
v_v_2321_ = lean_ctor_get(v_l_2311_, 2);
v_l_2322_ = lean_ctor_get(v_l_2311_, 3);
v_r_2323_ = lean_ctor_get(v_l_2311_, 4);
v_size_2324_ = lean_ctor_get(v_r_2312_, 0);
v___x_2325_ = lean_unsigned_to_nat(2u);
v___x_2326_ = lean_nat_mul(v___x_2325_, v_size_2324_);
v___x_2327_ = lean_nat_dec_lt(v_size_2319_, v___x_2326_);
lean_dec(v___x_2326_);
if (v___x_2327_ == 0)
{
lean_object* v___x_2328_; lean_object* v___x_2329_; lean_object* v___y_2331_; lean_object* v___y_2332_; lean_object* v___y_2333_; lean_object* v___y_2338_; 
lean_inc(v_r_2323_);
lean_inc(v_l_2322_);
lean_inc(v_v_2321_);
lean_inc(v_k_2320_);
lean_dec(v_l_2311_);
v___x_2328_ = lean_nat_add(v___x_2306_, v_size_2307_);
lean_dec(v_size_2307_);
v___x_2329_ = lean_nat_add(v___x_2328_, v_size_2308_);
lean_dec(v_size_2308_);
if (lean_obj_tag(v_l_2322_) == 0)
{
lean_object* v_size_2344_; 
v_size_2344_ = lean_ctor_get(v_l_2322_, 0);
lean_inc(v_size_2344_);
v___y_2338_ = v_size_2344_;
goto v___jp_2337_;
}
else
{
lean_object* v___x_2345_; 
v___x_2345_ = lean_unsigned_to_nat(0u);
v___y_2338_ = v___x_2345_;
goto v___jp_2337_;
}
v___jp_2330_:
{
lean_object* v___x_2334_; lean_object* v___x_2335_; lean_object* v___x_2336_; 
v___x_2334_ = lean_nat_add(v___y_2331_, v___y_2333_);
lean_dec(v___y_2333_);
lean_dec(v___y_2331_);
v___x_2335_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2335_, 0, v___x_2334_);
lean_ctor_set(v___x_2335_, 1, v_k_2309_);
lean_ctor_set(v___x_2335_, 2, v_v_2310_);
lean_ctor_set(v___x_2335_, 3, v_r_2323_);
lean_ctor_set(v___x_2335_, 4, v_r_2312_);
v___x_2336_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2336_, 0, v___x_2329_);
lean_ctor_set(v___x_2336_, 1, v_k_2320_);
lean_ctor_set(v___x_2336_, 2, v_v_2321_);
lean_ctor_set(v___x_2336_, 3, v___y_2332_);
lean_ctor_set(v___x_2336_, 4, v___x_2335_);
return v___x_2336_;
}
v___jp_2337_:
{
lean_object* v___x_2339_; lean_object* v___x_2340_; lean_object* v___x_2341_; 
v___x_2339_ = lean_nat_add(v___x_2328_, v___y_2338_);
lean_dec(v___y_2338_);
lean_dec(v___x_2328_);
v___x_2340_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2340_, 0, v___x_2339_);
lean_ctor_set(v___x_2340_, 1, v_k_2300_);
lean_ctor_set(v___x_2340_, 2, v_v_2301_);
lean_ctor_set(v___x_2340_, 3, v_impl_2305_);
lean_ctor_set(v___x_2340_, 4, v_l_2322_);
v___x_2341_ = lean_nat_add(v___x_2306_, v_size_2324_);
if (lean_obj_tag(v_r_2323_) == 0)
{
lean_object* v_size_2342_; 
v_size_2342_ = lean_ctor_get(v_r_2323_, 0);
lean_inc(v_size_2342_);
v___y_2331_ = v___x_2341_;
v___y_2332_ = v___x_2340_;
v___y_2333_ = v_size_2342_;
goto v___jp_2330_;
}
else
{
lean_object* v___x_2343_; 
v___x_2343_ = lean_unsigned_to_nat(0u);
v___y_2331_ = v___x_2341_;
v___y_2332_ = v___x_2340_;
v___y_2333_ = v___x_2343_;
goto v___jp_2330_;
}
}
}
else
{
lean_object* v___x_2346_; lean_object* v___x_2347_; lean_object* v___x_2348_; lean_object* v___x_2349_; lean_object* v___x_2350_; 
v___x_2346_ = lean_nat_add(v___x_2306_, v_size_2307_);
lean_dec(v_size_2307_);
v___x_2347_ = lean_nat_add(v___x_2346_, v_size_2308_);
lean_dec(v_size_2308_);
v___x_2348_ = lean_nat_add(v___x_2346_, v_size_2319_);
lean_dec(v___x_2346_);
v___x_2349_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2349_, 0, v___x_2348_);
lean_ctor_set(v___x_2349_, 1, v_k_2300_);
lean_ctor_set(v___x_2349_, 2, v_v_2301_);
lean_ctor_set(v___x_2349_, 3, v_impl_2305_);
lean_ctor_set(v___x_2349_, 4, v_l_2311_);
v___x_2350_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2350_, 0, v___x_2347_);
lean_ctor_set(v___x_2350_, 1, v_k_2309_);
lean_ctor_set(v___x_2350_, 2, v_v_2310_);
lean_ctor_set(v___x_2350_, 3, v___x_2349_);
lean_ctor_set(v___x_2350_, 4, v_r_2312_);
return v___x_2350_;
}
}
}
else
{
lean_object* v_size_2351_; lean_object* v___x_2352_; lean_object* v___x_2353_; 
v_size_2351_ = lean_ctor_get(v_impl_2305_, 0);
lean_inc(v_size_2351_);
v___x_2352_ = lean_nat_add(v___x_2306_, v_size_2351_);
lean_dec(v_size_2351_);
v___x_2353_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2353_, 0, v___x_2352_);
lean_ctor_set(v___x_2353_, 1, v_k_2300_);
lean_ctor_set(v___x_2353_, 2, v_v_2301_);
lean_ctor_set(v___x_2353_, 3, v_impl_2305_);
lean_ctor_set(v___x_2353_, 4, v_r_2303_);
return v___x_2353_;
}
}
else
{
if (lean_obj_tag(v_r_2303_) == 0)
{
lean_object* v_l_2354_; 
v_l_2354_ = lean_ctor_get(v_r_2303_, 3);
if (lean_obj_tag(v_l_2354_) == 0)
{
lean_object* v_r_2355_; 
lean_inc_ref(v_l_2354_);
v_r_2355_ = lean_ctor_get(v_r_2303_, 4);
lean_inc(v_r_2355_);
if (lean_obj_tag(v_r_2355_) == 0)
{
lean_object* v_size_2356_; lean_object* v_k_2357_; lean_object* v_v_2358_; lean_object* v_size_2359_; lean_object* v___x_2360_; lean_object* v___x_2361_; lean_object* v___x_2362_; lean_object* v___x_2363_; 
v_size_2356_ = lean_ctor_get(v_r_2303_, 0);
lean_inc(v_size_2356_);
v_k_2357_ = lean_ctor_get(v_r_2303_, 1);
lean_inc(v_k_2357_);
v_v_2358_ = lean_ctor_get(v_r_2303_, 2);
lean_inc(v_v_2358_);
lean_dec_ref(v_r_2303_);
v_size_2359_ = lean_ctor_get(v_l_2354_, 0);
v___x_2360_ = lean_nat_add(v___x_2306_, v_size_2356_);
lean_dec(v_size_2356_);
v___x_2361_ = lean_nat_add(v___x_2306_, v_size_2359_);
v___x_2362_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2362_, 0, v___x_2361_);
lean_ctor_set(v___x_2362_, 1, v_k_2300_);
lean_ctor_set(v___x_2362_, 2, v_v_2301_);
lean_ctor_set(v___x_2362_, 3, v_impl_2305_);
lean_ctor_set(v___x_2362_, 4, v_l_2354_);
v___x_2363_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2363_, 0, v___x_2360_);
lean_ctor_set(v___x_2363_, 1, v_k_2357_);
lean_ctor_set(v___x_2363_, 2, v_v_2358_);
lean_ctor_set(v___x_2363_, 3, v___x_2362_);
lean_ctor_set(v___x_2363_, 4, v_r_2355_);
return v___x_2363_;
}
else
{
lean_object* v_k_2364_; lean_object* v_v_2365_; lean_object* v_k_2366_; lean_object* v_v_2367_; lean_object* v___x_2368_; lean_object* v___x_2369_; lean_object* v___x_2370_; lean_object* v___x_2371_; 
v_k_2364_ = lean_ctor_get(v_r_2303_, 1);
lean_inc(v_k_2364_);
v_v_2365_ = lean_ctor_get(v_r_2303_, 2);
lean_inc(v_v_2365_);
lean_dec_ref(v_r_2303_);
v_k_2366_ = lean_ctor_get(v_l_2354_, 1);
lean_inc(v_k_2366_);
v_v_2367_ = lean_ctor_get(v_l_2354_, 2);
lean_inc(v_v_2367_);
lean_dec_ref(v_l_2354_);
v___x_2368_ = lean_unsigned_to_nat(3u);
v___x_2369_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2369_, 0, v___x_2306_);
lean_ctor_set(v___x_2369_, 1, v_k_2300_);
lean_ctor_set(v___x_2369_, 2, v_v_2301_);
lean_ctor_set(v___x_2369_, 3, v_r_2355_);
lean_ctor_set(v___x_2369_, 4, v_r_2355_);
v___x_2370_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2370_, 0, v___x_2306_);
lean_ctor_set(v___x_2370_, 1, v_k_2364_);
lean_ctor_set(v___x_2370_, 2, v_v_2365_);
lean_ctor_set(v___x_2370_, 3, v_r_2355_);
lean_ctor_set(v___x_2370_, 4, v_r_2355_);
v___x_2371_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2371_, 0, v___x_2368_);
lean_ctor_set(v___x_2371_, 1, v_k_2366_);
lean_ctor_set(v___x_2371_, 2, v_v_2367_);
lean_ctor_set(v___x_2371_, 3, v___x_2369_);
lean_ctor_set(v___x_2371_, 4, v___x_2370_);
return v___x_2371_;
}
}
else
{
lean_object* v_r_2372_; 
v_r_2372_ = lean_ctor_get(v_r_2303_, 4);
lean_inc(v_r_2372_);
if (lean_obj_tag(v_r_2372_) == 0)
{
lean_object* v_k_2373_; lean_object* v_v_2374_; lean_object* v___x_2375_; lean_object* v___x_2376_; lean_object* v___x_2377_; 
lean_inc(v_l_2354_);
v_k_2373_ = lean_ctor_get(v_r_2303_, 1);
lean_inc(v_k_2373_);
v_v_2374_ = lean_ctor_get(v_r_2303_, 2);
lean_inc(v_v_2374_);
lean_dec_ref(v_r_2303_);
v___x_2375_ = lean_unsigned_to_nat(3u);
v___x_2376_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2376_, 0, v___x_2306_);
lean_ctor_set(v___x_2376_, 1, v_k_2300_);
lean_ctor_set(v___x_2376_, 2, v_v_2301_);
lean_ctor_set(v___x_2376_, 3, v_l_2354_);
lean_ctor_set(v___x_2376_, 4, v_l_2354_);
v___x_2377_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2377_, 0, v___x_2375_);
lean_ctor_set(v___x_2377_, 1, v_k_2373_);
lean_ctor_set(v___x_2377_, 2, v_v_2374_);
lean_ctor_set(v___x_2377_, 3, v___x_2376_);
lean_ctor_set(v___x_2377_, 4, v_r_2372_);
return v___x_2377_;
}
else
{
lean_object* v_size_2378_; lean_object* v_k_2379_; lean_object* v_v_2380_; lean_object* v___x_2381_; lean_object* v___x_2382_; lean_object* v___x_2383_; 
v_size_2378_ = lean_ctor_get(v_r_2303_, 0);
lean_inc(v_size_2378_);
v_k_2379_ = lean_ctor_get(v_r_2303_, 1);
lean_inc(v_k_2379_);
v_v_2380_ = lean_ctor_get(v_r_2303_, 2);
lean_inc(v_v_2380_);
lean_dec_ref(v_r_2303_);
v___x_2381_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2381_, 0, v_size_2378_);
lean_ctor_set(v___x_2381_, 1, v_k_2379_);
lean_ctor_set(v___x_2381_, 2, v_v_2380_);
lean_ctor_set(v___x_2381_, 3, v_r_2372_);
lean_ctor_set(v___x_2381_, 4, v_r_2372_);
v___x_2382_ = lean_unsigned_to_nat(2u);
v___x_2383_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2383_, 0, v___x_2382_);
lean_ctor_set(v___x_2383_, 1, v_k_2300_);
lean_ctor_set(v___x_2383_, 2, v_v_2301_);
lean_ctor_set(v___x_2383_, 3, v_r_2372_);
lean_ctor_set(v___x_2383_, 4, v___x_2381_);
return v___x_2383_;
}
}
}
else
{
lean_object* v___x_2384_; 
v___x_2384_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2384_, 0, v___x_2306_);
lean_ctor_set(v___x_2384_, 1, v_k_2300_);
lean_ctor_set(v___x_2384_, 2, v_v_2301_);
lean_ctor_set(v___x_2384_, 3, v_r_2303_);
lean_ctor_set(v___x_2384_, 4, v_r_2303_);
return v___x_2384_;
}
}
}
case 1:
{
lean_dec(v_v_2301_);
lean_dec(v_k_2300_);
if (lean_obj_tag(v_l_2302_) == 0)
{
if (lean_obj_tag(v_r_2303_) == 0)
{
lean_object* v_size_2385_; lean_object* v_k_2386_; lean_object* v_v_2387_; lean_object* v_l_2388_; lean_object* v_r_2389_; lean_object* v_size_2390_; lean_object* v_k_2391_; lean_object* v_v_2392_; lean_object* v_l_2393_; lean_object* v_r_2394_; lean_object* v___x_2395_; uint8_t v___x_2396_; 
v_size_2385_ = lean_ctor_get(v_l_2302_, 0);
v_k_2386_ = lean_ctor_get(v_l_2302_, 1);
v_v_2387_ = lean_ctor_get(v_l_2302_, 2);
v_l_2388_ = lean_ctor_get(v_l_2302_, 3);
v_r_2389_ = lean_ctor_get(v_l_2302_, 4);
v_size_2390_ = lean_ctor_get(v_r_2303_, 0);
v_k_2391_ = lean_ctor_get(v_r_2303_, 1);
v_v_2392_ = lean_ctor_get(v_r_2303_, 2);
v_l_2393_ = lean_ctor_get(v_r_2303_, 3);
v_r_2394_ = lean_ctor_get(v_r_2303_, 4);
v___x_2395_ = lean_unsigned_to_nat(1u);
v___x_2396_ = lean_nat_dec_lt(v_size_2385_, v_size_2390_);
if (v___x_2396_ == 0)
{
lean_object* v___x_2397_; lean_object* v_tree_2398_; 
lean_inc(v_r_2389_);
lean_inc(v_l_2388_);
lean_inc(v_v_2387_);
lean_inc(v_k_2386_);
lean_dec_ref(v_l_2302_);
v___x_2397_ = l_Std_DTreeMap_Internal_Impl_maxView___redArg(v_k_2386_, v_v_2387_, v_l_2388_, v_r_2389_);
v_tree_2398_ = lean_ctor_get(v___x_2397_, 2);
lean_inc(v_tree_2398_);
if (lean_obj_tag(v_tree_2398_) == 0)
{
lean_object* v_k_2399_; lean_object* v_v_2400_; lean_object* v_size_2401_; lean_object* v___x_2402_; lean_object* v___x_2403_; uint8_t v___x_2404_; 
v_k_2399_ = lean_ctor_get(v___x_2397_, 0);
lean_inc(v_k_2399_);
v_v_2400_ = lean_ctor_get(v___x_2397_, 1);
lean_inc(v_v_2400_);
lean_dec_ref(v___x_2397_);
v_size_2401_ = lean_ctor_get(v_tree_2398_, 0);
v___x_2402_ = lean_unsigned_to_nat(3u);
v___x_2403_ = lean_nat_mul(v___x_2402_, v_size_2401_);
v___x_2404_ = lean_nat_dec_lt(v___x_2403_, v_size_2390_);
lean_dec(v___x_2403_);
if (v___x_2404_ == 0)
{
lean_object* v___x_2405_; lean_object* v___x_2406_; lean_object* v___x_2407_; 
v___x_2405_ = lean_nat_add(v___x_2395_, v_size_2401_);
v___x_2406_ = lean_nat_add(v___x_2405_, v_size_2390_);
lean_dec(v___x_2405_);
v___x_2407_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2407_, 0, v___x_2406_);
lean_ctor_set(v___x_2407_, 1, v_k_2399_);
lean_ctor_set(v___x_2407_, 2, v_v_2400_);
lean_ctor_set(v___x_2407_, 3, v_tree_2398_);
lean_ctor_set(v___x_2407_, 4, v_r_2303_);
return v___x_2407_;
}
else
{
lean_object* v_size_2408_; lean_object* v_k_2409_; lean_object* v_v_2410_; lean_object* v_l_2411_; lean_object* v_r_2412_; lean_object* v_size_2413_; lean_object* v___x_2414_; lean_object* v___x_2415_; uint8_t v___x_2416_; 
lean_inc(v_r_2394_);
lean_inc(v_l_2393_);
lean_inc(v_v_2392_);
lean_inc(v_k_2391_);
lean_inc(v_size_2390_);
lean_dec_ref(v_r_2303_);
v_size_2408_ = lean_ctor_get(v_l_2393_, 0);
v_k_2409_ = lean_ctor_get(v_l_2393_, 1);
v_v_2410_ = lean_ctor_get(v_l_2393_, 2);
v_l_2411_ = lean_ctor_get(v_l_2393_, 3);
v_r_2412_ = lean_ctor_get(v_l_2393_, 4);
v_size_2413_ = lean_ctor_get(v_r_2394_, 0);
v___x_2414_ = lean_unsigned_to_nat(2u);
v___x_2415_ = lean_nat_mul(v___x_2414_, v_size_2413_);
v___x_2416_ = lean_nat_dec_lt(v_size_2408_, v___x_2415_);
lean_dec(v___x_2415_);
if (v___x_2416_ == 0)
{
lean_object* v___x_2417_; lean_object* v___x_2418_; lean_object* v___y_2420_; lean_object* v___y_2421_; lean_object* v___y_2422_; lean_object* v___y_2427_; 
lean_inc(v_r_2412_);
lean_inc(v_l_2411_);
lean_inc(v_v_2410_);
lean_inc(v_k_2409_);
lean_dec(v_l_2393_);
v___x_2417_ = lean_nat_add(v___x_2395_, v_size_2401_);
v___x_2418_ = lean_nat_add(v___x_2417_, v_size_2390_);
lean_dec(v_size_2390_);
if (lean_obj_tag(v_l_2411_) == 0)
{
lean_object* v_size_2433_; 
v_size_2433_ = lean_ctor_get(v_l_2411_, 0);
lean_inc(v_size_2433_);
v___y_2427_ = v_size_2433_;
goto v___jp_2426_;
}
else
{
lean_object* v___x_2434_; 
v___x_2434_ = lean_unsigned_to_nat(0u);
v___y_2427_ = v___x_2434_;
goto v___jp_2426_;
}
v___jp_2419_:
{
lean_object* v___x_2423_; lean_object* v___x_2424_; lean_object* v___x_2425_; 
v___x_2423_ = lean_nat_add(v___y_2420_, v___y_2422_);
lean_dec(v___y_2422_);
lean_dec(v___y_2420_);
v___x_2424_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2424_, 0, v___x_2423_);
lean_ctor_set(v___x_2424_, 1, v_k_2391_);
lean_ctor_set(v___x_2424_, 2, v_v_2392_);
lean_ctor_set(v___x_2424_, 3, v_r_2412_);
lean_ctor_set(v___x_2424_, 4, v_r_2394_);
v___x_2425_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2425_, 0, v___x_2418_);
lean_ctor_set(v___x_2425_, 1, v_k_2409_);
lean_ctor_set(v___x_2425_, 2, v_v_2410_);
lean_ctor_set(v___x_2425_, 3, v___y_2421_);
lean_ctor_set(v___x_2425_, 4, v___x_2424_);
return v___x_2425_;
}
v___jp_2426_:
{
lean_object* v___x_2428_; lean_object* v___x_2429_; lean_object* v___x_2430_; 
v___x_2428_ = lean_nat_add(v___x_2417_, v___y_2427_);
lean_dec(v___y_2427_);
lean_dec(v___x_2417_);
v___x_2429_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2429_, 0, v___x_2428_);
lean_ctor_set(v___x_2429_, 1, v_k_2399_);
lean_ctor_set(v___x_2429_, 2, v_v_2400_);
lean_ctor_set(v___x_2429_, 3, v_tree_2398_);
lean_ctor_set(v___x_2429_, 4, v_l_2411_);
v___x_2430_ = lean_nat_add(v___x_2395_, v_size_2413_);
if (lean_obj_tag(v_r_2412_) == 0)
{
lean_object* v_size_2431_; 
v_size_2431_ = lean_ctor_get(v_r_2412_, 0);
lean_inc(v_size_2431_);
v___y_2420_ = v___x_2430_;
v___y_2421_ = v___x_2429_;
v___y_2422_ = v_size_2431_;
goto v___jp_2419_;
}
else
{
lean_object* v___x_2432_; 
v___x_2432_ = lean_unsigned_to_nat(0u);
v___y_2420_ = v___x_2430_;
v___y_2421_ = v___x_2429_;
v___y_2422_ = v___x_2432_;
goto v___jp_2419_;
}
}
}
else
{
lean_object* v___x_2435_; lean_object* v___x_2436_; lean_object* v___x_2437_; lean_object* v___x_2438_; lean_object* v___x_2439_; 
v___x_2435_ = lean_nat_add(v___x_2395_, v_size_2401_);
v___x_2436_ = lean_nat_add(v___x_2435_, v_size_2390_);
lean_dec(v_size_2390_);
v___x_2437_ = lean_nat_add(v___x_2435_, v_size_2408_);
lean_dec(v___x_2435_);
v___x_2438_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2438_, 0, v___x_2437_);
lean_ctor_set(v___x_2438_, 1, v_k_2399_);
lean_ctor_set(v___x_2438_, 2, v_v_2400_);
lean_ctor_set(v___x_2438_, 3, v_tree_2398_);
lean_ctor_set(v___x_2438_, 4, v_l_2393_);
v___x_2439_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2439_, 0, v___x_2436_);
lean_ctor_set(v___x_2439_, 1, v_k_2391_);
lean_ctor_set(v___x_2439_, 2, v_v_2392_);
lean_ctor_set(v___x_2439_, 3, v___x_2438_);
lean_ctor_set(v___x_2439_, 4, v_r_2394_);
return v___x_2439_;
}
}
}
else
{
lean_inc(v_r_2394_);
lean_inc(v_l_2393_);
lean_inc(v_v_2392_);
lean_inc(v_k_2391_);
lean_inc(v_size_2390_);
lean_dec_ref(v_r_2303_);
if (lean_obj_tag(v_l_2393_) == 0)
{
if (lean_obj_tag(v_r_2394_) == 0)
{
lean_object* v_k_2440_; lean_object* v_v_2441_; lean_object* v_size_2442_; lean_object* v___x_2443_; lean_object* v___x_2444_; lean_object* v___x_2445_; lean_object* v___x_2446_; 
v_k_2440_ = lean_ctor_get(v___x_2397_, 0);
lean_inc(v_k_2440_);
v_v_2441_ = lean_ctor_get(v___x_2397_, 1);
lean_inc(v_v_2441_);
lean_dec_ref(v___x_2397_);
v_size_2442_ = lean_ctor_get(v_l_2393_, 0);
v___x_2443_ = lean_nat_add(v___x_2395_, v_size_2390_);
lean_dec(v_size_2390_);
v___x_2444_ = lean_nat_add(v___x_2395_, v_size_2442_);
v___x_2445_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2445_, 0, v___x_2444_);
lean_ctor_set(v___x_2445_, 1, v_k_2440_);
lean_ctor_set(v___x_2445_, 2, v_v_2441_);
lean_ctor_set(v___x_2445_, 3, v_tree_2398_);
lean_ctor_set(v___x_2445_, 4, v_l_2393_);
v___x_2446_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2446_, 0, v___x_2443_);
lean_ctor_set(v___x_2446_, 1, v_k_2391_);
lean_ctor_set(v___x_2446_, 2, v_v_2392_);
lean_ctor_set(v___x_2446_, 3, v___x_2445_);
lean_ctor_set(v___x_2446_, 4, v_r_2394_);
return v___x_2446_;
}
else
{
lean_object* v_k_2447_; lean_object* v_v_2448_; lean_object* v_k_2449_; lean_object* v_v_2450_; lean_object* v___x_2451_; lean_object* v___x_2452_; lean_object* v___x_2453_; lean_object* v___x_2454_; 
lean_dec(v_size_2390_);
v_k_2447_ = lean_ctor_get(v___x_2397_, 0);
lean_inc(v_k_2447_);
v_v_2448_ = lean_ctor_get(v___x_2397_, 1);
lean_inc(v_v_2448_);
lean_dec_ref(v___x_2397_);
v_k_2449_ = lean_ctor_get(v_l_2393_, 1);
lean_inc(v_k_2449_);
v_v_2450_ = lean_ctor_get(v_l_2393_, 2);
lean_inc(v_v_2450_);
lean_dec_ref(v_l_2393_);
v___x_2451_ = lean_unsigned_to_nat(3u);
v___x_2452_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2452_, 0, v___x_2395_);
lean_ctor_set(v___x_2452_, 1, v_k_2447_);
lean_ctor_set(v___x_2452_, 2, v_v_2448_);
lean_ctor_set(v___x_2452_, 3, v_r_2394_);
lean_ctor_set(v___x_2452_, 4, v_r_2394_);
v___x_2453_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2453_, 0, v___x_2395_);
lean_ctor_set(v___x_2453_, 1, v_k_2391_);
lean_ctor_set(v___x_2453_, 2, v_v_2392_);
lean_ctor_set(v___x_2453_, 3, v_r_2394_);
lean_ctor_set(v___x_2453_, 4, v_r_2394_);
v___x_2454_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2454_, 0, v___x_2451_);
lean_ctor_set(v___x_2454_, 1, v_k_2449_);
lean_ctor_set(v___x_2454_, 2, v_v_2450_);
lean_ctor_set(v___x_2454_, 3, v___x_2452_);
lean_ctor_set(v___x_2454_, 4, v___x_2453_);
return v___x_2454_;
}
}
else
{
if (lean_obj_tag(v_r_2394_) == 0)
{
lean_object* v_k_2455_; lean_object* v_v_2456_; lean_object* v___x_2457_; lean_object* v___x_2458_; lean_object* v___x_2459_; 
lean_dec(v_size_2390_);
v_k_2455_ = lean_ctor_get(v___x_2397_, 0);
lean_inc(v_k_2455_);
v_v_2456_ = lean_ctor_get(v___x_2397_, 1);
lean_inc(v_v_2456_);
lean_dec_ref(v___x_2397_);
v___x_2457_ = lean_unsigned_to_nat(3u);
v___x_2458_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2458_, 0, v___x_2395_);
lean_ctor_set(v___x_2458_, 1, v_k_2455_);
lean_ctor_set(v___x_2458_, 2, v_v_2456_);
lean_ctor_set(v___x_2458_, 3, v_l_2393_);
lean_ctor_set(v___x_2458_, 4, v_l_2393_);
v___x_2459_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2459_, 0, v___x_2457_);
lean_ctor_set(v___x_2459_, 1, v_k_2391_);
lean_ctor_set(v___x_2459_, 2, v_v_2392_);
lean_ctor_set(v___x_2459_, 3, v___x_2458_);
lean_ctor_set(v___x_2459_, 4, v_r_2394_);
return v___x_2459_;
}
else
{
lean_object* v_k_2460_; lean_object* v_v_2461_; lean_object* v___x_2462_; lean_object* v___x_2463_; lean_object* v___x_2464_; 
v_k_2460_ = lean_ctor_get(v___x_2397_, 0);
lean_inc(v_k_2460_);
v_v_2461_ = lean_ctor_get(v___x_2397_, 1);
lean_inc(v_v_2461_);
lean_dec_ref(v___x_2397_);
v___x_2462_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2462_, 0, v_size_2390_);
lean_ctor_set(v___x_2462_, 1, v_k_2391_);
lean_ctor_set(v___x_2462_, 2, v_v_2392_);
lean_ctor_set(v___x_2462_, 3, v_r_2394_);
lean_ctor_set(v___x_2462_, 4, v_r_2394_);
v___x_2463_ = lean_unsigned_to_nat(2u);
v___x_2464_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2464_, 0, v___x_2463_);
lean_ctor_set(v___x_2464_, 1, v_k_2460_);
lean_ctor_set(v___x_2464_, 2, v_v_2461_);
lean_ctor_set(v___x_2464_, 3, v_r_2394_);
lean_ctor_set(v___x_2464_, 4, v___x_2462_);
return v___x_2464_;
}
}
}
}
else
{
lean_object* v___x_2465_; lean_object* v_tree_2466_; 
lean_inc(v_r_2394_);
lean_inc(v_l_2393_);
lean_inc(v_v_2392_);
lean_inc(v_k_2391_);
lean_dec_ref(v_r_2303_);
v___x_2465_ = l_Std_DTreeMap_Internal_Impl_minView___redArg(v_k_2391_, v_v_2392_, v_l_2393_, v_r_2394_);
v_tree_2466_ = lean_ctor_get(v___x_2465_, 2);
lean_inc(v_tree_2466_);
if (lean_obj_tag(v_tree_2466_) == 0)
{
lean_object* v_k_2467_; lean_object* v_v_2468_; lean_object* v_size_2469_; lean_object* v___x_2470_; lean_object* v___x_2471_; uint8_t v___x_2472_; 
v_k_2467_ = lean_ctor_get(v___x_2465_, 0);
lean_inc(v_k_2467_);
v_v_2468_ = lean_ctor_get(v___x_2465_, 1);
lean_inc(v_v_2468_);
lean_dec_ref(v___x_2465_);
v_size_2469_ = lean_ctor_get(v_tree_2466_, 0);
v___x_2470_ = lean_unsigned_to_nat(3u);
v___x_2471_ = lean_nat_mul(v___x_2470_, v_size_2469_);
v___x_2472_ = lean_nat_dec_lt(v___x_2471_, v_size_2385_);
lean_dec(v___x_2471_);
if (v___x_2472_ == 0)
{
lean_object* v___x_2473_; lean_object* v___x_2474_; lean_object* v___x_2475_; 
v___x_2473_ = lean_nat_add(v___x_2395_, v_size_2385_);
v___x_2474_ = lean_nat_add(v___x_2473_, v_size_2469_);
lean_dec(v___x_2473_);
v___x_2475_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2475_, 0, v___x_2474_);
lean_ctor_set(v___x_2475_, 1, v_k_2467_);
lean_ctor_set(v___x_2475_, 2, v_v_2468_);
lean_ctor_set(v___x_2475_, 3, v_l_2302_);
lean_ctor_set(v___x_2475_, 4, v_tree_2466_);
return v___x_2475_;
}
else
{
lean_object* v_size_2476_; lean_object* v_size_2477_; lean_object* v_k_2478_; lean_object* v_v_2479_; lean_object* v_l_2480_; lean_object* v_r_2481_; lean_object* v___x_2482_; lean_object* v___x_2483_; uint8_t v___x_2484_; 
lean_inc(v_r_2389_);
lean_inc(v_l_2388_);
lean_inc(v_v_2387_);
lean_inc(v_k_2386_);
lean_inc(v_size_2385_);
lean_dec_ref(v_l_2302_);
v_size_2476_ = lean_ctor_get(v_l_2388_, 0);
v_size_2477_ = lean_ctor_get(v_r_2389_, 0);
v_k_2478_ = lean_ctor_get(v_r_2389_, 1);
v_v_2479_ = lean_ctor_get(v_r_2389_, 2);
v_l_2480_ = lean_ctor_get(v_r_2389_, 3);
v_r_2481_ = lean_ctor_get(v_r_2389_, 4);
v___x_2482_ = lean_unsigned_to_nat(2u);
v___x_2483_ = lean_nat_mul(v___x_2482_, v_size_2476_);
v___x_2484_ = lean_nat_dec_lt(v_size_2477_, v___x_2483_);
lean_dec(v___x_2483_);
if (v___x_2484_ == 0)
{
lean_object* v___x_2485_; lean_object* v___x_2486_; lean_object* v___y_2488_; lean_object* v___y_2489_; lean_object* v___y_2490_; lean_object* v___x_2494_; lean_object* v___y_2496_; 
lean_inc(v_r_2481_);
lean_inc(v_l_2480_);
lean_inc(v_v_2479_);
lean_inc(v_k_2478_);
lean_dec(v_r_2389_);
v___x_2485_ = lean_nat_add(v___x_2395_, v_size_2385_);
lean_dec(v_size_2385_);
v___x_2486_ = lean_nat_add(v___x_2485_, v_size_2469_);
lean_dec(v___x_2485_);
v___x_2494_ = lean_nat_add(v___x_2395_, v_size_2476_);
if (lean_obj_tag(v_l_2480_) == 0)
{
lean_object* v_size_2502_; 
v_size_2502_ = lean_ctor_get(v_l_2480_, 0);
lean_inc(v_size_2502_);
v___y_2496_ = v_size_2502_;
goto v___jp_2495_;
}
else
{
lean_object* v___x_2503_; 
v___x_2503_ = lean_unsigned_to_nat(0u);
v___y_2496_ = v___x_2503_;
goto v___jp_2495_;
}
v___jp_2487_:
{
lean_object* v___x_2491_; lean_object* v___x_2492_; lean_object* v___x_2493_; 
v___x_2491_ = lean_nat_add(v___y_2488_, v___y_2490_);
lean_dec(v___y_2490_);
lean_dec(v___y_2488_);
v___x_2492_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2492_, 0, v___x_2491_);
lean_ctor_set(v___x_2492_, 1, v_k_2467_);
lean_ctor_set(v___x_2492_, 2, v_v_2468_);
lean_ctor_set(v___x_2492_, 3, v_r_2481_);
lean_ctor_set(v___x_2492_, 4, v_tree_2466_);
v___x_2493_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2493_, 0, v___x_2486_);
lean_ctor_set(v___x_2493_, 1, v_k_2478_);
lean_ctor_set(v___x_2493_, 2, v_v_2479_);
lean_ctor_set(v___x_2493_, 3, v___y_2489_);
lean_ctor_set(v___x_2493_, 4, v___x_2492_);
return v___x_2493_;
}
v___jp_2495_:
{
lean_object* v___x_2497_; lean_object* v___x_2498_; lean_object* v___x_2499_; 
v___x_2497_ = lean_nat_add(v___x_2494_, v___y_2496_);
lean_dec(v___y_2496_);
lean_dec(v___x_2494_);
v___x_2498_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2498_, 0, v___x_2497_);
lean_ctor_set(v___x_2498_, 1, v_k_2386_);
lean_ctor_set(v___x_2498_, 2, v_v_2387_);
lean_ctor_set(v___x_2498_, 3, v_l_2388_);
lean_ctor_set(v___x_2498_, 4, v_l_2480_);
v___x_2499_ = lean_nat_add(v___x_2395_, v_size_2469_);
if (lean_obj_tag(v_r_2481_) == 0)
{
lean_object* v_size_2500_; 
v_size_2500_ = lean_ctor_get(v_r_2481_, 0);
lean_inc(v_size_2500_);
v___y_2488_ = v___x_2499_;
v___y_2489_ = v___x_2498_;
v___y_2490_ = v_size_2500_;
goto v___jp_2487_;
}
else
{
lean_object* v___x_2501_; 
v___x_2501_ = lean_unsigned_to_nat(0u);
v___y_2488_ = v___x_2499_;
v___y_2489_ = v___x_2498_;
v___y_2490_ = v___x_2501_;
goto v___jp_2487_;
}
}
}
else
{
lean_object* v___x_2504_; lean_object* v___x_2505_; lean_object* v___x_2506_; lean_object* v___x_2507_; lean_object* v___x_2508_; lean_object* v___x_2509_; 
v___x_2504_ = lean_nat_add(v___x_2395_, v_size_2385_);
lean_dec(v_size_2385_);
v___x_2505_ = lean_nat_add(v___x_2504_, v_size_2469_);
lean_dec(v___x_2504_);
v___x_2506_ = lean_nat_add(v___x_2395_, v_size_2469_);
v___x_2507_ = lean_nat_add(v___x_2506_, v_size_2477_);
lean_dec(v___x_2506_);
v___x_2508_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2508_, 0, v___x_2507_);
lean_ctor_set(v___x_2508_, 1, v_k_2467_);
lean_ctor_set(v___x_2508_, 2, v_v_2468_);
lean_ctor_set(v___x_2508_, 3, v_r_2389_);
lean_ctor_set(v___x_2508_, 4, v_tree_2466_);
v___x_2509_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2509_, 0, v___x_2505_);
lean_ctor_set(v___x_2509_, 1, v_k_2386_);
lean_ctor_set(v___x_2509_, 2, v_v_2387_);
lean_ctor_set(v___x_2509_, 3, v_l_2388_);
lean_ctor_set(v___x_2509_, 4, v___x_2508_);
return v___x_2509_;
}
}
}
else
{
lean_inc(v_r_2389_);
if (lean_obj_tag(v_l_2388_) == 0)
{
lean_inc_ref(v_l_2388_);
lean_inc(v_v_2387_);
lean_inc(v_k_2386_);
lean_inc(v_size_2385_);
lean_dec_ref(v_l_2302_);
if (lean_obj_tag(v_r_2389_) == 0)
{
lean_object* v_k_2510_; lean_object* v_v_2511_; lean_object* v_size_2512_; lean_object* v___x_2513_; lean_object* v___x_2514_; lean_object* v___x_2515_; lean_object* v___x_2516_; 
v_k_2510_ = lean_ctor_get(v___x_2465_, 0);
lean_inc(v_k_2510_);
v_v_2511_ = lean_ctor_get(v___x_2465_, 1);
lean_inc(v_v_2511_);
lean_dec_ref(v___x_2465_);
v_size_2512_ = lean_ctor_get(v_r_2389_, 0);
v___x_2513_ = lean_nat_add(v___x_2395_, v_size_2385_);
lean_dec(v_size_2385_);
v___x_2514_ = lean_nat_add(v___x_2395_, v_size_2512_);
v___x_2515_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2515_, 0, v___x_2514_);
lean_ctor_set(v___x_2515_, 1, v_k_2510_);
lean_ctor_set(v___x_2515_, 2, v_v_2511_);
lean_ctor_set(v___x_2515_, 3, v_r_2389_);
lean_ctor_set(v___x_2515_, 4, v_tree_2466_);
v___x_2516_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2516_, 0, v___x_2513_);
lean_ctor_set(v___x_2516_, 1, v_k_2386_);
lean_ctor_set(v___x_2516_, 2, v_v_2387_);
lean_ctor_set(v___x_2516_, 3, v_l_2388_);
lean_ctor_set(v___x_2516_, 4, v___x_2515_);
return v___x_2516_;
}
else
{
lean_object* v_k_2517_; lean_object* v_v_2518_; lean_object* v___x_2519_; lean_object* v___x_2520_; lean_object* v___x_2521_; 
lean_dec(v_size_2385_);
v_k_2517_ = lean_ctor_get(v___x_2465_, 0);
lean_inc(v_k_2517_);
v_v_2518_ = lean_ctor_get(v___x_2465_, 1);
lean_inc(v_v_2518_);
lean_dec_ref(v___x_2465_);
v___x_2519_ = lean_unsigned_to_nat(3u);
v___x_2520_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2520_, 0, v___x_2395_);
lean_ctor_set(v___x_2520_, 1, v_k_2517_);
lean_ctor_set(v___x_2520_, 2, v_v_2518_);
lean_ctor_set(v___x_2520_, 3, v_r_2389_);
lean_ctor_set(v___x_2520_, 4, v_r_2389_);
v___x_2521_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2521_, 0, v___x_2519_);
lean_ctor_set(v___x_2521_, 1, v_k_2386_);
lean_ctor_set(v___x_2521_, 2, v_v_2387_);
lean_ctor_set(v___x_2521_, 3, v_l_2388_);
lean_ctor_set(v___x_2521_, 4, v___x_2520_);
return v___x_2521_;
}
}
else
{
if (lean_obj_tag(v_r_2389_) == 0)
{
lean_object* v_k_2522_; lean_object* v_v_2523_; lean_object* v_k_2524_; lean_object* v_v_2525_; lean_object* v___x_2526_; lean_object* v___x_2527_; lean_object* v___x_2528_; lean_object* v___x_2529_; 
lean_inc(v_l_2388_);
lean_inc(v_v_2387_);
lean_inc(v_k_2386_);
lean_dec_ref(v_l_2302_);
v_k_2522_ = lean_ctor_get(v___x_2465_, 0);
lean_inc(v_k_2522_);
v_v_2523_ = lean_ctor_get(v___x_2465_, 1);
lean_inc(v_v_2523_);
lean_dec_ref(v___x_2465_);
v_k_2524_ = lean_ctor_get(v_r_2389_, 1);
lean_inc(v_k_2524_);
v_v_2525_ = lean_ctor_get(v_r_2389_, 2);
lean_inc(v_v_2525_);
lean_dec_ref(v_r_2389_);
v___x_2526_ = lean_unsigned_to_nat(3u);
v___x_2527_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2527_, 0, v___x_2395_);
lean_ctor_set(v___x_2527_, 1, v_k_2386_);
lean_ctor_set(v___x_2527_, 2, v_v_2387_);
lean_ctor_set(v___x_2527_, 3, v_l_2388_);
lean_ctor_set(v___x_2527_, 4, v_l_2388_);
v___x_2528_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2528_, 0, v___x_2395_);
lean_ctor_set(v___x_2528_, 1, v_k_2522_);
lean_ctor_set(v___x_2528_, 2, v_v_2523_);
lean_ctor_set(v___x_2528_, 3, v_l_2388_);
lean_ctor_set(v___x_2528_, 4, v_l_2388_);
v___x_2529_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2529_, 0, v___x_2526_);
lean_ctor_set(v___x_2529_, 1, v_k_2524_);
lean_ctor_set(v___x_2529_, 2, v_v_2525_);
lean_ctor_set(v___x_2529_, 3, v___x_2527_);
lean_ctor_set(v___x_2529_, 4, v___x_2528_);
return v___x_2529_;
}
else
{
lean_object* v_k_2530_; lean_object* v_v_2531_; lean_object* v___x_2532_; lean_object* v___x_2533_; 
v_k_2530_ = lean_ctor_get(v___x_2465_, 0);
lean_inc(v_k_2530_);
v_v_2531_ = lean_ctor_get(v___x_2465_, 1);
lean_inc(v_v_2531_);
lean_dec_ref(v___x_2465_);
v___x_2532_ = lean_unsigned_to_nat(2u);
v___x_2533_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2533_, 0, v___x_2532_);
lean_ctor_set(v___x_2533_, 1, v_k_2530_);
lean_ctor_set(v___x_2533_, 2, v_v_2531_);
lean_ctor_set(v___x_2533_, 3, v_l_2302_);
lean_ctor_set(v___x_2533_, 4, v_r_2389_);
return v___x_2533_;
}
}
}
}
}
else
{
return v_l_2302_;
}
}
else
{
return v_r_2303_;
}
}
default: 
{
lean_object* v_impl_2534_; lean_object* v___x_2535_; 
v_impl_2534_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(v_k_2298_, v_r_2303_);
v___x_2535_ = lean_unsigned_to_nat(1u);
if (lean_obj_tag(v_impl_2534_) == 0)
{
if (lean_obj_tag(v_l_2302_) == 0)
{
lean_object* v_size_2536_; lean_object* v_size_2537_; lean_object* v_k_2538_; lean_object* v_v_2539_; lean_object* v_l_2540_; lean_object* v_r_2541_; lean_object* v___x_2542_; lean_object* v___x_2543_; uint8_t v___x_2544_; 
v_size_2536_ = lean_ctor_get(v_impl_2534_, 0);
lean_inc(v_size_2536_);
v_size_2537_ = lean_ctor_get(v_l_2302_, 0);
v_k_2538_ = lean_ctor_get(v_l_2302_, 1);
v_v_2539_ = lean_ctor_get(v_l_2302_, 2);
v_l_2540_ = lean_ctor_get(v_l_2302_, 3);
v_r_2541_ = lean_ctor_get(v_l_2302_, 4);
v___x_2542_ = lean_unsigned_to_nat(3u);
v___x_2543_ = lean_nat_mul(v___x_2542_, v_size_2536_);
v___x_2544_ = lean_nat_dec_lt(v___x_2543_, v_size_2537_);
lean_dec(v___x_2543_);
if (v___x_2544_ == 0)
{
lean_object* v___x_2545_; lean_object* v___x_2546_; lean_object* v___x_2547_; 
v___x_2545_ = lean_nat_add(v___x_2535_, v_size_2537_);
v___x_2546_ = lean_nat_add(v___x_2545_, v_size_2536_);
lean_dec(v_size_2536_);
lean_dec(v___x_2545_);
v___x_2547_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2547_, 0, v___x_2546_);
lean_ctor_set(v___x_2547_, 1, v_k_2300_);
lean_ctor_set(v___x_2547_, 2, v_v_2301_);
lean_ctor_set(v___x_2547_, 3, v_l_2302_);
lean_ctor_set(v___x_2547_, 4, v_impl_2534_);
return v___x_2547_;
}
else
{
lean_object* v_size_2548_; lean_object* v_size_2549_; lean_object* v_k_2550_; lean_object* v_v_2551_; lean_object* v_l_2552_; lean_object* v_r_2553_; lean_object* v___x_2554_; lean_object* v___x_2555_; uint8_t v___x_2556_; 
lean_inc(v_r_2541_);
lean_inc(v_l_2540_);
lean_inc(v_v_2539_);
lean_inc(v_k_2538_);
lean_inc(v_size_2537_);
lean_dec_ref(v_l_2302_);
v_size_2548_ = lean_ctor_get(v_l_2540_, 0);
v_size_2549_ = lean_ctor_get(v_r_2541_, 0);
v_k_2550_ = lean_ctor_get(v_r_2541_, 1);
v_v_2551_ = lean_ctor_get(v_r_2541_, 2);
v_l_2552_ = lean_ctor_get(v_r_2541_, 3);
v_r_2553_ = lean_ctor_get(v_r_2541_, 4);
v___x_2554_ = lean_unsigned_to_nat(2u);
v___x_2555_ = lean_nat_mul(v___x_2554_, v_size_2548_);
v___x_2556_ = lean_nat_dec_lt(v_size_2549_, v___x_2555_);
lean_dec(v___x_2555_);
if (v___x_2556_ == 0)
{
lean_object* v___x_2557_; lean_object* v___x_2558_; lean_object* v___y_2560_; lean_object* v___y_2561_; lean_object* v___y_2562_; lean_object* v___x_2566_; lean_object* v___y_2568_; 
lean_inc(v_r_2553_);
lean_inc(v_l_2552_);
lean_inc(v_v_2551_);
lean_inc(v_k_2550_);
lean_dec(v_r_2541_);
v___x_2557_ = lean_nat_add(v___x_2535_, v_size_2537_);
lean_dec(v_size_2537_);
v___x_2558_ = lean_nat_add(v___x_2557_, v_size_2536_);
lean_dec(v___x_2557_);
v___x_2566_ = lean_nat_add(v___x_2535_, v_size_2548_);
if (lean_obj_tag(v_l_2552_) == 0)
{
lean_object* v_size_2574_; 
v_size_2574_ = lean_ctor_get(v_l_2552_, 0);
lean_inc(v_size_2574_);
v___y_2568_ = v_size_2574_;
goto v___jp_2567_;
}
else
{
lean_object* v___x_2575_; 
v___x_2575_ = lean_unsigned_to_nat(0u);
v___y_2568_ = v___x_2575_;
goto v___jp_2567_;
}
v___jp_2559_:
{
lean_object* v___x_2563_; lean_object* v___x_2564_; lean_object* v___x_2565_; 
v___x_2563_ = lean_nat_add(v___y_2561_, v___y_2562_);
lean_dec(v___y_2562_);
lean_dec(v___y_2561_);
v___x_2564_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2564_, 0, v___x_2563_);
lean_ctor_set(v___x_2564_, 1, v_k_2300_);
lean_ctor_set(v___x_2564_, 2, v_v_2301_);
lean_ctor_set(v___x_2564_, 3, v_r_2553_);
lean_ctor_set(v___x_2564_, 4, v_impl_2534_);
v___x_2565_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2565_, 0, v___x_2558_);
lean_ctor_set(v___x_2565_, 1, v_k_2550_);
lean_ctor_set(v___x_2565_, 2, v_v_2551_);
lean_ctor_set(v___x_2565_, 3, v___y_2560_);
lean_ctor_set(v___x_2565_, 4, v___x_2564_);
return v___x_2565_;
}
v___jp_2567_:
{
lean_object* v___x_2569_; lean_object* v___x_2570_; lean_object* v___x_2571_; 
v___x_2569_ = lean_nat_add(v___x_2566_, v___y_2568_);
lean_dec(v___y_2568_);
lean_dec(v___x_2566_);
v___x_2570_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2570_, 0, v___x_2569_);
lean_ctor_set(v___x_2570_, 1, v_k_2538_);
lean_ctor_set(v___x_2570_, 2, v_v_2539_);
lean_ctor_set(v___x_2570_, 3, v_l_2540_);
lean_ctor_set(v___x_2570_, 4, v_l_2552_);
v___x_2571_ = lean_nat_add(v___x_2535_, v_size_2536_);
lean_dec(v_size_2536_);
if (lean_obj_tag(v_r_2553_) == 0)
{
lean_object* v_size_2572_; 
v_size_2572_ = lean_ctor_get(v_r_2553_, 0);
lean_inc(v_size_2572_);
v___y_2560_ = v___x_2570_;
v___y_2561_ = v___x_2571_;
v___y_2562_ = v_size_2572_;
goto v___jp_2559_;
}
else
{
lean_object* v___x_2573_; 
v___x_2573_ = lean_unsigned_to_nat(0u);
v___y_2560_ = v___x_2570_;
v___y_2561_ = v___x_2571_;
v___y_2562_ = v___x_2573_;
goto v___jp_2559_;
}
}
}
else
{
lean_object* v___x_2576_; lean_object* v___x_2577_; lean_object* v___x_2578_; lean_object* v___x_2579_; lean_object* v___x_2580_; lean_object* v___x_2581_; 
v___x_2576_ = lean_nat_add(v___x_2535_, v_size_2537_);
lean_dec(v_size_2537_);
v___x_2577_ = lean_nat_add(v___x_2576_, v_size_2536_);
lean_dec(v___x_2576_);
v___x_2578_ = lean_nat_add(v___x_2535_, v_size_2536_);
lean_dec(v_size_2536_);
v___x_2579_ = lean_nat_add(v___x_2578_, v_size_2549_);
lean_dec(v___x_2578_);
v___x_2580_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2580_, 0, v___x_2579_);
lean_ctor_set(v___x_2580_, 1, v_k_2300_);
lean_ctor_set(v___x_2580_, 2, v_v_2301_);
lean_ctor_set(v___x_2580_, 3, v_r_2541_);
lean_ctor_set(v___x_2580_, 4, v_impl_2534_);
v___x_2581_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2581_, 0, v___x_2577_);
lean_ctor_set(v___x_2581_, 1, v_k_2538_);
lean_ctor_set(v___x_2581_, 2, v_v_2539_);
lean_ctor_set(v___x_2581_, 3, v_l_2540_);
lean_ctor_set(v___x_2581_, 4, v___x_2580_);
return v___x_2581_;
}
}
}
else
{
lean_object* v_size_2582_; lean_object* v___x_2583_; lean_object* v___x_2584_; 
v_size_2582_ = lean_ctor_get(v_impl_2534_, 0);
lean_inc(v_size_2582_);
v___x_2583_ = lean_nat_add(v___x_2535_, v_size_2582_);
lean_dec(v_size_2582_);
v___x_2584_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2584_, 0, v___x_2583_);
lean_ctor_set(v___x_2584_, 1, v_k_2300_);
lean_ctor_set(v___x_2584_, 2, v_v_2301_);
lean_ctor_set(v___x_2584_, 3, v_l_2302_);
lean_ctor_set(v___x_2584_, 4, v_impl_2534_);
return v___x_2584_;
}
}
else
{
if (lean_obj_tag(v_l_2302_) == 0)
{
lean_object* v_l_2585_; 
v_l_2585_ = lean_ctor_get(v_l_2302_, 3);
if (lean_obj_tag(v_l_2585_) == 0)
{
lean_object* v_r_2586_; 
lean_inc_ref(v_l_2585_);
v_r_2586_ = lean_ctor_get(v_l_2302_, 4);
lean_inc(v_r_2586_);
if (lean_obj_tag(v_r_2586_) == 0)
{
lean_object* v_size_2587_; lean_object* v_k_2588_; lean_object* v_v_2589_; lean_object* v_size_2590_; lean_object* v___x_2591_; lean_object* v___x_2592_; lean_object* v___x_2593_; lean_object* v___x_2594_; 
v_size_2587_ = lean_ctor_get(v_l_2302_, 0);
lean_inc(v_size_2587_);
v_k_2588_ = lean_ctor_get(v_l_2302_, 1);
lean_inc(v_k_2588_);
v_v_2589_ = lean_ctor_get(v_l_2302_, 2);
lean_inc(v_v_2589_);
lean_dec_ref(v_l_2302_);
v_size_2590_ = lean_ctor_get(v_r_2586_, 0);
v___x_2591_ = lean_nat_add(v___x_2535_, v_size_2587_);
lean_dec(v_size_2587_);
v___x_2592_ = lean_nat_add(v___x_2535_, v_size_2590_);
v___x_2593_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2593_, 0, v___x_2592_);
lean_ctor_set(v___x_2593_, 1, v_k_2300_);
lean_ctor_set(v___x_2593_, 2, v_v_2301_);
lean_ctor_set(v___x_2593_, 3, v_r_2586_);
lean_ctor_set(v___x_2593_, 4, v_impl_2534_);
v___x_2594_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2594_, 0, v___x_2591_);
lean_ctor_set(v___x_2594_, 1, v_k_2588_);
lean_ctor_set(v___x_2594_, 2, v_v_2589_);
lean_ctor_set(v___x_2594_, 3, v_l_2585_);
lean_ctor_set(v___x_2594_, 4, v___x_2593_);
return v___x_2594_;
}
else
{
lean_object* v_k_2595_; lean_object* v_v_2596_; lean_object* v___x_2597_; lean_object* v___x_2598_; lean_object* v___x_2599_; 
v_k_2595_ = lean_ctor_get(v_l_2302_, 1);
lean_inc(v_k_2595_);
v_v_2596_ = lean_ctor_get(v_l_2302_, 2);
lean_inc(v_v_2596_);
lean_dec_ref(v_l_2302_);
v___x_2597_ = lean_unsigned_to_nat(3u);
v___x_2598_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2598_, 0, v___x_2535_);
lean_ctor_set(v___x_2598_, 1, v_k_2300_);
lean_ctor_set(v___x_2598_, 2, v_v_2301_);
lean_ctor_set(v___x_2598_, 3, v_r_2586_);
lean_ctor_set(v___x_2598_, 4, v_r_2586_);
v___x_2599_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2599_, 0, v___x_2597_);
lean_ctor_set(v___x_2599_, 1, v_k_2595_);
lean_ctor_set(v___x_2599_, 2, v_v_2596_);
lean_ctor_set(v___x_2599_, 3, v_l_2585_);
lean_ctor_set(v___x_2599_, 4, v___x_2598_);
return v___x_2599_;
}
}
else
{
lean_object* v_r_2600_; 
v_r_2600_ = lean_ctor_get(v_l_2302_, 4);
lean_inc(v_r_2600_);
if (lean_obj_tag(v_r_2600_) == 0)
{
lean_object* v_k_2601_; lean_object* v_v_2602_; lean_object* v_k_2603_; lean_object* v_v_2604_; lean_object* v___x_2605_; lean_object* v___x_2606_; lean_object* v___x_2607_; lean_object* v___x_2608_; 
lean_inc(v_l_2585_);
v_k_2601_ = lean_ctor_get(v_l_2302_, 1);
lean_inc(v_k_2601_);
v_v_2602_ = lean_ctor_get(v_l_2302_, 2);
lean_inc(v_v_2602_);
lean_dec_ref(v_l_2302_);
v_k_2603_ = lean_ctor_get(v_r_2600_, 1);
lean_inc(v_k_2603_);
v_v_2604_ = lean_ctor_get(v_r_2600_, 2);
lean_inc(v_v_2604_);
lean_dec_ref(v_r_2600_);
v___x_2605_ = lean_unsigned_to_nat(3u);
v___x_2606_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2606_, 0, v___x_2535_);
lean_ctor_set(v___x_2606_, 1, v_k_2601_);
lean_ctor_set(v___x_2606_, 2, v_v_2602_);
lean_ctor_set(v___x_2606_, 3, v_l_2585_);
lean_ctor_set(v___x_2606_, 4, v_l_2585_);
v___x_2607_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2607_, 0, v___x_2535_);
lean_ctor_set(v___x_2607_, 1, v_k_2300_);
lean_ctor_set(v___x_2607_, 2, v_v_2301_);
lean_ctor_set(v___x_2607_, 3, v_l_2585_);
lean_ctor_set(v___x_2607_, 4, v_l_2585_);
v___x_2608_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2608_, 0, v___x_2605_);
lean_ctor_set(v___x_2608_, 1, v_k_2603_);
lean_ctor_set(v___x_2608_, 2, v_v_2604_);
lean_ctor_set(v___x_2608_, 3, v___x_2606_);
lean_ctor_set(v___x_2608_, 4, v___x_2607_);
return v___x_2608_;
}
else
{
lean_object* v___x_2609_; lean_object* v___x_2610_; 
v___x_2609_ = lean_unsigned_to_nat(2u);
v___x_2610_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2610_, 0, v___x_2609_);
lean_ctor_set(v___x_2610_, 1, v_k_2300_);
lean_ctor_set(v___x_2610_, 2, v_v_2301_);
lean_ctor_set(v___x_2610_, 3, v_l_2302_);
lean_ctor_set(v___x_2610_, 4, v_r_2600_);
return v___x_2610_;
}
}
}
else
{
lean_object* v___x_2611_; 
v___x_2611_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_2611_, 0, v___x_2535_);
lean_ctor_set(v___x_2611_, 1, v_k_2300_);
lean_ctor_set(v___x_2611_, 2, v_v_2301_);
lean_ctor_set(v___x_2611_, 3, v_l_2302_);
lean_ctor_set(v___x_2611_, 4, v_l_2302_);
return v___x_2611_;
}
}
}
}
}
else
{
return v_t_2299_;
}
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg___boxed(lean_object* v_k_2612_, lean_object* v_t_2613_){
_start:
{
lean_object* v_res_2614_; 
v_res_2614_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(v_k_2612_, v_t_2613_);
lean_dec(v_k_2612_);
return v_res_2614_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1(lean_object* v_as_2615_, size_t v_i_2616_, size_t v_stop_2617_, lean_object* v_b_2618_){
_start:
{
uint8_t v___x_2619_; 
v___x_2619_ = lean_usize_dec_eq(v_i_2616_, v_stop_2617_);
if (v___x_2619_ == 0)
{
lean_object* v___x_2620_; lean_object* v___x_2621_; lean_object* v___x_2622_; size_t v___x_2623_; size_t v___x_2624_; 
v___x_2620_ = lean_array_uget_borrowed(v_as_2615_, v_i_2616_);
v___x_2621_ = l_Lean_Syntax_getId(v___x_2620_);
v___x_2622_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(v___x_2621_, v_b_2618_);
lean_dec(v___x_2621_);
v___x_2623_ = ((size_t)1ULL);
v___x_2624_ = lean_usize_add(v_i_2616_, v___x_2623_);
v_i_2616_ = v___x_2624_;
v_b_2618_ = v___x_2622_;
goto _start;
}
else
{
return v_b_2618_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1___boxed(lean_object* v_as_2626_, lean_object* v_i_2627_, lean_object* v_stop_2628_, lean_object* v_b_2629_){
_start:
{
size_t v_i_boxed_2630_; size_t v_stop_boxed_2631_; lean_object* v_res_2632_; 
v_i_boxed_2630_ = lean_unbox_usize(v_i_2627_);
lean_dec(v_i_2627_);
v_stop_boxed_2631_ = lean_unbox_usize(v_stop_2628_);
lean_dec(v_stop_2628_);
v_res_2632_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1(v_as_2626_, v_i_boxed_2630_, v_stop_boxed_2631_, v_b_2629_);
lean_dec_ref(v_as_2626_);
return v_res_2632_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseVars(lean_object* v_rs_2633_, lean_object* v_xs_2634_){
_start:
{
lean_object* v___x_2635_; lean_object* v___x_2636_; uint8_t v___x_2637_; 
v___x_2635_ = lean_unsigned_to_nat(0u);
v___x_2636_ = lean_array_get_size(v_xs_2634_);
v___x_2637_ = lean_nat_dec_lt(v___x_2635_, v___x_2636_);
if (v___x_2637_ == 0)
{
return v_rs_2633_;
}
else
{
uint8_t v___x_2638_; 
v___x_2638_ = lean_nat_dec_le(v___x_2636_, v___x_2636_);
if (v___x_2638_ == 0)
{
if (v___x_2637_ == 0)
{
return v_rs_2633_;
}
else
{
size_t v___x_2639_; size_t v___x_2640_; lean_object* v___x_2641_; 
v___x_2639_ = ((size_t)0ULL);
v___x_2640_ = lean_usize_of_nat(v___x_2636_);
v___x_2641_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1(v_xs_2634_, v___x_2639_, v___x_2640_, v_rs_2633_);
return v___x_2641_;
}
}
else
{
size_t v___x_2642_; size_t v___x_2643_; lean_object* v___x_2644_; 
v___x_2642_ = ((size_t)0ULL);
v___x_2643_ = lean_usize_of_nat(v___x_2636_);
v___x_2644_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_eraseVars_spec__1(v_xs_2634_, v___x_2642_, v___x_2643_, v_rs_2633_);
return v___x_2644_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseVars___boxed(lean_object* v_rs_2645_, lean_object* v_xs_2646_){
_start:
{
lean_object* v_res_2647_; 
v_res_2647_ = l_Lean_Elab_Term_Do_eraseVars(v_rs_2645_, v_xs_2646_);
lean_dec_ref(v_xs_2646_);
return v_res_2647_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0(lean_object* v_00_u03b2_2648_, lean_object* v_k_2649_, lean_object* v_t_2650_, lean_object* v_h_2651_){
_start:
{
lean_object* v___x_2652_; 
v___x_2652_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___redArg(v_k_2649_, v_t_2650_);
return v___x_2652_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0___boxed(lean_object* v_00_u03b2_2653_, lean_object* v_k_2654_, lean_object* v_t_2655_, lean_object* v_h_2656_){
_start:
{
lean_object* v_res_2657_; 
v_res_2657_ = l_Std_DTreeMap_Internal_Impl_erase___at___00Lean_Elab_Term_Do_eraseVars_spec__0(v_00_u03b2_2653_, v_k_2654_, v_t_2655_, v_h_2656_);
lean_dec(v_k_2654_);
return v_res_2657_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_eraseOptVar(lean_object* v_rs_2658_, lean_object* v_x_x3f_2659_){
_start:
{
if (lean_obj_tag(v_x_x3f_2659_) == 0)
{
return v_rs_2658_;
}
else
{
lean_object* v_val_2660_; lean_object* v___x_2661_; lean_object* v___x_2662_; 
v_val_2660_ = lean_ctor_get(v_x_x3f_2659_, 0);
lean_inc(v_val_2660_);
lean_dec_ref(v_x_x3f_2659_);
v___x_2661_ = l_Lean_Syntax_getId(v_val_2660_);
v___x_2662_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v___x_2661_, v_val_2660_, v_rs_2658_);
return v___x_2662_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(size_t v_sz_2663_, size_t v_i_2664_, lean_object* v_bs_2665_){
_start:
{
uint8_t v___x_2666_; 
v___x_2666_ = lean_usize_dec_lt(v_i_2664_, v_sz_2663_);
if (v___x_2666_ == 0)
{
return v_bs_2665_;
}
else
{
lean_object* v_v_2667_; lean_object* v___x_2668_; lean_object* v_bs_x27_2669_; lean_object* v___x_2670_; lean_object* v___x_2671_; size_t v___x_2672_; size_t v___x_2673_; lean_object* v___x_2674_; 
v_v_2667_ = lean_array_uget(v_bs_2665_, v_i_2664_);
v___x_2668_ = lean_unsigned_to_nat(0u);
v_bs_x27_2669_ = lean_array_uset(v_bs_2665_, v_i_2664_, v___x_2668_);
v___x_2670_ = lean_box(v___x_2666_);
v___x_2671_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2671_, 0, v_v_2667_);
lean_ctor_set(v___x_2671_, 1, v___x_2670_);
v___x_2672_ = ((size_t)1ULL);
v___x_2673_ = lean_usize_add(v_i_2664_, v___x_2672_);
v___x_2674_ = lean_array_uset(v_bs_x27_2669_, v_i_2664_, v___x_2671_);
v_i_2664_ = v___x_2673_;
v_bs_2665_ = v___x_2674_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0___boxed(lean_object* v_sz_2676_, lean_object* v_i_2677_, lean_object* v_bs_2678_){
_start:
{
size_t v_sz_boxed_2679_; size_t v_i_boxed_2680_; lean_object* v_res_2681_; 
v_sz_boxed_2679_ = lean_unbox_usize(v_sz_2676_);
lean_dec(v_sz_2676_);
v_i_boxed_2680_ = lean_unbox_usize(v_i_2677_);
lean_dec(v_i_2677_);
v_res_2681_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(v_sz_boxed_2679_, v_i_boxed_2680_, v_bs_2678_);
return v_res_2681_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1(void){
_start:
{
lean_object* v___x_2683_; lean_object* v___x_2684_; 
v___x_2683_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__0));
v___x_2684_ = l_String_toRawSubstring_x27(v___x_2683_);
return v___x_2684_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg(lean_object* v_ref_2696_, lean_object* v_rs_2697_, lean_object* v_c_2698_, lean_object* v_a_2699_, lean_object* v_a_2700_, lean_object* v_a_2701_){
_start:
{
lean_object* v_xs_2703_; size_t v_sz_2704_; size_t v___x_2705_; lean_object* v___x_2706_; lean_object* v___x_2707_; 
v_xs_2703_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v_rs_2697_);
v_sz_2704_ = lean_array_size(v_xs_2703_);
v___x_2705_ = ((size_t)0ULL);
lean_inc_ref(v_xs_2703_);
v___x_2706_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(v_sz_2704_, v___x_2705_, v_xs_2703_);
lean_inc_ref(v_a_2700_);
v___x_2707_ = l_Lean_Elab_Term_Do_addFreshJP___redArg(v___x_2706_, v_c_2698_, v_a_2699_, v_a_2700_, v_a_2701_);
if (lean_obj_tag(v___x_2707_) == 0)
{
lean_object* v_a_2708_; lean_object* v___x_2709_; lean_object* v___x_2710_; uint8_t v___x_2711_; 
v_a_2708_ = lean_ctor_get(v___x_2707_, 0);
lean_inc(v_a_2708_);
lean_dec_ref(v___x_2707_);
v___x_2709_ = lean_array_get_size(v_xs_2703_);
v___x_2710_ = lean_unsigned_to_nat(0u);
v___x_2711_ = lean_nat_dec_eq(v___x_2709_, v___x_2710_);
if (v___x_2711_ == 0)
{
lean_object* v___x_2712_; lean_object* v___x_2713_; 
lean_dec_ref(v_a_2700_);
v___x_2712_ = lean_alloc_ctor(11, 3, 0);
lean_ctor_set(v___x_2712_, 0, v_ref_2696_);
lean_ctor_set(v___x_2712_, 1, v_a_2708_);
lean_ctor_set(v___x_2712_, 2, v_xs_2703_);
v___x_2713_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2713_, 0, v___x_2712_);
return v___x_2713_;
}
else
{
lean_object* v_ref_2714_; lean_object* v_quotContext_2715_; lean_object* v_currMacroScope_2716_; uint8_t v___x_2717_; lean_object* v___x_2718_; lean_object* v___x_2719_; lean_object* v___x_2720_; lean_object* v___x_2721_; lean_object* v___x_2722_; lean_object* v___x_2723_; lean_object* v___x_2724_; lean_object* v___x_2725_; lean_object* v___x_2726_; lean_object* v___x_2727_; lean_object* v___x_2728_; 
lean_dec_ref(v_xs_2703_);
v_ref_2714_ = lean_ctor_get(v_a_2700_, 5);
lean_inc(v_ref_2714_);
v_quotContext_2715_ = lean_ctor_get(v_a_2700_, 10);
lean_inc(v_quotContext_2715_);
v_currMacroScope_2716_ = lean_ctor_get(v_a_2700_, 11);
lean_inc(v_currMacroScope_2716_);
lean_dec_ref(v_a_2700_);
v___x_2717_ = 0;
v___x_2718_ = l_Lean_SourceInfo_fromRef(v_ref_2714_, v___x_2717_);
lean_dec(v_ref_2714_);
v___x_2719_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1, &l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1_once, _init_l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__1);
v___x_2720_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__4));
v___x_2721_ = l_Lean_addMacroScope(v_quotContext_2715_, v___x_2720_, v_currMacroScope_2716_);
v___x_2722_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___closed__6));
v___x_2723_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_2723_, 0, v___x_2718_);
lean_ctor_set(v___x_2723_, 1, v___x_2719_);
lean_ctor_set(v___x_2723_, 2, v___x_2721_);
lean_ctor_set(v___x_2723_, 3, v___x_2722_);
v___x_2724_ = lean_unsigned_to_nat(1u);
v___x_2725_ = lean_mk_empty_array_with_capacity(v___x_2724_);
v___x_2726_ = lean_array_push(v___x_2725_, v___x_2723_);
v___x_2727_ = lean_alloc_ctor(11, 3, 0);
lean_ctor_set(v___x_2727_, 0, v_ref_2696_);
lean_ctor_set(v___x_2727_, 1, v_a_2708_);
lean_ctor_set(v___x_2727_, 2, v___x_2726_);
v___x_2728_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2728_, 0, v___x_2727_);
return v___x_2728_;
}
}
else
{
lean_object* v_a_2729_; lean_object* v___x_2730_; 
lean_dec_ref(v_xs_2703_);
lean_dec_ref(v_a_2700_);
lean_dec(v_ref_2696_);
v_a_2729_ = lean_ctor_get(v___x_2707_, 0);
lean_inc(v_a_2729_);
lean_dec_ref(v___x_2707_);
v___x_2730_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_2730_, 0, v_a_2729_);
return v___x_2730_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___redArg___boxed(lean_object* v_ref_2731_, lean_object* v_rs_2732_, lean_object* v_c_2733_, lean_object* v_a_2734_, lean_object* v_a_2735_, lean_object* v_a_2736_, lean_object* v_a_2737_){
_start:
{
lean_object* v_res_2738_; 
v_res_2738_ = l_Lean_Elab_Term_Do_mkSimpleJmp___redArg(v_ref_2731_, v_rs_2732_, v_c_2733_, v_a_2734_, v_a_2735_, v_a_2736_);
lean_dec(v_a_2734_);
return v_res_2738_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp(lean_object* v_ref_2739_, lean_object* v_rs_2740_, lean_object* v_c_2741_, lean_object* v_a_2742_, lean_object* v_a_2743_, lean_object* v_a_2744_, lean_object* v_a_2745_, lean_object* v_a_2746_, lean_object* v_a_2747_, lean_object* v_a_2748_){
_start:
{
lean_object* v___x_2750_; 
v___x_2750_ = l_Lean_Elab_Term_Do_mkSimpleJmp___redArg(v_ref_2739_, v_rs_2740_, v_c_2741_, v_a_2742_, v_a_2747_, v_a_2748_);
return v___x_2750_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSimpleJmp___boxed(lean_object* v_ref_2751_, lean_object* v_rs_2752_, lean_object* v_c_2753_, lean_object* v_a_2754_, lean_object* v_a_2755_, lean_object* v_a_2756_, lean_object* v_a_2757_, lean_object* v_a_2758_, lean_object* v_a_2759_, lean_object* v_a_2760_, lean_object* v_a_2761_){
_start:
{
lean_object* v_res_2762_; 
v_res_2762_ = l_Lean_Elab_Term_Do_mkSimpleJmp(v_ref_2751_, v_rs_2752_, v_c_2753_, v_a_2754_, v_a_2755_, v_a_2756_, v_a_2757_, v_a_2758_, v_a_2759_, v_a_2760_);
lean_dec(v_a_2758_);
lean_dec_ref(v_a_2757_);
lean_dec(v_a_2756_);
lean_dec_ref(v_a_2755_);
lean_dec(v_a_2754_);
return v_res_2762_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg(lean_object* v_msg_2763_, lean_object* v___y_2764_, lean_object* v___y_2765_, lean_object* v___y_2766_, lean_object* v___y_2767_){
_start:
{
lean_object* v_ref_2769_; lean_object* v___x_2770_; lean_object* v_a_2771_; lean_object* v___x_2772_; lean_object* v___x_2773_; 
v_ref_2769_ = lean_ctor_get(v___y_2766_, 5);
v___x_2770_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_2763_, v___y_2764_, v___y_2765_, v___y_2766_, v___y_2767_);
v_a_2771_ = lean_ctor_get(v___x_2770_, 0);
lean_inc(v_a_2771_);
lean_dec_ref(v___x_2770_);
lean_inc(v_ref_2769_);
v___x_2772_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2772_, 0, v_ref_2769_);
lean_ctor_set(v___x_2772_, 1, v_a_2771_);
v___x_2773_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_2773_, 0, v___x_2772_);
return v___x_2773_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg___boxed(lean_object* v_msg_2774_, lean_object* v___y_2775_, lean_object* v___y_2776_, lean_object* v___y_2777_, lean_object* v___y_2778_, lean_object* v___y_2779_){
_start:
{
lean_object* v_res_2780_; 
v_res_2780_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg(v_msg_2774_, v___y_2775_, v___y_2776_, v___y_2777_, v___y_2778_);
lean_dec(v___y_2778_);
lean_dec_ref(v___y_2777_);
lean_dec(v___y_2776_);
lean_dec_ref(v___y_2775_);
return v_res_2780_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg(lean_object* v_ref_2781_, lean_object* v_msg_2782_, lean_object* v___y_2783_, lean_object* v___y_2784_, lean_object* v___y_2785_, lean_object* v___y_2786_, lean_object* v___y_2787_, lean_object* v___y_2788_, lean_object* v___y_2789_){
_start:
{
lean_object* v_fileName_2791_; lean_object* v_fileMap_2792_; lean_object* v_options_2793_; lean_object* v_currRecDepth_2794_; lean_object* v_maxRecDepth_2795_; lean_object* v_ref_2796_; lean_object* v_currNamespace_2797_; lean_object* v_openDecls_2798_; lean_object* v_initHeartbeats_2799_; lean_object* v_maxHeartbeats_2800_; lean_object* v_quotContext_2801_; lean_object* v_currMacroScope_2802_; uint8_t v_diag_2803_; lean_object* v_cancelTk_x3f_2804_; uint8_t v_suppressElabErrors_2805_; lean_object* v_inheritedTraceOptions_2806_; lean_object* v_ref_2807_; lean_object* v___x_2808_; lean_object* v___x_2809_; 
v_fileName_2791_ = lean_ctor_get(v___y_2788_, 0);
v_fileMap_2792_ = lean_ctor_get(v___y_2788_, 1);
v_options_2793_ = lean_ctor_get(v___y_2788_, 2);
v_currRecDepth_2794_ = lean_ctor_get(v___y_2788_, 3);
v_maxRecDepth_2795_ = lean_ctor_get(v___y_2788_, 4);
v_ref_2796_ = lean_ctor_get(v___y_2788_, 5);
v_currNamespace_2797_ = lean_ctor_get(v___y_2788_, 6);
v_openDecls_2798_ = lean_ctor_get(v___y_2788_, 7);
v_initHeartbeats_2799_ = lean_ctor_get(v___y_2788_, 8);
v_maxHeartbeats_2800_ = lean_ctor_get(v___y_2788_, 9);
v_quotContext_2801_ = lean_ctor_get(v___y_2788_, 10);
v_currMacroScope_2802_ = lean_ctor_get(v___y_2788_, 11);
v_diag_2803_ = lean_ctor_get_uint8(v___y_2788_, sizeof(void*)*14);
v_cancelTk_x3f_2804_ = lean_ctor_get(v___y_2788_, 12);
v_suppressElabErrors_2805_ = lean_ctor_get_uint8(v___y_2788_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_2806_ = lean_ctor_get(v___y_2788_, 13);
v_ref_2807_ = l_Lean_replaceRef(v_ref_2781_, v_ref_2796_);
lean_inc_ref(v_inheritedTraceOptions_2806_);
lean_inc(v_cancelTk_x3f_2804_);
lean_inc(v_currMacroScope_2802_);
lean_inc(v_quotContext_2801_);
lean_inc(v_maxHeartbeats_2800_);
lean_inc(v_initHeartbeats_2799_);
lean_inc(v_openDecls_2798_);
lean_inc(v_currNamespace_2797_);
lean_inc(v_maxRecDepth_2795_);
lean_inc(v_currRecDepth_2794_);
lean_inc_ref(v_options_2793_);
lean_inc_ref(v_fileMap_2792_);
lean_inc_ref(v_fileName_2791_);
v___x_2808_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_2808_, 0, v_fileName_2791_);
lean_ctor_set(v___x_2808_, 1, v_fileMap_2792_);
lean_ctor_set(v___x_2808_, 2, v_options_2793_);
lean_ctor_set(v___x_2808_, 3, v_currRecDepth_2794_);
lean_ctor_set(v___x_2808_, 4, v_maxRecDepth_2795_);
lean_ctor_set(v___x_2808_, 5, v_ref_2807_);
lean_ctor_set(v___x_2808_, 6, v_currNamespace_2797_);
lean_ctor_set(v___x_2808_, 7, v_openDecls_2798_);
lean_ctor_set(v___x_2808_, 8, v_initHeartbeats_2799_);
lean_ctor_set(v___x_2808_, 9, v_maxHeartbeats_2800_);
lean_ctor_set(v___x_2808_, 10, v_quotContext_2801_);
lean_ctor_set(v___x_2808_, 11, v_currMacroScope_2802_);
lean_ctor_set(v___x_2808_, 12, v_cancelTk_x3f_2804_);
lean_ctor_set(v___x_2808_, 13, v_inheritedTraceOptions_2806_);
lean_ctor_set_uint8(v___x_2808_, sizeof(void*)*14, v_diag_2803_);
lean_ctor_set_uint8(v___x_2808_, sizeof(void*)*14 + 1, v_suppressElabErrors_2805_);
v___x_2809_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg(v_msg_2782_, v___y_2786_, v___y_2787_, v___x_2808_, v___y_2789_);
lean_dec_ref(v___x_2808_);
return v___x_2809_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg___boxed(lean_object* v_ref_2810_, lean_object* v_msg_2811_, lean_object* v___y_2812_, lean_object* v___y_2813_, lean_object* v___y_2814_, lean_object* v___y_2815_, lean_object* v___y_2816_, lean_object* v___y_2817_, lean_object* v___y_2818_, lean_object* v___y_2819_){
_start:
{
lean_object* v_res_2820_; 
v_res_2820_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg(v_ref_2810_, v_msg_2811_, v___y_2812_, v___y_2813_, v___y_2814_, v___y_2815_, v___y_2816_, v___y_2817_, v___y_2818_);
lean_dec(v___y_2818_);
lean_dec_ref(v___y_2817_);
lean_dec(v___y_2816_);
lean_dec_ref(v___y_2815_);
lean_dec(v___y_2814_);
lean_dec_ref(v___y_2813_);
lean_dec(v___y_2812_);
lean_dec(v_ref_2810_);
return v_res_2820_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4(lean_object* v_env_2821_, lean_object* v_options_2822_, lean_object* v_currNamespace_2823_, lean_object* v_openDecls_2824_, lean_object* v_n_2825_, lean_object* v___y_2826_, lean_object* v___y_2827_){
_start:
{
lean_object* v___x_2828_; lean_object* v___x_2829_; 
v___x_2828_ = l_Lean_ResolveName_resolveGlobalName(v_env_2821_, v_options_2822_, v_currNamespace_2823_, v_openDecls_2824_, v_n_2825_);
v___x_2829_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2829_, 0, v___x_2828_);
lean_ctor_set(v___x_2829_, 1, v___y_2827_);
return v___x_2829_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4___boxed(lean_object* v_env_2830_, lean_object* v_options_2831_, lean_object* v_currNamespace_2832_, lean_object* v_openDecls_2833_, lean_object* v_n_2834_, lean_object* v___y_2835_, lean_object* v___y_2836_){
_start:
{
lean_object* v_res_2837_; 
v_res_2837_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4(v_env_2830_, v_options_2831_, v_currNamespace_2832_, v_openDecls_2833_, v_n_2834_, v___y_2835_, v___y_2836_);
lean_dec_ref(v___y_2835_);
lean_dec_ref(v_options_2831_);
return v_res_2837_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg(lean_object* v_keys_2838_, lean_object* v_i_2839_, lean_object* v_k_2840_){
_start:
{
lean_object* v___x_2841_; uint8_t v___x_2842_; 
v___x_2841_ = lean_array_get_size(v_keys_2838_);
v___x_2842_ = lean_nat_dec_lt(v_i_2839_, v___x_2841_);
if (v___x_2842_ == 0)
{
lean_dec(v_i_2839_);
return v___x_2842_;
}
else
{
lean_object* v_k_x27_2843_; uint8_t v___x_2844_; 
v_k_x27_2843_ = lean_array_fget_borrowed(v_keys_2838_, v_i_2839_);
v___x_2844_ = l_Lean_instBEqExtraModUse_beq(v_k_2840_, v_k_x27_2843_);
if (v___x_2844_ == 0)
{
lean_object* v___x_2845_; lean_object* v___x_2846_; 
v___x_2845_ = lean_unsigned_to_nat(1u);
v___x_2846_ = lean_nat_add(v_i_2839_, v___x_2845_);
lean_dec(v_i_2839_);
v_i_2839_ = v___x_2846_;
goto _start;
}
else
{
lean_dec(v_i_2839_);
return v___x_2844_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg___boxed(lean_object* v_keys_2848_, lean_object* v_i_2849_, lean_object* v_k_2850_){
_start:
{
uint8_t v_res_2851_; lean_object* v_r_2852_; 
v_res_2851_ = l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg(v_keys_2848_, v_i_2849_, v_k_2850_);
lean_dec_ref(v_k_2850_);
lean_dec_ref(v_keys_2848_);
v_r_2852_ = lean_box(v_res_2851_);
return v_r_2852_;
}
}
static size_t _init_l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0(void){
_start:
{
size_t v___x_2853_; size_t v___x_2854_; size_t v___x_2855_; 
v___x_2853_ = ((size_t)5ULL);
v___x_2854_ = ((size_t)1ULL);
v___x_2855_ = lean_usize_shift_left(v___x_2854_, v___x_2853_);
return v___x_2855_;
}
}
static size_t _init_l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1(void){
_start:
{
size_t v___x_2856_; size_t v___x_2857_; size_t v___x_2858_; 
v___x_2856_ = ((size_t)1ULL);
v___x_2857_ = lean_usize_once(&l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0, &l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0_once, _init_l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__0);
v___x_2858_ = lean_usize_sub(v___x_2857_, v___x_2856_);
return v___x_2858_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg(lean_object* v_x_2859_, size_t v_x_2860_, lean_object* v_x_2861_){
_start:
{
if (lean_obj_tag(v_x_2859_) == 0)
{
lean_object* v_es_2862_; lean_object* v___x_2863_; size_t v___x_2864_; size_t v___x_2865_; size_t v___x_2866_; lean_object* v_j_2867_; lean_object* v___x_2868_; 
v_es_2862_ = lean_ctor_get(v_x_2859_, 0);
lean_inc_ref(v_es_2862_);
lean_dec_ref(v_x_2859_);
v___x_2863_ = lean_box(2);
v___x_2864_ = ((size_t)5ULL);
v___x_2865_ = lean_usize_once(&l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1, &l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1_once, _init_l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___closed__1);
v___x_2866_ = lean_usize_land(v_x_2860_, v___x_2865_);
v_j_2867_ = lean_usize_to_nat(v___x_2866_);
v___x_2868_ = lean_array_get(v___x_2863_, v_es_2862_, v_j_2867_);
lean_dec(v_j_2867_);
lean_dec_ref(v_es_2862_);
switch(lean_obj_tag(v___x_2868_))
{
case 0:
{
lean_object* v_key_2869_; uint8_t v___x_2870_; 
v_key_2869_ = lean_ctor_get(v___x_2868_, 0);
lean_inc(v_key_2869_);
lean_dec_ref(v___x_2868_);
v___x_2870_ = l_Lean_instBEqExtraModUse_beq(v_x_2861_, v_key_2869_);
lean_dec(v_key_2869_);
return v___x_2870_;
}
case 1:
{
lean_object* v_node_2871_; size_t v___x_2872_; 
v_node_2871_ = lean_ctor_get(v___x_2868_, 0);
lean_inc(v_node_2871_);
lean_dec_ref(v___x_2868_);
v___x_2872_ = lean_usize_shift_right(v_x_2860_, v___x_2864_);
v_x_2859_ = v_node_2871_;
v_x_2860_ = v___x_2872_;
goto _start;
}
default: 
{
uint8_t v___x_2874_; 
v___x_2874_ = 0;
return v___x_2874_;
}
}
}
else
{
lean_object* v_ks_2875_; lean_object* v___x_2876_; uint8_t v___x_2877_; 
v_ks_2875_ = lean_ctor_get(v_x_2859_, 0);
lean_inc_ref(v_ks_2875_);
lean_dec_ref(v_x_2859_);
v___x_2876_ = lean_unsigned_to_nat(0u);
v___x_2877_ = l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg(v_ks_2875_, v___x_2876_, v_x_2861_);
lean_dec_ref(v_ks_2875_);
return v___x_2877_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg___boxed(lean_object* v_x_2878_, lean_object* v_x_2879_, lean_object* v_x_2880_){
_start:
{
size_t v_x_24629__boxed_2881_; uint8_t v_res_2882_; lean_object* v_r_2883_; 
v_x_24629__boxed_2881_ = lean_unbox_usize(v_x_2879_);
lean_dec(v_x_2879_);
v_res_2882_ = l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg(v_x_2878_, v_x_24629__boxed_2881_, v_x_2880_);
lean_dec_ref(v_x_2880_);
v_r_2883_ = lean_box(v_res_2882_);
return v_r_2883_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(lean_object* v_x_2884_, lean_object* v_x_2885_){
_start:
{
uint64_t v___x_2886_; size_t v___x_2887_; uint8_t v___x_2888_; 
v___x_2886_ = l_Lean_instHashableExtraModUse_hash(v_x_2885_);
v___x_2887_ = lean_uint64_to_usize(v___x_2886_);
v___x_2888_ = l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg(v_x_2884_, v___x_2887_, v_x_2885_);
return v___x_2888_;
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg___boxed(lean_object* v_x_2889_, lean_object* v_x_2890_){
_start:
{
uint8_t v_res_2891_; lean_object* v_r_2892_; 
v_res_2891_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(v_x_2889_, v_x_2890_);
lean_dec_ref(v_x_2890_);
v_r_2892_ = lean_box(v_res_2891_);
return v_r_2892_;
}
}
static double _init_l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0(void){
_start:
{
lean_object* v___x_2893_; double v___x_2894_; 
v___x_2893_ = lean_unsigned_to_nat(0u);
v___x_2894_ = lean_float_of_nat(v___x_2893_);
return v___x_2894_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(lean_object* v_cls_2897_, lean_object* v_msg_2898_, lean_object* v___y_2899_, lean_object* v___y_2900_, lean_object* v___y_2901_, lean_object* v___y_2902_){
_start:
{
lean_object* v_ref_2904_; lean_object* v___x_2905_; lean_object* v_a_2906_; lean_object* v___x_2907_; lean_object* v_traceState_2908_; lean_object* v_env_2909_; lean_object* v_nextMacroScope_2910_; lean_object* v_ngen_2911_; lean_object* v_auxDeclNGen_2912_; lean_object* v_cache_2913_; lean_object* v_messages_2914_; lean_object* v_infoState_2915_; lean_object* v_snapshotTasks_2916_; uint64_t v_tid_2917_; lean_object* v_traces_2918_; lean_object* v___x_2919_; double v___x_2920_; uint8_t v___x_2921_; lean_object* v___x_2922_; lean_object* v___x_2923_; lean_object* v___x_2924_; lean_object* v___x_2925_; lean_object* v___x_2926_; lean_object* v___x_2927_; lean_object* v___x_2928_; lean_object* v___x_2929_; lean_object* v___x_2930_; lean_object* v___x_2931_; lean_object* v___x_2932_; 
v_ref_2904_ = lean_ctor_get(v___y_2901_, 5);
v___x_2905_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_2898_, v___y_2899_, v___y_2900_, v___y_2901_, v___y_2902_);
v_a_2906_ = lean_ctor_get(v___x_2905_, 0);
lean_inc(v_a_2906_);
lean_dec_ref(v___x_2905_);
v___x_2907_ = lean_st_ref_take(v___y_2902_);
v_traceState_2908_ = lean_ctor_get(v___x_2907_, 4);
lean_inc_ref(v_traceState_2908_);
v_env_2909_ = lean_ctor_get(v___x_2907_, 0);
lean_inc_ref(v_env_2909_);
v_nextMacroScope_2910_ = lean_ctor_get(v___x_2907_, 1);
lean_inc(v_nextMacroScope_2910_);
v_ngen_2911_ = lean_ctor_get(v___x_2907_, 2);
lean_inc_ref(v_ngen_2911_);
v_auxDeclNGen_2912_ = lean_ctor_get(v___x_2907_, 3);
lean_inc_ref(v_auxDeclNGen_2912_);
v_cache_2913_ = lean_ctor_get(v___x_2907_, 5);
lean_inc_ref(v_cache_2913_);
v_messages_2914_ = lean_ctor_get(v___x_2907_, 6);
lean_inc_ref(v_messages_2914_);
v_infoState_2915_ = lean_ctor_get(v___x_2907_, 7);
lean_inc_ref(v_infoState_2915_);
v_snapshotTasks_2916_ = lean_ctor_get(v___x_2907_, 8);
lean_inc_ref(v_snapshotTasks_2916_);
lean_dec(v___x_2907_);
v_tid_2917_ = lean_ctor_get_uint64(v_traceState_2908_, sizeof(void*)*1);
v_traces_2918_ = lean_ctor_get(v_traceState_2908_, 0);
lean_inc_ref(v_traces_2918_);
lean_dec_ref(v_traceState_2908_);
v___x_2919_ = lean_box(0);
v___x_2920_ = lean_float_once(&l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0, &l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0_once, _init_l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0);
v___x_2921_ = 0;
v___x_2922_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___x_2923_ = lean_alloc_ctor(0, 3, 17);
lean_ctor_set(v___x_2923_, 0, v_cls_2897_);
lean_ctor_set(v___x_2923_, 1, v___x_2919_);
lean_ctor_set(v___x_2923_, 2, v___x_2922_);
lean_ctor_set_float(v___x_2923_, sizeof(void*)*3, v___x_2920_);
lean_ctor_set_float(v___x_2923_, sizeof(void*)*3 + 8, v___x_2920_);
lean_ctor_set_uint8(v___x_2923_, sizeof(void*)*3 + 16, v___x_2921_);
v___x_2924_ = ((lean_object*)(l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1));
v___x_2925_ = lean_alloc_ctor(9, 3, 0);
lean_ctor_set(v___x_2925_, 0, v___x_2923_);
lean_ctor_set(v___x_2925_, 1, v_a_2906_);
lean_ctor_set(v___x_2925_, 2, v___x_2924_);
lean_inc(v_ref_2904_);
v___x_2926_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2926_, 0, v_ref_2904_);
lean_ctor_set(v___x_2926_, 1, v___x_2925_);
v___x_2927_ = l_Lean_PersistentArray_push___redArg(v_traces_2918_, v___x_2926_);
v___x_2928_ = lean_alloc_ctor(0, 1, 8);
lean_ctor_set(v___x_2928_, 0, v___x_2927_);
lean_ctor_set_uint64(v___x_2928_, sizeof(void*)*1, v_tid_2917_);
v___x_2929_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_2929_, 0, v_env_2909_);
lean_ctor_set(v___x_2929_, 1, v_nextMacroScope_2910_);
lean_ctor_set(v___x_2929_, 2, v_ngen_2911_);
lean_ctor_set(v___x_2929_, 3, v_auxDeclNGen_2912_);
lean_ctor_set(v___x_2929_, 4, v___x_2928_);
lean_ctor_set(v___x_2929_, 5, v_cache_2913_);
lean_ctor_set(v___x_2929_, 6, v_messages_2914_);
lean_ctor_set(v___x_2929_, 7, v_infoState_2915_);
lean_ctor_set(v___x_2929_, 8, v_snapshotTasks_2916_);
v___x_2930_ = lean_st_ref_set(v___y_2902_, v___x_2929_);
v___x_2931_ = lean_box(0);
v___x_2932_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2932_, 0, v___x_2931_);
return v___x_2932_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___boxed(lean_object* v_cls_2933_, lean_object* v_msg_2934_, lean_object* v___y_2935_, lean_object* v___y_2936_, lean_object* v___y_2937_, lean_object* v___y_2938_, lean_object* v___y_2939_){
_start:
{
lean_object* v_res_2940_; 
v_res_2940_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(v_cls_2933_, v_msg_2934_, v___y_2935_, v___y_2936_, v___y_2937_, v___y_2938_);
lean_dec(v___y_2938_);
lean_dec_ref(v___y_2937_);
lean_dec(v___y_2936_);
lean_dec_ref(v___y_2935_);
return v_res_2940_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(lean_object* v_cls_2944_, lean_object* v___y_2945_){
_start:
{
lean_object* v_options_2947_; uint8_t v_hasTrace_2948_; 
v_options_2947_ = lean_ctor_get(v___y_2945_, 2);
v_hasTrace_2948_ = lean_ctor_get_uint8(v_options_2947_, sizeof(void*)*1);
if (v_hasTrace_2948_ == 0)
{
lean_object* v___x_2949_; lean_object* v___x_2950_; 
lean_dec(v_cls_2944_);
v___x_2949_ = lean_box(v_hasTrace_2948_);
v___x_2950_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2950_, 0, v___x_2949_);
return v___x_2950_;
}
else
{
lean_object* v_inheritedTraceOptions_2951_; lean_object* v___x_2952_; lean_object* v___x_2953_; uint8_t v___x_2954_; lean_object* v___x_2955_; lean_object* v___x_2956_; 
v_inheritedTraceOptions_2951_ = lean_ctor_get(v___y_2945_, 13);
v___x_2952_ = ((lean_object*)(l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1));
v___x_2953_ = l_Lean_Name_append(v___x_2952_, v_cls_2944_);
v___x_2954_ = l___private_Lean_Util_Trace_0__Lean_checkTraceOption_go(v_inheritedTraceOptions_2951_, v_options_2947_, v___x_2953_);
lean_dec(v___x_2953_);
v___x_2955_ = lean_box(v___x_2954_);
v___x_2956_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2956_, 0, v___x_2955_);
return v___x_2956_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___boxed(lean_object* v_cls_2957_, lean_object* v___y_2958_, lean_object* v___y_2959_){
_start:
{
lean_object* v_res_2960_; 
v_res_2960_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(v_cls_2957_, v___y_2958_);
lean_dec_ref(v___y_2958_);
return v_res_2960_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2(void){
_start:
{
lean_object* v___x_2963_; lean_object* v___x_2964_; lean_object* v___x_2965_; 
v___x_2963_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__1));
v___x_2964_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__0));
v___x_2965_ = l_Lean_PersistentHashMap_empty(lean_box(0), lean_box(0), v___x_2964_, v___x_2963_);
return v___x_2965_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3(void){
_start:
{
lean_object* v___x_2966_; 
v___x_2966_ = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0));
return v___x_2966_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4(void){
_start:
{
lean_object* v___x_2967_; lean_object* v___x_2968_; 
v___x_2967_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__3);
v___x_2968_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_2968_, 0, v___x_2967_);
return v___x_2968_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5(void){
_start:
{
lean_object* v___x_2969_; lean_object* v___x_2970_; 
v___x_2969_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4);
v___x_2970_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_2970_, 0, v___x_2969_);
lean_ctor_set(v___x_2970_, 1, v___x_2969_);
return v___x_2970_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6(void){
_start:
{
lean_object* v___x_2971_; lean_object* v___x_2972_; 
v___x_2971_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__4);
v___x_2972_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_2972_, 0, v___x_2971_);
lean_ctor_set(v___x_2972_, 1, v___x_2971_);
lean_ctor_set(v___x_2972_, 2, v___x_2971_);
lean_ctor_set(v___x_2972_, 3, v___x_2971_);
lean_ctor_set(v___x_2972_, 4, v___x_2971_);
lean_ctor_set(v___x_2972_, 5, v___x_2971_);
return v___x_2972_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10(void){
_start:
{
lean_object* v___x_2977_; lean_object* v___x_2978_; 
v___x_2977_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__9));
v___x_2978_ = l_Lean_stringToMessageData(v___x_2977_);
return v___x_2978_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12(void){
_start:
{
lean_object* v___x_2980_; lean_object* v___x_2981_; 
v___x_2980_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__11));
v___x_2981_ = l_Lean_stringToMessageData(v___x_2980_);
return v___x_2981_;
}
}
static lean_object* _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14(void){
_start:
{
lean_object* v___x_2983_; lean_object* v___x_2984_; 
v___x_2983_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__13));
v___x_2984_ = l_Lean_stringToMessageData(v___x_2983_);
return v___x_2984_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4(lean_object* v_mod_2989_, uint8_t v_isMeta_2990_, lean_object* v_hint_2991_, lean_object* v___y_2992_, lean_object* v___y_2993_, lean_object* v___y_2994_, lean_object* v___y_2995_, lean_object* v___y_2996_, lean_object* v___y_2997_, lean_object* v___y_2998_){
_start:
{
lean_object* v___x_3000_; lean_object* v_env_3001_; uint8_t v_isExporting_3002_; lean_object* v___x_3003_; lean_object* v_env_3004_; lean_object* v___x_3005_; lean_object* v_entry_3006_; lean_object* v___x_3007_; lean_object* v___x_3008_; lean_object* v___x_3009_; lean_object* v___y_3011_; lean_object* v___y_3012_; lean_object* v___x_3038_; uint8_t v___x_3039_; 
v___x_3000_ = lean_st_ref_get(v___y_2998_);
v_env_3001_ = lean_ctor_get(v___x_3000_, 0);
lean_inc_ref(v_env_3001_);
lean_dec(v___x_3000_);
v_isExporting_3002_ = lean_ctor_get_uint8(v_env_3001_, sizeof(void*)*8);
lean_dec_ref(v_env_3001_);
v___x_3003_ = lean_st_ref_get(v___y_2998_);
v_env_3004_ = lean_ctor_get(v___x_3003_, 0);
lean_inc_ref(v_env_3004_);
lean_dec(v___x_3003_);
v___x_3005_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2);
lean_inc(v_mod_2989_);
v_entry_3006_ = lean_alloc_ctor(0, 1, 2);
lean_ctor_set(v_entry_3006_, 0, v_mod_2989_);
lean_ctor_set_uint8(v_entry_3006_, sizeof(void*)*1, v_isExporting_3002_);
lean_ctor_set_uint8(v_entry_3006_, sizeof(void*)*1 + 1, v_isMeta_2990_);
v___x_3007_ = l___private_Lean_ExtraModUses_0__Lean_extraModUses;
v___x_3008_ = lean_box(1);
v___x_3009_ = lean_box(0);
v___x_3038_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_3005_, v___x_3007_, v_env_3004_, v___x_3008_, v___x_3009_);
v___x_3039_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(v___x_3038_, v_entry_3006_);
if (v___x_3039_ == 0)
{
lean_object* v_cls_3040_; lean_object* v___x_3041_; lean_object* v_a_3042_; lean_object* v___y_3044_; lean_object* v___y_3045_; lean_object* v___y_3049_; lean_object* v___y_3050_; uint8_t v___x_3062_; 
v_cls_3040_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8));
v___x_3041_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(v_cls_3040_, v___y_2997_);
v_a_3042_ = lean_ctor_get(v___x_3041_, 0);
lean_inc(v_a_3042_);
lean_dec_ref(v___x_3041_);
v___x_3062_ = lean_unbox(v_a_3042_);
lean_dec(v_a_3042_);
if (v___x_3062_ == 0)
{
lean_dec(v_hint_2991_);
lean_dec(v_mod_2989_);
v___y_3011_ = v___y_2996_;
v___y_3012_ = v___y_2998_;
goto v___jp_3010_;
}
else
{
lean_object* v___x_3063_; lean_object* v___y_3065_; 
v___x_3063_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14);
if (v_isExporting_3002_ == 0)
{
lean_object* v___x_3072_; 
v___x_3072_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17));
v___y_3065_ = v___x_3072_;
goto v___jp_3064_;
}
else
{
lean_object* v___x_3073_; 
v___x_3073_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18));
v___y_3065_ = v___x_3073_;
goto v___jp_3064_;
}
v___jp_3064_:
{
lean_object* v___x_3066_; lean_object* v___x_3067_; lean_object* v___x_3068_; lean_object* v___x_3069_; 
v___x_3066_ = l_Lean_stringToMessageData(v___y_3065_);
v___x_3067_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3067_, 0, v___x_3063_);
lean_ctor_set(v___x_3067_, 1, v___x_3066_);
v___x_3068_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_3069_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3069_, 0, v___x_3067_);
lean_ctor_set(v___x_3069_, 1, v___x_3068_);
if (v_isMeta_2990_ == 0)
{
lean_object* v___x_3070_; 
v___x_3070_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15));
v___y_3049_ = v___x_3069_;
v___y_3050_ = v___x_3070_;
goto v___jp_3048_;
}
else
{
lean_object* v___x_3071_; 
v___x_3071_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16));
v___y_3049_ = v___x_3069_;
v___y_3050_ = v___x_3071_;
goto v___jp_3048_;
}
}
}
v___jp_3043_:
{
lean_object* v___x_3046_; lean_object* v___x_3047_; 
v___x_3046_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3046_, 0, v___y_3044_);
lean_ctor_set(v___x_3046_, 1, v___y_3045_);
v___x_3047_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(v_cls_3040_, v___x_3046_, v___y_2995_, v___y_2996_, v___y_2997_, v___y_2998_);
if (lean_obj_tag(v___x_3047_) == 0)
{
lean_dec_ref(v___x_3047_);
v___y_3011_ = v___y_2996_;
v___y_3012_ = v___y_2998_;
goto v___jp_3010_;
}
else
{
lean_dec_ref(v_entry_3006_);
return v___x_3047_;
}
}
v___jp_3048_:
{
lean_object* v___x_3051_; lean_object* v___x_3052_; lean_object* v___x_3053_; lean_object* v___x_3054_; lean_object* v___x_3055_; lean_object* v___x_3056_; uint8_t v___x_3057_; 
v___x_3051_ = l_Lean_stringToMessageData(v___y_3050_);
v___x_3052_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3052_, 0, v___y_3049_);
lean_ctor_set(v___x_3052_, 1, v___x_3051_);
v___x_3053_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10);
v___x_3054_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3054_, 0, v___x_3052_);
lean_ctor_set(v___x_3054_, 1, v___x_3053_);
v___x_3055_ = l_Lean_MessageData_ofName(v_mod_2989_);
v___x_3056_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3056_, 0, v___x_3054_);
lean_ctor_set(v___x_3056_, 1, v___x_3055_);
v___x_3057_ = l_Lean_Name_isAnonymous(v_hint_2991_);
if (v___x_3057_ == 0)
{
lean_object* v___x_3058_; lean_object* v___x_3059_; lean_object* v___x_3060_; 
v___x_3058_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12);
v___x_3059_ = l_Lean_MessageData_ofName(v_hint_2991_);
v___x_3060_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3060_, 0, v___x_3058_);
lean_ctor_set(v___x_3060_, 1, v___x_3059_);
v___y_3044_ = v___x_3056_;
v___y_3045_ = v___x_3060_;
goto v___jp_3043_;
}
else
{
lean_object* v___x_3061_; 
lean_dec(v_hint_2991_);
v___x_3061_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___y_3044_ = v___x_3056_;
v___y_3045_ = v___x_3061_;
goto v___jp_3043_;
}
}
}
else
{
lean_object* v___x_3074_; lean_object* v___x_3075_; 
lean_dec_ref(v_entry_3006_);
lean_dec(v_hint_2991_);
lean_dec(v_mod_2989_);
v___x_3074_ = lean_box(0);
v___x_3075_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3075_, 0, v___x_3074_);
return v___x_3075_;
}
v___jp_3010_:
{
lean_object* v___x_3013_; lean_object* v_toEnvExtension_3014_; lean_object* v_env_3015_; lean_object* v_nextMacroScope_3016_; lean_object* v_ngen_3017_; lean_object* v_auxDeclNGen_3018_; lean_object* v_traceState_3019_; lean_object* v_messages_3020_; lean_object* v_infoState_3021_; lean_object* v_snapshotTasks_3022_; lean_object* v_asyncMode_3023_; lean_object* v___x_3024_; lean_object* v___x_3025_; lean_object* v___x_3026_; lean_object* v___x_3027_; lean_object* v___x_3028_; lean_object* v_mctx_3029_; lean_object* v_zetaDeltaFVarIds_3030_; lean_object* v_postponed_3031_; lean_object* v_diag_3032_; lean_object* v___x_3033_; lean_object* v___x_3034_; lean_object* v___x_3035_; lean_object* v___x_3036_; lean_object* v___x_3037_; 
v___x_3013_ = lean_st_ref_take(v___y_3012_);
v_toEnvExtension_3014_ = lean_ctor_get(v___x_3007_, 0);
lean_inc_ref(v_toEnvExtension_3014_);
v_env_3015_ = lean_ctor_get(v___x_3013_, 0);
lean_inc_ref(v_env_3015_);
v_nextMacroScope_3016_ = lean_ctor_get(v___x_3013_, 1);
lean_inc(v_nextMacroScope_3016_);
v_ngen_3017_ = lean_ctor_get(v___x_3013_, 2);
lean_inc_ref(v_ngen_3017_);
v_auxDeclNGen_3018_ = lean_ctor_get(v___x_3013_, 3);
lean_inc_ref(v_auxDeclNGen_3018_);
v_traceState_3019_ = lean_ctor_get(v___x_3013_, 4);
lean_inc_ref(v_traceState_3019_);
v_messages_3020_ = lean_ctor_get(v___x_3013_, 6);
lean_inc_ref(v_messages_3020_);
v_infoState_3021_ = lean_ctor_get(v___x_3013_, 7);
lean_inc_ref(v_infoState_3021_);
v_snapshotTasks_3022_ = lean_ctor_get(v___x_3013_, 8);
lean_inc_ref(v_snapshotTasks_3022_);
lean_dec(v___x_3013_);
v_asyncMode_3023_ = lean_ctor_get(v_toEnvExtension_3014_, 2);
lean_inc(v_asyncMode_3023_);
lean_dec_ref(v_toEnvExtension_3014_);
v___x_3024_ = l_Lean_PersistentEnvExtension_addEntry___redArg(v___x_3007_, v_env_3015_, v_entry_3006_, v_asyncMode_3023_, v___x_3009_);
lean_dec(v_asyncMode_3023_);
v___x_3025_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5);
v___x_3026_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_3026_, 0, v___x_3024_);
lean_ctor_set(v___x_3026_, 1, v_nextMacroScope_3016_);
lean_ctor_set(v___x_3026_, 2, v_ngen_3017_);
lean_ctor_set(v___x_3026_, 3, v_auxDeclNGen_3018_);
lean_ctor_set(v___x_3026_, 4, v_traceState_3019_);
lean_ctor_set(v___x_3026_, 5, v___x_3025_);
lean_ctor_set(v___x_3026_, 6, v_messages_3020_);
lean_ctor_set(v___x_3026_, 7, v_infoState_3021_);
lean_ctor_set(v___x_3026_, 8, v_snapshotTasks_3022_);
v___x_3027_ = lean_st_ref_set(v___y_3012_, v___x_3026_);
v___x_3028_ = lean_st_ref_take(v___y_3011_);
v_mctx_3029_ = lean_ctor_get(v___x_3028_, 0);
lean_inc_ref(v_mctx_3029_);
v_zetaDeltaFVarIds_3030_ = lean_ctor_get(v___x_3028_, 2);
lean_inc(v_zetaDeltaFVarIds_3030_);
v_postponed_3031_ = lean_ctor_get(v___x_3028_, 3);
lean_inc_ref(v_postponed_3031_);
v_diag_3032_ = lean_ctor_get(v___x_3028_, 4);
lean_inc_ref(v_diag_3032_);
lean_dec(v___x_3028_);
v___x_3033_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6);
v___x_3034_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_3034_, 0, v_mctx_3029_);
lean_ctor_set(v___x_3034_, 1, v___x_3033_);
lean_ctor_set(v___x_3034_, 2, v_zetaDeltaFVarIds_3030_);
lean_ctor_set(v___x_3034_, 3, v_postponed_3031_);
lean_ctor_set(v___x_3034_, 4, v_diag_3032_);
v___x_3035_ = lean_st_ref_set(v___y_3011_, v___x_3034_);
v___x_3036_ = lean_box(0);
v___x_3037_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3037_, 0, v___x_3036_);
return v___x_3037_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___boxed(lean_object* v_mod_3076_, lean_object* v_isMeta_3077_, lean_object* v_hint_3078_, lean_object* v___y_3079_, lean_object* v___y_3080_, lean_object* v___y_3081_, lean_object* v___y_3082_, lean_object* v___y_3083_, lean_object* v___y_3084_, lean_object* v___y_3085_, lean_object* v___y_3086_){
_start:
{
uint8_t v_isMeta_boxed_3087_; lean_object* v_res_3088_; 
v_isMeta_boxed_3087_ = lean_unbox(v_isMeta_3077_);
v_res_3088_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4(v_mod_3076_, v_isMeta_boxed_3087_, v_hint_3078_, v___y_3079_, v___y_3080_, v___y_3081_, v___y_3082_, v___y_3083_, v___y_3084_, v___y_3085_);
lean_dec(v___y_3085_);
lean_dec_ref(v___y_3084_);
lean_dec(v___y_3083_);
lean_dec_ref(v___y_3082_);
lean_dec(v___y_3081_);
lean_dec_ref(v___y_3080_);
lean_dec(v___y_3079_);
return v_res_3088_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5(lean_object* v___x_3089_, lean_object* v_declName_3090_, lean_object* v_as_3091_, size_t v_sz_3092_, size_t v_i_3093_, lean_object* v_b_3094_, lean_object* v___y_3095_, lean_object* v___y_3096_, lean_object* v___y_3097_, lean_object* v___y_3098_, lean_object* v___y_3099_, lean_object* v___y_3100_, lean_object* v___y_3101_){
_start:
{
uint8_t v___x_3103_; 
v___x_3103_ = lean_usize_dec_lt(v_i_3093_, v_sz_3092_);
if (v___x_3103_ == 0)
{
lean_object* v___x_3104_; 
lean_dec(v_declName_3090_);
v___x_3104_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3104_, 0, v_b_3094_);
return v___x_3104_;
}
else
{
lean_object* v___x_3105_; lean_object* v_modules_3106_; lean_object* v___x_3107_; lean_object* v_a_3108_; lean_object* v___x_3109_; lean_object* v_toImport_3110_; lean_object* v_module_3111_; uint8_t v___x_3112_; lean_object* v___x_3113_; 
v___x_3105_ = l_Lean_Environment_header(v___x_3089_);
v_modules_3106_ = lean_ctor_get(v___x_3105_, 3);
lean_inc_ref(v_modules_3106_);
lean_dec_ref(v___x_3105_);
v___x_3107_ = l_Lean_instInhabitedEffectiveImport_default;
v_a_3108_ = lean_array_uget_borrowed(v_as_3091_, v_i_3093_);
v___x_3109_ = lean_array_get(v___x_3107_, v_modules_3106_, v_a_3108_);
lean_dec_ref(v_modules_3106_);
v_toImport_3110_ = lean_ctor_get(v___x_3109_, 0);
lean_inc_ref(v_toImport_3110_);
lean_dec(v___x_3109_);
v_module_3111_ = lean_ctor_get(v_toImport_3110_, 0);
lean_inc(v_module_3111_);
lean_dec_ref(v_toImport_3110_);
v___x_3112_ = 0;
lean_inc(v_declName_3090_);
v___x_3113_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4(v_module_3111_, v___x_3112_, v_declName_3090_, v___y_3095_, v___y_3096_, v___y_3097_, v___y_3098_, v___y_3099_, v___y_3100_, v___y_3101_);
if (lean_obj_tag(v___x_3113_) == 0)
{
lean_object* v___x_3114_; size_t v___x_3115_; size_t v___x_3116_; 
lean_dec_ref(v___x_3113_);
v___x_3114_ = lean_box(0);
v___x_3115_ = ((size_t)1ULL);
v___x_3116_ = lean_usize_add(v_i_3093_, v___x_3115_);
v_i_3093_ = v___x_3116_;
v_b_3094_ = v___x_3114_;
goto _start;
}
else
{
lean_dec(v_declName_3090_);
return v___x_3113_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5___boxed(lean_object* v___x_3118_, lean_object* v_declName_3119_, lean_object* v_as_3120_, lean_object* v_sz_3121_, lean_object* v_i_3122_, lean_object* v_b_3123_, lean_object* v___y_3124_, lean_object* v___y_3125_, lean_object* v___y_3126_, lean_object* v___y_3127_, lean_object* v___y_3128_, lean_object* v___y_3129_, lean_object* v___y_3130_, lean_object* v___y_3131_){
_start:
{
size_t v_sz_boxed_3132_; size_t v_i_boxed_3133_; lean_object* v_res_3134_; 
v_sz_boxed_3132_ = lean_unbox_usize(v_sz_3121_);
lean_dec(v_sz_3121_);
v_i_boxed_3133_ = lean_unbox_usize(v_i_3122_);
lean_dec(v_i_3122_);
v_res_3134_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5(v___x_3118_, v_declName_3119_, v_as_3120_, v_sz_boxed_3132_, v_i_boxed_3133_, v_b_3123_, v___y_3124_, v___y_3125_, v___y_3126_, v___y_3127_, v___y_3128_, v___y_3129_, v___y_3130_);
lean_dec(v___y_3130_);
lean_dec_ref(v___y_3129_);
lean_dec(v___y_3128_);
lean_dec_ref(v___y_3127_);
lean_dec(v___y_3126_);
lean_dec_ref(v___y_3125_);
lean_dec(v___y_3124_);
lean_dec_ref(v_as_3120_);
lean_dec_ref(v___x_3118_);
return v_res_3134_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg(lean_object* v_a_3135_, lean_object* v_x_3136_){
_start:
{
if (lean_obj_tag(v_x_3136_) == 0)
{
lean_object* v___x_3137_; 
v___x_3137_ = lean_box(0);
return v___x_3137_;
}
else
{
lean_object* v_key_3138_; lean_object* v_value_3139_; lean_object* v_tail_3140_; uint8_t v___x_3141_; 
v_key_3138_ = lean_ctor_get(v_x_3136_, 0);
v_value_3139_ = lean_ctor_get(v_x_3136_, 1);
v_tail_3140_ = lean_ctor_get(v_x_3136_, 2);
v___x_3141_ = lean_name_eq(v_key_3138_, v_a_3135_);
if (v___x_3141_ == 0)
{
v_x_3136_ = v_tail_3140_;
goto _start;
}
else
{
lean_object* v___x_3143_; 
lean_inc(v_value_3139_);
v___x_3143_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3143_, 0, v_value_3139_);
return v___x_3143_;
}
}
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg___boxed(lean_object* v_a_3144_, lean_object* v_x_3145_){
_start:
{
lean_object* v_res_3146_; 
v_res_3146_ = l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg(v_a_3144_, v_x_3145_);
lean_dec(v_x_3145_);
lean_dec(v_a_3144_);
return v_res_3146_;
}
}
static uint64_t _init_l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0(void){
_start:
{
lean_object* v___x_3147_; uint64_t v___x_3148_; 
v___x_3147_ = lean_unsigned_to_nat(1723u);
v___x_3148_ = lean_uint64_of_nat(v___x_3147_);
return v___x_3148_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(lean_object* v_m_3149_, lean_object* v_a_3150_){
_start:
{
lean_object* v_buckets_3151_; lean_object* v___x_3152_; uint64_t v___y_3154_; 
v_buckets_3151_ = lean_ctor_get(v_m_3149_, 1);
v___x_3152_ = lean_array_get_size(v_buckets_3151_);
if (lean_obj_tag(v_a_3150_) == 0)
{
uint64_t v___x_3168_; 
v___x_3168_ = lean_uint64_once(&l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0, &l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0_once, _init_l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___closed__0);
v___y_3154_ = v___x_3168_;
goto v___jp_3153_;
}
else
{
uint64_t v_hash_3169_; 
v_hash_3169_ = lean_ctor_get_uint64(v_a_3150_, sizeof(void*)*2);
v___y_3154_ = v_hash_3169_;
goto v___jp_3153_;
}
v___jp_3153_:
{
uint64_t v___x_3155_; uint64_t v___x_3156_; uint64_t v_fold_3157_; uint64_t v___x_3158_; uint64_t v___x_3159_; uint64_t v___x_3160_; size_t v___x_3161_; size_t v___x_3162_; size_t v___x_3163_; size_t v___x_3164_; size_t v___x_3165_; lean_object* v___x_3166_; lean_object* v___x_3167_; 
v___x_3155_ = 32ULL;
v___x_3156_ = lean_uint64_shift_right(v___y_3154_, v___x_3155_);
v_fold_3157_ = lean_uint64_xor(v___y_3154_, v___x_3156_);
v___x_3158_ = 16ULL;
v___x_3159_ = lean_uint64_shift_right(v_fold_3157_, v___x_3158_);
v___x_3160_ = lean_uint64_xor(v_fold_3157_, v___x_3159_);
v___x_3161_ = lean_uint64_to_usize(v___x_3160_);
v___x_3162_ = lean_usize_of_nat(v___x_3152_);
v___x_3163_ = ((size_t)1ULL);
v___x_3164_ = lean_usize_sub(v___x_3162_, v___x_3163_);
v___x_3165_ = lean_usize_land(v___x_3161_, v___x_3164_);
v___x_3166_ = lean_array_uget_borrowed(v_buckets_3151_, v___x_3165_);
v___x_3167_ = l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg(v_a_3150_, v___x_3166_);
return v___x_3167_;
}
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg___boxed(lean_object* v_m_3170_, lean_object* v_a_3171_){
_start:
{
lean_object* v_res_3172_; 
v_res_3172_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(v_m_3170_, v_a_3171_);
lean_dec(v_a_3171_);
lean_dec_ref(v_m_3170_);
return v_res_3172_;
}
}
static lean_object* _init_l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2(void){
_start:
{
lean_object* v___x_3175_; lean_object* v___x_3176_; lean_object* v___x_3177_; 
v___x_3175_ = ((lean_object*)(l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__1));
v___x_3176_ = ((lean_object*)(l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__0));
v___x_3177_ = l_Std_HashMap_instInhabited(lean_box(0), lean_box(0), v___x_3176_, v___x_3175_);
return v___x_3177_;
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3(lean_object* v_declName_3180_, uint8_t v_isMeta_3181_, lean_object* v___y_3182_, lean_object* v___y_3183_, lean_object* v___y_3184_, lean_object* v___y_3185_, lean_object* v___y_3186_, lean_object* v___y_3187_, lean_object* v___y_3188_){
_start:
{
lean_object* v___x_3190_; lean_object* v_env_3194_; lean_object* v___y_3196_; lean_object* v___x_3202_; 
v___x_3190_ = lean_st_ref_get(v___y_3188_);
v_env_3194_ = lean_ctor_get(v___x_3190_, 0);
lean_inc_ref(v_env_3194_);
lean_dec(v___x_3190_);
v___x_3202_ = l_Lean_Environment_getModuleIdxFor_x3f(v_env_3194_, v_declName_3180_);
if (lean_obj_tag(v___x_3202_) == 0)
{
lean_dec_ref(v_env_3194_);
lean_dec(v_declName_3180_);
goto v___jp_3191_;
}
else
{
lean_object* v_val_3203_; lean_object* v___x_3204_; lean_object* v_modules_3205_; lean_object* v___x_3206_; uint8_t v___x_3207_; 
v_val_3203_ = lean_ctor_get(v___x_3202_, 0);
lean_inc(v_val_3203_);
lean_dec_ref(v___x_3202_);
v___x_3204_ = l_Lean_Environment_header(v_env_3194_);
v_modules_3205_ = lean_ctor_get(v___x_3204_, 3);
lean_inc_ref(v_modules_3205_);
lean_dec_ref(v___x_3204_);
v___x_3206_ = lean_array_get_size(v_modules_3205_);
v___x_3207_ = lean_nat_dec_lt(v_val_3203_, v___x_3206_);
if (v___x_3207_ == 0)
{
lean_dec_ref(v_modules_3205_);
lean_dec(v_val_3203_);
lean_dec_ref(v_env_3194_);
lean_dec(v_declName_3180_);
goto v___jp_3191_;
}
else
{
lean_object* v___x_3208_; lean_object* v_env_3209_; lean_object* v___x_3210_; lean_object* v___x_3211_; uint8_t v___y_3213_; 
v___x_3208_ = lean_st_ref_get(v___y_3188_);
v_env_3209_ = lean_ctor_get(v___x_3208_, 0);
lean_inc_ref(v_env_3209_);
lean_dec(v___x_3208_);
v___x_3210_ = lean_obj_once(&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2, &l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2_once, _init_l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2);
v___x_3211_ = lean_array_fget(v_modules_3205_, v_val_3203_);
lean_dec(v_val_3203_);
lean_dec_ref(v_modules_3205_);
if (v_isMeta_3181_ == 0)
{
lean_dec_ref(v_env_3209_);
v___y_3213_ = v_isMeta_3181_;
goto v___jp_3212_;
}
else
{
uint8_t v___x_3224_; 
lean_inc(v_declName_3180_);
v___x_3224_ = l_Lean_isMarkedMeta(v_env_3209_, v_declName_3180_);
if (v___x_3224_ == 0)
{
v___y_3213_ = v_isMeta_3181_;
goto v___jp_3212_;
}
else
{
uint8_t v___x_3225_; 
v___x_3225_ = 0;
v___y_3213_ = v___x_3225_;
goto v___jp_3212_;
}
}
v___jp_3212_:
{
lean_object* v_toImport_3214_; lean_object* v_module_3215_; lean_object* v___x_3216_; 
v_toImport_3214_ = lean_ctor_get(v___x_3211_, 0);
lean_inc_ref(v_toImport_3214_);
lean_dec(v___x_3211_);
v_module_3215_ = lean_ctor_get(v_toImport_3214_, 0);
lean_inc(v_module_3215_);
lean_dec_ref(v_toImport_3214_);
lean_inc(v_declName_3180_);
v___x_3216_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4(v_module_3215_, v___y_3213_, v_declName_3180_, v___y_3182_, v___y_3183_, v___y_3184_, v___y_3185_, v___y_3186_, v___y_3187_, v___y_3188_);
if (lean_obj_tag(v___x_3216_) == 0)
{
lean_object* v___x_3217_; lean_object* v___x_3218_; lean_object* v___x_3219_; lean_object* v___x_3220_; lean_object* v___x_3221_; 
lean_dec_ref(v___x_3216_);
v___x_3217_ = l_Lean_indirectModUseExt;
v___x_3218_ = lean_box(1);
v___x_3219_ = lean_box(0);
lean_inc_ref(v_env_3194_);
v___x_3220_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_3210_, v___x_3217_, v_env_3194_, v___x_3218_, v___x_3219_);
v___x_3221_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(v___x_3220_, v_declName_3180_);
lean_dec(v___x_3220_);
if (lean_obj_tag(v___x_3221_) == 0)
{
lean_object* v___x_3222_; 
v___x_3222_ = ((lean_object*)(l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3));
v___y_3196_ = v___x_3222_;
goto v___jp_3195_;
}
else
{
lean_object* v_val_3223_; 
v_val_3223_ = lean_ctor_get(v___x_3221_, 0);
lean_inc(v_val_3223_);
lean_dec_ref(v___x_3221_);
v___y_3196_ = v_val_3223_;
goto v___jp_3195_;
}
}
else
{
lean_dec_ref(v_env_3194_);
lean_dec(v_declName_3180_);
return v___x_3216_;
}
}
}
}
v___jp_3191_:
{
lean_object* v___x_3192_; lean_object* v___x_3193_; 
v___x_3192_ = lean_box(0);
v___x_3193_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3193_, 0, v___x_3192_);
return v___x_3193_;
}
v___jp_3195_:
{
lean_object* v___x_3197_; size_t v_sz_3198_; size_t v___x_3199_; lean_object* v___x_3200_; 
v___x_3197_ = lean_box(0);
v_sz_3198_ = lean_array_size(v___y_3196_);
v___x_3199_ = ((size_t)0ULL);
v___x_3200_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__5(v_env_3194_, v_declName_3180_, v___y_3196_, v_sz_3198_, v___x_3199_, v___x_3197_, v___y_3182_, v___y_3183_, v___y_3184_, v___y_3185_, v___y_3186_, v___y_3187_, v___y_3188_);
lean_dec_ref(v___y_3196_);
lean_dec_ref(v_env_3194_);
if (lean_obj_tag(v___x_3200_) == 0)
{
lean_object* v___x_3201_; 
lean_dec_ref(v___x_3200_);
v___x_3201_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3201_, 0, v___x_3197_);
return v___x_3201_;
}
else
{
return v___x_3200_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___boxed(lean_object* v_declName_3226_, lean_object* v_isMeta_3227_, lean_object* v___y_3228_, lean_object* v___y_3229_, lean_object* v___y_3230_, lean_object* v___y_3231_, lean_object* v___y_3232_, lean_object* v___y_3233_, lean_object* v___y_3234_, lean_object* v___y_3235_){
_start:
{
uint8_t v_isMeta_boxed_3236_; lean_object* v_res_3237_; 
v_isMeta_boxed_3236_ = lean_unbox(v_isMeta_3227_);
v_res_3237_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3(v_declName_3226_, v_isMeta_boxed_3236_, v___y_3228_, v___y_3229_, v___y_3230_, v___y_3231_, v___y_3232_, v___y_3233_, v___y_3234_);
lean_dec(v___y_3234_);
lean_dec_ref(v___y_3233_);
lean_dec(v___y_3232_);
lean_dec_ref(v___y_3231_);
lean_dec(v___y_3230_);
lean_dec_ref(v___y_3229_);
lean_dec(v___y_3228_);
return v_res_3237_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg(lean_object* v_as_x27_3238_, lean_object* v_b_3239_, lean_object* v___y_3240_, lean_object* v___y_3241_, lean_object* v___y_3242_, lean_object* v___y_3243_, lean_object* v___y_3244_, lean_object* v___y_3245_, lean_object* v___y_3246_){
_start:
{
if (lean_obj_tag(v_as_x27_3238_) == 0)
{
lean_object* v___x_3248_; 
v___x_3248_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3248_, 0, v_b_3239_);
return v___x_3248_;
}
else
{
lean_object* v_head_3249_; lean_object* v_tail_3250_; uint8_t v___x_3251_; lean_object* v___x_3252_; 
v_head_3249_ = lean_ctor_get(v_as_x27_3238_, 0);
lean_inc(v_head_3249_);
v_tail_3250_ = lean_ctor_get(v_as_x27_3238_, 1);
lean_inc(v_tail_3250_);
lean_dec_ref(v_as_x27_3238_);
v___x_3251_ = 1;
v___x_3252_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3(v_head_3249_, v___x_3251_, v___y_3240_, v___y_3241_, v___y_3242_, v___y_3243_, v___y_3244_, v___y_3245_, v___y_3246_);
if (lean_obj_tag(v___x_3252_) == 0)
{
lean_object* v___x_3253_; 
lean_dec_ref(v___x_3252_);
v___x_3253_ = lean_box(0);
v_as_x27_3238_ = v_tail_3250_;
v_b_3239_ = v___x_3253_;
goto _start;
}
else
{
lean_dec(v_tail_3250_);
return v___x_3252_;
}
}
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg___boxed(lean_object* v_as_x27_3255_, lean_object* v_b_3256_, lean_object* v___y_3257_, lean_object* v___y_3258_, lean_object* v___y_3259_, lean_object* v___y_3260_, lean_object* v___y_3261_, lean_object* v___y_3262_, lean_object* v___y_3263_, lean_object* v___y_3264_){
_start:
{
lean_object* v_res_3265_; 
v_res_3265_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg(v_as_x27_3255_, v_b_3256_, v___y_3257_, v___y_3258_, v___y_3259_, v___y_3260_, v___y_3261_, v___y_3262_, v___y_3263_);
lean_dec(v___y_3263_);
lean_dec_ref(v___y_3262_);
lean_dec(v___y_3261_);
lean_dec_ref(v___y_3260_);
lean_dec(v___y_3259_);
lean_dec_ref(v___y_3258_);
lean_dec(v___y_3257_);
return v_res_3265_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3(lean_object* v_currNamespace_3266_, lean_object* v___y_3267_, lean_object* v___y_3268_){
_start:
{
lean_object* v___x_3269_; 
v___x_3269_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3269_, 0, v_currNamespace_3266_);
lean_ctor_set(v___x_3269_, 1, v___y_3268_);
return v___x_3269_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3___boxed(lean_object* v_currNamespace_3270_, lean_object* v___y_3271_, lean_object* v___y_3272_){
_start:
{
lean_object* v_res_3273_; 
v_res_3273_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3(v_currNamespace_3270_, v___y_3271_, v___y_3272_);
lean_dec_ref(v___y_3271_);
return v_res_3273_;
}
}
static lean_object* _init_l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0(void){
_start:
{
lean_object* v___x_3274_; lean_object* v___x_3275_; lean_object* v___x_3276_; 
v___x_3274_ = lean_box(0);
v___x_3275_ = l_Lean_Elab_unsupportedSyntaxExceptionId;
v___x_3276_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_3276_, 0, v___x_3275_);
lean_ctor_set(v___x_3276_, 1, v___x_3274_);
return v___x_3276_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg(){
_start:
{
lean_object* v___x_3278_; lean_object* v___x_3279_; 
v___x_3278_ = lean_obj_once(&l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0, &l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0_once, _init_l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0);
v___x_3279_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3279_, 0, v___x_3278_);
return v___x_3279_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___boxed(lean_object* v___y_3280_){
_start:
{
lean_object* v_res_3281_; 
v_res_3281_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg();
return v_res_3281_;
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5(lean_object* v_as_3282_, lean_object* v___y_3283_, lean_object* v___y_3284_, lean_object* v___y_3285_, lean_object* v___y_3286_, lean_object* v___y_3287_, lean_object* v___y_3288_, lean_object* v___y_3289_){
_start:
{
if (lean_obj_tag(v_as_3282_) == 0)
{
lean_object* v___x_3291_; lean_object* v___x_3292_; 
v___x_3291_ = lean_box(0);
v___x_3292_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3292_, 0, v___x_3291_);
return v___x_3292_;
}
else
{
lean_object* v_head_3293_; lean_object* v_tail_3294_; lean_object* v_fst_3295_; lean_object* v_snd_3296_; lean_object* v___x_3297_; lean_object* v_a_3298_; uint8_t v___x_3299_; 
v_head_3293_ = lean_ctor_get(v_as_3282_, 0);
lean_inc(v_head_3293_);
v_tail_3294_ = lean_ctor_get(v_as_3282_, 1);
lean_inc(v_tail_3294_);
lean_dec_ref(v_as_3282_);
v_fst_3295_ = lean_ctor_get(v_head_3293_, 0);
lean_inc(v_fst_3295_);
v_snd_3296_ = lean_ctor_get(v_head_3293_, 1);
lean_inc(v_snd_3296_);
lean_dec(v_head_3293_);
lean_inc(v_fst_3295_);
v___x_3297_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(v_fst_3295_, v___y_3288_);
v_a_3298_ = lean_ctor_get(v___x_3297_, 0);
lean_inc(v_a_3298_);
lean_dec_ref(v___x_3297_);
v___x_3299_ = lean_unbox(v_a_3298_);
lean_dec(v_a_3298_);
if (v___x_3299_ == 0)
{
lean_dec(v_snd_3296_);
lean_dec(v_fst_3295_);
v_as_3282_ = v_tail_3294_;
goto _start;
}
else
{
lean_object* v___x_3301_; lean_object* v___x_3302_; lean_object* v___x_3303_; 
v___x_3301_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_3301_, 0, v_snd_3296_);
v___x_3302_ = l_Lean_MessageData_ofFormat(v___x_3301_);
v___x_3303_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(v_fst_3295_, v___x_3302_, v___y_3286_, v___y_3287_, v___y_3288_, v___y_3289_);
if (lean_obj_tag(v___x_3303_) == 0)
{
lean_dec_ref(v___x_3303_);
v_as_3282_ = v_tail_3294_;
goto _start;
}
else
{
lean_dec(v_tail_3294_);
return v___x_3303_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5___boxed(lean_object* v_as_3305_, lean_object* v___y_3306_, lean_object* v___y_3307_, lean_object* v___y_3308_, lean_object* v___y_3309_, lean_object* v___y_3310_, lean_object* v___y_3311_, lean_object* v___y_3312_, lean_object* v___y_3313_){
_start:
{
lean_object* v_res_3314_; 
v_res_3314_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5(v_as_3305_, v___y_3306_, v___y_3307_, v___y_3308_, v___y_3309_, v___y_3310_, v___y_3311_, v___y_3312_);
lean_dec(v___y_3312_);
lean_dec_ref(v___y_3311_);
lean_dec(v___y_3310_);
lean_dec_ref(v___y_3309_);
lean_dec(v___y_3308_);
lean_dec_ref(v___y_3307_);
lean_dec(v___y_3306_);
return v_res_3314_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2(lean_object* v_env_3315_, lean_object* v_currNamespace_3316_, lean_object* v_openDecls_3317_, lean_object* v_n_3318_, lean_object* v___y_3319_, lean_object* v___y_3320_){
_start:
{
lean_object* v___x_3321_; lean_object* v___x_3322_; 
v___x_3321_ = l_Lean_ResolveName_resolveNamespace(v_env_3315_, v_currNamespace_3316_, v_openDecls_3317_, v_n_3318_);
v___x_3322_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3322_, 0, v___x_3321_);
lean_ctor_set(v___x_3322_, 1, v___y_3320_);
return v___x_3322_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2___boxed(lean_object* v_env_3323_, lean_object* v_currNamespace_3324_, lean_object* v_openDecls_3325_, lean_object* v_n_3326_, lean_object* v___y_3327_, lean_object* v___y_3328_){
_start:
{
lean_object* v_res_3329_; 
v_res_3329_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2(v_env_3323_, v_currNamespace_3324_, v_openDecls_3325_, v_n_3326_, v___y_3327_, v___y_3328_);
lean_dec_ref(v___y_3327_);
return v_res_3329_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1(lean_object* v_env_3330_, lean_object* v_declName_3331_, lean_object* v___y_3332_, lean_object* v___y_3333_){
_start:
{
uint8_t v___x_3334_; lean_object* v_env_3335_; lean_object* v___x_3336_; uint8_t v___x_3337_; uint8_t v___x_3338_; 
v___x_3334_ = 0;
v_env_3335_ = l_Lean_Environment_setExporting(v_env_3330_, v___x_3334_);
lean_inc(v_declName_3331_);
v___x_3336_ = l_Lean_mkPrivateName(v_env_3335_, v_declName_3331_);
v___x_3337_ = 1;
lean_inc_ref(v_env_3335_);
v___x_3338_ = l_Lean_Environment_contains(v_env_3335_, v___x_3336_, v___x_3337_);
if (v___x_3338_ == 0)
{
lean_object* v___x_3339_; uint8_t v___x_3340_; lean_object* v___x_3341_; lean_object* v___x_3342_; 
v___x_3339_ = l_Lean_privateToUserName(v_declName_3331_);
v___x_3340_ = l_Lean_Environment_contains(v_env_3335_, v___x_3339_, v___x_3337_);
v___x_3341_ = lean_box(v___x_3340_);
v___x_3342_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3342_, 0, v___x_3341_);
lean_ctor_set(v___x_3342_, 1, v___y_3333_);
return v___x_3342_;
}
else
{
lean_object* v___x_3343_; lean_object* v___x_3344_; 
lean_dec_ref(v_env_3335_);
lean_dec(v_declName_3331_);
v___x_3343_ = lean_box(v___x_3338_);
v___x_3344_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3344_, 0, v___x_3343_);
lean_ctor_set(v___x_3344_, 1, v___y_3333_);
return v___x_3344_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1___boxed(lean_object* v_env_3345_, lean_object* v_declName_3346_, lean_object* v___y_3347_, lean_object* v___y_3348_){
_start:
{
lean_object* v_res_3349_; 
v_res_3349_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1(v_env_3345_, v_declName_3346_, v___y_3347_, v___y_3348_);
lean_dec_ref(v___y_3347_);
return v_res_3349_;
}
}
static lean_object* _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3(void){
_start:
{
lean_object* v___x_3355_; lean_object* v___x_3356_; 
v___x_3355_ = l_Lean_maxRecDepthErrorMessage;
v___x_3356_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_3356_, 0, v___x_3355_);
return v___x_3356_;
}
}
static lean_object* _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4(void){
_start:
{
lean_object* v___x_3357_; lean_object* v___x_3358_; 
v___x_3357_ = lean_obj_once(&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3, &l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3_once, _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__3);
v___x_3358_ = l_Lean_MessageData_ofFormat(v___x_3357_);
return v___x_3358_;
}
}
static lean_object* _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5(void){
_start:
{
lean_object* v___x_3359_; lean_object* v___x_3360_; lean_object* v___x_3361_; 
v___x_3359_ = lean_obj_once(&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4, &l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4_once, _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__4);
v___x_3360_ = ((lean_object*)(l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__2));
v___x_3361_ = lean_alloc_ctor(8, 2, 0);
lean_ctor_set(v___x_3361_, 0, v___x_3360_);
lean_ctor_set(v___x_3361_, 1, v___x_3359_);
return v___x_3361_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg(lean_object* v_ref_3362_){
_start:
{
lean_object* v___x_3364_; lean_object* v___x_3365_; lean_object* v___x_3366_; 
v___x_3364_ = lean_obj_once(&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5, &l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5_once, _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5);
v___x_3365_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3365_, 0, v_ref_3362_);
lean_ctor_set(v___x_3365_, 1, v___x_3364_);
v___x_3366_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3366_, 0, v___x_3365_);
return v___x_3366_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___boxed(lean_object* v_ref_3367_, lean_object* v___y_3368_){
_start:
{
lean_object* v_res_3369_; 
v_res_3369_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg(v_ref_3367_);
return v_res_3369_;
}
}
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(lean_object* v_x_3370_, lean_object* v___y_3371_){
_start:
{
if (lean_obj_tag(v_x_3370_) == 0)
{
lean_object* v_a_3372_; lean_object* v___x_3373_; 
v_a_3372_ = lean_ctor_get(v_x_3370_, 0);
lean_inc(v_a_3372_);
v___x_3373_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_3373_, 0, v_a_3372_);
lean_ctor_set(v___x_3373_, 1, v___y_3371_);
return v___x_3373_;
}
else
{
lean_object* v_a_3374_; lean_object* v___x_3375_; 
v_a_3374_ = lean_ctor_get(v_x_3370_, 0);
lean_inc(v_a_3374_);
v___x_3375_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3375_, 0, v_a_3374_);
lean_ctor_set(v___x_3375_, 1, v___y_3371_);
return v___x_3375_;
}
}
}
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg___boxed(lean_object* v_x_3376_, lean_object* v___y_3377_){
_start:
{
lean_object* v_res_3378_; 
v_res_3378_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v_x_3376_, v___y_3377_);
lean_dec_ref(v_x_3376_);
return v_res_3378_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0(lean_object* v_env_3379_, lean_object* v_stx_3380_, lean_object* v___y_3381_, lean_object* v___y_3382_){
_start:
{
lean_object* v___x_3383_; 
v___x_3383_ = l_Lean_Elab_expandMacroImpl_x3f(v_env_3379_, v_stx_3380_, v___y_3381_, v___y_3382_);
if (lean_obj_tag(v___x_3383_) == 0)
{
lean_object* v_a_3384_; 
v_a_3384_ = lean_ctor_get(v___x_3383_, 0);
lean_inc(v_a_3384_);
if (lean_obj_tag(v_a_3384_) == 0)
{
lean_object* v_a_3385_; lean_object* v___x_3386_; lean_object* v___x_3387_; 
v_a_3385_ = lean_ctor_get(v___x_3383_, 1);
lean_inc(v_a_3385_);
lean_dec_ref(v___x_3383_);
v___x_3386_ = lean_box(0);
v___x_3387_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3387_, 0, v___x_3386_);
lean_ctor_set(v___x_3387_, 1, v_a_3385_);
return v___x_3387_;
}
else
{
lean_object* v_val_3388_; lean_object* v_snd_3389_; 
v_val_3388_ = lean_ctor_get(v_a_3384_, 0);
lean_inc(v_val_3388_);
lean_dec_ref(v_a_3384_);
v_snd_3389_ = lean_ctor_get(v_val_3388_, 1);
lean_inc(v_snd_3389_);
lean_dec(v_val_3388_);
if (lean_obj_tag(v_snd_3389_) == 0)
{
lean_object* v_a_3390_; lean_object* v_a_3391_; lean_object* v___x_3392_; lean_object* v___x_3393_; 
v_a_3390_ = lean_ctor_get(v___x_3383_, 1);
lean_inc(v_a_3390_);
lean_dec_ref(v___x_3383_);
v_a_3391_ = lean_ctor_get(v_snd_3389_, 0);
lean_inc(v_a_3391_);
lean_dec_ref(v_snd_3389_);
v___x_3392_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3392_, 0, v_a_3391_);
v___x_3393_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v___x_3392_, v_a_3390_);
lean_dec_ref(v___x_3392_);
return v___x_3393_;
}
else
{
lean_object* v_a_3394_; lean_object* v_a_3395_; lean_object* v___x_3396_; lean_object* v___x_3397_; lean_object* v___x_3398_; 
v_a_3394_ = lean_ctor_get(v___x_3383_, 1);
lean_inc(v_a_3394_);
lean_dec_ref(v___x_3383_);
v_a_3395_ = lean_ctor_get(v_snd_3389_, 0);
lean_inc(v_a_3395_);
lean_dec_ref(v_snd_3389_);
v___x_3396_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3396_, 0, v_a_3395_);
v___x_3397_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3397_, 0, v___x_3396_);
v___x_3398_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v___x_3397_, v_a_3394_);
lean_dec_ref(v___x_3397_);
return v___x_3398_;
}
}
}
else
{
lean_object* v_a_3399_; lean_object* v_a_3400_; lean_object* v___x_3401_; 
v_a_3399_ = lean_ctor_get(v___x_3383_, 0);
lean_inc(v_a_3399_);
v_a_3400_ = lean_ctor_get(v___x_3383_, 1);
lean_inc(v_a_3400_);
lean_dec_ref(v___x_3383_);
v___x_3401_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_3401_, 0, v_a_3399_);
lean_ctor_set(v___x_3401_, 1, v_a_3400_);
return v___x_3401_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0___boxed(lean_object* v_env_3402_, lean_object* v_stx_3403_, lean_object* v___y_3404_, lean_object* v___y_3405_){
_start:
{
lean_object* v_res_3406_; 
v_res_3406_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0(v_env_3402_, v_stx_3403_, v___y_3404_, v___y_3405_);
lean_dec_ref(v___y_3404_);
return v_res_3406_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg(lean_object* v_x_3408_, lean_object* v___y_3409_, lean_object* v___y_3410_, lean_object* v___y_3411_, lean_object* v___y_3412_, lean_object* v___y_3413_, lean_object* v___y_3414_, lean_object* v___y_3415_){
_start:
{
lean_object* v___x_3417_; lean_object* v_env_3418_; lean_object* v_options_3419_; lean_object* v_currRecDepth_3420_; lean_object* v_maxRecDepth_3421_; lean_object* v_ref_3422_; lean_object* v_currNamespace_3423_; lean_object* v_openDecls_3424_; lean_object* v_quotContext_3425_; lean_object* v_currMacroScope_3426_; lean_object* v___x_3427_; lean_object* v_nextMacroScope_3428_; lean_object* v___f_3429_; lean_object* v___f_3430_; lean_object* v___f_3431_; lean_object* v___f_3432_; lean_object* v___f_3433_; lean_object* v_methods_3434_; lean_object* v___x_3435_; lean_object* v___x_3436_; lean_object* v___x_3437_; lean_object* v___x_3438_; 
v___x_3417_ = lean_st_ref_get(v___y_3415_);
v_env_3418_ = lean_ctor_get(v___x_3417_, 0);
lean_inc_ref(v_env_3418_);
lean_dec(v___x_3417_);
v_options_3419_ = lean_ctor_get(v___y_3414_, 2);
v_currRecDepth_3420_ = lean_ctor_get(v___y_3414_, 3);
v_maxRecDepth_3421_ = lean_ctor_get(v___y_3414_, 4);
v_ref_3422_ = lean_ctor_get(v___y_3414_, 5);
v_currNamespace_3423_ = lean_ctor_get(v___y_3414_, 6);
v_openDecls_3424_ = lean_ctor_get(v___y_3414_, 7);
v_quotContext_3425_ = lean_ctor_get(v___y_3414_, 10);
v_currMacroScope_3426_ = lean_ctor_get(v___y_3414_, 11);
v___x_3427_ = lean_st_ref_get(v___y_3415_);
v_nextMacroScope_3428_ = lean_ctor_get(v___x_3427_, 1);
lean_inc(v_nextMacroScope_3428_);
lean_dec(v___x_3427_);
lean_inc_ref(v_env_3418_);
v___f_3429_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__0___boxed), 4, 1);
lean_closure_set(v___f_3429_, 0, v_env_3418_);
lean_inc_ref(v_env_3418_);
v___f_3430_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1___boxed), 4, 1);
lean_closure_set(v___f_3430_, 0, v_env_3418_);
lean_inc(v_openDecls_3424_);
lean_inc(v_currNamespace_3423_);
lean_inc_ref(v_env_3418_);
v___f_3431_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2___boxed), 6, 3);
lean_closure_set(v___f_3431_, 0, v_env_3418_);
lean_closure_set(v___f_3431_, 1, v_currNamespace_3423_);
lean_closure_set(v___f_3431_, 2, v_openDecls_3424_);
lean_inc(v_currNamespace_3423_);
v___f_3432_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3___boxed), 3, 1);
lean_closure_set(v___f_3432_, 0, v_currNamespace_3423_);
lean_inc(v_openDecls_3424_);
lean_inc(v_currNamespace_3423_);
lean_inc_ref(v_options_3419_);
v___f_3433_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4___boxed), 7, 4);
lean_closure_set(v___f_3433_, 0, v_env_3418_);
lean_closure_set(v___f_3433_, 1, v_options_3419_);
lean_closure_set(v___f_3433_, 2, v_currNamespace_3423_);
lean_closure_set(v___f_3433_, 3, v_openDecls_3424_);
v_methods_3434_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v_methods_3434_, 0, v___f_3429_);
lean_ctor_set(v_methods_3434_, 1, v___f_3432_);
lean_ctor_set(v_methods_3434_, 2, v___f_3430_);
lean_ctor_set(v_methods_3434_, 3, v___f_3431_);
lean_ctor_set(v_methods_3434_, 4, v___f_3433_);
lean_inc(v_ref_3422_);
lean_inc(v_maxRecDepth_3421_);
lean_inc(v_currRecDepth_3420_);
lean_inc(v_currMacroScope_3426_);
lean_inc(v_quotContext_3425_);
v___x_3435_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_3435_, 0, v_methods_3434_);
lean_ctor_set(v___x_3435_, 1, v_quotContext_3425_);
lean_ctor_set(v___x_3435_, 2, v_currMacroScope_3426_);
lean_ctor_set(v___x_3435_, 3, v_currRecDepth_3420_);
lean_ctor_set(v___x_3435_, 4, v_maxRecDepth_3421_);
lean_ctor_set(v___x_3435_, 5, v_ref_3422_);
v___x_3436_ = lean_box(0);
v___x_3437_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_3437_, 0, v_nextMacroScope_3428_);
lean_ctor_set(v___x_3437_, 1, v___x_3436_);
lean_ctor_set(v___x_3437_, 2, v___x_3436_);
v___x_3438_ = lean_apply_2(v_x_3408_, v___x_3435_, v___x_3437_);
if (lean_obj_tag(v___x_3438_) == 0)
{
lean_object* v_a_3439_; lean_object* v_a_3440_; lean_object* v_macroScope_3441_; lean_object* v_traceMsgs_3442_; lean_object* v_expandedMacroDecls_3443_; lean_object* v___x_3444_; lean_object* v___x_3445_; 
v_a_3439_ = lean_ctor_get(v___x_3438_, 1);
lean_inc(v_a_3439_);
v_a_3440_ = lean_ctor_get(v___x_3438_, 0);
lean_inc(v_a_3440_);
lean_dec_ref(v___x_3438_);
v_macroScope_3441_ = lean_ctor_get(v_a_3439_, 0);
lean_inc(v_macroScope_3441_);
v_traceMsgs_3442_ = lean_ctor_get(v_a_3439_, 1);
lean_inc(v_traceMsgs_3442_);
v_expandedMacroDecls_3443_ = lean_ctor_get(v_a_3439_, 2);
lean_inc(v_expandedMacroDecls_3443_);
lean_dec(v_a_3439_);
v___x_3444_ = lean_box(0);
v___x_3445_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg(v_expandedMacroDecls_3443_, v___x_3444_, v___y_3409_, v___y_3410_, v___y_3411_, v___y_3412_, v___y_3413_, v___y_3414_, v___y_3415_);
if (lean_obj_tag(v___x_3445_) == 0)
{
lean_object* v___x_3446_; lean_object* v_env_3447_; lean_object* v_ngen_3448_; lean_object* v_auxDeclNGen_3449_; lean_object* v_traceState_3450_; lean_object* v_cache_3451_; lean_object* v_messages_3452_; lean_object* v_infoState_3453_; lean_object* v_snapshotTasks_3454_; lean_object* v___x_3455_; lean_object* v___x_3456_; lean_object* v___x_3457_; lean_object* v___x_3458_; 
lean_dec_ref(v___x_3445_);
v___x_3446_ = lean_st_ref_take(v___y_3415_);
v_env_3447_ = lean_ctor_get(v___x_3446_, 0);
lean_inc_ref(v_env_3447_);
v_ngen_3448_ = lean_ctor_get(v___x_3446_, 2);
lean_inc_ref(v_ngen_3448_);
v_auxDeclNGen_3449_ = lean_ctor_get(v___x_3446_, 3);
lean_inc_ref(v_auxDeclNGen_3449_);
v_traceState_3450_ = lean_ctor_get(v___x_3446_, 4);
lean_inc_ref(v_traceState_3450_);
v_cache_3451_ = lean_ctor_get(v___x_3446_, 5);
lean_inc_ref(v_cache_3451_);
v_messages_3452_ = lean_ctor_get(v___x_3446_, 6);
lean_inc_ref(v_messages_3452_);
v_infoState_3453_ = lean_ctor_get(v___x_3446_, 7);
lean_inc_ref(v_infoState_3453_);
v_snapshotTasks_3454_ = lean_ctor_get(v___x_3446_, 8);
lean_inc_ref(v_snapshotTasks_3454_);
lean_dec(v___x_3446_);
v___x_3455_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_3455_, 0, v_env_3447_);
lean_ctor_set(v___x_3455_, 1, v_macroScope_3441_);
lean_ctor_set(v___x_3455_, 2, v_ngen_3448_);
lean_ctor_set(v___x_3455_, 3, v_auxDeclNGen_3449_);
lean_ctor_set(v___x_3455_, 4, v_traceState_3450_);
lean_ctor_set(v___x_3455_, 5, v_cache_3451_);
lean_ctor_set(v___x_3455_, 6, v_messages_3452_);
lean_ctor_set(v___x_3455_, 7, v_infoState_3453_);
lean_ctor_set(v___x_3455_, 8, v_snapshotTasks_3454_);
v___x_3456_ = lean_st_ref_set(v___y_3415_, v___x_3455_);
v___x_3457_ = l_List_reverse___redArg(v_traceMsgs_3442_);
v___x_3458_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__5(v___x_3457_, v___y_3409_, v___y_3410_, v___y_3411_, v___y_3412_, v___y_3413_, v___y_3414_, v___y_3415_);
lean_dec_ref(v___y_3414_);
if (lean_obj_tag(v___x_3458_) == 0)
{
lean_object* v___x_3459_; 
lean_dec_ref(v___x_3458_);
v___x_3459_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3459_, 0, v_a_3440_);
return v___x_3459_;
}
else
{
lean_object* v_a_3460_; lean_object* v___x_3461_; 
lean_dec(v_a_3440_);
v_a_3460_ = lean_ctor_get(v___x_3458_, 0);
lean_inc(v_a_3460_);
lean_dec_ref(v___x_3458_);
v___x_3461_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3461_, 0, v_a_3460_);
return v___x_3461_;
}
}
else
{
lean_object* v_a_3462_; lean_object* v___x_3463_; 
lean_dec(v_traceMsgs_3442_);
lean_dec(v_macroScope_3441_);
lean_dec(v_a_3440_);
lean_dec_ref(v___y_3414_);
v_a_3462_ = lean_ctor_get(v___x_3445_, 0);
lean_inc(v_a_3462_);
lean_dec_ref(v___x_3445_);
v___x_3463_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3463_, 0, v_a_3462_);
return v___x_3463_;
}
}
else
{
lean_object* v_a_3464_; 
v_a_3464_ = lean_ctor_get(v___x_3438_, 0);
lean_inc(v_a_3464_);
lean_dec_ref(v___x_3438_);
if (lean_obj_tag(v_a_3464_) == 0)
{
lean_object* v_a_3465_; lean_object* v_a_3466_; lean_object* v___x_3467_; uint8_t v___x_3468_; 
v_a_3465_ = lean_ctor_get(v_a_3464_, 0);
lean_inc(v_a_3465_);
v_a_3466_ = lean_ctor_get(v_a_3464_, 1);
lean_inc_ref(v_a_3466_);
lean_dec_ref(v_a_3464_);
v___x_3467_ = ((lean_object*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0));
v___x_3468_ = lean_string_dec_eq(v_a_3466_, v___x_3467_);
if (v___x_3468_ == 0)
{
lean_object* v___x_3469_; lean_object* v___x_3470_; lean_object* v___x_3471_; 
v___x_3469_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_3469_, 0, v_a_3466_);
v___x_3470_ = l_Lean_MessageData_ofFormat(v___x_3469_);
v___x_3471_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg(v_a_3465_, v___x_3470_, v___y_3409_, v___y_3410_, v___y_3411_, v___y_3412_, v___y_3413_, v___y_3414_, v___y_3415_);
lean_dec_ref(v___y_3414_);
lean_dec(v_a_3465_);
return v___x_3471_;
}
else
{
lean_object* v___x_3472_; 
lean_dec_ref(v_a_3466_);
lean_dec_ref(v___y_3414_);
v___x_3472_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg(v_a_3465_);
return v___x_3472_;
}
}
else
{
lean_object* v___x_3473_; 
lean_dec_ref(v___y_3414_);
v___x_3473_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg();
return v___x_3473_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___boxed(lean_object* v_x_3474_, lean_object* v___y_3475_, lean_object* v___y_3476_, lean_object* v___y_3477_, lean_object* v___y_3478_, lean_object* v___y_3479_, lean_object* v___y_3480_, lean_object* v___y_3481_, lean_object* v___y_3482_){
_start:
{
lean_object* v_res_3483_; 
v_res_3483_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg(v_x_3474_, v___y_3475_, v___y_3476_, v___y_3477_, v___y_3478_, v___y_3479_, v___y_3480_, v___y_3481_);
lean_dec(v___y_3481_);
lean_dec(v___y_3479_);
lean_dec_ref(v___y_3478_);
lean_dec(v___y_3477_);
lean_dec_ref(v___y_3476_);
lean_dec(v___y_3475_);
return v_res_3483_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkJmp(lean_object* v_ref_3484_, lean_object* v_rs_3485_, lean_object* v_val_3486_, lean_object* v_mkJPBody_3487_, lean_object* v_a_3488_, lean_object* v_a_3489_, lean_object* v_a_3490_, lean_object* v_a_3491_, lean_object* v_a_3492_, lean_object* v_a_3493_, lean_object* v_a_3494_){
_start:
{
lean_object* v_ref_3496_; lean_object* v_quotContext_3497_; lean_object* v_currMacroScope_3498_; lean_object* v_ref_3499_; uint8_t v___x_3500_; lean_object* v___x_3501_; lean_object* v___x_3502_; lean_object* v___x_3503_; lean_object* v___x_3504_; lean_object* v___x_3505_; lean_object* v___x_3506_; lean_object* v___x_3507_; lean_object* v___x_3508_; lean_object* v___x_3509_; lean_object* v___x_3510_; 
v_ref_3496_ = lean_ctor_get(v_a_3493_, 5);
v_quotContext_3497_ = lean_ctor_get(v_a_3493_, 10);
v_currMacroScope_3498_ = lean_ctor_get(v_a_3493_, 11);
v_ref_3499_ = l_Lean_replaceRef(v_ref_3484_, v_ref_3496_);
v___x_3500_ = 0;
v___x_3501_ = l_Lean_SourceInfo_fromRef(v_ref_3499_, v___x_3500_);
lean_dec(v_ref_3499_);
v___x_3502_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_3503_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_currMacroScope_3498_);
lean_inc(v_quotContext_3497_);
v___x_3504_ = l_Lean_addMacroScope(v_quotContext_3497_, v___x_3503_, v_currMacroScope_3498_);
v___x_3505_ = lean_box(0);
v___x_3506_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_3506_, 0, v___x_3501_);
lean_ctor_set(v___x_3506_, 1, v___x_3502_);
lean_ctor_set(v___x_3506_, 2, v___x_3504_);
lean_ctor_set(v___x_3506_, 3, v___x_3505_);
v___x_3507_ = lean_box(v___x_3500_);
lean_inc_ref(v___x_3506_);
v___x_3508_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3508_, 0, v___x_3506_);
lean_ctor_set(v___x_3508_, 1, v___x_3507_);
v___x_3509_ = lean_apply_1(v_mkJPBody_3487_, v___x_3506_);
lean_inc_ref(v_a_3493_);
v___x_3510_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg(v___x_3509_, v_a_3488_, v_a_3489_, v_a_3490_, v_a_3491_, v_a_3492_, v_a_3493_, v_a_3494_);
if (lean_obj_tag(v___x_3510_) == 0)
{
lean_object* v_a_3511_; lean_object* v_xs_3512_; lean_object* v_args_3513_; size_t v_sz_3514_; size_t v___x_3515_; lean_object* v___x_3516_; lean_object* v___x_3517_; lean_object* v___x_3518_; 
v_a_3511_ = lean_ctor_get(v___x_3510_, 0);
lean_inc(v_a_3511_);
lean_dec_ref(v___x_3510_);
v_xs_3512_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v_rs_3485_);
lean_inc_ref(v_xs_3512_);
v_args_3513_ = lean_array_push(v_xs_3512_, v_val_3486_);
v_sz_3514_ = lean_array_size(v_xs_3512_);
v___x_3515_ = ((size_t)0ULL);
v___x_3516_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(v_sz_3514_, v___x_3515_, v_xs_3512_);
v___x_3517_ = lean_array_push(v___x_3516_, v___x_3508_);
v___x_3518_ = l_Lean_Elab_Term_Do_addFreshJP___redArg(v___x_3517_, v_a_3511_, v_a_3488_, v_a_3493_, v_a_3494_);
if (lean_obj_tag(v___x_3518_) == 0)
{
lean_object* v_a_3519_; lean_object* v___x_3520_; lean_object* v___x_3521_; 
v_a_3519_ = lean_ctor_get(v___x_3518_, 0);
lean_inc(v_a_3519_);
lean_dec_ref(v___x_3518_);
v___x_3520_ = lean_alloc_ctor(11, 3, 0);
lean_ctor_set(v___x_3520_, 0, v_ref_3484_);
lean_ctor_set(v___x_3520_, 1, v_a_3519_);
lean_ctor_set(v___x_3520_, 2, v_args_3513_);
v___x_3521_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3521_, 0, v___x_3520_);
return v___x_3521_;
}
else
{
lean_object* v_a_3522_; lean_object* v___x_3523_; 
lean_dec_ref(v_args_3513_);
lean_dec(v_ref_3484_);
v_a_3522_ = lean_ctor_get(v___x_3518_, 0);
lean_inc(v_a_3522_);
lean_dec_ref(v___x_3518_);
v___x_3523_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3523_, 0, v_a_3522_);
return v___x_3523_;
}
}
else
{
lean_dec_ref(v___x_3508_);
lean_dec(v_a_3494_);
lean_dec_ref(v_a_3493_);
lean_dec(v_val_3486_);
lean_dec(v_rs_3485_);
lean_dec(v_ref_3484_);
return v___x_3510_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkJmp___boxed(lean_object* v_ref_3524_, lean_object* v_rs_3525_, lean_object* v_val_3526_, lean_object* v_mkJPBody_3527_, lean_object* v_a_3528_, lean_object* v_a_3529_, lean_object* v_a_3530_, lean_object* v_a_3531_, lean_object* v_a_3532_, lean_object* v_a_3533_, lean_object* v_a_3534_, lean_object* v_a_3535_){
_start:
{
lean_object* v_res_3536_; 
v_res_3536_ = l_Lean_Elab_Term_Do_mkJmp(v_ref_3524_, v_rs_3525_, v_val_3526_, v_mkJPBody_3527_, v_a_3528_, v_a_3529_, v_a_3530_, v_a_3531_, v_a_3532_, v_a_3533_, v_a_3534_);
lean_dec(v_a_3532_);
lean_dec_ref(v_a_3531_);
lean_dec(v_a_3530_);
lean_dec_ref(v_a_3529_);
lean_dec(v_a_3528_);
return v_res_3536_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0(lean_object* v_cls_3537_, lean_object* v___y_3538_, lean_object* v___y_3539_, lean_object* v___y_3540_, lean_object* v___y_3541_, lean_object* v___y_3542_, lean_object* v___y_3543_, lean_object* v___y_3544_){
_start:
{
lean_object* v___x_3546_; 
v___x_3546_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg(v_cls_3537_, v___y_3543_);
return v___x_3546_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___boxed(lean_object* v_cls_3547_, lean_object* v___y_3548_, lean_object* v___y_3549_, lean_object* v___y_3550_, lean_object* v___y_3551_, lean_object* v___y_3552_, lean_object* v___y_3553_, lean_object* v___y_3554_, lean_object* v___y_3555_){
_start:
{
lean_object* v_res_3556_; 
v_res_3556_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0(v_cls_3547_, v___y_3548_, v___y_3549_, v___y_3550_, v___y_3551_, v___y_3552_, v___y_3553_, v___y_3554_);
lean_dec(v___y_3554_);
lean_dec_ref(v___y_3553_);
lean_dec(v___y_3552_);
lean_dec_ref(v___y_3551_);
lean_dec(v___y_3550_);
lean_dec_ref(v___y_3549_);
lean_dec(v___y_3548_);
return v_res_3556_;
}
}
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2(lean_object* v_00_u03b1_3557_, lean_object* v_x_3558_, lean_object* v___y_3559_, lean_object* v___y_3560_){
_start:
{
lean_object* v___x_3561_; 
v___x_3561_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v_x_3558_, v___y_3560_);
return v___x_3561_;
}
}
LEAN_EXPORT lean_object* l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___boxed(lean_object* v_00_u03b1_3562_, lean_object* v_x_3563_, lean_object* v___y_3564_, lean_object* v___y_3565_){
_start:
{
lean_object* v_res_3566_; 
v_res_3566_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2(v_00_u03b1_3562_, v_x_3563_, v___y_3564_, v___y_3565_);
lean_dec_ref(v___y_3564_);
lean_dec_ref(v_x_3563_);
return v_res_3566_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7(lean_object* v_00_u03b1_3567_, lean_object* v_ref_3568_, lean_object* v___y_3569_, lean_object* v___y_3570_, lean_object* v___y_3571_, lean_object* v___y_3572_, lean_object* v___y_3573_, lean_object* v___y_3574_, lean_object* v___y_3575_){
_start:
{
lean_object* v___x_3577_; 
v___x_3577_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg(v_ref_3568_);
return v___x_3577_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___boxed(lean_object* v_00_u03b1_3578_, lean_object* v_ref_3579_, lean_object* v___y_3580_, lean_object* v___y_3581_, lean_object* v___y_3582_, lean_object* v___y_3583_, lean_object* v___y_3584_, lean_object* v___y_3585_, lean_object* v___y_3586_, lean_object* v___y_3587_){
_start:
{
lean_object* v_res_3588_; 
v_res_3588_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7(v_00_u03b1_3578_, v_ref_3579_, v___y_3580_, v___y_3581_, v___y_3582_, v___y_3583_, v___y_3584_, v___y_3585_, v___y_3586_);
lean_dec(v___y_3586_);
lean_dec_ref(v___y_3585_);
lean_dec(v___y_3584_);
lean_dec_ref(v___y_3583_);
lean_dec(v___y_3582_);
lean_dec_ref(v___y_3581_);
lean_dec(v___y_3580_);
return v_res_3588_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8(lean_object* v_00_u03b1_3589_, lean_object* v___y_3590_, lean_object* v___y_3591_, lean_object* v___y_3592_, lean_object* v___y_3593_, lean_object* v___y_3594_, lean_object* v___y_3595_, lean_object* v___y_3596_){
_start:
{
lean_object* v___x_3598_; 
v___x_3598_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg();
return v___x_3598_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___boxed(lean_object* v_00_u03b1_3599_, lean_object* v___y_3600_, lean_object* v___y_3601_, lean_object* v___y_3602_, lean_object* v___y_3603_, lean_object* v___y_3604_, lean_object* v___y_3605_, lean_object* v___y_3606_, lean_object* v___y_3607_){
_start:
{
lean_object* v_res_3608_; 
v_res_3608_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8(v_00_u03b1_3599_, v___y_3600_, v___y_3601_, v___y_3602_, v___y_3603_, v___y_3604_, v___y_3605_, v___y_3606_);
lean_dec(v___y_3606_);
lean_dec_ref(v___y_3605_);
lean_dec(v___y_3604_);
lean_dec_ref(v___y_3603_);
lean_dec(v___y_3602_);
lean_dec_ref(v___y_3601_);
lean_dec(v___y_3600_);
return v_res_3608_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0(lean_object* v_00_u03b1_3609_, lean_object* v_x_3610_, lean_object* v___y_3611_, lean_object* v___y_3612_, lean_object* v___y_3613_, lean_object* v___y_3614_, lean_object* v___y_3615_, lean_object* v___y_3616_, lean_object* v___y_3617_){
_start:
{
lean_object* v___x_3619_; 
v___x_3619_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg(v_x_3610_, v___y_3611_, v___y_3612_, v___y_3613_, v___y_3614_, v___y_3615_, v___y_3616_, v___y_3617_);
return v___x_3619_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___boxed(lean_object* v_00_u03b1_3620_, lean_object* v_x_3621_, lean_object* v___y_3622_, lean_object* v___y_3623_, lean_object* v___y_3624_, lean_object* v___y_3625_, lean_object* v___y_3626_, lean_object* v___y_3627_, lean_object* v___y_3628_, lean_object* v___y_3629_){
_start:
{
lean_object* v_res_3630_; 
v_res_3630_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0(v_00_u03b1_3620_, v_x_3621_, v___y_3622_, v___y_3623_, v___y_3624_, v___y_3625_, v___y_3626_, v___y_3627_, v___y_3628_);
lean_dec(v___y_3628_);
lean_dec(v___y_3626_);
lean_dec_ref(v___y_3625_);
lean_dec(v___y_3624_);
lean_dec_ref(v___y_3623_);
lean_dec(v___y_3622_);
return v_res_3630_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1(lean_object* v_cls_3631_, lean_object* v_msg_3632_, lean_object* v___y_3633_, lean_object* v___y_3634_, lean_object* v___y_3635_, lean_object* v___y_3636_, lean_object* v___y_3637_, lean_object* v___y_3638_, lean_object* v___y_3639_){
_start:
{
lean_object* v___x_3641_; 
v___x_3641_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg(v_cls_3631_, v_msg_3632_, v___y_3636_, v___y_3637_, v___y_3638_, v___y_3639_);
return v___x_3641_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___boxed(lean_object* v_cls_3642_, lean_object* v_msg_3643_, lean_object* v___y_3644_, lean_object* v___y_3645_, lean_object* v___y_3646_, lean_object* v___y_3647_, lean_object* v___y_3648_, lean_object* v___y_3649_, lean_object* v___y_3650_, lean_object* v___y_3651_){
_start:
{
lean_object* v_res_3652_; 
v_res_3652_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1(v_cls_3642_, v_msg_3643_, v___y_3644_, v___y_3645_, v___y_3646_, v___y_3647_, v___y_3648_, v___y_3649_, v___y_3650_);
lean_dec(v___y_3650_);
lean_dec_ref(v___y_3649_);
lean_dec(v___y_3648_);
lean_dec_ref(v___y_3647_);
lean_dec(v___y_3646_);
lean_dec_ref(v___y_3645_);
lean_dec(v___y_3644_);
return v_res_3652_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4(lean_object* v_as_3653_, lean_object* v_as_x27_3654_, lean_object* v_b_3655_, lean_object* v_a_3656_, lean_object* v___y_3657_, lean_object* v___y_3658_, lean_object* v___y_3659_, lean_object* v___y_3660_, lean_object* v___y_3661_, lean_object* v___y_3662_, lean_object* v___y_3663_){
_start:
{
lean_object* v___x_3665_; 
v___x_3665_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___redArg(v_as_x27_3654_, v_b_3655_, v___y_3657_, v___y_3658_, v___y_3659_, v___y_3660_, v___y_3661_, v___y_3662_, v___y_3663_);
return v___x_3665_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4___boxed(lean_object* v_as_3666_, lean_object* v_as_x27_3667_, lean_object* v_b_3668_, lean_object* v_a_3669_, lean_object* v___y_3670_, lean_object* v___y_3671_, lean_object* v___y_3672_, lean_object* v___y_3673_, lean_object* v___y_3674_, lean_object* v___y_3675_, lean_object* v___y_3676_, lean_object* v___y_3677_){
_start:
{
lean_object* v_res_3678_; 
v_res_3678_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__4(v_as_3666_, v_as_x27_3667_, v_b_3668_, v_a_3669_, v___y_3670_, v___y_3671_, v___y_3672_, v___y_3673_, v___y_3674_, v___y_3675_, v___y_3676_);
lean_dec(v___y_3676_);
lean_dec_ref(v___y_3675_);
lean_dec(v___y_3674_);
lean_dec_ref(v___y_3673_);
lean_dec(v___y_3672_);
lean_dec_ref(v___y_3671_);
lean_dec(v___y_3670_);
lean_dec(v_as_3666_);
return v_res_3678_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6(lean_object* v_00_u03b1_3679_, lean_object* v_ref_3680_, lean_object* v_msg_3681_, lean_object* v___y_3682_, lean_object* v___y_3683_, lean_object* v___y_3684_, lean_object* v___y_3685_, lean_object* v___y_3686_, lean_object* v___y_3687_, lean_object* v___y_3688_){
_start:
{
lean_object* v___x_3690_; 
v___x_3690_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___redArg(v_ref_3680_, v_msg_3681_, v___y_3682_, v___y_3683_, v___y_3684_, v___y_3685_, v___y_3686_, v___y_3687_, v___y_3688_);
return v___x_3690_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6___boxed(lean_object* v_00_u03b1_3691_, lean_object* v_ref_3692_, lean_object* v_msg_3693_, lean_object* v___y_3694_, lean_object* v___y_3695_, lean_object* v___y_3696_, lean_object* v___y_3697_, lean_object* v___y_3698_, lean_object* v___y_3699_, lean_object* v___y_3700_, lean_object* v___y_3701_){
_start:
{
lean_object* v_res_3702_; 
v_res_3702_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6(v_00_u03b1_3691_, v_ref_3692_, v_msg_3693_, v___y_3694_, v___y_3695_, v___y_3696_, v___y_3697_, v___y_3698_, v___y_3699_, v___y_3700_);
lean_dec(v___y_3700_);
lean_dec_ref(v___y_3699_);
lean_dec(v___y_3698_);
lean_dec_ref(v___y_3697_);
lean_dec(v___y_3696_);
lean_dec_ref(v___y_3695_);
lean_dec(v___y_3694_);
lean_dec(v_ref_3692_);
return v_res_3702_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6(lean_object* v_00_u03b2_3703_, lean_object* v_m_3704_, lean_object* v_a_3705_){
_start:
{
lean_object* v___x_3706_; 
v___x_3706_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(v_m_3704_, v_a_3705_);
return v___x_3706_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___boxed(lean_object* v_00_u03b2_3707_, lean_object* v_m_3708_, lean_object* v_a_3709_){
_start:
{
lean_object* v_res_3710_; 
v_res_3710_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6(v_00_u03b2_3707_, v_m_3708_, v_a_3709_);
lean_dec(v_a_3709_);
lean_dec_ref(v_m_3708_);
return v_res_3710_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10(lean_object* v_00_u03b1_3711_, lean_object* v_msg_3712_, lean_object* v___y_3713_, lean_object* v___y_3714_, lean_object* v___y_3715_, lean_object* v___y_3716_, lean_object* v___y_3717_, lean_object* v___y_3718_, lean_object* v___y_3719_){
_start:
{
lean_object* v___x_3721_; 
v___x_3721_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___redArg(v_msg_3712_, v___y_3716_, v___y_3717_, v___y_3718_, v___y_3719_);
return v___x_3721_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10___boxed(lean_object* v_00_u03b1_3722_, lean_object* v_msg_3723_, lean_object* v___y_3724_, lean_object* v___y_3725_, lean_object* v___y_3726_, lean_object* v___y_3727_, lean_object* v___y_3728_, lean_object* v___y_3729_, lean_object* v___y_3730_, lean_object* v___y_3731_){
_start:
{
lean_object* v_res_3732_; 
v_res_3732_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__6_spec__10(v_00_u03b1_3722_, v_msg_3723_, v___y_3724_, v___y_3725_, v___y_3726_, v___y_3727_, v___y_3728_, v___y_3729_, v___y_3730_);
lean_dec(v___y_3730_);
lean_dec_ref(v___y_3729_);
lean_dec(v___y_3728_);
lean_dec_ref(v___y_3727_);
lean_dec(v___y_3726_);
lean_dec_ref(v___y_3725_);
lean_dec(v___y_3724_);
return v_res_3732_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7(lean_object* v_00_u03b2_3733_, lean_object* v_x_3734_, lean_object* v_x_3735_){
_start:
{
uint8_t v___x_3736_; 
v___x_3736_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(v_x_3734_, v_x_3735_);
return v___x_3736_;
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___boxed(lean_object* v_00_u03b2_3737_, lean_object* v_x_3738_, lean_object* v_x_3739_){
_start:
{
uint8_t v_res_3740_; lean_object* v_r_3741_; 
v_res_3740_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7(v_00_u03b2_3737_, v_x_3738_, v_x_3739_);
lean_dec_ref(v_x_3739_);
v_r_3741_ = lean_box(v_res_3740_);
return v_r_3741_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10(lean_object* v_00_u03b2_3742_, lean_object* v_a_3743_, lean_object* v_x_3744_){
_start:
{
lean_object* v___x_3745_; 
v___x_3745_ = l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___redArg(v_a_3743_, v_x_3744_);
return v___x_3745_;
}
}
LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10___boxed(lean_object* v_00_u03b2_3746_, lean_object* v_a_3747_, lean_object* v_x_3748_){
_start:
{
lean_object* v_res_3749_; 
v_res_3749_ = l_Std_DHashMap_Internal_AssocList_get_x3f___at___00Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6_spec__10(v_00_u03b2_3746_, v_a_3747_, v_x_3748_);
lean_dec(v_x_3748_);
lean_dec(v_a_3747_);
return v_res_3749_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11(lean_object* v_00_u03b2_3750_, lean_object* v_x_3751_, size_t v_x_3752_, lean_object* v_x_3753_){
_start:
{
uint8_t v___x_3754_; 
v___x_3754_ = l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___redArg(v_x_3751_, v_x_3752_, v_x_3753_);
return v___x_3754_;
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11___boxed(lean_object* v_00_u03b2_3755_, lean_object* v_x_3756_, lean_object* v_x_3757_, lean_object* v_x_3758_){
_start:
{
size_t v_x_25910__boxed_3759_; uint8_t v_res_3760_; lean_object* v_r_3761_; 
v_x_25910__boxed_3759_ = lean_unbox_usize(v_x_3757_);
lean_dec(v_x_3757_);
v_res_3760_ = l_Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11(v_00_u03b2_3755_, v_x_3756_, v_x_25910__boxed_3759_, v_x_3758_);
lean_dec_ref(v_x_3758_);
v_r_3761_ = lean_box(v_res_3760_);
return v_r_3761_;
}
}
LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15(lean_object* v_00_u03b2_3762_, lean_object* v_keys_3763_, lean_object* v_vals_3764_, lean_object* v_heq_3765_, lean_object* v_i_3766_, lean_object* v_k_3767_){
_start:
{
uint8_t v___x_3768_; 
v___x_3768_ = l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___redArg(v_keys_3763_, v_i_3766_, v_k_3767_);
return v___x_3768_;
}
}
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15___boxed(lean_object* v_00_u03b2_3769_, lean_object* v_keys_3770_, lean_object* v_vals_3771_, lean_object* v_heq_3772_, lean_object* v_i_3773_, lean_object* v_k_3774_){
_start:
{
uint8_t v_res_3775_; lean_object* v_r_3776_; 
v_res_3775_ = l_Lean_PersistentHashMap_containsAtAux___at___00Lean_PersistentHashMap_containsAux___at___00Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7_spec__11_spec__15(v_00_u03b2_3769_, v_keys_3770_, v_vals_3771_, v_heq_3772_, v_i_3773_, v_k_3774_);
lean_dec_ref(v_k_3774_);
lean_dec_ref(v_vals_3771_);
lean_dec_ref(v_keys_3770_);
v_r_3776_ = lean_box(v_res_3775_);
return v_r_3776_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0(lean_object* v_____do__lift_3777_, lean_object* v___y_3778_, lean_object* v___y_3779_, lean_object* v___y_3780_, lean_object* v___y_3781_, lean_object* v___y_3782_, lean_object* v___y_3783_, lean_object* v___y_3784_){
_start:
{
uint8_t v___x_3786_; lean_object* v___x_3787_; lean_object* v___x_3788_; 
v___x_3786_ = 0;
v___x_3787_ = l_Lean_SourceInfo_fromRef(v_____do__lift_3777_, v___x_3786_);
v___x_3788_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3788_, 0, v___x_3787_);
return v___x_3788_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0___boxed(lean_object* v_____do__lift_3789_, lean_object* v___y_3790_, lean_object* v___y_3791_, lean_object* v___y_3792_, lean_object* v___y_3793_, lean_object* v___y_3794_, lean_object* v___y_3795_, lean_object* v___y_3796_, lean_object* v___y_3797_){
_start:
{
lean_object* v_res_3798_; 
v_res_3798_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__0(v_____do__lift_3789_, v___y_3790_, v___y_3791_, v___y_3792_, v___y_3793_, v___y_3794_, v___y_3795_, v___y_3796_);
lean_dec(v___y_3796_);
lean_dec_ref(v___y_3795_);
lean_dec(v___y_3794_);
lean_dec_ref(v___y_3793_);
lean_dec(v___y_3792_);
lean_dec_ref(v___y_3791_);
lean_dec(v___y_3790_);
lean_dec(v_____do__lift_3789_);
return v_res_3798_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1(lean_object* v___f_3799_, lean_object* v___y_3800_, lean_object* v___y_3801_, lean_object* v___y_3802_, lean_object* v___y_3803_, lean_object* v___y_3804_, lean_object* v_mkCont_3805_, lean_object* v_e_3806_, lean_object* v___y_3807_, lean_object* v___y_3808_){
_start:
{
lean_object* v_ref_3810_; lean_object* v_quotContext_3811_; lean_object* v_currMacroScope_3812_; lean_object* v___x_3813_; 
v_ref_3810_ = lean_ctor_get(v___y_3807_, 5);
v_quotContext_3811_ = lean_ctor_get(v___y_3807_, 10);
v_currMacroScope_3812_ = lean_ctor_get(v___y_3807_, 11);
lean_inc_ref(v___f_3799_);
lean_inc(v___y_3808_);
lean_inc_ref(v___y_3807_);
lean_inc(v___y_3804_);
lean_inc_ref(v___y_3803_);
lean_inc(v___y_3802_);
lean_inc_ref(v___y_3801_);
lean_inc(v___y_3800_);
lean_inc(v_ref_3810_);
v___x_3813_ = lean_apply_9(v___f_3799_, v_ref_3810_, v___y_3800_, v___y_3801_, v___y_3802_, v___y_3803_, v___y_3804_, v___y_3807_, v___y_3808_, lean_box(0));
if (lean_obj_tag(v___x_3813_) == 0)
{
lean_object* v_a_3814_; lean_object* v___x_3815_; 
v_a_3814_ = lean_ctor_get(v___x_3813_, 0);
lean_inc(v_a_3814_);
lean_dec_ref(v___x_3813_);
lean_inc(v___y_3808_);
lean_inc_ref(v___y_3807_);
lean_inc(v___y_3804_);
lean_inc_ref(v___y_3803_);
lean_inc(v___y_3802_);
lean_inc_ref(v___y_3801_);
lean_inc(v___y_3800_);
lean_inc(v_ref_3810_);
v___x_3815_ = lean_apply_9(v___f_3799_, v_ref_3810_, v___y_3800_, v___y_3801_, v___y_3802_, v___y_3803_, v___y_3804_, v___y_3807_, v___y_3808_, lean_box(0));
if (lean_obj_tag(v___x_3815_) == 0)
{
lean_object* v_a_3816_; lean_object* v___x_3817_; lean_object* v___x_3818_; lean_object* v___x_3819_; lean_object* v___x_3820_; lean_object* v___x_3821_; lean_object* v___x_3822_; lean_object* v___x_3823_; lean_object* v___x_3824_; lean_object* v___x_3825_; lean_object* v___x_3826_; lean_object* v___x_3827_; lean_object* v___x_3828_; lean_object* v___x_3829_; lean_object* v___x_3830_; lean_object* v___x_3831_; lean_object* v___x_3832_; uint8_t v___x_3833_; lean_object* v___x_3834_; lean_object* v___x_3835_; lean_object* v___x_3836_; lean_object* v___x_3837_; lean_object* v___x_3838_; lean_object* v___x_3839_; lean_object* v___x_3840_; lean_object* v___x_3841_; lean_object* v___x_3842_; lean_object* v___x_3843_; 
v_a_3816_ = lean_ctor_get(v___x_3815_, 0);
lean_inc(v_a_3816_);
lean_dec_ref(v___x_3815_);
v___x_3817_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_3818_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_currMacroScope_3812_);
lean_inc(v_quotContext_3811_);
v___x_3819_ = l_Lean_addMacroScope(v_quotContext_3811_, v___x_3818_, v_currMacroScope_3812_);
v___x_3820_ = lean_box(0);
lean_inc(v___x_3819_);
v___x_3821_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_3821_, 0, v_a_3814_);
lean_ctor_set(v___x_3821_, 1, v___x_3817_);
lean_ctor_set(v___x_3821_, 2, v___x_3819_);
lean_ctor_set(v___x_3821_, 3, v___x_3820_);
v___x_3822_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_3823_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v_a_3816_);
v___x_3824_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_3824_, 0, v_a_3816_);
lean_ctor_set(v___x_3824_, 1, v___x_3823_);
v___x_3825_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_3826_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_3816_);
v___x_3827_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_3827_, 0, v_a_3816_);
lean_ctor_set(v___x_3827_, 1, v___x_3825_);
lean_ctor_set(v___x_3827_, 2, v___x_3826_);
v___x_3828_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
lean_inc(v_a_3816_);
v___x_3829_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_3829_, 0, v_a_3816_);
lean_ctor_set(v___x_3829_, 1, v___x_3817_);
lean_ctor_set(v___x_3829_, 2, v___x_3819_);
lean_ctor_set(v___x_3829_, 3, v___x_3820_);
v___x_3830_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_a_3816_);
v___x_3831_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_3831_, 0, v_a_3816_);
lean_ctor_set(v___x_3831_, 1, v___x_3830_);
v___x_3832_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
v___x_3833_ = 0;
v___x_3834_ = l_Lean_SourceInfo_fromRef(v_ref_3810_, v___x_3833_);
v___x_3835_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1));
v___x_3836_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2));
lean_inc(v___x_3834_);
v___x_3837_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_3837_, 0, v___x_3834_);
lean_ctor_set(v___x_3837_, 1, v___x_3836_);
v___x_3838_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4));
v___x_3839_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__5));
lean_inc(v___x_3834_);
v___x_3840_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_3840_, 0, v___x_3834_);
lean_ctor_set(v___x_3840_, 1, v___x_3839_);
lean_inc(v___x_3834_);
v___x_3841_ = l_Lean_Syntax_node1(v___x_3834_, v___x_3838_, v___x_3840_);
v___x_3842_ = l_Lean_Syntax_node3(v___x_3834_, v___x_3835_, v___x_3837_, v___x_3841_, v___x_3821_);
lean_inc(v___x_3842_);
v___x_3843_ = lean_apply_9(v_mkCont_3805_, v___x_3842_, v___y_3800_, v___y_3801_, v___y_3802_, v___y_3803_, v___y_3804_, v___y_3807_, v___y_3808_, lean_box(0));
if (lean_obj_tag(v___x_3843_) == 0)
{
lean_object* v_a_3844_; lean_object* v___x_3845_; lean_object* v___x_3846_; lean_object* v___x_3847_; lean_object* v___x_3848_; lean_object* v___x_3849_; lean_object* v___x_3850_; lean_object* v___x_3851_; lean_object* v___x_3852_; 
v_a_3844_ = lean_ctor_get(v___x_3843_, 0);
lean_inc(v_a_3844_);
lean_dec_ref(v___x_3843_);
lean_inc(v_a_3816_);
v___x_3845_ = l_Lean_Syntax_node1(v_a_3816_, v___x_3832_, v_e_3806_);
lean_inc_ref(v___x_3827_);
lean_inc(v_a_3816_);
v___x_3846_ = l_Lean_Syntax_node4(v_a_3816_, v___x_3828_, v___x_3829_, v___x_3827_, v___x_3831_, v___x_3845_);
v___x_3847_ = l_Lean_Syntax_node3(v_a_3816_, v___x_3822_, v___x_3824_, v___x_3827_, v___x_3846_);
v___x_3848_ = lean_unsigned_to_nat(1u);
v___x_3849_ = lean_mk_empty_array_with_capacity(v___x_3848_);
v___x_3850_ = lean_array_push(v___x_3849_, v___x_3842_);
v___x_3851_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_3851_, 0, v___x_3850_);
lean_ctor_set(v___x_3851_, 1, v___x_3847_);
lean_ctor_set(v___x_3851_, 2, v_a_3844_);
v___x_3852_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_3852_, 0, v___x_3851_);
return v___x_3852_;
}
else
{
lean_dec(v___x_3842_);
lean_dec_ref(v___x_3831_);
lean_dec_ref(v___x_3829_);
lean_dec_ref(v___x_3827_);
lean_dec_ref(v___x_3824_);
lean_dec(v_a_3816_);
lean_dec(v_e_3806_);
return v___x_3843_;
}
}
else
{
lean_object* v_a_3853_; lean_object* v___x_3854_; 
lean_dec(v_a_3814_);
lean_dec(v___y_3808_);
lean_dec_ref(v___y_3807_);
lean_dec(v_e_3806_);
lean_dec_ref(v_mkCont_3805_);
lean_dec(v___y_3804_);
lean_dec_ref(v___y_3803_);
lean_dec(v___y_3802_);
lean_dec_ref(v___y_3801_);
lean_dec(v___y_3800_);
v_a_3853_ = lean_ctor_get(v___x_3815_, 0);
lean_inc(v_a_3853_);
lean_dec_ref(v___x_3815_);
v___x_3854_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3854_, 0, v_a_3853_);
return v___x_3854_;
}
}
else
{
lean_object* v_a_3855_; lean_object* v___x_3856_; 
lean_dec(v___y_3808_);
lean_dec_ref(v___y_3807_);
lean_dec(v_e_3806_);
lean_dec_ref(v_mkCont_3805_);
lean_dec(v___y_3804_);
lean_dec_ref(v___y_3803_);
lean_dec(v___y_3802_);
lean_dec_ref(v___y_3801_);
lean_dec(v___y_3800_);
lean_dec_ref(v___f_3799_);
v_a_3855_ = lean_ctor_get(v___x_3813_, 0);
lean_inc(v_a_3855_);
lean_dec_ref(v___x_3813_);
v___x_3856_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_3856_, 0, v_a_3855_);
return v___x_3856_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1___boxed(lean_object* v___f_3857_, lean_object* v___y_3858_, lean_object* v___y_3859_, lean_object* v___y_3860_, lean_object* v___y_3861_, lean_object* v___y_3862_, lean_object* v_mkCont_3863_, lean_object* v_e_3864_, lean_object* v___y_3865_, lean_object* v___y_3866_, lean_object* v___y_3867_){
_start:
{
lean_object* v_res_3868_; 
v_res_3868_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1(v___f_3857_, v___y_3858_, v___y_3859_, v___y_3860_, v___y_3861_, v___y_3862_, v_mkCont_3863_, v_e_3864_, v___y_3865_, v___y_3866_);
return v_res_3868_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0(lean_object* v_e_3870_, lean_object* v_mkCont_3871_, lean_object* v___y_3872_, lean_object* v___y_3873_, lean_object* v___y_3874_, lean_object* v___y_3875_, lean_object* v___y_3876_, lean_object* v___y_3877_, lean_object* v___y_3878_){
_start:
{
lean_object* v_fileName_3880_; lean_object* v_fileMap_3881_; lean_object* v_options_3882_; lean_object* v_currRecDepth_3883_; lean_object* v_maxRecDepth_3884_; lean_object* v_ref_3885_; lean_object* v_currNamespace_3886_; lean_object* v_openDecls_3887_; lean_object* v_initHeartbeats_3888_; lean_object* v_maxHeartbeats_3889_; lean_object* v_quotContext_3890_; lean_object* v_currMacroScope_3891_; uint8_t v_diag_3892_; lean_object* v_cancelTk_x3f_3893_; uint8_t v_suppressElabErrors_3894_; lean_object* v_inheritedTraceOptions_3895_; lean_object* v___f_3896_; lean_object* v___f_3897_; lean_object* v_ref_3898_; lean_object* v___x_3899_; lean_object* v___x_3900_; 
v_fileName_3880_ = lean_ctor_get(v___y_3877_, 0);
v_fileMap_3881_ = lean_ctor_get(v___y_3877_, 1);
v_options_3882_ = lean_ctor_get(v___y_3877_, 2);
v_currRecDepth_3883_ = lean_ctor_get(v___y_3877_, 3);
v_maxRecDepth_3884_ = lean_ctor_get(v___y_3877_, 4);
v_ref_3885_ = lean_ctor_get(v___y_3877_, 5);
v_currNamespace_3886_ = lean_ctor_get(v___y_3877_, 6);
v_openDecls_3887_ = lean_ctor_get(v___y_3877_, 7);
v_initHeartbeats_3888_ = lean_ctor_get(v___y_3877_, 8);
v_maxHeartbeats_3889_ = lean_ctor_get(v___y_3877_, 9);
v_quotContext_3890_ = lean_ctor_get(v___y_3877_, 10);
v_currMacroScope_3891_ = lean_ctor_get(v___y_3877_, 11);
v_diag_3892_ = lean_ctor_get_uint8(v___y_3877_, sizeof(void*)*14);
v_cancelTk_x3f_3893_ = lean_ctor_get(v___y_3877_, 12);
v_suppressElabErrors_3894_ = lean_ctor_get_uint8(v___y_3877_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_3895_ = lean_ctor_get(v___y_3877_, 13);
v___f_3896_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___closed__0));
lean_inc(v_e_3870_);
v___f_3897_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___lam__1___boxed), 11, 8);
lean_closure_set(v___f_3897_, 0, v___f_3896_);
lean_closure_set(v___f_3897_, 1, v___y_3872_);
lean_closure_set(v___f_3897_, 2, v___y_3873_);
lean_closure_set(v___f_3897_, 3, v___y_3874_);
lean_closure_set(v___f_3897_, 4, v___y_3875_);
lean_closure_set(v___f_3897_, 5, v___y_3876_);
lean_closure_set(v___f_3897_, 6, v_mkCont_3871_);
lean_closure_set(v___f_3897_, 7, v_e_3870_);
v_ref_3898_ = l_Lean_replaceRef(v_e_3870_, v_ref_3885_);
lean_dec(v_e_3870_);
lean_inc_ref(v_inheritedTraceOptions_3895_);
lean_inc(v_cancelTk_x3f_3893_);
lean_inc(v_currMacroScope_3891_);
lean_inc(v_quotContext_3890_);
lean_inc(v_maxHeartbeats_3889_);
lean_inc(v_initHeartbeats_3888_);
lean_inc(v_openDecls_3887_);
lean_inc(v_currNamespace_3886_);
lean_inc(v_maxRecDepth_3884_);
lean_inc(v_currRecDepth_3883_);
lean_inc_ref(v_options_3882_);
lean_inc_ref(v_fileMap_3881_);
lean_inc_ref(v_fileName_3880_);
v___x_3899_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_3899_, 0, v_fileName_3880_);
lean_ctor_set(v___x_3899_, 1, v_fileMap_3881_);
lean_ctor_set(v___x_3899_, 2, v_options_3882_);
lean_ctor_set(v___x_3899_, 3, v_currRecDepth_3883_);
lean_ctor_set(v___x_3899_, 4, v_maxRecDepth_3884_);
lean_ctor_set(v___x_3899_, 5, v_ref_3898_);
lean_ctor_set(v___x_3899_, 6, v_currNamespace_3886_);
lean_ctor_set(v___x_3899_, 7, v_openDecls_3887_);
lean_ctor_set(v___x_3899_, 8, v_initHeartbeats_3888_);
lean_ctor_set(v___x_3899_, 9, v_maxHeartbeats_3889_);
lean_ctor_set(v___x_3899_, 10, v_quotContext_3890_);
lean_ctor_set(v___x_3899_, 11, v_currMacroScope_3891_);
lean_ctor_set(v___x_3899_, 12, v_cancelTk_x3f_3893_);
lean_ctor_set(v___x_3899_, 13, v_inheritedTraceOptions_3895_);
lean_ctor_set_uint8(v___x_3899_, sizeof(void*)*14, v_diag_3892_);
lean_ctor_set_uint8(v___x_3899_, sizeof(void*)*14 + 1, v_suppressElabErrors_3894_);
v___x_3900_ = l_Lean_Core_withFreshMacroScope___redArg(v___f_3897_, v___x_3899_, v___y_3878_);
return v___x_3900_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0___boxed(lean_object* v_e_3901_, lean_object* v_mkCont_3902_, lean_object* v___y_3903_, lean_object* v___y_3904_, lean_object* v___y_3905_, lean_object* v___y_3906_, lean_object* v___y_3907_, lean_object* v___y_3908_, lean_object* v___y_3909_, lean_object* v___y_3910_){
_start:
{
lean_object* v_res_3911_; 
v_res_3911_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0(v_e_3901_, v_mkCont_3902_, v___y_3903_, v___y_3904_, v___y_3905_, v___y_3906_, v___y_3907_, v___y_3908_, v___y_3909_);
lean_dec_ref(v___y_3908_);
return v_res_3911_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3(void){
_start:
{
lean_object* v___x_3919_; lean_object* v___x_3920_; 
v___x_3919_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__2));
v___x_3920_ = l_String_toRawSubstring_x27(v___x_3919_);
return v___x_3920_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0(lean_object* v_yFresh_3932_, lean_object* v___y_3933_, lean_object* v___y_3934_){
_start:
{
lean_object* v_quotContext_3935_; lean_object* v_currMacroScope_3936_; lean_object* v_ref_3937_; uint8_t v___x_3938_; lean_object* v___x_3939_; lean_object* v___x_3940_; lean_object* v___x_3941_; lean_object* v___x_3942_; lean_object* v___x_3943_; lean_object* v___x_3944_; lean_object* v___x_3945_; lean_object* v___x_3946_; lean_object* v___x_3947_; lean_object* v___x_3948_; lean_object* v___x_3949_; lean_object* v___x_3950_; 
v_quotContext_3935_ = lean_ctor_get(v___y_3933_, 1);
lean_inc(v_quotContext_3935_);
v_currMacroScope_3936_ = lean_ctor_get(v___y_3933_, 2);
lean_inc(v_currMacroScope_3936_);
v_ref_3937_ = lean_ctor_get(v___y_3933_, 5);
lean_inc(v_ref_3937_);
lean_dec_ref(v___y_3933_);
v___x_3938_ = 0;
v___x_3939_ = l_Lean_SourceInfo_fromRef(v_ref_3937_, v___x_3938_);
lean_dec(v_ref_3937_);
v___x_3940_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_3941_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_3942_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
v___x_3943_ = l_Lean_addMacroScope(v_quotContext_3935_, v___x_3942_, v_currMacroScope_3936_);
v___x_3944_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_3939_);
v___x_3945_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_3945_, 0, v___x_3939_);
lean_ctor_set(v___x_3945_, 1, v___x_3941_);
lean_ctor_set(v___x_3945_, 2, v___x_3943_);
lean_ctor_set(v___x_3945_, 3, v___x_3944_);
v___x_3946_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v___x_3939_);
v___x_3947_ = l_Lean_Syntax_node1(v___x_3939_, v___x_3946_, v_yFresh_3932_);
v___x_3948_ = l_Lean_Syntax_node2(v___x_3939_, v___x_3940_, v___x_3945_, v___x_3947_);
v___x_3949_ = lean_alloc_ctor(4, 1, 0);
lean_ctor_set(v___x_3949_, 0, v___x_3948_);
v___x_3950_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3950_, 0, v___x_3949_);
lean_ctor_set(v___x_3950_, 1, v___y_3934_);
return v___x_3950_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1(lean_object* v_action_3951_, lean_object* v_rs_3952_, lean_object* v___f_3953_, lean_object* v_y_3954_, lean_object* v___y_3955_, lean_object* v___y_3956_, lean_object* v___y_3957_, lean_object* v___y_3958_, lean_object* v___y_3959_, lean_object* v___y_3960_, lean_object* v___y_3961_){
_start:
{
lean_object* v___x_3963_; 
v___x_3963_ = l_Lean_Elab_Term_Do_mkJmp(v_action_3951_, v_rs_3952_, v_y_3954_, v___f_3953_, v___y_3955_, v___y_3956_, v___y_3957_, v___y_3958_, v___y_3959_, v___y_3960_, v___y_3961_);
return v___x_3963_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1___boxed(lean_object* v_action_3964_, lean_object* v_rs_3965_, lean_object* v___f_3966_, lean_object* v_y_3967_, lean_object* v___y_3968_, lean_object* v___y_3969_, lean_object* v___y_3970_, lean_object* v___y_3971_, lean_object* v___y_3972_, lean_object* v___y_3973_, lean_object* v___y_3974_, lean_object* v___y_3975_){
_start:
{
lean_object* v_res_3976_; 
v_res_3976_ = l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1(v_action_3964_, v_rs_3965_, v___f_3966_, v_y_3967_, v___y_3968_, v___y_3969_, v___y_3970_, v___y_3971_, v___y_3972_, v___y_3973_, v___y_3974_);
lean_dec(v___y_3972_);
lean_dec_ref(v___y_3971_);
lean_dec(v___y_3970_);
lean_dec_ref(v___y_3969_);
lean_dec(v___y_3968_);
return v_res_3976_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2(lean_object* v_ref_3977_, lean_object* v_y_3978_, lean_object* v___y_3979_, lean_object* v___y_3980_){
_start:
{
lean_object* v___x_3981_; lean_object* v___x_3982_; 
v___x_3981_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_3981_, 0, v_ref_3977_);
lean_ctor_set(v___x_3981_, 1, v_y_3978_);
v___x_3982_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_3982_, 0, v___x_3981_);
lean_ctor_set(v___x_3982_, 1, v___y_3980_);
return v___x_3982_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2___boxed(lean_object* v_ref_3983_, lean_object* v_y_3984_, lean_object* v___y_3985_, lean_object* v___y_3986_){
_start:
{
lean_object* v_res_3987_; 
v_res_3987_ = l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2(v_ref_3983_, v_y_3984_, v___y_3985_, v___y_3986_);
lean_dec_ref(v___y_3985_);
return v_res_3987_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2(lean_object* v_rs_3989_, size_t v_sz_3990_, size_t v_i_3991_, lean_object* v_bs_3992_, lean_object* v___y_3993_, lean_object* v___y_3994_, lean_object* v___y_3995_, lean_object* v___y_3996_, lean_object* v___y_3997_, lean_object* v___y_3998_, lean_object* v___y_3999_){
_start:
{
uint8_t v___x_4001_; 
v___x_4001_ = lean_usize_dec_lt(v_i_3991_, v_sz_3990_);
if (v___x_4001_ == 0)
{
lean_object* v___x_4002_; 
lean_dec(v___y_3999_);
lean_dec_ref(v___y_3998_);
lean_dec(v___y_3997_);
lean_dec_ref(v___y_3996_);
lean_dec(v___y_3995_);
lean_dec_ref(v___y_3994_);
lean_dec(v___y_3993_);
lean_dec(v_rs_3989_);
v___x_4002_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4002_, 0, v_bs_3992_);
return v___x_4002_;
}
else
{
lean_object* v_v_4003_; lean_object* v_ref_4004_; lean_object* v_var_x3f_4005_; lean_object* v_funName_4006_; lean_object* v_pvars_4007_; lean_object* v_rhs_4008_; lean_object* v___x_4009_; lean_object* v___x_4010_; lean_object* v___x_4011_; 
v_v_4003_ = lean_array_uget_borrowed(v_bs_3992_, v_i_3991_);
v_ref_4004_ = lean_ctor_get(v_v_4003_, 0);
lean_inc(v_ref_4004_);
v_var_x3f_4005_ = lean_ctor_get(v_v_4003_, 1);
lean_inc(v_var_x3f_4005_);
v_funName_4006_ = lean_ctor_get(v_v_4003_, 2);
lean_inc(v_funName_4006_);
v_pvars_4007_ = lean_ctor_get(v_v_4003_, 3);
lean_inc_ref(v_pvars_4007_);
v_rhs_4008_ = lean_ctor_get(v_v_4003_, 4);
lean_inc(v_v_4003_);
v___x_4009_ = l_Lean_Elab_Term_Do_AltExpr_vars___redArg(v_v_4003_);
lean_inc(v_rs_3989_);
v___x_4010_ = l_Lean_Elab_Term_Do_eraseVars(v_rs_3989_, v___x_4009_);
lean_dec_ref(v___x_4009_);
lean_inc(v___y_3999_);
lean_inc_ref(v___y_3998_);
lean_inc(v___y_3997_);
lean_inc_ref(v___y_3996_);
lean_inc(v___y_3995_);
lean_inc_ref(v___y_3994_);
lean_inc(v___y_3993_);
lean_inc(v_rhs_4008_);
v___x_4011_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4010_, v_rhs_4008_, v___y_3993_, v___y_3994_, v___y_3995_, v___y_3996_, v___y_3997_, v___y_3998_, v___y_3999_);
if (lean_obj_tag(v___x_4011_) == 0)
{
lean_object* v_a_4012_; lean_object* v___x_4013_; lean_object* v_bs_x27_4014_; lean_object* v___x_4015_; size_t v___x_4016_; size_t v___x_4017_; lean_object* v___x_4018_; 
v_a_4012_ = lean_ctor_get(v___x_4011_, 0);
lean_inc(v_a_4012_);
lean_dec_ref(v___x_4011_);
v___x_4013_ = lean_unsigned_to_nat(0u);
v_bs_x27_4014_ = lean_array_uset(v_bs_3992_, v_i_3991_, v___x_4013_);
v___x_4015_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_4015_, 0, v_ref_4004_);
lean_ctor_set(v___x_4015_, 1, v_var_x3f_4005_);
lean_ctor_set(v___x_4015_, 2, v_funName_4006_);
lean_ctor_set(v___x_4015_, 3, v_pvars_4007_);
lean_ctor_set(v___x_4015_, 4, v_a_4012_);
v___x_4016_ = ((size_t)1ULL);
v___x_4017_ = lean_usize_add(v_i_3991_, v___x_4016_);
v___x_4018_ = lean_array_uset(v_bs_x27_4014_, v_i_3991_, v___x_4015_);
v_i_3991_ = v___x_4017_;
v_bs_3992_ = v___x_4018_;
goto _start;
}
else
{
lean_object* v_a_4020_; lean_object* v___x_4021_; 
lean_dec_ref(v_pvars_4007_);
lean_dec(v_funName_4006_);
lean_dec(v_var_x3f_4005_);
lean_dec(v_ref_4004_);
lean_dec(v___y_3999_);
lean_dec_ref(v___y_3998_);
lean_dec(v___y_3997_);
lean_dec_ref(v___y_3996_);
lean_dec(v___y_3995_);
lean_dec_ref(v___y_3994_);
lean_dec(v___y_3993_);
lean_dec_ref(v_bs_3992_);
lean_dec(v_rs_3989_);
v_a_4020_ = lean_ctor_get(v___x_4011_, 0);
lean_inc(v_a_4020_);
lean_dec_ref(v___x_4011_);
v___x_4021_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4021_, 0, v_a_4020_);
return v___x_4021_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux(lean_object* v_rs_4022_, lean_object* v_c_4023_, lean_object* v_a_4024_, lean_object* v_a_4025_, lean_object* v_a_4026_, lean_object* v_a_4027_, lean_object* v_a_4028_, lean_object* v_a_4029_, lean_object* v_a_4030_){
_start:
{
switch(lean_obj_tag(v_c_4023_))
{
case 0:
{
lean_object* v_xs_4032_; lean_object* v_doElem_4033_; lean_object* v_k_4034_; lean_object* v___x_4035_; lean_object* v___x_4036_; 
v_xs_4032_ = lean_ctor_get(v_c_4023_, 0);
lean_inc_ref(v_xs_4032_);
v_doElem_4033_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_doElem_4033_);
v_k_4034_ = lean_ctor_get(v_c_4023_, 2);
lean_inc_ref(v_k_4034_);
lean_dec_ref(v_c_4023_);
v___x_4035_ = l_Lean_Elab_Term_Do_eraseVars(v_rs_4022_, v_xs_4032_);
v___x_4036_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4035_, v_k_4034_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4036_) == 0)
{
lean_object* v_a_4037_; lean_object* v___x_4038_; lean_object* v___x_4039_; 
v_a_4037_ = lean_ctor_get(v___x_4036_, 0);
lean_inc(v_a_4037_);
lean_dec_ref(v___x_4036_);
v___x_4038_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_4038_, 0, v_xs_4032_);
lean_ctor_set(v___x_4038_, 1, v_doElem_4033_);
lean_ctor_set(v___x_4038_, 2, v_a_4037_);
v___x_4039_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4039_, 0, v___x_4038_);
return v___x_4039_;
}
else
{
lean_dec(v_doElem_4033_);
lean_dec_ref(v_xs_4032_);
return v___x_4036_;
}
}
case 1:
{
lean_object* v_xs_4040_; lean_object* v_doElem_4041_; lean_object* v_k_4042_; lean_object* v___x_4043_; lean_object* v___x_4044_; 
v_xs_4040_ = lean_ctor_get(v_c_4023_, 0);
lean_inc_ref(v_xs_4040_);
v_doElem_4041_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_doElem_4041_);
v_k_4042_ = lean_ctor_get(v_c_4023_, 2);
lean_inc_ref(v_k_4042_);
lean_dec_ref(v_c_4023_);
v___x_4043_ = l_Lean_Elab_Term_Do_insertVars(v_rs_4022_, v_xs_4040_);
v___x_4044_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4043_, v_k_4042_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4044_) == 0)
{
lean_object* v_a_4045_; lean_object* v___x_4046_; lean_object* v___x_4047_; 
v_a_4045_ = lean_ctor_get(v___x_4044_, 0);
lean_inc(v_a_4045_);
lean_dec_ref(v___x_4044_);
v___x_4046_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_4046_, 0, v_xs_4040_);
lean_ctor_set(v___x_4046_, 1, v_doElem_4041_);
lean_ctor_set(v___x_4046_, 2, v_a_4045_);
v___x_4047_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4047_, 0, v___x_4046_);
return v___x_4047_;
}
else
{
lean_dec(v_doElem_4041_);
lean_dec_ref(v_xs_4040_);
return v___x_4044_;
}
}
case 2:
{
lean_object* v_name_4048_; lean_object* v_params_4049_; lean_object* v_body_4050_; lean_object* v_k_4051_; lean_object* v___x_4052_; 
v_name_4048_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_name_4048_);
v_params_4049_ = lean_ctor_get(v_c_4023_, 1);
lean_inc_ref(v_params_4049_);
v_body_4050_ = lean_ctor_get(v_c_4023_, 2);
lean_inc_ref(v_body_4050_);
v_k_4051_ = lean_ctor_get(v_c_4023_, 3);
lean_inc_ref(v_k_4051_);
lean_dec_ref(v_c_4023_);
lean_inc(v_a_4030_);
lean_inc_ref(v_a_4029_);
lean_inc(v_a_4028_);
lean_inc_ref(v_a_4027_);
lean_inc(v_a_4026_);
lean_inc_ref(v_a_4025_);
lean_inc(v_a_4024_);
lean_inc(v_rs_4022_);
v___x_4052_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v_rs_4022_, v_body_4050_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4052_) == 0)
{
lean_object* v_a_4053_; lean_object* v___x_4054_; 
v_a_4053_ = lean_ctor_get(v___x_4052_, 0);
lean_inc(v_a_4053_);
lean_dec_ref(v___x_4052_);
v___x_4054_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v_rs_4022_, v_k_4051_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4054_) == 0)
{
lean_object* v_a_4055_; lean_object* v___x_4056_; lean_object* v___x_4057_; 
v_a_4055_ = lean_ctor_get(v___x_4054_, 0);
lean_inc(v_a_4055_);
lean_dec_ref(v___x_4054_);
v___x_4056_ = lean_alloc_ctor(2, 4, 0);
lean_ctor_set(v___x_4056_, 0, v_name_4048_);
lean_ctor_set(v___x_4056_, 1, v_params_4049_);
lean_ctor_set(v___x_4056_, 2, v_a_4053_);
lean_ctor_set(v___x_4056_, 3, v_a_4055_);
v___x_4057_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4057_, 0, v___x_4056_);
return v___x_4057_;
}
else
{
lean_dec(v_a_4053_);
lean_dec_ref(v_params_4049_);
lean_dec(v_name_4048_);
return v___x_4054_;
}
}
else
{
lean_dec_ref(v_k_4051_);
lean_dec_ref(v_params_4049_);
lean_dec(v_name_4048_);
lean_dec(v_a_4030_);
lean_dec_ref(v_a_4029_);
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
lean_dec(v_a_4024_);
lean_dec(v_rs_4022_);
return v___x_4052_;
}
}
case 3:
{
lean_object* v_action_4058_; lean_object* v_k_4059_; lean_object* v___x_4060_; 
v_action_4058_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_action_4058_);
v_k_4059_ = lean_ctor_get(v_c_4023_, 1);
lean_inc_ref(v_k_4059_);
lean_dec_ref(v_c_4023_);
v___x_4060_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v_rs_4022_, v_k_4059_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4060_) == 0)
{
lean_object* v_a_4061_; lean_object* v___x_4062_; lean_object* v___x_4063_; 
v_a_4061_ = lean_ctor_get(v___x_4060_, 0);
lean_inc(v_a_4061_);
lean_dec_ref(v___x_4060_);
v___x_4062_ = lean_alloc_ctor(3, 2, 0);
lean_ctor_set(v___x_4062_, 0, v_action_4058_);
lean_ctor_set(v___x_4062_, 1, v_a_4061_);
v___x_4063_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4063_, 0, v___x_4062_);
return v___x_4063_;
}
else
{
lean_dec(v_action_4058_);
return v___x_4060_;
}
}
case 4:
{
lean_object* v_action_4064_; lean_object* v___f_4065_; lean_object* v___f_4066_; lean_object* v___x_4067_; 
v_action_4064_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_action_4064_);
lean_dec_ref(v_c_4023_);
v___f_4065_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___closed__0));
lean_inc(v_action_4064_);
v___f_4066_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__1___boxed), 12, 3);
lean_closure_set(v___f_4066_, 0, v_action_4064_);
lean_closure_set(v___f_4066_, 1, v_rs_4022_);
lean_closure_set(v___f_4066_, 2, v___f_4065_);
v___x_4067_ = l_Lean_Elab_Term_Do_mkAuxDeclFor___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__0(v_action_4064_, v___f_4066_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
lean_dec_ref(v_a_4029_);
return v___x_4067_;
}
case 7:
{
lean_object* v_ref_4068_; lean_object* v_val_4069_; lean_object* v___f_4070_; lean_object* v___x_4071_; 
v_ref_4068_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_ref_4068_);
v_val_4069_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_val_4069_);
lean_dec_ref(v_c_4023_);
lean_inc(v_ref_4068_);
v___f_4070_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__2___boxed), 4, 1);
lean_closure_set(v___f_4070_, 0, v_ref_4068_);
v___x_4071_ = l_Lean_Elab_Term_Do_mkJmp(v_ref_4068_, v_rs_4022_, v_val_4069_, v___f_4070_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
lean_dec(v_a_4024_);
return v___x_4071_;
}
case 8:
{
lean_object* v_ref_4072_; lean_object* v_h_x3f_4073_; lean_object* v_optIdent_4074_; lean_object* v_cond_4075_; lean_object* v_thenBranch_4076_; lean_object* v_elseBranch_4077_; lean_object* v___x_4078_; lean_object* v___x_4079_; 
v_ref_4072_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_ref_4072_);
v_h_x3f_4073_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_h_x3f_4073_);
v_optIdent_4074_ = lean_ctor_get(v_c_4023_, 2);
lean_inc(v_optIdent_4074_);
v_cond_4075_ = lean_ctor_get(v_c_4023_, 3);
lean_inc(v_cond_4075_);
v_thenBranch_4076_ = lean_ctor_get(v_c_4023_, 4);
lean_inc_ref(v_thenBranch_4076_);
v_elseBranch_4077_ = lean_ctor_get(v_c_4023_, 5);
lean_inc_ref(v_elseBranch_4077_);
lean_dec_ref(v_c_4023_);
lean_inc(v_h_x3f_4073_);
v___x_4078_ = l_Lean_Elab_Term_Do_eraseOptVar(v_rs_4022_, v_h_x3f_4073_);
lean_inc(v_a_4030_);
lean_inc_ref(v_a_4029_);
lean_inc(v_a_4028_);
lean_inc_ref(v_a_4027_);
lean_inc(v_a_4026_);
lean_inc_ref(v_a_4025_);
lean_inc(v_a_4024_);
lean_inc(v___x_4078_);
v___x_4079_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4078_, v_thenBranch_4076_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4079_) == 0)
{
lean_object* v_a_4080_; lean_object* v___x_4081_; 
v_a_4080_ = lean_ctor_get(v___x_4079_, 0);
lean_inc(v_a_4080_);
lean_dec_ref(v___x_4079_);
v___x_4081_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4078_, v_elseBranch_4077_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4081_) == 0)
{
lean_object* v_a_4082_; lean_object* v___x_4083_; lean_object* v___x_4084_; 
v_a_4082_ = lean_ctor_get(v___x_4081_, 0);
lean_inc(v_a_4082_);
lean_dec_ref(v___x_4081_);
v___x_4083_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_4083_, 0, v_ref_4072_);
lean_ctor_set(v___x_4083_, 1, v_h_x3f_4073_);
lean_ctor_set(v___x_4083_, 2, v_optIdent_4074_);
lean_ctor_set(v___x_4083_, 3, v_cond_4075_);
lean_ctor_set(v___x_4083_, 4, v_a_4080_);
lean_ctor_set(v___x_4083_, 5, v_a_4082_);
v___x_4084_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4084_, 0, v___x_4083_);
return v___x_4084_;
}
else
{
lean_dec(v_a_4080_);
lean_dec(v_cond_4075_);
lean_dec(v_optIdent_4074_);
lean_dec(v_h_x3f_4073_);
lean_dec(v_ref_4072_);
return v___x_4081_;
}
}
else
{
lean_dec(v___x_4078_);
lean_dec_ref(v_elseBranch_4077_);
lean_dec(v_cond_4075_);
lean_dec(v_optIdent_4074_);
lean_dec(v_h_x3f_4073_);
lean_dec(v_ref_4072_);
lean_dec(v_a_4030_);
lean_dec_ref(v_a_4029_);
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
lean_dec(v_a_4024_);
return v___x_4079_;
}
}
case 9:
{
lean_object* v_ref_4085_; lean_object* v_gen_4086_; lean_object* v_discrs_4087_; lean_object* v_optMotive_4088_; lean_object* v_alts_4089_; size_t v_sz_4090_; size_t v___x_4091_; lean_object* v___x_4092_; 
v_ref_4085_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_ref_4085_);
v_gen_4086_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_gen_4086_);
v_discrs_4087_ = lean_ctor_get(v_c_4023_, 2);
lean_inc(v_discrs_4087_);
v_optMotive_4088_ = lean_ctor_get(v_c_4023_, 3);
lean_inc(v_optMotive_4088_);
v_alts_4089_ = lean_ctor_get(v_c_4023_, 4);
lean_inc_ref(v_alts_4089_);
lean_dec_ref(v_c_4023_);
v_sz_4090_ = lean_array_size(v_alts_4089_);
v___x_4091_ = ((size_t)0ULL);
v___x_4092_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1(v_rs_4022_, v_sz_4090_, v___x_4091_, v_alts_4089_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4092_) == 0)
{
lean_object* v_a_4093_; lean_object* v___x_4094_; lean_object* v___x_4095_; 
v_a_4093_ = lean_ctor_get(v___x_4092_, 0);
lean_inc(v_a_4093_);
lean_dec_ref(v___x_4092_);
v___x_4094_ = lean_alloc_ctor(9, 5, 0);
lean_ctor_set(v___x_4094_, 0, v_ref_4085_);
lean_ctor_set(v___x_4094_, 1, v_gen_4086_);
lean_ctor_set(v___x_4094_, 2, v_discrs_4087_);
lean_ctor_set(v___x_4094_, 3, v_optMotive_4088_);
lean_ctor_set(v___x_4094_, 4, v_a_4093_);
v___x_4095_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4095_, 0, v___x_4094_);
return v___x_4095_;
}
else
{
lean_object* v_a_4096_; lean_object* v___x_4097_; 
lean_dec(v_optMotive_4088_);
lean_dec(v_discrs_4087_);
lean_dec(v_gen_4086_);
lean_dec(v_ref_4085_);
v_a_4096_ = lean_ctor_get(v___x_4092_, 0);
lean_inc(v_a_4096_);
lean_dec_ref(v___x_4092_);
v___x_4097_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4097_, 0, v_a_4096_);
return v___x_4097_;
}
}
case 10:
{
lean_object* v_ref_4098_; uint8_t v_meta_4099_; lean_object* v_discr_4100_; lean_object* v_alts_4101_; lean_object* v_elseBranch_4102_; size_t v_sz_4103_; size_t v___x_4104_; lean_object* v___x_4105_; 
v_ref_4098_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_ref_4098_);
v_meta_4099_ = lean_ctor_get_uint8(v_c_4023_, sizeof(void*)*4);
v_discr_4100_ = lean_ctor_get(v_c_4023_, 1);
lean_inc(v_discr_4100_);
v_alts_4101_ = lean_ctor_get(v_c_4023_, 2);
lean_inc_ref(v_alts_4101_);
v_elseBranch_4102_ = lean_ctor_get(v_c_4023_, 3);
lean_inc_ref(v_elseBranch_4102_);
lean_dec_ref(v_c_4023_);
v_sz_4103_ = lean_array_size(v_alts_4101_);
v___x_4104_ = ((size_t)0ULL);
lean_inc(v_a_4030_);
lean_inc_ref(v_a_4029_);
lean_inc(v_a_4028_);
lean_inc_ref(v_a_4027_);
lean_inc(v_a_4026_);
lean_inc_ref(v_a_4025_);
lean_inc(v_a_4024_);
lean_inc(v_rs_4022_);
v___x_4105_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2(v_rs_4022_, v_sz_4103_, v___x_4104_, v_alts_4101_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4105_) == 0)
{
lean_object* v_a_4106_; lean_object* v___x_4107_; 
v_a_4106_ = lean_ctor_get(v___x_4105_, 0);
lean_inc(v_a_4106_);
lean_dec_ref(v___x_4105_);
v___x_4107_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v_rs_4022_, v_elseBranch_4102_, v_a_4024_, v_a_4025_, v_a_4026_, v_a_4027_, v_a_4028_, v_a_4029_, v_a_4030_);
if (lean_obj_tag(v___x_4107_) == 0)
{
lean_object* v_a_4108_; lean_object* v___x_4109_; lean_object* v___x_4110_; 
v_a_4108_ = lean_ctor_get(v___x_4107_, 0);
lean_inc(v_a_4108_);
lean_dec_ref(v___x_4107_);
v___x_4109_ = lean_alloc_ctor(10, 4, 1);
lean_ctor_set(v___x_4109_, 0, v_ref_4098_);
lean_ctor_set(v___x_4109_, 1, v_discr_4100_);
lean_ctor_set(v___x_4109_, 2, v_a_4106_);
lean_ctor_set(v___x_4109_, 3, v_a_4108_);
lean_ctor_set_uint8(v___x_4109_, sizeof(void*)*4, v_meta_4099_);
v___x_4110_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4110_, 0, v___x_4109_);
return v___x_4110_;
}
else
{
lean_dec(v_a_4106_);
lean_dec(v_discr_4100_);
lean_dec(v_ref_4098_);
return v___x_4107_;
}
}
else
{
lean_object* v_a_4111_; lean_object* v___x_4112_; 
lean_dec_ref(v_elseBranch_4102_);
lean_dec(v_discr_4100_);
lean_dec(v_ref_4098_);
lean_dec(v_a_4030_);
lean_dec_ref(v_a_4029_);
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
lean_dec(v_a_4024_);
lean_dec(v_rs_4022_);
v_a_4111_ = lean_ctor_get(v___x_4105_, 0);
lean_inc(v_a_4111_);
lean_dec_ref(v___x_4105_);
v___x_4112_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4112_, 0, v_a_4111_);
return v___x_4112_;
}
}
case 11:
{
lean_object* v___x_4113_; 
lean_dec(v_a_4030_);
lean_dec_ref(v_a_4029_);
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
lean_dec(v_a_4024_);
lean_dec(v_rs_4022_);
v___x_4113_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4113_, 0, v_c_4023_);
return v___x_4113_;
}
default: 
{
lean_object* v_ref_4114_; lean_object* v___x_4115_; 
lean_dec(v_a_4028_);
lean_dec_ref(v_a_4027_);
lean_dec(v_a_4026_);
lean_dec_ref(v_a_4025_);
v_ref_4114_ = lean_ctor_get(v_c_4023_, 0);
lean_inc(v_ref_4114_);
v___x_4115_ = l_Lean_Elab_Term_Do_mkSimpleJmp___redArg(v_ref_4114_, v_rs_4022_, v_c_4023_, v_a_4024_, v_a_4029_, v_a_4030_);
lean_dec(v_a_4024_);
return v___x_4115_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1(lean_object* v_rs_4116_, size_t v_sz_4117_, size_t v_i_4118_, lean_object* v_bs_4119_, lean_object* v___y_4120_, lean_object* v___y_4121_, lean_object* v___y_4122_, lean_object* v___y_4123_, lean_object* v___y_4124_, lean_object* v___y_4125_, lean_object* v___y_4126_){
_start:
{
uint8_t v___x_4128_; 
v___x_4128_ = lean_usize_dec_lt(v_i_4118_, v_sz_4117_);
if (v___x_4128_ == 0)
{
lean_object* v___x_4129_; 
lean_dec(v___y_4126_);
lean_dec_ref(v___y_4125_);
lean_dec(v___y_4124_);
lean_dec_ref(v___y_4123_);
lean_dec(v___y_4122_);
lean_dec_ref(v___y_4121_);
lean_dec(v___y_4120_);
lean_dec(v_rs_4116_);
v___x_4129_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4129_, 0, v_bs_4119_);
return v___x_4129_;
}
else
{
lean_object* v_v_4130_; lean_object* v_ref_4131_; lean_object* v_vars_4132_; lean_object* v_patterns_4133_; lean_object* v_rhs_4134_; lean_object* v___x_4135_; lean_object* v___x_4136_; 
v_v_4130_ = lean_array_uget_borrowed(v_bs_4119_, v_i_4118_);
v_ref_4131_ = lean_ctor_get(v_v_4130_, 0);
lean_inc(v_ref_4131_);
v_vars_4132_ = lean_ctor_get(v_v_4130_, 1);
lean_inc_ref(v_vars_4132_);
v_patterns_4133_ = lean_ctor_get(v_v_4130_, 2);
lean_inc(v_patterns_4133_);
v_rhs_4134_ = lean_ctor_get(v_v_4130_, 3);
lean_inc(v_rs_4116_);
v___x_4135_ = l_Lean_Elab_Term_Do_eraseVars(v_rs_4116_, v_vars_4132_);
lean_inc(v___y_4126_);
lean_inc_ref(v___y_4125_);
lean_inc(v___y_4124_);
lean_inc_ref(v___y_4123_);
lean_inc(v___y_4122_);
lean_inc_ref(v___y_4121_);
lean_inc(v___y_4120_);
lean_inc(v_rhs_4134_);
v___x_4136_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4135_, v_rhs_4134_, v___y_4120_, v___y_4121_, v___y_4122_, v___y_4123_, v___y_4124_, v___y_4125_, v___y_4126_);
if (lean_obj_tag(v___x_4136_) == 0)
{
lean_object* v_a_4137_; lean_object* v___x_4138_; lean_object* v_bs_x27_4139_; lean_object* v___x_4140_; size_t v___x_4141_; size_t v___x_4142_; lean_object* v___x_4143_; 
v_a_4137_ = lean_ctor_get(v___x_4136_, 0);
lean_inc(v_a_4137_);
lean_dec_ref(v___x_4136_);
v___x_4138_ = lean_unsigned_to_nat(0u);
v_bs_x27_4139_ = lean_array_uset(v_bs_4119_, v_i_4118_, v___x_4138_);
v___x_4140_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_4140_, 0, v_ref_4131_);
lean_ctor_set(v___x_4140_, 1, v_vars_4132_);
lean_ctor_set(v___x_4140_, 2, v_patterns_4133_);
lean_ctor_set(v___x_4140_, 3, v_a_4137_);
v___x_4141_ = ((size_t)1ULL);
v___x_4142_ = lean_usize_add(v_i_4118_, v___x_4141_);
v___x_4143_ = lean_array_uset(v_bs_x27_4139_, v_i_4118_, v___x_4140_);
v_i_4118_ = v___x_4142_;
v_bs_4119_ = v___x_4143_;
goto _start;
}
else
{
lean_object* v_a_4145_; lean_object* v___x_4146_; 
lean_dec(v_patterns_4133_);
lean_dec_ref(v_vars_4132_);
lean_dec(v_ref_4131_);
lean_dec(v___y_4126_);
lean_dec_ref(v___y_4125_);
lean_dec(v___y_4124_);
lean_dec_ref(v___y_4123_);
lean_dec(v___y_4122_);
lean_dec_ref(v___y_4121_);
lean_dec(v___y_4120_);
lean_dec_ref(v_bs_4119_);
lean_dec(v_rs_4116_);
v_a_4145_ = lean_ctor_get(v___x_4136_, 0);
lean_inc(v_a_4145_);
lean_dec_ref(v___x_4136_);
v___x_4146_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4146_, 0, v_a_4145_);
return v___x_4146_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1___boxed(lean_object* v_rs_4147_, lean_object* v_sz_4148_, lean_object* v_i_4149_, lean_object* v_bs_4150_, lean_object* v___y_4151_, lean_object* v___y_4152_, lean_object* v___y_4153_, lean_object* v___y_4154_, lean_object* v___y_4155_, lean_object* v___y_4156_, lean_object* v___y_4157_, lean_object* v___y_4158_){
_start:
{
size_t v_sz_boxed_4159_; size_t v_i_boxed_4160_; lean_object* v_res_4161_; 
v_sz_boxed_4159_ = lean_unbox_usize(v_sz_4148_);
lean_dec(v_sz_4148_);
v_i_boxed_4160_ = lean_unbox_usize(v_i_4149_);
lean_dec(v_i_4149_);
v_res_4161_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__1(v_rs_4147_, v_sz_boxed_4159_, v_i_boxed_4160_, v_bs_4150_, v___y_4151_, v___y_4152_, v___y_4153_, v___y_4154_, v___y_4155_, v___y_4156_, v___y_4157_);
return v_res_4161_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2___boxed(lean_object* v_rs_4162_, lean_object* v_sz_4163_, lean_object* v_i_4164_, lean_object* v_bs_4165_, lean_object* v___y_4166_, lean_object* v___y_4167_, lean_object* v___y_4168_, lean_object* v___y_4169_, lean_object* v___y_4170_, lean_object* v___y_4171_, lean_object* v___y_4172_, lean_object* v___y_4173_){
_start:
{
size_t v_sz_boxed_4174_; size_t v_i_boxed_4175_; lean_object* v_res_4176_; 
v_sz_boxed_4174_ = lean_unbox_usize(v_sz_4163_);
lean_dec(v_sz_4163_);
v_i_boxed_4175_ = lean_unbox_usize(v_i_4164_);
lean_dec(v_i_4164_);
v_res_4176_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_pullExitPointsAux_spec__2(v_rs_4162_, v_sz_boxed_4174_, v_i_boxed_4175_, v_bs_4165_, v___y_4166_, v___y_4167_, v___y_4168_, v___y_4169_, v___y_4170_, v___y_4171_, v___y_4172_);
return v_res_4176_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPointsAux___boxed(lean_object* v_rs_4177_, lean_object* v_c_4178_, lean_object* v_a_4179_, lean_object* v_a_4180_, lean_object* v_a_4181_, lean_object* v_a_4182_, lean_object* v_a_4183_, lean_object* v_a_4184_, lean_object* v_a_4185_, lean_object* v_a_4186_){
_start:
{
lean_object* v_res_4187_; 
v_res_4187_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v_rs_4177_, v_c_4178_, v_a_4179_, v_a_4180_, v_a_4181_, v_a_4182_, v_a_4183_, v_a_4184_, v_a_4185_);
return v_res_4187_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPoints(lean_object* v_c_4190_, lean_object* v_a_4191_, lean_object* v_a_4192_, lean_object* v_a_4193_, lean_object* v_a_4194_, lean_object* v_a_4195_, lean_object* v_a_4196_){
_start:
{
uint8_t v___x_4198_; 
lean_inc_ref(v_c_4190_);
v___x_4198_ = l_Lean_Elab_Term_Do_hasExitPoint(v_c_4190_);
if (v___x_4198_ == 0)
{
lean_object* v___x_4199_; 
lean_dec(v_a_4196_);
lean_dec_ref(v_a_4195_);
lean_dec(v_a_4194_);
lean_dec_ref(v_a_4193_);
lean_dec(v_a_4192_);
lean_dec_ref(v_a_4191_);
v___x_4199_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4199_, 0, v_c_4190_);
return v___x_4199_;
}
else
{
lean_object* v___x_4200_; lean_object* v___x_4201_; lean_object* v___x_4202_; lean_object* v___x_4203_; 
v___x_4200_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPoints___closed__0));
v___x_4201_ = lean_st_mk_ref(v___x_4200_);
v___x_4202_ = lean_box(1);
lean_inc(v___x_4201_);
v___x_4203_ = l_Lean_Elab_Term_Do_pullExitPointsAux(v___x_4202_, v_c_4190_, v___x_4201_, v_a_4191_, v_a_4192_, v_a_4193_, v_a_4194_, v_a_4195_, v_a_4196_);
if (lean_obj_tag(v___x_4203_) == 0)
{
lean_object* v_a_4204_; lean_object* v___x_4205_; lean_object* v___x_4206_; lean_object* v___x_4207_; 
v_a_4204_ = lean_ctor_get(v___x_4203_, 0);
lean_inc(v_a_4204_);
lean_dec_ref(v___x_4203_);
v___x_4205_ = lean_st_ref_get(v___x_4201_);
lean_dec(v___x_4201_);
v___x_4206_ = l_Lean_Elab_Term_Do_attachJPs(v___x_4205_, v_a_4204_);
lean_dec(v___x_4205_);
v___x_4207_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4207_, 0, v___x_4206_);
return v___x_4207_;
}
else
{
lean_dec(v___x_4201_);
return v___x_4203_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_pullExitPoints___boxed(lean_object* v_c_4208_, lean_object* v_a_4209_, lean_object* v_a_4210_, lean_object* v_a_4211_, lean_object* v_a_4212_, lean_object* v_a_4213_, lean_object* v_a_4214_, lean_object* v_a_4215_){
_start:
{
lean_object* v_res_4216_; 
v_res_4216_ = l_Lean_Elab_Term_Do_pullExitPoints(v_c_4208_, v_a_4209_, v_a_4210_, v_a_4211_, v_a_4212_, v_a_4213_, v_a_4214_);
return v_res_4216_;
}
}
LEAN_EXPORT uint8_t l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(lean_object* v_k_4217_, lean_object* v_t_4218_){
_start:
{
if (lean_obj_tag(v_t_4218_) == 0)
{
lean_object* v_k_4219_; lean_object* v_l_4220_; lean_object* v_r_4221_; uint8_t v___x_4222_; 
v_k_4219_ = lean_ctor_get(v_t_4218_, 1);
v_l_4220_ = lean_ctor_get(v_t_4218_, 3);
v_r_4221_ = lean_ctor_get(v_t_4218_, 4);
v___x_4222_ = l_Lean_Name_cmp(v_k_4217_, v_k_4219_);
switch(v___x_4222_)
{
case 0:
{
v_t_4218_ = v_l_4220_;
goto _start;
}
case 1:
{
uint8_t v___x_4224_; 
v___x_4224_ = 1;
return v___x_4224_;
}
default: 
{
v_t_4218_ = v_r_4221_;
goto _start;
}
}
}
else
{
uint8_t v___x_4226_; 
v___x_4226_ = 0;
return v___x_4226_;
}
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg___boxed(lean_object* v_k_4227_, lean_object* v_t_4228_){
_start:
{
uint8_t v_res_4229_; lean_object* v_r_4230_; 
v_res_4229_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v_k_4227_, v_t_4228_);
lean_dec(v_t_4228_);
lean_dec(v_k_4227_);
v_r_4230_ = lean_box(v_res_4229_);
return v_r_4230_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(lean_object* v_ws_4231_, lean_object* v_as_4232_, size_t v_i_4233_, size_t v_stop_4234_){
_start:
{
uint8_t v___x_4235_; 
v___x_4235_ = lean_usize_dec_eq(v_i_4233_, v_stop_4234_);
if (v___x_4235_ == 0)
{
lean_object* v___x_4236_; lean_object* v___x_4237_; uint8_t v___x_4238_; 
v___x_4236_ = lean_array_uget_borrowed(v_as_4232_, v_i_4233_);
v___x_4237_ = l_Lean_Syntax_getId(v___x_4236_);
v___x_4238_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v___x_4237_, v_ws_4231_);
lean_dec(v___x_4237_);
if (v___x_4238_ == 0)
{
size_t v___x_4239_; size_t v___x_4240_; 
v___x_4239_ = ((size_t)1ULL);
v___x_4240_ = lean_usize_add(v_i_4233_, v___x_4239_);
v_i_4233_ = v___x_4240_;
goto _start;
}
else
{
return v___x_4238_;
}
}
else
{
uint8_t v___x_4242_; 
v___x_4242_ = 0;
return v___x_4242_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1___boxed(lean_object* v_ws_4243_, lean_object* v_as_4244_, lean_object* v_i_4245_, lean_object* v_stop_4246_){
_start:
{
size_t v_i_boxed_4247_; size_t v_stop_boxed_4248_; uint8_t v_res_4249_; lean_object* v_r_4250_; 
v_i_boxed_4247_ = lean_unbox_usize(v_i_4245_);
lean_dec(v_i_4245_);
v_stop_boxed_4248_ = lean_unbox_usize(v_stop_4246_);
lean_dec(v_stop_4246_);
v_res_4249_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(v_ws_4243_, v_as_4244_, v_i_boxed_4247_, v_stop_boxed_4248_);
lean_dec_ref(v_as_4244_);
lean_dec(v_ws_4243_);
v_r_4250_ = lean_box(v_res_4249_);
return v_r_4250_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5(lean_object* v_ws_4251_, lean_object* v_as_4252_, size_t v_i_4253_, size_t v_stop_4254_){
_start:
{
uint8_t v___x_4255_; 
v___x_4255_ = lean_usize_dec_eq(v_i_4253_, v_stop_4254_);
if (v___x_4255_ == 0)
{
uint8_t v___x_4256_; uint8_t v___y_4258_; lean_object* v___x_4262_; lean_object* v___x_4263_; lean_object* v___x_4264_; lean_object* v___x_4265_; uint8_t v___x_4266_; 
v___x_4256_ = 1;
v___x_4262_ = lean_array_uget_borrowed(v_as_4252_, v_i_4253_);
lean_inc(v___x_4262_);
v___x_4263_ = l_Lean_Elab_Term_Do_AltExpr_vars___redArg(v___x_4262_);
v___x_4264_ = lean_unsigned_to_nat(0u);
v___x_4265_ = lean_array_get_size(v___x_4263_);
v___x_4266_ = lean_nat_dec_lt(v___x_4264_, v___x_4265_);
if (v___x_4266_ == 0)
{
lean_dec_ref(v___x_4263_);
v___y_4258_ = v___x_4255_;
goto v___jp_4257_;
}
else
{
if (v___x_4266_ == 0)
{
lean_dec_ref(v___x_4263_);
v___y_4258_ = v___x_4255_;
goto v___jp_4257_;
}
else
{
size_t v___x_4267_; size_t v___x_4268_; uint8_t v___x_4269_; 
v___x_4267_ = ((size_t)0ULL);
v___x_4268_ = lean_usize_of_nat(v___x_4265_);
v___x_4269_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(v_ws_4251_, v___x_4263_, v___x_4267_, v___x_4268_);
lean_dec_ref(v___x_4263_);
v___y_4258_ = v___x_4269_;
goto v___jp_4257_;
}
}
v___jp_4257_:
{
if (v___y_4258_ == 0)
{
size_t v___x_4259_; size_t v___x_4260_; 
v___x_4259_ = ((size_t)1ULL);
v___x_4260_ = lean_usize_add(v_i_4253_, v___x_4259_);
v_i_4253_ = v___x_4260_;
goto _start;
}
else
{
return v___x_4256_;
}
}
}
else
{
uint8_t v___x_4270_; 
v___x_4270_ = 0;
return v___x_4270_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5___boxed(lean_object* v_ws_4271_, lean_object* v_as_4272_, lean_object* v_i_4273_, lean_object* v_stop_4274_){
_start:
{
size_t v_i_boxed_4275_; size_t v_stop_boxed_4276_; uint8_t v_res_4277_; lean_object* v_r_4278_; 
v_i_boxed_4275_ = lean_unbox_usize(v_i_4273_);
lean_dec(v_i_4273_);
v_stop_boxed_4276_ = lean_unbox_usize(v_stop_4274_);
lean_dec(v_stop_4274_);
v_res_4277_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5(v_ws_4271_, v_as_4272_, v_i_boxed_4275_, v_stop_boxed_4276_);
lean_dec_ref(v_as_4272_);
lean_dec(v_ws_4271_);
v_r_4278_ = lean_box(v_res_4277_);
return v_r_4278_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3(lean_object* v_ws_4279_, lean_object* v_as_4280_, size_t v_i_4281_, size_t v_stop_4282_){
_start:
{
uint8_t v___x_4283_; 
v___x_4283_ = lean_usize_dec_eq(v_i_4281_, v_stop_4282_);
if (v___x_4283_ == 0)
{
lean_object* v___x_4284_; lean_object* v_vars_4285_; uint8_t v___x_4286_; uint8_t v___y_4288_; lean_object* v___x_4292_; lean_object* v___x_4293_; uint8_t v___x_4294_; 
v___x_4284_ = lean_array_uget_borrowed(v_as_4280_, v_i_4281_);
v_vars_4285_ = lean_ctor_get(v___x_4284_, 1);
v___x_4286_ = 1;
v___x_4292_ = lean_unsigned_to_nat(0u);
v___x_4293_ = lean_array_get_size(v_vars_4285_);
v___x_4294_ = lean_nat_dec_lt(v___x_4292_, v___x_4293_);
if (v___x_4294_ == 0)
{
v___y_4288_ = v___x_4283_;
goto v___jp_4287_;
}
else
{
if (v___x_4294_ == 0)
{
v___y_4288_ = v___x_4283_;
goto v___jp_4287_;
}
else
{
size_t v___x_4295_; size_t v___x_4296_; uint8_t v___x_4297_; 
v___x_4295_ = ((size_t)0ULL);
v___x_4296_ = lean_usize_of_nat(v___x_4293_);
v___x_4297_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(v_ws_4279_, v_vars_4285_, v___x_4295_, v___x_4296_);
v___y_4288_ = v___x_4297_;
goto v___jp_4287_;
}
}
v___jp_4287_:
{
if (v___y_4288_ == 0)
{
size_t v___x_4289_; size_t v___x_4290_; 
v___x_4289_ = ((size_t)1ULL);
v___x_4290_ = lean_usize_add(v_i_4281_, v___x_4289_);
v_i_4281_ = v___x_4290_;
goto _start;
}
else
{
return v___x_4286_;
}
}
}
else
{
uint8_t v___x_4298_; 
v___x_4298_ = 0;
return v___x_4298_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3___boxed(lean_object* v_ws_4299_, lean_object* v_as_4300_, lean_object* v_i_4301_, lean_object* v_stop_4302_){
_start:
{
size_t v_i_boxed_4303_; size_t v_stop_boxed_4304_; uint8_t v_res_4305_; lean_object* v_r_4306_; 
v_i_boxed_4303_ = lean_unbox_usize(v_i_4301_);
lean_dec(v_i_4301_);
v_stop_boxed_4304_ = lean_unbox_usize(v_stop_4302_);
lean_dec(v_stop_4302_);
v_res_4305_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3(v_ws_4299_, v_as_4300_, v_i_boxed_4303_, v_stop_boxed_4304_);
lean_dec_ref(v_as_4300_);
lean_dec(v_ws_4299_);
v_r_4306_ = lean_box(v_res_4305_);
return v_r_4306_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4(lean_object* v_ws_4307_, size_t v_sz_4308_, size_t v_i_4309_, lean_object* v_bs_4310_, lean_object* v___y_4311_, lean_object* v___y_4312_, lean_object* v___y_4313_, lean_object* v___y_4314_, lean_object* v___y_4315_, lean_object* v___y_4316_){
_start:
{
uint8_t v___x_4318_; 
v___x_4318_ = lean_usize_dec_lt(v_i_4309_, v_sz_4308_);
if (v___x_4318_ == 0)
{
lean_object* v___x_4319_; 
lean_dec(v___y_4316_);
lean_dec_ref(v___y_4315_);
lean_dec(v___y_4314_);
lean_dec_ref(v___y_4313_);
lean_dec(v___y_4312_);
lean_dec_ref(v___y_4311_);
v___x_4319_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4319_, 0, v_bs_4310_);
return v___x_4319_;
}
else
{
lean_object* v_v_4320_; lean_object* v_ref_4321_; lean_object* v_var_x3f_4322_; lean_object* v_funName_4323_; lean_object* v_pvars_4324_; lean_object* v_rhs_4325_; lean_object* v___x_4326_; 
v_v_4320_ = lean_array_uget_borrowed(v_bs_4310_, v_i_4309_);
v_ref_4321_ = lean_ctor_get(v_v_4320_, 0);
lean_inc(v_ref_4321_);
v_var_x3f_4322_ = lean_ctor_get(v_v_4320_, 1);
lean_inc(v_var_x3f_4322_);
v_funName_4323_ = lean_ctor_get(v_v_4320_, 2);
lean_inc(v_funName_4323_);
v_pvars_4324_ = lean_ctor_get(v_v_4320_, 3);
lean_inc_ref(v_pvars_4324_);
v_rhs_4325_ = lean_ctor_get(v_v_4320_, 4);
lean_inc(v___y_4316_);
lean_inc_ref(v___y_4315_);
lean_inc(v___y_4314_);
lean_inc_ref(v___y_4313_);
lean_inc(v___y_4312_);
lean_inc_ref(v___y_4311_);
lean_inc(v_rhs_4325_);
v___x_4326_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4307_, v_rhs_4325_, v___y_4311_, v___y_4312_, v___y_4313_, v___y_4314_, v___y_4315_, v___y_4316_);
if (lean_obj_tag(v___x_4326_) == 0)
{
lean_object* v_a_4327_; lean_object* v___x_4328_; lean_object* v_bs_x27_4329_; lean_object* v___x_4330_; size_t v___x_4331_; size_t v___x_4332_; lean_object* v___x_4333_; 
v_a_4327_ = lean_ctor_get(v___x_4326_, 0);
lean_inc(v_a_4327_);
lean_dec_ref(v___x_4326_);
v___x_4328_ = lean_unsigned_to_nat(0u);
v_bs_x27_4329_ = lean_array_uset(v_bs_4310_, v_i_4309_, v___x_4328_);
v___x_4330_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_4330_, 0, v_ref_4321_);
lean_ctor_set(v___x_4330_, 1, v_var_x3f_4322_);
lean_ctor_set(v___x_4330_, 2, v_funName_4323_);
lean_ctor_set(v___x_4330_, 3, v_pvars_4324_);
lean_ctor_set(v___x_4330_, 4, v_a_4327_);
v___x_4331_ = ((size_t)1ULL);
v___x_4332_ = lean_usize_add(v_i_4309_, v___x_4331_);
v___x_4333_ = lean_array_uset(v_bs_x27_4329_, v_i_4309_, v___x_4330_);
v_i_4309_ = v___x_4332_;
v_bs_4310_ = v___x_4333_;
goto _start;
}
else
{
lean_object* v_a_4335_; lean_object* v___x_4336_; 
lean_dec_ref(v_pvars_4324_);
lean_dec(v_funName_4323_);
lean_dec(v_var_x3f_4322_);
lean_dec(v_ref_4321_);
lean_dec(v___y_4316_);
lean_dec_ref(v___y_4315_);
lean_dec(v___y_4314_);
lean_dec_ref(v___y_4313_);
lean_dec(v___y_4312_);
lean_dec_ref(v___y_4311_);
lean_dec_ref(v_bs_4310_);
v_a_4335_ = lean_ctor_get(v___x_4326_, 0);
lean_inc(v_a_4335_);
lean_dec_ref(v___x_4326_);
v___x_4336_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4336_, 0, v_a_4335_);
return v___x_4336_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(lean_object* v_ws_4337_, lean_object* v_c_4338_, lean_object* v_a_4339_, lean_object* v_a_4340_, lean_object* v_a_4341_, lean_object* v_a_4342_, lean_object* v_a_4343_, lean_object* v_a_4344_){
_start:
{
switch(lean_obj_tag(v_c_4338_))
{
case 2:
{
lean_object* v_name_4346_; lean_object* v_params_4347_; lean_object* v_body_4348_; lean_object* v_k_4349_; lean_object* v___x_4350_; 
v_name_4346_ = lean_ctor_get(v_c_4338_, 0);
lean_inc(v_name_4346_);
v_params_4347_ = lean_ctor_get(v_c_4338_, 1);
lean_inc_ref(v_params_4347_);
v_body_4348_ = lean_ctor_get(v_c_4338_, 2);
lean_inc_ref(v_body_4348_);
v_k_4349_ = lean_ctor_get(v_c_4338_, 3);
lean_inc_ref(v_k_4349_);
lean_dec_ref(v_c_4338_);
lean_inc(v_a_4344_);
lean_inc_ref(v_a_4343_);
lean_inc(v_a_4342_);
lean_inc_ref(v_a_4341_);
lean_inc(v_a_4340_);
lean_inc_ref(v_a_4339_);
v___x_4350_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_body_4348_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4350_) == 0)
{
lean_object* v_a_4351_; lean_object* v___x_4352_; 
v_a_4351_ = lean_ctor_get(v___x_4350_, 0);
lean_inc(v_a_4351_);
lean_dec_ref(v___x_4350_);
v___x_4352_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_k_4349_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4352_) == 0)
{
lean_object* v_a_4353_; lean_object* v___x_4354_; lean_object* v___x_4355_; 
v_a_4353_ = lean_ctor_get(v___x_4352_, 0);
lean_inc(v_a_4353_);
lean_dec_ref(v___x_4352_);
v___x_4354_ = lean_alloc_ctor(2, 4, 0);
lean_ctor_set(v___x_4354_, 0, v_name_4346_);
lean_ctor_set(v___x_4354_, 1, v_params_4347_);
lean_ctor_set(v___x_4354_, 2, v_a_4351_);
lean_ctor_set(v___x_4354_, 3, v_a_4353_);
v___x_4355_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4355_, 0, v___x_4354_);
return v___x_4355_;
}
else
{
lean_dec(v_a_4351_);
lean_dec_ref(v_params_4347_);
lean_dec(v_name_4346_);
return v___x_4352_;
}
}
else
{
lean_dec_ref(v_k_4349_);
lean_dec_ref(v_params_4347_);
lean_dec(v_name_4346_);
lean_dec(v_a_4344_);
lean_dec_ref(v_a_4343_);
lean_dec(v_a_4342_);
lean_dec_ref(v_a_4341_);
lean_dec(v_a_4340_);
lean_dec_ref(v_a_4339_);
return v___x_4350_;
}
}
case 3:
{
lean_object* v_action_4356_; lean_object* v_k_4357_; lean_object* v___x_4358_; 
v_action_4356_ = lean_ctor_get(v_c_4338_, 0);
lean_inc(v_action_4356_);
v_k_4357_ = lean_ctor_get(v_c_4338_, 1);
lean_inc_ref(v_k_4357_);
lean_dec_ref(v_c_4338_);
v___x_4358_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_k_4357_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4358_) == 0)
{
lean_object* v_a_4359_; lean_object* v___x_4360_; lean_object* v___x_4361_; 
v_a_4359_ = lean_ctor_get(v___x_4358_, 0);
lean_inc(v_a_4359_);
lean_dec_ref(v___x_4358_);
v___x_4360_ = lean_alloc_ctor(3, 2, 0);
lean_ctor_set(v___x_4360_, 0, v_action_4356_);
lean_ctor_set(v___x_4360_, 1, v_a_4359_);
v___x_4361_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4361_, 0, v___x_4360_);
return v___x_4361_;
}
else
{
lean_dec(v_action_4356_);
return v___x_4358_;
}
}
case 9:
{
lean_object* v_ref_4362_; lean_object* v_gen_4363_; lean_object* v_discrs_4364_; lean_object* v_optMotive_4365_; lean_object* v_alts_4366_; lean_object* v___x_4376_; lean_object* v___x_4377_; uint8_t v___x_4378_; 
v_ref_4362_ = lean_ctor_get(v_c_4338_, 0);
v_gen_4363_ = lean_ctor_get(v_c_4338_, 1);
v_discrs_4364_ = lean_ctor_get(v_c_4338_, 2);
v_optMotive_4365_ = lean_ctor_get(v_c_4338_, 3);
v_alts_4366_ = lean_ctor_get(v_c_4338_, 4);
v___x_4376_ = lean_unsigned_to_nat(0u);
v___x_4377_ = lean_array_get_size(v_alts_4366_);
v___x_4378_ = lean_nat_dec_lt(v___x_4376_, v___x_4377_);
if (v___x_4378_ == 0)
{
lean_inc_ref(v_alts_4366_);
lean_inc(v_optMotive_4365_);
lean_inc(v_discrs_4364_);
lean_inc(v_gen_4363_);
lean_inc(v_ref_4362_);
lean_dec_ref(v_c_4338_);
goto v___jp_4367_;
}
else
{
if (v___x_4378_ == 0)
{
lean_inc_ref(v_alts_4366_);
lean_inc(v_optMotive_4365_);
lean_inc(v_discrs_4364_);
lean_inc(v_gen_4363_);
lean_inc(v_ref_4362_);
lean_dec_ref(v_c_4338_);
goto v___jp_4367_;
}
else
{
size_t v___x_4379_; size_t v___x_4380_; uint8_t v___x_4381_; 
v___x_4379_ = ((size_t)0ULL);
v___x_4380_ = lean_usize_of_nat(v___x_4377_);
v___x_4381_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__3(v_ws_4337_, v_alts_4366_, v___x_4379_, v___x_4380_);
if (v___x_4381_ == 0)
{
lean_inc_ref(v_alts_4366_);
lean_inc(v_optMotive_4365_);
lean_inc(v_discrs_4364_);
lean_inc(v_gen_4363_);
lean_inc(v_ref_4362_);
lean_dec_ref(v_c_4338_);
goto v___jp_4367_;
}
else
{
lean_object* v___x_4382_; 
v___x_4382_ = l_Lean_Elab_Term_Do_pullExitPoints(v_c_4338_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
return v___x_4382_;
}
}
}
v___jp_4367_:
{
size_t v_sz_4368_; size_t v___x_4369_; lean_object* v___x_4370_; 
v_sz_4368_ = lean_array_size(v_alts_4366_);
v___x_4369_ = ((size_t)0ULL);
v___x_4370_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2(v_ws_4337_, v_sz_4368_, v___x_4369_, v_alts_4366_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4370_) == 0)
{
lean_object* v_a_4371_; lean_object* v___x_4372_; lean_object* v___x_4373_; 
v_a_4371_ = lean_ctor_get(v___x_4370_, 0);
lean_inc(v_a_4371_);
lean_dec_ref(v___x_4370_);
v___x_4372_ = lean_alloc_ctor(9, 5, 0);
lean_ctor_set(v___x_4372_, 0, v_ref_4362_);
lean_ctor_set(v___x_4372_, 1, v_gen_4363_);
lean_ctor_set(v___x_4372_, 2, v_discrs_4364_);
lean_ctor_set(v___x_4372_, 3, v_optMotive_4365_);
lean_ctor_set(v___x_4372_, 4, v_a_4371_);
v___x_4373_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4373_, 0, v___x_4372_);
return v___x_4373_;
}
else
{
lean_object* v_a_4374_; lean_object* v___x_4375_; 
lean_dec(v_optMotive_4365_);
lean_dec(v_discrs_4364_);
lean_dec(v_gen_4363_);
lean_dec(v_ref_4362_);
v_a_4374_ = lean_ctor_get(v___x_4370_, 0);
lean_inc(v_a_4374_);
lean_dec_ref(v___x_4370_);
v___x_4375_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4375_, 0, v_a_4374_);
return v___x_4375_;
}
}
}
case 10:
{
lean_object* v_ref_4383_; uint8_t v_meta_4384_; lean_object* v_discr_4385_; lean_object* v_alts_4386_; lean_object* v_elseBranch_4387_; lean_object* v___x_4399_; lean_object* v___x_4400_; uint8_t v___x_4401_; 
v_ref_4383_ = lean_ctor_get(v_c_4338_, 0);
v_meta_4384_ = lean_ctor_get_uint8(v_c_4338_, sizeof(void*)*4);
v_discr_4385_ = lean_ctor_get(v_c_4338_, 1);
v_alts_4386_ = lean_ctor_get(v_c_4338_, 2);
v_elseBranch_4387_ = lean_ctor_get(v_c_4338_, 3);
v___x_4399_ = lean_unsigned_to_nat(0u);
v___x_4400_ = lean_array_get_size(v_alts_4386_);
v___x_4401_ = lean_nat_dec_lt(v___x_4399_, v___x_4400_);
if (v___x_4401_ == 0)
{
lean_inc_ref(v_elseBranch_4387_);
lean_inc_ref(v_alts_4386_);
lean_inc(v_discr_4385_);
lean_inc(v_ref_4383_);
lean_dec_ref(v_c_4338_);
goto v___jp_4388_;
}
else
{
if (v___x_4401_ == 0)
{
lean_inc_ref(v_elseBranch_4387_);
lean_inc_ref(v_alts_4386_);
lean_inc(v_discr_4385_);
lean_inc(v_ref_4383_);
lean_dec_ref(v_c_4338_);
goto v___jp_4388_;
}
else
{
size_t v___x_4402_; size_t v___x_4403_; uint8_t v___x_4404_; 
v___x_4402_ = ((size_t)0ULL);
v___x_4403_ = lean_usize_of_nat(v___x_4400_);
v___x_4404_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__5(v_ws_4337_, v_alts_4386_, v___x_4402_, v___x_4403_);
if (v___x_4404_ == 0)
{
lean_inc_ref(v_elseBranch_4387_);
lean_inc_ref(v_alts_4386_);
lean_inc(v_discr_4385_);
lean_inc(v_ref_4383_);
lean_dec_ref(v_c_4338_);
goto v___jp_4388_;
}
else
{
lean_object* v___x_4405_; 
v___x_4405_ = l_Lean_Elab_Term_Do_pullExitPoints(v_c_4338_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
return v___x_4405_;
}
}
}
v___jp_4388_:
{
size_t v_sz_4389_; size_t v___x_4390_; lean_object* v___x_4391_; 
v_sz_4389_ = lean_array_size(v_alts_4386_);
v___x_4390_ = ((size_t)0ULL);
lean_inc(v_a_4344_);
lean_inc_ref(v_a_4343_);
lean_inc(v_a_4342_);
lean_inc_ref(v_a_4341_);
lean_inc(v_a_4340_);
lean_inc_ref(v_a_4339_);
v___x_4391_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4(v_ws_4337_, v_sz_4389_, v___x_4390_, v_alts_4386_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4391_) == 0)
{
lean_object* v_a_4392_; lean_object* v___x_4393_; 
v_a_4392_ = lean_ctor_get(v___x_4391_, 0);
lean_inc(v_a_4392_);
lean_dec_ref(v___x_4391_);
v___x_4393_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_elseBranch_4387_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4393_) == 0)
{
lean_object* v_a_4394_; lean_object* v___x_4395_; lean_object* v___x_4396_; 
v_a_4394_ = lean_ctor_get(v___x_4393_, 0);
lean_inc(v_a_4394_);
lean_dec_ref(v___x_4393_);
v___x_4395_ = lean_alloc_ctor(10, 4, 1);
lean_ctor_set(v___x_4395_, 0, v_ref_4383_);
lean_ctor_set(v___x_4395_, 1, v_discr_4385_);
lean_ctor_set(v___x_4395_, 2, v_a_4392_);
lean_ctor_set(v___x_4395_, 3, v_a_4394_);
lean_ctor_set_uint8(v___x_4395_, sizeof(void*)*4, v_meta_4384_);
v___x_4396_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4396_, 0, v___x_4395_);
return v___x_4396_;
}
else
{
lean_dec(v_a_4392_);
lean_dec(v_discr_4385_);
lean_dec(v_ref_4383_);
return v___x_4393_;
}
}
else
{
lean_object* v_a_4397_; lean_object* v___x_4398_; 
lean_dec_ref(v_elseBranch_4387_);
lean_dec(v_discr_4385_);
lean_dec(v_ref_4383_);
lean_dec(v_a_4344_);
lean_dec_ref(v_a_4343_);
lean_dec(v_a_4342_);
lean_dec_ref(v_a_4341_);
lean_dec(v_a_4340_);
lean_dec_ref(v_a_4339_);
v_a_4397_ = lean_ctor_get(v___x_4391_, 0);
lean_inc(v_a_4397_);
lean_dec_ref(v___x_4391_);
v___x_4398_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4398_, 0, v_a_4397_);
return v___x_4398_;
}
}
}
case 8:
{
lean_object* v_h_x3f_4406_; 
v_h_x3f_4406_ = lean_ctor_get(v_c_4338_, 1);
if (lean_obj_tag(v_h_x3f_4406_) == 0)
{
lean_object* v_ref_4407_; lean_object* v_optIdent_4408_; lean_object* v_cond_4409_; lean_object* v_thenBranch_4410_; lean_object* v_elseBranch_4411_; lean_object* v___x_4412_; 
lean_inc(v_h_x3f_4406_);
v_ref_4407_ = lean_ctor_get(v_c_4338_, 0);
lean_inc(v_ref_4407_);
v_optIdent_4408_ = lean_ctor_get(v_c_4338_, 2);
lean_inc(v_optIdent_4408_);
v_cond_4409_ = lean_ctor_get(v_c_4338_, 3);
lean_inc(v_cond_4409_);
v_thenBranch_4410_ = lean_ctor_get(v_c_4338_, 4);
lean_inc_ref(v_thenBranch_4410_);
v_elseBranch_4411_ = lean_ctor_get(v_c_4338_, 5);
lean_inc_ref(v_elseBranch_4411_);
lean_dec_ref(v_c_4338_);
lean_inc(v_a_4344_);
lean_inc_ref(v_a_4343_);
lean_inc(v_a_4342_);
lean_inc_ref(v_a_4341_);
lean_inc(v_a_4340_);
lean_inc_ref(v_a_4339_);
v___x_4412_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_thenBranch_4410_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4412_) == 0)
{
lean_object* v_a_4413_; lean_object* v___x_4414_; 
v_a_4413_ = lean_ctor_get(v___x_4412_, 0);
lean_inc(v_a_4413_);
lean_dec_ref(v___x_4412_);
v___x_4414_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_elseBranch_4411_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4414_) == 0)
{
lean_object* v_a_4415_; lean_object* v___x_4416_; lean_object* v___x_4417_; 
v_a_4415_ = lean_ctor_get(v___x_4414_, 0);
lean_inc(v_a_4415_);
lean_dec_ref(v___x_4414_);
v___x_4416_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_4416_, 0, v_ref_4407_);
lean_ctor_set(v___x_4416_, 1, v_h_x3f_4406_);
lean_ctor_set(v___x_4416_, 2, v_optIdent_4408_);
lean_ctor_set(v___x_4416_, 3, v_cond_4409_);
lean_ctor_set(v___x_4416_, 4, v_a_4413_);
lean_ctor_set(v___x_4416_, 5, v_a_4415_);
v___x_4417_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4417_, 0, v___x_4416_);
return v___x_4417_;
}
else
{
lean_dec(v_a_4413_);
lean_dec(v_cond_4409_);
lean_dec(v_optIdent_4408_);
lean_dec(v_ref_4407_);
return v___x_4414_;
}
}
else
{
lean_dec_ref(v_elseBranch_4411_);
lean_dec(v_cond_4409_);
lean_dec(v_optIdent_4408_);
lean_dec(v_ref_4407_);
lean_dec(v_a_4344_);
lean_dec_ref(v_a_4343_);
lean_dec(v_a_4342_);
lean_dec_ref(v_a_4341_);
lean_dec(v_a_4340_);
lean_dec_ref(v_a_4339_);
return v___x_4412_;
}
}
else
{
lean_object* v_ref_4418_; lean_object* v_optIdent_4419_; lean_object* v_cond_4420_; lean_object* v_thenBranch_4421_; lean_object* v_elseBranch_4422_; lean_object* v_val_4423_; lean_object* v___x_4424_; uint8_t v___x_4425_; 
v_ref_4418_ = lean_ctor_get(v_c_4338_, 0);
v_optIdent_4419_ = lean_ctor_get(v_c_4338_, 2);
v_cond_4420_ = lean_ctor_get(v_c_4338_, 3);
v_thenBranch_4421_ = lean_ctor_get(v_c_4338_, 4);
v_elseBranch_4422_ = lean_ctor_get(v_c_4338_, 5);
v_val_4423_ = lean_ctor_get(v_h_x3f_4406_, 0);
v___x_4424_ = l_Lean_Syntax_getId(v_val_4423_);
v___x_4425_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v___x_4424_, v_ws_4337_);
lean_dec(v___x_4424_);
if (v___x_4425_ == 0)
{
lean_object* v___x_4426_; 
lean_inc_ref(v_elseBranch_4422_);
lean_inc_ref(v_thenBranch_4421_);
lean_inc(v_cond_4420_);
lean_inc(v_optIdent_4419_);
lean_inc(v_ref_4418_);
lean_inc_ref(v_h_x3f_4406_);
lean_dec_ref(v_c_4338_);
lean_inc(v_a_4344_);
lean_inc_ref(v_a_4343_);
lean_inc(v_a_4342_);
lean_inc_ref(v_a_4341_);
lean_inc(v_a_4340_);
lean_inc_ref(v_a_4339_);
v___x_4426_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_thenBranch_4421_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4426_) == 0)
{
lean_object* v_a_4427_; lean_object* v___x_4428_; 
v_a_4427_ = lean_ctor_get(v___x_4426_, 0);
lean_inc(v_a_4427_);
lean_dec_ref(v___x_4426_);
v___x_4428_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_elseBranch_4422_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4428_) == 0)
{
lean_object* v_a_4429_; lean_object* v___x_4430_; lean_object* v___x_4431_; 
v_a_4429_ = lean_ctor_get(v___x_4428_, 0);
lean_inc(v_a_4429_);
lean_dec_ref(v___x_4428_);
v___x_4430_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_4430_, 0, v_ref_4418_);
lean_ctor_set(v___x_4430_, 1, v_h_x3f_4406_);
lean_ctor_set(v___x_4430_, 2, v_optIdent_4419_);
lean_ctor_set(v___x_4430_, 3, v_cond_4420_);
lean_ctor_set(v___x_4430_, 4, v_a_4427_);
lean_ctor_set(v___x_4430_, 5, v_a_4429_);
v___x_4431_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4431_, 0, v___x_4430_);
return v___x_4431_;
}
else
{
lean_dec(v_a_4427_);
lean_dec(v_cond_4420_);
lean_dec(v_optIdent_4419_);
lean_dec(v_ref_4418_);
lean_dec_ref(v_h_x3f_4406_);
return v___x_4428_;
}
}
else
{
lean_dec_ref(v_elseBranch_4422_);
lean_dec(v_cond_4420_);
lean_dec(v_optIdent_4419_);
lean_dec(v_ref_4418_);
lean_dec_ref(v_h_x3f_4406_);
lean_dec(v_a_4344_);
lean_dec_ref(v_a_4343_);
lean_dec(v_a_4342_);
lean_dec_ref(v_a_4341_);
lean_dec(v_a_4340_);
lean_dec_ref(v_a_4339_);
return v___x_4426_;
}
}
else
{
lean_object* v___x_4432_; 
v___x_4432_ = l_Lean_Elab_Term_Do_pullExitPoints(v_c_4338_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
return v___x_4432_;
}
}
}
case 1:
{
lean_object* v_xs_4433_; lean_object* v_doElem_4434_; lean_object* v_k_4435_; lean_object* v___x_4436_; 
v_xs_4433_ = lean_ctor_get(v_c_4338_, 0);
lean_inc_ref(v_xs_4433_);
v_doElem_4434_ = lean_ctor_get(v_c_4338_, 1);
lean_inc(v_doElem_4434_);
v_k_4435_ = lean_ctor_get(v_c_4338_, 2);
lean_inc_ref(v_k_4435_);
lean_dec_ref(v_c_4338_);
v___x_4436_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_k_4435_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4436_) == 0)
{
lean_object* v_a_4437_; lean_object* v___x_4438_; lean_object* v___x_4439_; 
v_a_4437_ = lean_ctor_get(v___x_4436_, 0);
lean_inc(v_a_4437_);
lean_dec_ref(v___x_4436_);
v___x_4438_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_4438_, 0, v_xs_4433_);
lean_ctor_set(v___x_4438_, 1, v_doElem_4434_);
lean_ctor_set(v___x_4438_, 2, v_a_4437_);
v___x_4439_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4439_, 0, v___x_4438_);
return v___x_4439_;
}
else
{
lean_dec(v_doElem_4434_);
lean_dec_ref(v_xs_4433_);
return v___x_4436_;
}
}
case 0:
{
lean_object* v_xs_4440_; lean_object* v_doElem_4441_; lean_object* v_k_4442_; lean_object* v___x_4448_; lean_object* v___x_4449_; uint8_t v___x_4450_; 
v_xs_4440_ = lean_ctor_get(v_c_4338_, 0);
v_doElem_4441_ = lean_ctor_get(v_c_4338_, 1);
v_k_4442_ = lean_ctor_get(v_c_4338_, 2);
v___x_4448_ = lean_unsigned_to_nat(0u);
v___x_4449_ = lean_array_get_size(v_xs_4440_);
v___x_4450_ = lean_nat_dec_lt(v___x_4448_, v___x_4449_);
if (v___x_4450_ == 0)
{
lean_inc_ref(v_k_4442_);
lean_inc(v_doElem_4441_);
lean_inc_ref(v_xs_4440_);
lean_dec_ref(v_c_4338_);
goto v___jp_4443_;
}
else
{
if (v___x_4450_ == 0)
{
lean_inc_ref(v_k_4442_);
lean_inc(v_doElem_4441_);
lean_inc_ref(v_xs_4440_);
lean_dec_ref(v_c_4338_);
goto v___jp_4443_;
}
else
{
size_t v___x_4451_; size_t v___x_4452_; uint8_t v___x_4453_; 
v___x_4451_ = ((size_t)0ULL);
v___x_4452_ = lean_usize_of_nat(v___x_4449_);
v___x_4453_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__1(v_ws_4337_, v_xs_4440_, v___x_4451_, v___x_4452_);
if (v___x_4453_ == 0)
{
lean_inc_ref(v_k_4442_);
lean_inc(v_doElem_4441_);
lean_inc_ref(v_xs_4440_);
lean_dec_ref(v_c_4338_);
goto v___jp_4443_;
}
else
{
lean_object* v___x_4454_; 
v___x_4454_ = l_Lean_Elab_Term_Do_pullExitPoints(v_c_4338_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
return v___x_4454_;
}
}
}
v___jp_4443_:
{
lean_object* v___x_4444_; 
v___x_4444_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4337_, v_k_4442_, v_a_4339_, v_a_4340_, v_a_4341_, v_a_4342_, v_a_4343_, v_a_4344_);
if (lean_obj_tag(v___x_4444_) == 0)
{
lean_object* v_a_4445_; lean_object* v___x_4446_; lean_object* v___x_4447_; 
v_a_4445_ = lean_ctor_get(v___x_4444_, 0);
lean_inc(v_a_4445_);
lean_dec_ref(v___x_4444_);
v___x_4446_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_4446_, 0, v_xs_4440_);
lean_ctor_set(v___x_4446_, 1, v_doElem_4441_);
lean_ctor_set(v___x_4446_, 2, v_a_4445_);
v___x_4447_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4447_, 0, v___x_4446_);
return v___x_4447_;
}
else
{
lean_dec(v_doElem_4441_);
lean_dec_ref(v_xs_4440_);
return v___x_4444_;
}
}
}
default: 
{
lean_object* v___x_4455_; 
lean_dec(v_a_4344_);
lean_dec_ref(v_a_4343_);
lean_dec(v_a_4342_);
lean_dec_ref(v_a_4341_);
lean_dec(v_a_4340_);
lean_dec_ref(v_a_4339_);
v___x_4455_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4455_, 0, v_c_4338_);
return v___x_4455_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2(lean_object* v_ws_4456_, size_t v_sz_4457_, size_t v_i_4458_, lean_object* v_bs_4459_, lean_object* v___y_4460_, lean_object* v___y_4461_, lean_object* v___y_4462_, lean_object* v___y_4463_, lean_object* v___y_4464_, lean_object* v___y_4465_){
_start:
{
uint8_t v___x_4467_; 
v___x_4467_ = lean_usize_dec_lt(v_i_4458_, v_sz_4457_);
if (v___x_4467_ == 0)
{
lean_object* v___x_4468_; 
lean_dec(v___y_4465_);
lean_dec_ref(v___y_4464_);
lean_dec(v___y_4463_);
lean_dec_ref(v___y_4462_);
lean_dec(v___y_4461_);
lean_dec_ref(v___y_4460_);
v___x_4468_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4468_, 0, v_bs_4459_);
return v___x_4468_;
}
else
{
lean_object* v_v_4469_; lean_object* v_ref_4470_; lean_object* v_vars_4471_; lean_object* v_patterns_4472_; lean_object* v_rhs_4473_; lean_object* v___x_4474_; 
v_v_4469_ = lean_array_uget_borrowed(v_bs_4459_, v_i_4458_);
v_ref_4470_ = lean_ctor_get(v_v_4469_, 0);
lean_inc(v_ref_4470_);
v_vars_4471_ = lean_ctor_get(v_v_4469_, 1);
lean_inc_ref(v_vars_4471_);
v_patterns_4472_ = lean_ctor_get(v_v_4469_, 2);
lean_inc(v_patterns_4472_);
v_rhs_4473_ = lean_ctor_get(v_v_4469_, 3);
lean_inc(v___y_4465_);
lean_inc_ref(v___y_4464_);
lean_inc(v___y_4463_);
lean_inc_ref(v___y_4462_);
lean_inc(v___y_4461_);
lean_inc_ref(v___y_4460_);
lean_inc(v_rhs_4473_);
v___x_4474_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4456_, v_rhs_4473_, v___y_4460_, v___y_4461_, v___y_4462_, v___y_4463_, v___y_4464_, v___y_4465_);
if (lean_obj_tag(v___x_4474_) == 0)
{
lean_object* v_a_4475_; lean_object* v___x_4476_; lean_object* v_bs_x27_4477_; lean_object* v___x_4478_; size_t v___x_4479_; size_t v___x_4480_; lean_object* v___x_4481_; 
v_a_4475_ = lean_ctor_get(v___x_4474_, 0);
lean_inc(v_a_4475_);
lean_dec_ref(v___x_4474_);
v___x_4476_ = lean_unsigned_to_nat(0u);
v_bs_x27_4477_ = lean_array_uset(v_bs_4459_, v_i_4458_, v___x_4476_);
v___x_4478_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_4478_, 0, v_ref_4470_);
lean_ctor_set(v___x_4478_, 1, v_vars_4471_);
lean_ctor_set(v___x_4478_, 2, v_patterns_4472_);
lean_ctor_set(v___x_4478_, 3, v_a_4475_);
v___x_4479_ = ((size_t)1ULL);
v___x_4480_ = lean_usize_add(v_i_4458_, v___x_4479_);
v___x_4481_ = lean_array_uset(v_bs_x27_4477_, v_i_4458_, v___x_4478_);
v_i_4458_ = v___x_4480_;
v_bs_4459_ = v___x_4481_;
goto _start;
}
else
{
lean_object* v_a_4483_; lean_object* v___x_4484_; 
lean_dec(v_patterns_4472_);
lean_dec_ref(v_vars_4471_);
lean_dec(v_ref_4470_);
lean_dec(v___y_4465_);
lean_dec_ref(v___y_4464_);
lean_dec(v___y_4463_);
lean_dec_ref(v___y_4462_);
lean_dec(v___y_4461_);
lean_dec_ref(v___y_4460_);
lean_dec_ref(v_bs_4459_);
v_a_4483_ = lean_ctor_get(v___x_4474_, 0);
lean_inc(v_a_4483_);
lean_dec_ref(v___x_4474_);
v___x_4484_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4484_, 0, v_a_4483_);
return v___x_4484_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2___boxed(lean_object* v_ws_4485_, lean_object* v_sz_4486_, lean_object* v_i_4487_, lean_object* v_bs_4488_, lean_object* v___y_4489_, lean_object* v___y_4490_, lean_object* v___y_4491_, lean_object* v___y_4492_, lean_object* v___y_4493_, lean_object* v___y_4494_, lean_object* v___y_4495_){
_start:
{
size_t v_sz_boxed_4496_; size_t v_i_boxed_4497_; lean_object* v_res_4498_; 
v_sz_boxed_4496_ = lean_unbox_usize(v_sz_4486_);
lean_dec(v_sz_4486_);
v_i_boxed_4497_ = lean_unbox_usize(v_i_4487_);
lean_dec(v_i_4487_);
v_res_4498_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__2(v_ws_4485_, v_sz_boxed_4496_, v_i_boxed_4497_, v_bs_4488_, v___y_4489_, v___y_4490_, v___y_4491_, v___y_4492_, v___y_4493_, v___y_4494_);
lean_dec(v_ws_4485_);
return v_res_4498_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4___boxed(lean_object* v_ws_4499_, lean_object* v_sz_4500_, lean_object* v_i_4501_, lean_object* v_bs_4502_, lean_object* v___y_4503_, lean_object* v___y_4504_, lean_object* v___y_4505_, lean_object* v___y_4506_, lean_object* v___y_4507_, lean_object* v___y_4508_, lean_object* v___y_4509_){
_start:
{
size_t v_sz_boxed_4510_; size_t v_i_boxed_4511_; lean_object* v_res_4512_; 
v_sz_boxed_4510_ = lean_unbox_usize(v_sz_4500_);
lean_dec(v_sz_4500_);
v_i_boxed_4511_ = lean_unbox_usize(v_i_4501_);
lean_dec(v_i_4501_);
v_res_4512_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__4(v_ws_4499_, v_sz_boxed_4510_, v_i_boxed_4511_, v_bs_4502_, v___y_4503_, v___y_4504_, v___y_4505_, v___y_4506_, v___y_4507_, v___y_4508_);
lean_dec(v_ws_4499_);
return v_res_4512_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update___boxed(lean_object* v_ws_4513_, lean_object* v_c_4514_, lean_object* v_a_4515_, lean_object* v_a_4516_, lean_object* v_a_4517_, lean_object* v_a_4518_, lean_object* v_a_4519_, lean_object* v_a_4520_, lean_object* v_a_4521_){
_start:
{
lean_object* v_res_4522_; 
v_res_4522_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4513_, v_c_4514_, v_a_4515_, v_a_4516_, v_a_4517_, v_a_4518_, v_a_4519_, v_a_4520_);
lean_dec(v_ws_4513_);
return v_res_4522_;
}
}
LEAN_EXPORT uint8_t l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0(lean_object* v_00_u03b2_4523_, lean_object* v_k_4524_, lean_object* v_t_4525_){
_start:
{
uint8_t v___x_4526_; 
v___x_4526_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v_k_4524_, v_t_4525_);
return v___x_4526_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___boxed(lean_object* v_00_u03b2_4527_, lean_object* v_k_4528_, lean_object* v_t_4529_){
_start:
{
uint8_t v_res_4530_; lean_object* v_r_4531_; 
v_res_4530_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0(v_00_u03b2_4527_, v_k_4528_, v_t_4529_);
lean_dec(v_t_4529_);
lean_dec(v_k_4528_);
v_r_4531_ = lean_box(v_res_4530_);
return v_r_4531_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVarsAux(lean_object* v_c_4532_, lean_object* v_ws_4533_, lean_object* v_a_4534_, lean_object* v_a_4535_, lean_object* v_a_4536_, lean_object* v_a_4537_, lean_object* v_a_4538_, lean_object* v_a_4539_){
_start:
{
lean_object* v___x_4541_; 
v___x_4541_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4533_, v_c_4532_, v_a_4534_, v_a_4535_, v_a_4536_, v_a_4537_, v_a_4538_, v_a_4539_);
return v___x_4541_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVarsAux___boxed(lean_object* v_c_4542_, lean_object* v_ws_4543_, lean_object* v_a_4544_, lean_object* v_a_4545_, lean_object* v_a_4546_, lean_object* v_a_4547_, lean_object* v_a_4548_, lean_object* v_a_4549_, lean_object* v_a_4550_){
_start:
{
lean_object* v_res_4551_; 
v_res_4551_ = l_Lean_Elab_Term_Do_extendUpdatedVarsAux(v_c_4542_, v_ws_4543_, v_a_4544_, v_a_4545_, v_a_4546_, v_a_4547_, v_a_4548_, v_a_4549_);
lean_dec(v_ws_4543_);
return v_res_4551_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0(lean_object* v_c_4563_, lean_object* v_init_4564_, lean_object* v_x_4565_){
_start:
{
if (lean_obj_tag(v_x_4565_) == 0)
{
lean_object* v_k_4566_; lean_object* v_l_4567_; lean_object* v_r_4568_; lean_object* v___x_4569_; 
v_k_4566_ = lean_ctor_get(v_x_4565_, 1);
v_l_4567_ = lean_ctor_get(v_x_4565_, 3);
v_r_4568_ = lean_ctor_get(v_x_4565_, 4);
v___x_4569_ = l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0(v_c_4563_, v_init_4564_, v_l_4567_);
if (lean_obj_tag(v___x_4569_) == 0)
{
return v___x_4569_;
}
else
{
lean_object* v_uvars_4570_; uint8_t v___x_4571_; 
lean_dec_ref(v___x_4569_);
v_uvars_4570_ = lean_ctor_get(v_c_4563_, 1);
v___x_4571_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v_k_4566_, v_uvars_4570_);
if (v___x_4571_ == 0)
{
lean_object* v___x_4572_; 
v___x_4572_ = ((lean_object*)(l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__2));
return v___x_4572_;
}
else
{
lean_object* v___x_4573_; 
v___x_4573_ = ((lean_object*)(l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__3));
v_init_4564_ = v___x_4573_;
v_x_4565_ = v_r_4568_;
goto _start;
}
}
}
else
{
lean_object* v___x_4575_; 
v___x_4575_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4575_, 0, v_init_4564_);
return v___x_4575_;
}
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___boxed(lean_object* v_c_4576_, lean_object* v_init_4577_, lean_object* v_x_4578_){
_start:
{
lean_object* v_res_4579_; 
v_res_4579_ = l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0(v_c_4576_, v_init_4577_, v_x_4578_);
lean_dec(v_x_4578_);
lean_dec_ref(v_c_4576_);
return v_res_4579_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVars(lean_object* v_c_4580_, lean_object* v_ws_4581_, lean_object* v_a_4582_, lean_object* v_a_4583_, lean_object* v_a_4584_, lean_object* v_a_4585_, lean_object* v_a_4586_, lean_object* v_a_4587_){
_start:
{
lean_object* v___y_4594_; lean_object* v___x_4605_; lean_object* v___x_4606_; lean_object* v_a_4607_; 
v___x_4605_ = ((lean_object*)(l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0___closed__3));
v___x_4606_ = l_Std_DTreeMap_Internal_Impl_forInStep___at___00Lean_Elab_Term_Do_extendUpdatedVars_spec__0(v_c_4580_, v___x_4605_, v_ws_4581_);
v_a_4607_ = lean_ctor_get(v___x_4606_, 0);
lean_inc(v_a_4607_);
lean_dec_ref(v___x_4606_);
v___y_4594_ = v_a_4607_;
goto v___jp_4593_;
v___jp_4589_:
{
lean_object* v_code_4590_; lean_object* v___x_4591_; lean_object* v___x_4592_; 
v_code_4590_ = lean_ctor_get(v_c_4580_, 0);
lean_inc_ref(v_code_4590_);
lean_dec_ref(v_c_4580_);
v___x_4591_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4591_, 0, v_code_4590_);
lean_ctor_set(v___x_4591_, 1, v_ws_4581_);
v___x_4592_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4592_, 0, v___x_4591_);
return v___x_4592_;
}
v___jp_4593_:
{
lean_object* v_fst_4595_; 
v_fst_4595_ = lean_ctor_get(v___y_4594_, 0);
lean_inc(v_fst_4595_);
lean_dec_ref(v___y_4594_);
if (lean_obj_tag(v_fst_4595_) == 0)
{
lean_dec(v_a_4587_);
lean_dec_ref(v_a_4586_);
lean_dec(v_a_4585_);
lean_dec_ref(v_a_4584_);
lean_dec(v_a_4583_);
lean_dec_ref(v_a_4582_);
goto v___jp_4589_;
}
else
{
lean_object* v_val_4596_; uint8_t v___x_4597_; 
v_val_4596_ = lean_ctor_get(v_fst_4595_, 0);
lean_inc(v_val_4596_);
lean_dec_ref(v_fst_4595_);
v___x_4597_ = lean_unbox(v_val_4596_);
lean_dec(v_val_4596_);
if (v___x_4597_ == 0)
{
lean_dec(v_a_4587_);
lean_dec_ref(v_a_4586_);
lean_dec(v_a_4585_);
lean_dec_ref(v_a_4584_);
lean_dec(v_a_4583_);
lean_dec_ref(v_a_4582_);
goto v___jp_4589_;
}
else
{
lean_object* v_code_4598_; lean_object* v___x_4599_; 
v_code_4598_ = lean_ctor_get(v_c_4580_, 0);
lean_inc_ref(v_code_4598_);
lean_dec_ref(v_c_4580_);
v___x_4599_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4581_, v_code_4598_, v_a_4582_, v_a_4583_, v_a_4584_, v_a_4585_, v_a_4586_, v_a_4587_);
if (lean_obj_tag(v___x_4599_) == 0)
{
lean_object* v_a_4600_; lean_object* v___x_4601_; lean_object* v___x_4602_; 
v_a_4600_ = lean_ctor_get(v___x_4599_, 0);
lean_inc(v_a_4600_);
lean_dec_ref(v___x_4599_);
v___x_4601_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4601_, 0, v_a_4600_);
lean_ctor_set(v___x_4601_, 1, v_ws_4581_);
v___x_4602_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4602_, 0, v___x_4601_);
return v___x_4602_;
}
else
{
lean_object* v_a_4603_; lean_object* v___x_4604_; 
lean_dec(v_ws_4581_);
v_a_4603_ = lean_ctor_get(v___x_4599_, 0);
lean_inc(v_a_4603_);
lean_dec_ref(v___x_4599_);
v___x_4604_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4604_, 0, v_a_4603_);
return v___x_4604_;
}
}
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_extendUpdatedVars___boxed(lean_object* v_c_4608_, lean_object* v_ws_4609_, lean_object* v_a_4610_, lean_object* v_a_4611_, lean_object* v_a_4612_, lean_object* v_a_4613_, lean_object* v_a_4614_, lean_object* v_a_4615_, lean_object* v_a_4616_){
_start:
{
lean_object* v_res_4617_; 
v_res_4617_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_c_4608_, v_ws_4609_, v_a_4610_, v_a_4611_, v_a_4612_, v_a_4613_, v_a_4614_, v_a_4615_);
return v_res_4617_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(lean_object* v_init_4618_, lean_object* v_x_4619_){
_start:
{
if (lean_obj_tag(v_x_4619_) == 0)
{
lean_object* v_k_4620_; lean_object* v_v_4621_; lean_object* v_l_4622_; lean_object* v_r_4623_; lean_object* v___x_4624_; lean_object* v___x_4625_; 
v_k_4620_ = lean_ctor_get(v_x_4619_, 1);
lean_inc(v_k_4620_);
v_v_4621_ = lean_ctor_get(v_x_4619_, 2);
lean_inc(v_v_4621_);
v_l_4622_ = lean_ctor_get(v_x_4619_, 3);
lean_inc(v_l_4622_);
v_r_4623_ = lean_ctor_get(v_x_4619_, 4);
lean_inc(v_r_4623_);
lean_dec_ref(v_x_4619_);
v___x_4624_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_init_4618_, v_l_4622_);
v___x_4625_ = l_Std_DTreeMap_Internal_Impl_insert___at___00Lean_Elab_Term_Do_insertVars_spec__0___redArg(v_k_4620_, v_v_4621_, v___x_4624_);
v_init_4618_ = v___x_4625_;
v_x_4619_ = v_r_4623_;
goto _start;
}
else
{
return v_init_4618_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union(lean_object* v_s_u2081_4627_, lean_object* v_s_u2082_4628_){
_start:
{
lean_object* v___x_4629_; 
v___x_4629_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_s_u2082_4628_, v_s_u2081_4627_);
return v___x_4629_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0(lean_object* v_init_4630_, lean_object* v_t_4631_){
_start:
{
lean_object* v___x_4632_; 
v___x_4632_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_init_4630_, v_t_4631_);
return v___x_4632_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_homogenize(lean_object* v_c_u2081_4633_, lean_object* v_c_u2082_4634_, lean_object* v_a_4635_, lean_object* v_a_4636_, lean_object* v_a_4637_, lean_object* v_a_4638_, lean_object* v_a_4639_, lean_object* v_a_4640_){
_start:
{
lean_object* v_uvars_4642_; lean_object* v_uvars_4643_; lean_object* v_ws_4644_; lean_object* v___x_4645_; 
v_uvars_4642_ = lean_ctor_get(v_c_u2081_4633_, 1);
v_uvars_4643_ = lean_ctor_get(v_c_u2082_4634_, 1);
lean_inc(v_uvars_4642_);
lean_inc(v_uvars_4643_);
v_ws_4644_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_uvars_4643_, v_uvars_4642_);
lean_inc(v_a_4640_);
lean_inc_ref(v_a_4639_);
lean_inc(v_a_4638_);
lean_inc_ref(v_a_4637_);
lean_inc(v_a_4636_);
lean_inc_ref(v_a_4635_);
lean_inc(v_ws_4644_);
v___x_4645_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_c_u2081_4633_, v_ws_4644_, v_a_4635_, v_a_4636_, v_a_4637_, v_a_4638_, v_a_4639_, v_a_4640_);
if (lean_obj_tag(v___x_4645_) == 0)
{
lean_object* v_a_4646_; lean_object* v___x_4647_; 
v_a_4646_ = lean_ctor_get(v___x_4645_, 0);
lean_inc(v_a_4646_);
lean_dec_ref(v___x_4645_);
v___x_4647_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_c_u2082_4634_, v_ws_4644_, v_a_4635_, v_a_4636_, v_a_4637_, v_a_4638_, v_a_4639_, v_a_4640_);
if (lean_obj_tag(v___x_4647_) == 0)
{
lean_object* v_a_4648_; lean_object* v___x_4649_; lean_object* v___x_4650_; 
v_a_4648_ = lean_ctor_get(v___x_4647_, 0);
lean_inc(v_a_4648_);
lean_dec_ref(v___x_4647_);
v___x_4649_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4649_, 0, v_a_4646_);
lean_ctor_set(v___x_4649_, 1, v_a_4648_);
v___x_4650_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4650_, 0, v___x_4649_);
return v___x_4650_;
}
else
{
lean_object* v_a_4651_; lean_object* v___x_4652_; 
lean_dec(v_a_4646_);
v_a_4651_ = lean_ctor_get(v___x_4647_, 0);
lean_inc(v_a_4651_);
lean_dec_ref(v___x_4647_);
v___x_4652_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4652_, 0, v_a_4651_);
return v___x_4652_;
}
}
else
{
lean_object* v_a_4653_; lean_object* v___x_4654_; 
lean_dec(v_ws_4644_);
lean_dec(v_a_4640_);
lean_dec_ref(v_a_4639_);
lean_dec(v_a_4638_);
lean_dec_ref(v_a_4637_);
lean_dec(v_a_4636_);
lean_dec_ref(v_a_4635_);
lean_dec_ref(v_c_u2082_4634_);
v_a_4653_ = lean_ctor_get(v___x_4645_, 0);
lean_inc(v_a_4653_);
lean_dec_ref(v___x_4645_);
v___x_4654_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4654_, 0, v_a_4653_);
return v___x_4654_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_homogenize___boxed(lean_object* v_c_u2081_4655_, lean_object* v_c_u2082_4656_, lean_object* v_a_4657_, lean_object* v_a_4658_, lean_object* v_a_4659_, lean_object* v_a_4660_, lean_object* v_a_4661_, lean_object* v_a_4662_, lean_object* v_a_4663_){
_start:
{
lean_object* v_res_4664_; 
v_res_4664_ = l_Lean_Elab_Term_Do_homogenize(v_c_u2081_4655_, v_c_u2082_4656_, v_a_4657_, v_a_4658_, v_a_4659_, v_a_4660_, v_a_4661_, v_a_4662_);
return v_res_4664_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkVarDeclCore(lean_object* v_xs_4665_, lean_object* v_stx_4666_, lean_object* v_c_4667_){
_start:
{
lean_object* v_code_4668_; lean_object* v_uvars_4669_; lean_object* v___x_4670_; lean_object* v___x_4671_; lean_object* v___x_4672_; 
v_code_4668_ = lean_ctor_get(v_c_4667_, 0);
lean_inc_ref(v_code_4668_);
v_uvars_4669_ = lean_ctor_get(v_c_4667_, 1);
lean_inc(v_uvars_4669_);
lean_dec_ref(v_c_4667_);
lean_inc_ref(v_xs_4665_);
v___x_4670_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_4670_, 0, v_xs_4665_);
lean_ctor_set(v___x_4670_, 1, v_stx_4666_);
lean_ctor_set(v___x_4670_, 2, v_code_4668_);
v___x_4671_ = l_Lean_Elab_Term_Do_eraseVars(v_uvars_4669_, v_xs_4665_);
lean_dec_ref(v_xs_4665_);
v___x_4672_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4672_, 0, v___x_4670_);
lean_ctor_set(v___x_4672_, 1, v___x_4671_);
return v___x_4672_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0(lean_object* v_us_4673_, lean_object* v_as_4674_, size_t v_i_4675_, size_t v_stop_4676_){
_start:
{
uint8_t v___x_4677_; 
v___x_4677_ = lean_usize_dec_eq(v_i_4675_, v_stop_4676_);
if (v___x_4677_ == 0)
{
uint8_t v___x_4678_; lean_object* v___x_4679_; lean_object* v___x_4680_; uint8_t v___x_4681_; 
v___x_4678_ = 1;
v___x_4679_ = lean_array_uget_borrowed(v_as_4674_, v_i_4675_);
v___x_4680_ = l_Lean_Syntax_getId(v___x_4679_);
v___x_4681_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v___x_4680_, v_us_4673_);
lean_dec(v___x_4680_);
if (v___x_4681_ == 0)
{
return v___x_4678_;
}
else
{
if (v___x_4677_ == 0)
{
size_t v___x_4682_; size_t v___x_4683_; 
v___x_4682_ = ((size_t)1ULL);
v___x_4683_ = lean_usize_add(v_i_4675_, v___x_4682_);
v_i_4675_ = v___x_4683_;
goto _start;
}
else
{
return v___x_4678_;
}
}
}
else
{
uint8_t v___x_4685_; 
v___x_4685_ = 0;
return v___x_4685_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0___boxed(lean_object* v_us_4686_, lean_object* v_as_4687_, lean_object* v_i_4688_, lean_object* v_stop_4689_){
_start:
{
size_t v_i_boxed_4690_; size_t v_stop_boxed_4691_; uint8_t v_res_4692_; lean_object* v_r_4693_; 
v_i_boxed_4690_ = lean_unbox_usize(v_i_4688_);
lean_dec(v_i_4688_);
v_stop_boxed_4691_ = lean_unbox_usize(v_stop_4689_);
lean_dec(v_stop_4689_);
v_res_4692_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0(v_us_4686_, v_as_4687_, v_i_boxed_4690_, v_stop_boxed_4691_);
lean_dec_ref(v_as_4687_);
lean_dec(v_us_4686_);
v_r_4693_ = lean_box(v_res_4692_);
return v_r_4693_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReassignCore(lean_object* v_xs_4694_, lean_object* v_stx_4695_, lean_object* v_c_4696_, lean_object* v_a_4697_, lean_object* v_a_4698_, lean_object* v_a_4699_, lean_object* v_a_4700_, lean_object* v_a_4701_, lean_object* v_a_4702_){
_start:
{
lean_object* v_code_4704_; lean_object* v_uvars_4705_; lean_object* v_ws_4706_; lean_object* v_code_4708_; lean_object* v___x_4712_; lean_object* v___x_4713_; uint8_t v___x_4714_; 
v_code_4704_ = lean_ctor_get(v_c_4696_, 0);
lean_inc_ref(v_code_4704_);
v_uvars_4705_ = lean_ctor_get(v_c_4696_, 1);
lean_inc(v_uvars_4705_);
lean_dec_ref(v_c_4696_);
lean_inc(v_uvars_4705_);
v_ws_4706_ = l_Lean_Elab_Term_Do_insertVars(v_uvars_4705_, v_xs_4694_);
v___x_4712_ = lean_unsigned_to_nat(0u);
v___x_4713_ = lean_array_get_size(v_xs_4694_);
v___x_4714_ = lean_nat_dec_lt(v___x_4712_, v___x_4713_);
if (v___x_4714_ == 0)
{
lean_dec(v_uvars_4705_);
lean_dec(v_a_4702_);
lean_dec_ref(v_a_4701_);
lean_dec(v_a_4700_);
lean_dec_ref(v_a_4699_);
lean_dec(v_a_4698_);
lean_dec_ref(v_a_4697_);
v_code_4708_ = v_code_4704_;
goto v___jp_4707_;
}
else
{
if (v___x_4714_ == 0)
{
lean_dec(v_uvars_4705_);
lean_dec(v_a_4702_);
lean_dec_ref(v_a_4701_);
lean_dec(v_a_4700_);
lean_dec_ref(v_a_4699_);
lean_dec(v_a_4698_);
lean_dec_ref(v_a_4697_);
v_code_4708_ = v_code_4704_;
goto v___jp_4707_;
}
else
{
size_t v___x_4715_; size_t v___x_4716_; uint8_t v___x_4717_; 
v___x_4715_ = ((size_t)0ULL);
v___x_4716_ = lean_usize_of_nat(v___x_4713_);
v___x_4717_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_mkReassignCore_spec__0(v_uvars_4705_, v_xs_4694_, v___x_4715_, v___x_4716_);
lean_dec(v_uvars_4705_);
if (v___x_4717_ == 0)
{
lean_dec(v_a_4702_);
lean_dec_ref(v_a_4701_);
lean_dec(v_a_4700_);
lean_dec_ref(v_a_4699_);
lean_dec(v_a_4698_);
lean_dec_ref(v_a_4697_);
v_code_4708_ = v_code_4704_;
goto v___jp_4707_;
}
else
{
lean_object* v___x_4718_; 
v___x_4718_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update(v_ws_4706_, v_code_4704_, v_a_4697_, v_a_4698_, v_a_4699_, v_a_4700_, v_a_4701_, v_a_4702_);
if (lean_obj_tag(v___x_4718_) == 0)
{
lean_object* v_a_4719_; 
v_a_4719_ = lean_ctor_get(v___x_4718_, 0);
lean_inc(v_a_4719_);
lean_dec_ref(v___x_4718_);
v_code_4708_ = v_a_4719_;
goto v___jp_4707_;
}
else
{
lean_object* v_a_4720_; lean_object* v___x_4721_; 
lean_dec(v_ws_4706_);
lean_dec(v_stx_4695_);
lean_dec_ref(v_xs_4694_);
v_a_4720_ = lean_ctor_get(v___x_4718_, 0);
lean_inc(v_a_4720_);
lean_dec_ref(v___x_4718_);
v___x_4721_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4721_, 0, v_a_4720_);
return v___x_4721_;
}
}
}
}
v___jp_4707_:
{
lean_object* v___x_4709_; lean_object* v___x_4710_; lean_object* v___x_4711_; 
v___x_4709_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_4709_, 0, v_xs_4694_);
lean_ctor_set(v___x_4709_, 1, v_stx_4695_);
lean_ctor_set(v___x_4709_, 2, v_code_4708_);
v___x_4710_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4710_, 0, v___x_4709_);
lean_ctor_set(v___x_4710_, 1, v_ws_4706_);
v___x_4711_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4711_, 0, v___x_4710_);
return v___x_4711_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReassignCore___boxed(lean_object* v_xs_4722_, lean_object* v_stx_4723_, lean_object* v_c_4724_, lean_object* v_a_4725_, lean_object* v_a_4726_, lean_object* v_a_4727_, lean_object* v_a_4728_, lean_object* v_a_4729_, lean_object* v_a_4730_, lean_object* v_a_4731_){
_start:
{
lean_object* v_res_4732_; 
v_res_4732_ = l_Lean_Elab_Term_Do_mkReassignCore(v_xs_4722_, v_stx_4723_, v_c_4724_, v_a_4725_, v_a_4726_, v_a_4727_, v_a_4728_, v_a_4729_, v_a_4730_);
return v_res_4732_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSeq(lean_object* v_action_4733_, lean_object* v_c_4734_){
_start:
{
lean_object* v_code_4735_; lean_object* v_uvars_4736_; lean_object* v___x_4737_; lean_object* v___x_4738_; 
v_code_4735_ = lean_ctor_get(v_c_4734_, 0);
v_uvars_4736_ = lean_ctor_get(v_c_4734_, 1);
lean_inc_ref(v_code_4735_);
v___x_4737_ = lean_alloc_ctor(3, 2, 0);
lean_ctor_set(v___x_4737_, 0, v_action_4733_);
lean_ctor_set(v___x_4737_, 1, v_code_4735_);
lean_inc(v_uvars_4736_);
v___x_4738_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4738_, 0, v___x_4737_);
lean_ctor_set(v___x_4738_, 1, v_uvars_4736_);
return v___x_4738_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkSeq___boxed(lean_object* v_action_4739_, lean_object* v_c_4740_){
_start:
{
lean_object* v_res_4741_; 
v_res_4741_ = l_Lean_Elab_Term_Do_mkSeq(v_action_4739_, v_c_4740_);
lean_dec_ref(v_c_4740_);
return v_res_4741_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkTerminalAction(lean_object* v_action_4742_){
_start:
{
lean_object* v___x_4743_; lean_object* v___x_4744_; lean_object* v___x_4745_; 
v___x_4743_ = lean_alloc_ctor(4, 1, 0);
lean_ctor_set(v___x_4743_, 0, v_action_4742_);
v___x_4744_ = lean_box(1);
v___x_4745_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4745_, 0, v___x_4743_);
lean_ctor_set(v___x_4745_, 1, v___x_4744_);
return v___x_4745_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkReturn(lean_object* v_ref_4746_, lean_object* v_val_4747_){
_start:
{
lean_object* v___x_4748_; lean_object* v___x_4749_; lean_object* v___x_4750_; 
v___x_4748_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_4748_, 0, v_ref_4746_);
lean_ctor_set(v___x_4748_, 1, v_val_4747_);
v___x_4749_ = lean_box(1);
v___x_4750_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4750_, 0, v___x_4748_);
lean_ctor_set(v___x_4750_, 1, v___x_4749_);
return v___x_4750_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkBreak(lean_object* v_ref_4751_){
_start:
{
lean_object* v___x_4752_; lean_object* v___x_4753_; lean_object* v___x_4754_; 
v___x_4752_ = lean_alloc_ctor(5, 1, 0);
lean_ctor_set(v___x_4752_, 0, v_ref_4751_);
v___x_4753_ = lean_box(1);
v___x_4754_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4754_, 0, v___x_4752_);
lean_ctor_set(v___x_4754_, 1, v___x_4753_);
return v___x_4754_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkContinue(lean_object* v_ref_4755_){
_start:
{
lean_object* v___x_4756_; lean_object* v___x_4757_; lean_object* v___x_4758_; 
v___x_4756_ = lean_alloc_ctor(6, 1, 0);
lean_ctor_set(v___x_4756_, 0, v_ref_4755_);
v___x_4757_ = lean_box(1);
v___x_4758_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4758_, 0, v___x_4756_);
lean_ctor_set(v___x_4758_, 1, v___x_4757_);
return v___x_4758_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkIte(lean_object* v_ref_4759_, lean_object* v_optIdent_4760_, lean_object* v_cond_4761_, lean_object* v_thenBranch_4762_, lean_object* v_elseBranch_4763_, lean_object* v_a_4764_, lean_object* v_a_4765_, lean_object* v_a_4766_, lean_object* v_a_4767_, lean_object* v_a_4768_, lean_object* v_a_4769_){
_start:
{
lean_object* v___x_4771_; 
v___x_4771_ = l_Lean_Elab_Term_Do_homogenize(v_thenBranch_4762_, v_elseBranch_4763_, v_a_4764_, v_a_4765_, v_a_4766_, v_a_4767_, v_a_4768_, v_a_4769_);
if (lean_obj_tag(v___x_4771_) == 0)
{
lean_object* v_a_4772_; lean_object* v_fst_4773_; lean_object* v_snd_4774_; lean_object* v_code_4775_; lean_object* v_uvars_4776_; lean_object* v_code_4777_; lean_object* v_x_x3f_4778_; lean_object* v___x_4779_; lean_object* v___x_4780_; lean_object* v___x_4781_; 
v_a_4772_ = lean_ctor_get(v___x_4771_, 0);
lean_inc(v_a_4772_);
lean_dec_ref(v___x_4771_);
v_fst_4773_ = lean_ctor_get(v_a_4772_, 0);
lean_inc(v_fst_4773_);
v_snd_4774_ = lean_ctor_get(v_a_4772_, 1);
lean_inc(v_snd_4774_);
lean_dec(v_a_4772_);
v_code_4775_ = lean_ctor_get(v_fst_4773_, 0);
lean_inc_ref(v_code_4775_);
v_uvars_4776_ = lean_ctor_get(v_fst_4773_, 1);
lean_inc(v_uvars_4776_);
lean_dec(v_fst_4773_);
v_code_4777_ = lean_ctor_get(v_snd_4774_, 0);
lean_inc_ref(v_code_4777_);
lean_dec(v_snd_4774_);
v_x_x3f_4778_ = l_Lean_Syntax_getOptional_x3f(v_optIdent_4760_);
v___x_4779_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_4779_, 0, v_ref_4759_);
lean_ctor_set(v___x_4779_, 1, v_x_x3f_4778_);
lean_ctor_set(v___x_4779_, 2, v_optIdent_4760_);
lean_ctor_set(v___x_4779_, 3, v_cond_4761_);
lean_ctor_set(v___x_4779_, 4, v_code_4775_);
lean_ctor_set(v___x_4779_, 5, v_code_4777_);
v___x_4780_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4780_, 0, v___x_4779_);
lean_ctor_set(v___x_4780_, 1, v_uvars_4776_);
v___x_4781_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_4781_, 0, v___x_4780_);
return v___x_4781_;
}
else
{
lean_object* v_a_4782_; lean_object* v___x_4783_; 
lean_dec(v_cond_4761_);
lean_dec(v_optIdent_4760_);
lean_dec(v_ref_4759_);
v_a_4782_ = lean_ctor_get(v___x_4771_, 0);
lean_inc(v_a_4782_);
lean_dec_ref(v___x_4771_);
v___x_4783_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_4783_, 0, v_a_4782_);
return v___x_4783_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkIte___boxed(lean_object* v_ref_4784_, lean_object* v_optIdent_4785_, lean_object* v_cond_4786_, lean_object* v_thenBranch_4787_, lean_object* v_elseBranch_4788_, lean_object* v_a_4789_, lean_object* v_a_4790_, lean_object* v_a_4791_, lean_object* v_a_4792_, lean_object* v_a_4793_, lean_object* v_a_4794_, lean_object* v_a_4795_){
_start:
{
lean_object* v_res_4796_; 
v_res_4796_ = l_Lean_Elab_Term_Do_mkIte(v_ref_4784_, v_optIdent_4785_, v_cond_4786_, v_thenBranch_4787_, v_elseBranch_4788_, v_a_4789_, v_a_4790_, v_a_4791_, v_a_4792_, v_a_4793_, v_a_4794_);
return v_res_4796_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7(void){
_start:
{
lean_object* v___x_4813_; lean_object* v___x_4814_; 
v___x_4813_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___x_4814_ = l_String_toRawSubstring_x27(v___x_4813_);
return v___x_4814_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31(void){
_start:
{
lean_object* v___x_4866_; lean_object* v___x_4867_; 
v___x_4866_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__30));
v___x_4867_ = l_String_toRawSubstring_x27(v___x_4866_);
return v___x_4867_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit(lean_object* v_a_4882_, lean_object* v_a_4883_){
_start:
{
lean_object* v_quotContext_4884_; lean_object* v_currMacroScope_4885_; lean_object* v_ref_4886_; uint8_t v___x_4887_; lean_object* v___x_4888_; lean_object* v___x_4889_; lean_object* v___x_4890_; lean_object* v___x_4891_; lean_object* v___x_4892_; lean_object* v___x_4893_; lean_object* v___x_4894_; lean_object* v___x_4895_; lean_object* v___x_4896_; lean_object* v___x_4897_; lean_object* v___x_4898_; lean_object* v___x_4899_; lean_object* v___x_4900_; lean_object* v___x_4901_; lean_object* v___x_4902_; lean_object* v___x_4903_; lean_object* v___x_4904_; lean_object* v___x_4905_; lean_object* v___x_4906_; lean_object* v___x_4907_; lean_object* v___x_4908_; lean_object* v___x_4909_; lean_object* v___x_4910_; lean_object* v___x_4911_; lean_object* v___x_4912_; lean_object* v___x_4913_; lean_object* v___x_4914_; lean_object* v___x_4915_; lean_object* v___x_4916_; lean_object* v___x_4917_; lean_object* v___x_4918_; lean_object* v___x_4919_; lean_object* v___x_4920_; lean_object* v___x_4921_; 
v_quotContext_4884_ = lean_ctor_get(v_a_4882_, 1);
lean_inc(v_quotContext_4884_);
v_currMacroScope_4885_ = lean_ctor_get(v_a_4882_, 2);
lean_inc(v_currMacroScope_4885_);
v_ref_4886_ = lean_ctor_get(v_a_4882_, 5);
lean_inc(v_ref_4886_);
lean_dec_ref(v_a_4882_);
v___x_4887_ = 0;
v___x_4888_ = l_Lean_SourceInfo_fromRef(v_ref_4886_, v___x_4887_);
lean_dec(v_ref_4886_);
v___x_4889_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_4890_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_4891_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_4888_);
v___x_4892_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_4892_, 0, v___x_4888_);
lean_ctor_set(v___x_4892_, 1, v___x_4891_);
v___x_4893_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_4894_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_4895_ = lean_box(0);
lean_inc(v_currMacroScope_4885_);
lean_inc(v_quotContext_4884_);
v___x_4896_ = l_Lean_addMacroScope(v_quotContext_4884_, v___x_4895_, v_currMacroScope_4885_);
v___x_4897_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__24));
lean_inc(v___x_4888_);
v___x_4898_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_4898_, 0, v___x_4888_);
lean_ctor_set(v___x_4898_, 1, v___x_4894_);
lean_ctor_set(v___x_4898_, 2, v___x_4896_);
lean_ctor_set(v___x_4898_, 3, v___x_4897_);
lean_inc(v___x_4888_);
v___x_4899_ = l_Lean_Syntax_node1(v___x_4888_, v___x_4893_, v___x_4898_);
lean_inc(v___x_4888_);
v___x_4900_ = l_Lean_Syntax_node2(v___x_4888_, v___x_4890_, v___x_4892_, v___x_4899_);
v___x_4901_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__26));
v___x_4902_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__27));
lean_inc(v___x_4888_);
v___x_4903_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_4903_, 0, v___x_4888_);
lean_ctor_set(v___x_4903_, 1, v___x_4902_);
v___x_4904_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_4905_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_4888_);
v___x_4906_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_4906_, 0, v___x_4888_);
lean_ctor_set(v___x_4906_, 1, v___x_4904_);
lean_ctor_set(v___x_4906_, 2, v___x_4905_);
v___x_4907_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__28));
lean_inc(v___x_4888_);
v___x_4908_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_4908_, 0, v___x_4888_);
lean_ctor_set(v___x_4908_, 1, v___x_4907_);
lean_inc(v___x_4888_);
v___x_4909_ = l_Lean_Syntax_node3(v___x_4888_, v___x_4901_, v___x_4903_, v___x_4906_, v___x_4908_);
v___x_4910_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_4888_);
v___x_4911_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_4911_, 0, v___x_4888_);
lean_ctor_set(v___x_4911_, 1, v___x_4910_);
v___x_4912_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31);
v___x_4913_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32));
v___x_4914_ = l_Lean_addMacroScope(v_quotContext_4884_, v___x_4913_, v_currMacroScope_4885_);
v___x_4915_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__36));
lean_inc(v___x_4888_);
v___x_4916_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_4916_, 0, v___x_4888_);
lean_ctor_set(v___x_4916_, 1, v___x_4912_);
lean_ctor_set(v___x_4916_, 2, v___x_4914_);
lean_ctor_set(v___x_4916_, 3, v___x_4915_);
lean_inc(v___x_4888_);
v___x_4917_ = l_Lean_Syntax_node1(v___x_4888_, v___x_4904_, v___x_4916_);
v___x_4918_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_4888_);
v___x_4919_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_4919_, 0, v___x_4888_);
lean_ctor_set(v___x_4919_, 1, v___x_4918_);
v___x_4920_ = l_Lean_Syntax_node5(v___x_4888_, v___x_4889_, v___x_4900_, v___x_4909_, v___x_4911_, v___x_4917_, v___x_4919_);
v___x_4921_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4921_, 0, v___x_4920_);
lean_ctor_set(v___x_4921_, 1, v_a_4883_);
return v___x_4921_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0(void){
_start:
{
lean_object* v___x_4922_; lean_object* v___x_4923_; 
v___x_4922_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__5));
v___x_4923_ = l_String_toRawSubstring_x27(v___x_4922_);
return v___x_4923_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3(void){
_start:
{
lean_object* v___x_4927_; lean_object* v___x_4928_; 
v___x_4927_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__2));
v___x_4928_ = l_String_toRawSubstring_x27(v___x_4927_);
return v___x_4928_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit(lean_object* v_a_4943_, lean_object* v_a_4944_){
_start:
{
lean_object* v_quotContext_4945_; lean_object* v_currMacroScope_4946_; lean_object* v_ref_4947_; uint8_t v___x_4948_; lean_object* v___x_4949_; lean_object* v___x_4950_; lean_object* v___x_4951_; lean_object* v___x_4952_; lean_object* v___x_4953_; lean_object* v___x_4954_; lean_object* v___x_4955_; lean_object* v___x_4956_; lean_object* v___x_4957_; lean_object* v___x_4958_; lean_object* v___x_4959_; lean_object* v___x_4960_; lean_object* v___x_4961_; lean_object* v___x_4962_; lean_object* v___x_4963_; lean_object* v___x_4964_; 
v_quotContext_4945_ = lean_ctor_get(v_a_4943_, 1);
lean_inc(v_quotContext_4945_);
v_currMacroScope_4946_ = lean_ctor_get(v_a_4943_, 2);
lean_inc(v_currMacroScope_4946_);
v_ref_4947_ = lean_ctor_get(v_a_4943_, 5);
lean_inc(v_ref_4947_);
lean_dec_ref(v_a_4943_);
v___x_4948_ = 0;
v___x_4949_ = l_Lean_SourceInfo_fromRef(v_ref_4947_, v___x_4948_);
lean_dec(v_ref_4947_);
v___x_4950_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_4951_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_4952_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_4946_);
lean_inc(v_quotContext_4945_);
v___x_4953_ = l_Lean_addMacroScope(v_quotContext_4945_, v___x_4952_, v_currMacroScope_4946_);
v___x_4954_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_4949_);
v___x_4955_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_4955_, 0, v___x_4949_);
lean_ctor_set(v___x_4955_, 1, v___x_4951_);
lean_ctor_set(v___x_4955_, 2, v___x_4953_);
lean_ctor_set(v___x_4955_, 3, v___x_4954_);
v___x_4956_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_4957_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3);
v___x_4958_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4));
v___x_4959_ = l_Lean_addMacroScope(v_quotContext_4945_, v___x_4958_, v_currMacroScope_4946_);
v___x_4960_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8));
lean_inc(v___x_4949_);
v___x_4961_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_4961_, 0, v___x_4949_);
lean_ctor_set(v___x_4961_, 1, v___x_4957_);
lean_ctor_set(v___x_4961_, 2, v___x_4959_);
lean_ctor_set(v___x_4961_, 3, v___x_4960_);
lean_inc(v___x_4949_);
v___x_4962_ = l_Lean_Syntax_node1(v___x_4949_, v___x_4956_, v___x_4961_);
v___x_4963_ = l_Lean_Syntax_node2(v___x_4949_, v___x_4950_, v___x_4955_, v___x_4962_);
v___x_4964_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4964_, 0, v___x_4963_);
lean_ctor_set(v___x_4964_, 1, v_a_4944_);
return v___x_4964_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkPureUnitAction(lean_object* v_a_4965_, lean_object* v_a_4966_){
_start:
{
lean_object* v___x_4967_; lean_object* v_a_4968_; lean_object* v_a_4969_; lean_object* v___x_4970_; lean_object* v___x_4971_; 
v___x_4967_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit(v_a_4965_, v_a_4966_);
v_a_4968_ = lean_ctor_get(v___x_4967_, 0);
lean_inc(v_a_4968_);
v_a_4969_ = lean_ctor_get(v___x_4967_, 1);
lean_inc(v_a_4969_);
lean_dec_ref(v___x_4967_);
v___x_4970_ = l_Lean_Elab_Term_Do_mkTerminalAction(v_a_4968_);
v___x_4971_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4971_, 0, v___x_4970_);
lean_ctor_set(v___x_4971_, 1, v_a_4969_);
return v___x_4971_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkUnless(lean_object* v_cond_4976_, lean_object* v_c_4977_, lean_object* v_a_4978_, lean_object* v_a_4979_){
_start:
{
lean_object* v___x_4980_; 
lean_inc_ref(v_a_4978_);
v___x_4980_ = l_Lean_Elab_Term_Do_mkPureUnitAction(v_a_4978_, v_a_4979_);
if (lean_obj_tag(v___x_4980_) == 0)
{
lean_object* v_a_4981_; lean_object* v_a_4982_; lean_object* v_ref_4983_; lean_object* v_code_4984_; lean_object* v_code_4985_; lean_object* v_uvars_4986_; lean_object* v___x_4987_; lean_object* v___x_4988_; lean_object* v___x_4989_; lean_object* v___x_4990_; lean_object* v___x_4991_; 
v_a_4981_ = lean_ctor_get(v___x_4980_, 0);
lean_inc(v_a_4981_);
v_a_4982_ = lean_ctor_get(v___x_4980_, 1);
lean_inc(v_a_4982_);
lean_dec_ref(v___x_4980_);
v_ref_4983_ = lean_ctor_get(v_a_4978_, 5);
lean_inc(v_ref_4983_);
lean_dec_ref(v_a_4978_);
v_code_4984_ = lean_ctor_get(v_a_4981_, 0);
lean_inc_ref(v_code_4984_);
lean_dec(v_a_4981_);
v_code_4985_ = lean_ctor_get(v_c_4977_, 0);
v_uvars_4986_ = lean_ctor_get(v_c_4977_, 1);
v___x_4987_ = lean_box(0);
v___x_4988_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkUnless___closed__0));
lean_inc_ref(v_code_4985_);
v___x_4989_ = lean_alloc_ctor(8, 6, 0);
lean_ctor_set(v___x_4989_, 0, v_ref_4983_);
lean_ctor_set(v___x_4989_, 1, v___x_4987_);
lean_ctor_set(v___x_4989_, 2, v___x_4988_);
lean_ctor_set(v___x_4989_, 3, v_cond_4976_);
lean_ctor_set(v___x_4989_, 4, v_code_4984_);
lean_ctor_set(v___x_4989_, 5, v_code_4985_);
lean_inc(v_uvars_4986_);
v___x_4990_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4990_, 0, v___x_4989_);
lean_ctor_set(v___x_4990_, 1, v_uvars_4986_);
v___x_4991_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_4991_, 0, v___x_4990_);
lean_ctor_set(v___x_4991_, 1, v_a_4982_);
return v___x_4991_;
}
else
{
lean_dec_ref(v_a_4978_);
lean_dec(v_cond_4976_);
return v___x_4980_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkUnless___boxed(lean_object* v_cond_4992_, lean_object* v_c_4993_, lean_object* v_a_4994_, lean_object* v_a_4995_){
_start:
{
lean_object* v_res_4996_; 
v_res_4996_ = l_Lean_Elab_Term_Do_mkUnless(v_cond_4992_, v_c_4993_, v_a_4994_, v_a_4995_);
lean_dec_ref(v_c_4993_);
return v_res_4996_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0(lean_object* v___y_4997_, size_t v_sz_4998_, size_t v_i_4999_, lean_object* v_bs_5000_, lean_object* v___y_5001_, lean_object* v___y_5002_, lean_object* v___y_5003_, lean_object* v___y_5004_, lean_object* v___y_5005_, lean_object* v___y_5006_){
_start:
{
uint8_t v___x_5008_; 
v___x_5008_ = lean_usize_dec_lt(v_i_4999_, v_sz_4998_);
if (v___x_5008_ == 0)
{
lean_object* v___x_5009_; 
lean_dec(v___y_5006_);
lean_dec_ref(v___y_5005_);
lean_dec(v___y_5004_);
lean_dec_ref(v___y_5003_);
lean_dec(v___y_5002_);
lean_dec_ref(v___y_5001_);
lean_dec(v___y_4997_);
v___x_5009_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5009_, 0, v_bs_5000_);
return v___x_5009_;
}
else
{
lean_object* v_v_5010_; lean_object* v_ref_5011_; lean_object* v_vars_5012_; lean_object* v_patterns_5013_; lean_object* v_rhs_5014_; lean_object* v___x_5015_; 
v_v_5010_ = lean_array_uget_borrowed(v_bs_5000_, v_i_4999_);
v_ref_5011_ = lean_ctor_get(v_v_5010_, 0);
lean_inc(v_ref_5011_);
v_vars_5012_ = lean_ctor_get(v_v_5010_, 1);
lean_inc_ref(v_vars_5012_);
v_patterns_5013_ = lean_ctor_get(v_v_5010_, 2);
lean_inc(v_patterns_5013_);
v_rhs_5014_ = lean_ctor_get(v_v_5010_, 3);
lean_inc(v___y_5006_);
lean_inc_ref(v___y_5005_);
lean_inc(v___y_5004_);
lean_inc_ref(v___y_5003_);
lean_inc(v___y_5002_);
lean_inc_ref(v___y_5001_);
lean_inc(v___y_4997_);
lean_inc(v_rhs_5014_);
v___x_5015_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_rhs_5014_, v___y_4997_, v___y_5001_, v___y_5002_, v___y_5003_, v___y_5004_, v___y_5005_, v___y_5006_);
if (lean_obj_tag(v___x_5015_) == 0)
{
lean_object* v_a_5016_; lean_object* v_code_5017_; lean_object* v___x_5018_; lean_object* v_bs_x27_5019_; lean_object* v___x_5020_; size_t v___x_5021_; size_t v___x_5022_; lean_object* v___x_5023_; 
v_a_5016_ = lean_ctor_get(v___x_5015_, 0);
lean_inc(v_a_5016_);
lean_dec_ref(v___x_5015_);
v_code_5017_ = lean_ctor_get(v_a_5016_, 0);
lean_inc_ref(v_code_5017_);
lean_dec(v_a_5016_);
v___x_5018_ = lean_unsigned_to_nat(0u);
v_bs_x27_5019_ = lean_array_uset(v_bs_5000_, v_i_4999_, v___x_5018_);
v___x_5020_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_5020_, 0, v_ref_5011_);
lean_ctor_set(v___x_5020_, 1, v_vars_5012_);
lean_ctor_set(v___x_5020_, 2, v_patterns_5013_);
lean_ctor_set(v___x_5020_, 3, v_code_5017_);
v___x_5021_ = ((size_t)1ULL);
v___x_5022_ = lean_usize_add(v_i_4999_, v___x_5021_);
v___x_5023_ = lean_array_uset(v_bs_x27_5019_, v_i_4999_, v___x_5020_);
v_i_4999_ = v___x_5022_;
v_bs_5000_ = v___x_5023_;
goto _start;
}
else
{
lean_object* v_a_5025_; lean_object* v___x_5026_; 
lean_dec(v_patterns_5013_);
lean_dec_ref(v_vars_5012_);
lean_dec(v_ref_5011_);
lean_dec(v___y_5006_);
lean_dec_ref(v___y_5005_);
lean_dec(v___y_5004_);
lean_dec_ref(v___y_5003_);
lean_dec(v___y_5002_);
lean_dec_ref(v___y_5001_);
lean_dec_ref(v_bs_5000_);
lean_dec(v___y_4997_);
v_a_5025_ = lean_ctor_get(v___x_5015_, 0);
lean_inc(v_a_5025_);
lean_dec_ref(v___x_5015_);
v___x_5026_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5026_, 0, v_a_5025_);
return v___x_5026_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0___boxed(lean_object* v___y_5027_, lean_object* v_sz_5028_, lean_object* v_i_5029_, lean_object* v_bs_5030_, lean_object* v___y_5031_, lean_object* v___y_5032_, lean_object* v___y_5033_, lean_object* v___y_5034_, lean_object* v___y_5035_, lean_object* v___y_5036_, lean_object* v___y_5037_){
_start:
{
size_t v_sz_boxed_5038_; size_t v_i_boxed_5039_; lean_object* v_res_5040_; 
v_sz_boxed_5038_ = lean_unbox_usize(v_sz_5028_);
lean_dec(v_sz_5028_);
v_i_boxed_5039_ = lean_unbox_usize(v_i_5029_);
lean_dec(v_i_5029_);
v_res_5040_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0(v___y_5027_, v_sz_boxed_5038_, v_i_boxed_5039_, v_bs_5030_, v___y_5031_, v___y_5032_, v___y_5033_, v___y_5034_, v___y_5035_, v___y_5036_);
return v_res_5040_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1(lean_object* v_as_5041_, size_t v_i_5042_, size_t v_stop_5043_, lean_object* v_b_5044_){
_start:
{
uint8_t v___x_5045_; 
v___x_5045_ = lean_usize_dec_eq(v_i_5042_, v_stop_5043_);
if (v___x_5045_ == 0)
{
lean_object* v___x_5046_; lean_object* v_rhs_5047_; lean_object* v_uvars_5048_; lean_object* v___x_5049_; size_t v___x_5050_; size_t v___x_5051_; 
v___x_5046_ = lean_array_uget_borrowed(v_as_5041_, v_i_5042_);
v_rhs_5047_ = lean_ctor_get(v___x_5046_, 3);
v_uvars_5048_ = lean_ctor_get(v_rhs_5047_, 1);
lean_inc(v_uvars_5048_);
v___x_5049_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_uvars_5048_, v_b_5044_);
v___x_5050_ = ((size_t)1ULL);
v___x_5051_ = lean_usize_add(v_i_5042_, v___x_5050_);
v_i_5042_ = v___x_5051_;
v_b_5044_ = v___x_5049_;
goto _start;
}
else
{
return v_b_5044_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1___boxed(lean_object* v_as_5053_, lean_object* v_i_5054_, lean_object* v_stop_5055_, lean_object* v_b_5056_){
_start:
{
size_t v_i_boxed_5057_; size_t v_stop_boxed_5058_; lean_object* v_res_5059_; 
v_i_boxed_5057_ = lean_unbox_usize(v_i_5054_);
lean_dec(v_i_5054_);
v_stop_boxed_5058_ = lean_unbox_usize(v_stop_5055_);
lean_dec(v_stop_5055_);
v_res_5059_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1(v_as_5053_, v_i_boxed_5057_, v_stop_boxed_5058_, v_b_5056_);
lean_dec_ref(v_as_5053_);
return v_res_5059_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatch(lean_object* v_ref_5060_, lean_object* v_genParam_5061_, lean_object* v_discrs_5062_, lean_object* v_optMotive_5063_, lean_object* v_alts_5064_, lean_object* v_a_5065_, lean_object* v_a_5066_, lean_object* v_a_5067_, lean_object* v_a_5068_, lean_object* v_a_5069_, lean_object* v_a_5070_){
_start:
{
lean_object* v___y_5073_; lean_object* v___x_5083_; lean_object* v___x_5084_; lean_object* v___x_5085_; uint8_t v___x_5086_; 
v___x_5083_ = lean_box(1);
v___x_5084_ = lean_unsigned_to_nat(0u);
v___x_5085_ = lean_array_get_size(v_alts_5064_);
v___x_5086_ = lean_nat_dec_lt(v___x_5084_, v___x_5085_);
if (v___x_5086_ == 0)
{
v___y_5073_ = v___x_5083_;
goto v___jp_5072_;
}
else
{
uint8_t v___x_5087_; 
v___x_5087_ = lean_nat_dec_le(v___x_5085_, v___x_5085_);
if (v___x_5087_ == 0)
{
if (v___x_5086_ == 0)
{
v___y_5073_ = v___x_5083_;
goto v___jp_5072_;
}
else
{
size_t v___x_5088_; size_t v___x_5089_; lean_object* v___x_5090_; 
v___x_5088_ = ((size_t)0ULL);
v___x_5089_ = lean_usize_of_nat(v___x_5085_);
v___x_5090_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1(v_alts_5064_, v___x_5088_, v___x_5089_, v___x_5083_);
v___y_5073_ = v___x_5090_;
goto v___jp_5072_;
}
}
else
{
size_t v___x_5091_; size_t v___x_5092_; lean_object* v___x_5093_; 
v___x_5091_ = ((size_t)0ULL);
v___x_5092_ = lean_usize_of_nat(v___x_5085_);
v___x_5093_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatch_spec__1(v_alts_5064_, v___x_5091_, v___x_5092_, v___x_5083_);
v___y_5073_ = v___x_5093_;
goto v___jp_5072_;
}
}
v___jp_5072_:
{
size_t v_sz_5074_; size_t v___x_5075_; lean_object* v___x_5076_; 
v_sz_5074_ = lean_array_size(v_alts_5064_);
v___x_5075_ = ((size_t)0ULL);
lean_inc(v___y_5073_);
v___x_5076_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatch_spec__0(v___y_5073_, v_sz_5074_, v___x_5075_, v_alts_5064_, v_a_5065_, v_a_5066_, v_a_5067_, v_a_5068_, v_a_5069_, v_a_5070_);
if (lean_obj_tag(v___x_5076_) == 0)
{
lean_object* v_a_5077_; lean_object* v___x_5078_; lean_object* v___x_5079_; lean_object* v___x_5080_; 
v_a_5077_ = lean_ctor_get(v___x_5076_, 0);
lean_inc(v_a_5077_);
lean_dec_ref(v___x_5076_);
v___x_5078_ = lean_alloc_ctor(9, 5, 0);
lean_ctor_set(v___x_5078_, 0, v_ref_5060_);
lean_ctor_set(v___x_5078_, 1, v_genParam_5061_);
lean_ctor_set(v___x_5078_, 2, v_discrs_5062_);
lean_ctor_set(v___x_5078_, 3, v_optMotive_5063_);
lean_ctor_set(v___x_5078_, 4, v_a_5077_);
v___x_5079_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5079_, 0, v___x_5078_);
lean_ctor_set(v___x_5079_, 1, v___y_5073_);
v___x_5080_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5080_, 0, v___x_5079_);
return v___x_5080_;
}
else
{
lean_object* v_a_5081_; lean_object* v___x_5082_; 
lean_dec(v___y_5073_);
lean_dec(v_optMotive_5063_);
lean_dec(v_discrs_5062_);
lean_dec(v_genParam_5061_);
lean_dec(v_ref_5060_);
v_a_5081_ = lean_ctor_get(v___x_5076_, 0);
lean_inc(v_a_5081_);
lean_dec_ref(v___x_5076_);
v___x_5082_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5082_, 0, v_a_5081_);
return v___x_5082_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatch___boxed(lean_object* v_ref_5094_, lean_object* v_genParam_5095_, lean_object* v_discrs_5096_, lean_object* v_optMotive_5097_, lean_object* v_alts_5098_, lean_object* v_a_5099_, lean_object* v_a_5100_, lean_object* v_a_5101_, lean_object* v_a_5102_, lean_object* v_a_5103_, lean_object* v_a_5104_, lean_object* v_a_5105_){
_start:
{
lean_object* v_res_5106_; 
v_res_5106_ = l_Lean_Elab_Term_Do_mkMatch(v_ref_5094_, v_genParam_5095_, v_discrs_5096_, v_optMotive_5097_, v_alts_5098_, v_a_5099_, v_a_5100_, v_a_5101_, v_a_5102_, v_a_5103_, v_a_5104_);
return v_res_5106_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0(lean_object* v_ws_5107_, size_t v_sz_5108_, size_t v_i_5109_, lean_object* v_bs_5110_, lean_object* v___y_5111_, lean_object* v___y_5112_, lean_object* v___y_5113_, lean_object* v___y_5114_, lean_object* v___y_5115_, lean_object* v___y_5116_){
_start:
{
uint8_t v___x_5118_; 
v___x_5118_ = lean_usize_dec_lt(v_i_5109_, v_sz_5108_);
if (v___x_5118_ == 0)
{
lean_object* v___x_5119_; 
lean_dec(v___y_5116_);
lean_dec_ref(v___y_5115_);
lean_dec(v___y_5114_);
lean_dec_ref(v___y_5113_);
lean_dec(v___y_5112_);
lean_dec_ref(v___y_5111_);
lean_dec(v_ws_5107_);
v___x_5119_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5119_, 0, v_bs_5110_);
return v___x_5119_;
}
else
{
lean_object* v_v_5120_; lean_object* v_ref_5121_; lean_object* v_var_x3f_5122_; lean_object* v_funName_5123_; lean_object* v_pvars_5124_; lean_object* v_rhs_5125_; lean_object* v___x_5126_; 
v_v_5120_ = lean_array_uget_borrowed(v_bs_5110_, v_i_5109_);
v_ref_5121_ = lean_ctor_get(v_v_5120_, 0);
lean_inc(v_ref_5121_);
v_var_x3f_5122_ = lean_ctor_get(v_v_5120_, 1);
lean_inc(v_var_x3f_5122_);
v_funName_5123_ = lean_ctor_get(v_v_5120_, 2);
lean_inc(v_funName_5123_);
v_pvars_5124_ = lean_ctor_get(v_v_5120_, 3);
lean_inc_ref(v_pvars_5124_);
v_rhs_5125_ = lean_ctor_get(v_v_5120_, 4);
lean_inc(v___y_5116_);
lean_inc_ref(v___y_5115_);
lean_inc(v___y_5114_);
lean_inc_ref(v___y_5113_);
lean_inc(v___y_5112_);
lean_inc_ref(v___y_5111_);
lean_inc(v_ws_5107_);
lean_inc(v_rhs_5125_);
v___x_5126_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_rhs_5125_, v_ws_5107_, v___y_5111_, v___y_5112_, v___y_5113_, v___y_5114_, v___y_5115_, v___y_5116_);
if (lean_obj_tag(v___x_5126_) == 0)
{
lean_object* v_a_5127_; lean_object* v_code_5128_; lean_object* v___x_5129_; lean_object* v_bs_x27_5130_; lean_object* v___x_5131_; size_t v___x_5132_; size_t v___x_5133_; lean_object* v___x_5134_; 
v_a_5127_ = lean_ctor_get(v___x_5126_, 0);
lean_inc(v_a_5127_);
lean_dec_ref(v___x_5126_);
v_code_5128_ = lean_ctor_get(v_a_5127_, 0);
lean_inc_ref(v_code_5128_);
lean_dec(v_a_5127_);
v___x_5129_ = lean_unsigned_to_nat(0u);
v_bs_x27_5130_ = lean_array_uset(v_bs_5110_, v_i_5109_, v___x_5129_);
v___x_5131_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_5131_, 0, v_ref_5121_);
lean_ctor_set(v___x_5131_, 1, v_var_x3f_5122_);
lean_ctor_set(v___x_5131_, 2, v_funName_5123_);
lean_ctor_set(v___x_5131_, 3, v_pvars_5124_);
lean_ctor_set(v___x_5131_, 4, v_code_5128_);
v___x_5132_ = ((size_t)1ULL);
v___x_5133_ = lean_usize_add(v_i_5109_, v___x_5132_);
v___x_5134_ = lean_array_uset(v_bs_x27_5130_, v_i_5109_, v___x_5131_);
v_i_5109_ = v___x_5133_;
v_bs_5110_ = v___x_5134_;
goto _start;
}
else
{
lean_object* v_a_5136_; lean_object* v___x_5137_; 
lean_dec_ref(v_pvars_5124_);
lean_dec(v_funName_5123_);
lean_dec(v_var_x3f_5122_);
lean_dec(v_ref_5121_);
lean_dec(v___y_5116_);
lean_dec_ref(v___y_5115_);
lean_dec(v___y_5114_);
lean_dec_ref(v___y_5113_);
lean_dec(v___y_5112_);
lean_dec_ref(v___y_5111_);
lean_dec_ref(v_bs_5110_);
lean_dec(v_ws_5107_);
v_a_5136_ = lean_ctor_get(v___x_5126_, 0);
lean_inc(v_a_5136_);
lean_dec_ref(v___x_5126_);
v___x_5137_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5137_, 0, v_a_5136_);
return v___x_5137_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0___boxed(lean_object* v_ws_5138_, lean_object* v_sz_5139_, lean_object* v_i_5140_, lean_object* v_bs_5141_, lean_object* v___y_5142_, lean_object* v___y_5143_, lean_object* v___y_5144_, lean_object* v___y_5145_, lean_object* v___y_5146_, lean_object* v___y_5147_, lean_object* v___y_5148_){
_start:
{
size_t v_sz_boxed_5149_; size_t v_i_boxed_5150_; lean_object* v_res_5151_; 
v_sz_boxed_5149_ = lean_unbox_usize(v_sz_5139_);
lean_dec(v_sz_5139_);
v_i_boxed_5150_ = lean_unbox_usize(v_i_5140_);
lean_dec(v_i_5140_);
v_res_5151_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0(v_ws_5138_, v_sz_boxed_5149_, v_i_boxed_5150_, v_bs_5141_, v___y_5142_, v___y_5143_, v___y_5144_, v___y_5145_, v___y_5146_, v___y_5147_);
return v_res_5151_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1(lean_object* v_as_5152_, size_t v_i_5153_, size_t v_stop_5154_, lean_object* v_b_5155_){
_start:
{
uint8_t v___x_5156_; 
v___x_5156_ = lean_usize_dec_eq(v_i_5153_, v_stop_5154_);
if (v___x_5156_ == 0)
{
lean_object* v___x_5157_; lean_object* v_rhs_5158_; lean_object* v_uvars_5159_; lean_object* v___x_5160_; size_t v___x_5161_; size_t v___x_5162_; 
v___x_5157_ = lean_array_uget_borrowed(v_as_5152_, v_i_5153_);
v_rhs_5158_ = lean_ctor_get(v___x_5157_, 4);
v_uvars_5159_ = lean_ctor_get(v_rhs_5158_, 1);
lean_inc(v_uvars_5159_);
v___x_5160_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_uvars_5159_, v_b_5155_);
v___x_5161_ = ((size_t)1ULL);
v___x_5162_ = lean_usize_add(v_i_5153_, v___x_5161_);
v_i_5153_ = v___x_5162_;
v_b_5155_ = v___x_5160_;
goto _start;
}
else
{
return v_b_5155_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1___boxed(lean_object* v_as_5164_, lean_object* v_i_5165_, lean_object* v_stop_5166_, lean_object* v_b_5167_){
_start:
{
size_t v_i_boxed_5168_; size_t v_stop_boxed_5169_; lean_object* v_res_5170_; 
v_i_boxed_5168_ = lean_unbox_usize(v_i_5165_);
lean_dec(v_i_5165_);
v_stop_boxed_5169_ = lean_unbox_usize(v_stop_5166_);
lean_dec(v_stop_5166_);
v_res_5170_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1(v_as_5164_, v_i_boxed_5168_, v_stop_boxed_5169_, v_b_5167_);
lean_dec_ref(v_as_5164_);
return v_res_5170_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatchExpr(lean_object* v_ref_5171_, uint8_t v_meta_5172_, lean_object* v_discr_5173_, lean_object* v_alts_5174_, lean_object* v_elseBranch_5175_, lean_object* v_a_5176_, lean_object* v_a_5177_, lean_object* v_a_5178_, lean_object* v_a_5179_, lean_object* v_a_5180_, lean_object* v_a_5181_){
_start:
{
lean_object* v___y_5184_; lean_object* v___x_5199_; lean_object* v___x_5200_; lean_object* v___x_5201_; uint8_t v___x_5202_; 
v___x_5199_ = lean_box(1);
v___x_5200_ = lean_unsigned_to_nat(0u);
v___x_5201_ = lean_array_get_size(v_alts_5174_);
v___x_5202_ = lean_nat_dec_lt(v___x_5200_, v___x_5201_);
if (v___x_5202_ == 0)
{
v___y_5184_ = v___x_5199_;
goto v___jp_5183_;
}
else
{
uint8_t v___x_5203_; 
v___x_5203_ = lean_nat_dec_le(v___x_5201_, v___x_5201_);
if (v___x_5203_ == 0)
{
if (v___x_5202_ == 0)
{
v___y_5184_ = v___x_5199_;
goto v___jp_5183_;
}
else
{
size_t v___x_5204_; size_t v___x_5205_; lean_object* v___x_5206_; 
v___x_5204_ = ((size_t)0ULL);
v___x_5205_ = lean_usize_of_nat(v___x_5201_);
v___x_5206_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1(v_alts_5174_, v___x_5204_, v___x_5205_, v___x_5199_);
v___y_5184_ = v___x_5206_;
goto v___jp_5183_;
}
}
else
{
size_t v___x_5207_; size_t v___x_5208_; lean_object* v___x_5209_; 
v___x_5207_ = ((size_t)0ULL);
v___x_5208_ = lean_usize_of_nat(v___x_5201_);
v___x_5209_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__1(v_alts_5174_, v___x_5207_, v___x_5208_, v___x_5199_);
v___y_5184_ = v___x_5209_;
goto v___jp_5183_;
}
}
v___jp_5183_:
{
lean_object* v_uvars_5185_; lean_object* v_ws_5186_; size_t v_sz_5187_; size_t v___x_5188_; lean_object* v___x_5189_; 
v_uvars_5185_ = lean_ctor_get(v_elseBranch_5175_, 1);
lean_inc(v_uvars_5185_);
v_ws_5186_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_uvars_5185_, v___y_5184_);
v_sz_5187_ = lean_array_size(v_alts_5174_);
v___x_5188_ = ((size_t)0ULL);
lean_inc(v_a_5181_);
lean_inc_ref(v_a_5180_);
lean_inc(v_a_5179_);
lean_inc_ref(v_a_5178_);
lean_inc(v_a_5177_);
lean_inc_ref(v_a_5176_);
lean_inc(v_ws_5186_);
v___x_5189_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkMatchExpr_spec__0(v_ws_5186_, v_sz_5187_, v___x_5188_, v_alts_5174_, v_a_5176_, v_a_5177_, v_a_5178_, v_a_5179_, v_a_5180_, v_a_5181_);
if (lean_obj_tag(v___x_5189_) == 0)
{
lean_object* v_a_5190_; lean_object* v___x_5191_; 
v_a_5190_ = lean_ctor_get(v___x_5189_, 0);
lean_inc(v_a_5190_);
lean_dec_ref(v___x_5189_);
lean_inc(v_ws_5186_);
v___x_5191_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_elseBranch_5175_, v_ws_5186_, v_a_5176_, v_a_5177_, v_a_5178_, v_a_5179_, v_a_5180_, v_a_5181_);
if (lean_obj_tag(v___x_5191_) == 0)
{
lean_object* v_a_5192_; lean_object* v_code_5193_; lean_object* v___x_5194_; lean_object* v___x_5195_; lean_object* v___x_5196_; 
v_a_5192_ = lean_ctor_get(v___x_5191_, 0);
lean_inc(v_a_5192_);
lean_dec_ref(v___x_5191_);
v_code_5193_ = lean_ctor_get(v_a_5192_, 0);
lean_inc_ref(v_code_5193_);
lean_dec(v_a_5192_);
v___x_5194_ = lean_alloc_ctor(10, 4, 1);
lean_ctor_set(v___x_5194_, 0, v_ref_5171_);
lean_ctor_set(v___x_5194_, 1, v_discr_5173_);
lean_ctor_set(v___x_5194_, 2, v_a_5190_);
lean_ctor_set(v___x_5194_, 3, v_code_5193_);
lean_ctor_set_uint8(v___x_5194_, sizeof(void*)*4, v_meta_5172_);
v___x_5195_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5195_, 0, v___x_5194_);
lean_ctor_set(v___x_5195_, 1, v_ws_5186_);
v___x_5196_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5196_, 0, v___x_5195_);
return v___x_5196_;
}
else
{
lean_dec(v_a_5190_);
lean_dec(v_ws_5186_);
lean_dec(v_discr_5173_);
lean_dec(v_ref_5171_);
return v___x_5191_;
}
}
else
{
lean_object* v_a_5197_; lean_object* v___x_5198_; 
lean_dec(v_ws_5186_);
lean_dec(v_a_5181_);
lean_dec_ref(v_a_5180_);
lean_dec(v_a_5179_);
lean_dec_ref(v_a_5178_);
lean_dec(v_a_5177_);
lean_dec_ref(v_a_5176_);
lean_dec_ref(v_elseBranch_5175_);
lean_dec(v_discr_5173_);
lean_dec(v_ref_5171_);
v_a_5197_ = lean_ctor_get(v___x_5189_, 0);
lean_inc(v_a_5197_);
lean_dec_ref(v___x_5189_);
v___x_5198_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5198_, 0, v_a_5197_);
return v___x_5198_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkMatchExpr___boxed(lean_object* v_ref_5210_, lean_object* v_meta_5211_, lean_object* v_discr_5212_, lean_object* v_alts_5213_, lean_object* v_elseBranch_5214_, lean_object* v_a_5215_, lean_object* v_a_5216_, lean_object* v_a_5217_, lean_object* v_a_5218_, lean_object* v_a_5219_, lean_object* v_a_5220_, lean_object* v_a_5221_){
_start:
{
uint8_t v_meta_boxed_5222_; lean_object* v_res_5223_; 
v_meta_boxed_5222_ = lean_unbox(v_meta_5211_);
v_res_5223_ = l_Lean_Elab_Term_Do_mkMatchExpr(v_ref_5210_, v_meta_boxed_5222_, v_discr_5212_, v_alts_5213_, v_elseBranch_5214_, v_a_5215_, v_a_5216_, v_a_5217_, v_a_5218_, v_a_5219_, v_a_5220_);
return v_res_5223_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat___lam__0(lean_object* v_name_5224_, lean_object* v___x_5225_, lean_object* v_code_5226_, lean_object* v___y_5227_, lean_object* v___y_5228_){
_start:
{
lean_object* v___x_5229_; 
v___x_5229_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_convertTerminalActionIntoJmp_loop(v_name_5224_, v___x_5225_, v_code_5226_, v___y_5227_, v___y_5228_);
return v___x_5229_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(lean_object* v_cls_5230_, lean_object* v___y_5231_){
_start:
{
lean_object* v_options_5233_; uint8_t v_hasTrace_5234_; 
v_options_5233_ = lean_ctor_get(v___y_5231_, 2);
v_hasTrace_5234_ = lean_ctor_get_uint8(v_options_5233_, sizeof(void*)*1);
if (v_hasTrace_5234_ == 0)
{
lean_object* v___x_5235_; lean_object* v___x_5236_; 
lean_dec(v_cls_5230_);
v___x_5235_ = lean_box(v_hasTrace_5234_);
v___x_5236_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5236_, 0, v___x_5235_);
return v___x_5236_;
}
else
{
lean_object* v_inheritedTraceOptions_5237_; lean_object* v___x_5238_; lean_object* v___x_5239_; uint8_t v___x_5240_; lean_object* v___x_5241_; lean_object* v___x_5242_; 
v_inheritedTraceOptions_5237_ = lean_ctor_get(v___y_5231_, 13);
v___x_5238_ = ((lean_object*)(l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1));
v___x_5239_ = l_Lean_Name_append(v___x_5238_, v_cls_5230_);
v___x_5240_ = l___private_Lean_Util_Trace_0__Lean_checkTraceOption_go(v_inheritedTraceOptions_5237_, v_options_5233_, v___x_5239_);
lean_dec(v___x_5239_);
v___x_5241_ = lean_box(v___x_5240_);
v___x_5242_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5242_, 0, v___x_5241_);
return v___x_5242_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg___boxed(lean_object* v_cls_5243_, lean_object* v___y_5244_, lean_object* v___y_5245_){
_start:
{
lean_object* v_res_5246_; 
v_res_5246_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(v_cls_5243_, v___y_5244_);
lean_dec_ref(v___y_5244_);
return v_res_5246_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(lean_object* v_cls_5247_, lean_object* v_msg_5248_, lean_object* v___y_5249_, lean_object* v___y_5250_, lean_object* v___y_5251_, lean_object* v___y_5252_){
_start:
{
lean_object* v_ref_5254_; lean_object* v___x_5255_; lean_object* v_a_5256_; lean_object* v___x_5257_; lean_object* v_traceState_5258_; lean_object* v_env_5259_; lean_object* v_nextMacroScope_5260_; lean_object* v_ngen_5261_; lean_object* v_auxDeclNGen_5262_; lean_object* v_cache_5263_; lean_object* v_messages_5264_; lean_object* v_infoState_5265_; lean_object* v_snapshotTasks_5266_; uint64_t v_tid_5267_; lean_object* v_traces_5268_; lean_object* v___x_5269_; double v___x_5270_; uint8_t v___x_5271_; lean_object* v___x_5272_; lean_object* v___x_5273_; lean_object* v___x_5274_; lean_object* v___x_5275_; lean_object* v___x_5276_; lean_object* v___x_5277_; lean_object* v___x_5278_; lean_object* v___x_5279_; lean_object* v___x_5280_; lean_object* v___x_5281_; lean_object* v___x_5282_; 
v_ref_5254_ = lean_ctor_get(v___y_5251_, 5);
v___x_5255_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_5248_, v___y_5249_, v___y_5250_, v___y_5251_, v___y_5252_);
v_a_5256_ = lean_ctor_get(v___x_5255_, 0);
lean_inc(v_a_5256_);
lean_dec_ref(v___x_5255_);
v___x_5257_ = lean_st_ref_take(v___y_5252_);
v_traceState_5258_ = lean_ctor_get(v___x_5257_, 4);
lean_inc_ref(v_traceState_5258_);
v_env_5259_ = lean_ctor_get(v___x_5257_, 0);
lean_inc_ref(v_env_5259_);
v_nextMacroScope_5260_ = lean_ctor_get(v___x_5257_, 1);
lean_inc(v_nextMacroScope_5260_);
v_ngen_5261_ = lean_ctor_get(v___x_5257_, 2);
lean_inc_ref(v_ngen_5261_);
v_auxDeclNGen_5262_ = lean_ctor_get(v___x_5257_, 3);
lean_inc_ref(v_auxDeclNGen_5262_);
v_cache_5263_ = lean_ctor_get(v___x_5257_, 5);
lean_inc_ref(v_cache_5263_);
v_messages_5264_ = lean_ctor_get(v___x_5257_, 6);
lean_inc_ref(v_messages_5264_);
v_infoState_5265_ = lean_ctor_get(v___x_5257_, 7);
lean_inc_ref(v_infoState_5265_);
v_snapshotTasks_5266_ = lean_ctor_get(v___x_5257_, 8);
lean_inc_ref(v_snapshotTasks_5266_);
lean_dec(v___x_5257_);
v_tid_5267_ = lean_ctor_get_uint64(v_traceState_5258_, sizeof(void*)*1);
v_traces_5268_ = lean_ctor_get(v_traceState_5258_, 0);
lean_inc_ref(v_traces_5268_);
lean_dec_ref(v_traceState_5258_);
v___x_5269_ = lean_box(0);
v___x_5270_ = lean_float_once(&l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0, &l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0_once, _init_l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0);
v___x_5271_ = 0;
v___x_5272_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___x_5273_ = lean_alloc_ctor(0, 3, 17);
lean_ctor_set(v___x_5273_, 0, v_cls_5247_);
lean_ctor_set(v___x_5273_, 1, v___x_5269_);
lean_ctor_set(v___x_5273_, 2, v___x_5272_);
lean_ctor_set_float(v___x_5273_, sizeof(void*)*3, v___x_5270_);
lean_ctor_set_float(v___x_5273_, sizeof(void*)*3 + 8, v___x_5270_);
lean_ctor_set_uint8(v___x_5273_, sizeof(void*)*3 + 16, v___x_5271_);
v___x_5274_ = ((lean_object*)(l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1));
v___x_5275_ = lean_alloc_ctor(9, 3, 0);
lean_ctor_set(v___x_5275_, 0, v___x_5273_);
lean_ctor_set(v___x_5275_, 1, v_a_5256_);
lean_ctor_set(v___x_5275_, 2, v___x_5274_);
lean_inc(v_ref_5254_);
v___x_5276_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5276_, 0, v_ref_5254_);
lean_ctor_set(v___x_5276_, 1, v___x_5275_);
v___x_5277_ = l_Lean_PersistentArray_push___redArg(v_traces_5268_, v___x_5276_);
v___x_5278_ = lean_alloc_ctor(0, 1, 8);
lean_ctor_set(v___x_5278_, 0, v___x_5277_);
lean_ctor_set_uint64(v___x_5278_, sizeof(void*)*1, v_tid_5267_);
v___x_5279_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_5279_, 0, v_env_5259_);
lean_ctor_set(v___x_5279_, 1, v_nextMacroScope_5260_);
lean_ctor_set(v___x_5279_, 2, v_ngen_5261_);
lean_ctor_set(v___x_5279_, 3, v_auxDeclNGen_5262_);
lean_ctor_set(v___x_5279_, 4, v___x_5278_);
lean_ctor_set(v___x_5279_, 5, v_cache_5263_);
lean_ctor_set(v___x_5279_, 6, v_messages_5264_);
lean_ctor_set(v___x_5279_, 7, v_infoState_5265_);
lean_ctor_set(v___x_5279_, 8, v_snapshotTasks_5266_);
v___x_5280_ = lean_st_ref_set(v___y_5252_, v___x_5279_);
v___x_5281_ = lean_box(0);
v___x_5282_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5282_, 0, v___x_5281_);
return v___x_5282_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg___boxed(lean_object* v_cls_5283_, lean_object* v_msg_5284_, lean_object* v___y_5285_, lean_object* v___y_5286_, lean_object* v___y_5287_, lean_object* v___y_5288_, lean_object* v___y_5289_){
_start:
{
lean_object* v_res_5290_; 
v_res_5290_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(v_cls_5283_, v_msg_5284_, v___y_5285_, v___y_5286_, v___y_5287_, v___y_5288_);
lean_dec(v___y_5288_);
lean_dec_ref(v___y_5287_);
lean_dec(v___y_5286_);
lean_dec_ref(v___y_5285_);
return v_res_5290_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3(lean_object* v_mod_5291_, uint8_t v_isMeta_5292_, lean_object* v_hint_5293_, lean_object* v___y_5294_, lean_object* v___y_5295_, lean_object* v___y_5296_, lean_object* v___y_5297_, lean_object* v___y_5298_, lean_object* v___y_5299_){
_start:
{
lean_object* v___x_5301_; lean_object* v_env_5302_; uint8_t v_isExporting_5303_; lean_object* v___x_5304_; lean_object* v_env_5305_; lean_object* v___x_5306_; lean_object* v_entry_5307_; lean_object* v___x_5308_; lean_object* v___x_5309_; lean_object* v___x_5310_; lean_object* v___y_5312_; lean_object* v___y_5313_; lean_object* v___x_5339_; uint8_t v___x_5340_; 
v___x_5301_ = lean_st_ref_get(v___y_5299_);
v_env_5302_ = lean_ctor_get(v___x_5301_, 0);
lean_inc_ref(v_env_5302_);
lean_dec(v___x_5301_);
v_isExporting_5303_ = lean_ctor_get_uint8(v_env_5302_, sizeof(void*)*8);
lean_dec_ref(v_env_5302_);
v___x_5304_ = lean_st_ref_get(v___y_5299_);
v_env_5305_ = lean_ctor_get(v___x_5304_, 0);
lean_inc_ref(v_env_5305_);
lean_dec(v___x_5304_);
v___x_5306_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2);
lean_inc(v_mod_5291_);
v_entry_5307_ = lean_alloc_ctor(0, 1, 2);
lean_ctor_set(v_entry_5307_, 0, v_mod_5291_);
lean_ctor_set_uint8(v_entry_5307_, sizeof(void*)*1, v_isExporting_5303_);
lean_ctor_set_uint8(v_entry_5307_, sizeof(void*)*1 + 1, v_isMeta_5292_);
v___x_5308_ = l___private_Lean_ExtraModUses_0__Lean_extraModUses;
v___x_5309_ = lean_box(1);
v___x_5310_ = lean_box(0);
v___x_5339_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_5306_, v___x_5308_, v_env_5305_, v___x_5309_, v___x_5310_);
v___x_5340_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(v___x_5339_, v_entry_5307_);
if (v___x_5340_ == 0)
{
lean_object* v_cls_5341_; lean_object* v___x_5342_; lean_object* v_a_5343_; lean_object* v___y_5345_; lean_object* v___y_5346_; lean_object* v___y_5350_; lean_object* v___y_5351_; uint8_t v___x_5363_; 
v_cls_5341_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8));
v___x_5342_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(v_cls_5341_, v___y_5298_);
v_a_5343_ = lean_ctor_get(v___x_5342_, 0);
lean_inc(v_a_5343_);
lean_dec_ref(v___x_5342_);
v___x_5363_ = lean_unbox(v_a_5343_);
lean_dec(v_a_5343_);
if (v___x_5363_ == 0)
{
lean_dec(v_hint_5293_);
lean_dec(v_mod_5291_);
v___y_5312_ = v___y_5297_;
v___y_5313_ = v___y_5299_;
goto v___jp_5311_;
}
else
{
lean_object* v___x_5364_; lean_object* v___y_5366_; 
v___x_5364_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14);
if (v_isExporting_5303_ == 0)
{
lean_object* v___x_5373_; 
v___x_5373_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17));
v___y_5366_ = v___x_5373_;
goto v___jp_5365_;
}
else
{
lean_object* v___x_5374_; 
v___x_5374_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18));
v___y_5366_ = v___x_5374_;
goto v___jp_5365_;
}
v___jp_5365_:
{
lean_object* v___x_5367_; lean_object* v___x_5368_; lean_object* v___x_5369_; lean_object* v___x_5370_; 
v___x_5367_ = l_Lean_stringToMessageData(v___y_5366_);
v___x_5368_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5368_, 0, v___x_5364_);
lean_ctor_set(v___x_5368_, 1, v___x_5367_);
v___x_5369_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_5370_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5370_, 0, v___x_5368_);
lean_ctor_set(v___x_5370_, 1, v___x_5369_);
if (v_isMeta_5292_ == 0)
{
lean_object* v___x_5371_; 
v___x_5371_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15));
v___y_5350_ = v___x_5370_;
v___y_5351_ = v___x_5371_;
goto v___jp_5349_;
}
else
{
lean_object* v___x_5372_; 
v___x_5372_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16));
v___y_5350_ = v___x_5370_;
v___y_5351_ = v___x_5372_;
goto v___jp_5349_;
}
}
}
v___jp_5344_:
{
lean_object* v___x_5347_; lean_object* v___x_5348_; 
v___x_5347_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5347_, 0, v___y_5345_);
lean_ctor_set(v___x_5347_, 1, v___y_5346_);
v___x_5348_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(v_cls_5341_, v___x_5347_, v___y_5296_, v___y_5297_, v___y_5298_, v___y_5299_);
if (lean_obj_tag(v___x_5348_) == 0)
{
lean_dec_ref(v___x_5348_);
v___y_5312_ = v___y_5297_;
v___y_5313_ = v___y_5299_;
goto v___jp_5311_;
}
else
{
lean_dec_ref(v_entry_5307_);
return v___x_5348_;
}
}
v___jp_5349_:
{
lean_object* v___x_5352_; lean_object* v___x_5353_; lean_object* v___x_5354_; lean_object* v___x_5355_; lean_object* v___x_5356_; lean_object* v___x_5357_; uint8_t v___x_5358_; 
v___x_5352_ = l_Lean_stringToMessageData(v___y_5351_);
v___x_5353_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5353_, 0, v___y_5350_);
lean_ctor_set(v___x_5353_, 1, v___x_5352_);
v___x_5354_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10);
v___x_5355_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5355_, 0, v___x_5353_);
lean_ctor_set(v___x_5355_, 1, v___x_5354_);
v___x_5356_ = l_Lean_MessageData_ofName(v_mod_5291_);
v___x_5357_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5357_, 0, v___x_5355_);
lean_ctor_set(v___x_5357_, 1, v___x_5356_);
v___x_5358_ = l_Lean_Name_isAnonymous(v_hint_5293_);
if (v___x_5358_ == 0)
{
lean_object* v___x_5359_; lean_object* v___x_5360_; lean_object* v___x_5361_; 
v___x_5359_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12);
v___x_5360_ = l_Lean_MessageData_ofName(v_hint_5293_);
v___x_5361_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_5361_, 0, v___x_5359_);
lean_ctor_set(v___x_5361_, 1, v___x_5360_);
v___y_5345_ = v___x_5357_;
v___y_5346_ = v___x_5361_;
goto v___jp_5344_;
}
else
{
lean_object* v___x_5362_; 
lean_dec(v_hint_5293_);
v___x_5362_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___y_5345_ = v___x_5357_;
v___y_5346_ = v___x_5362_;
goto v___jp_5344_;
}
}
}
else
{
lean_object* v___x_5375_; lean_object* v___x_5376_; 
lean_dec_ref(v_entry_5307_);
lean_dec(v_hint_5293_);
lean_dec(v_mod_5291_);
v___x_5375_ = lean_box(0);
v___x_5376_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5376_, 0, v___x_5375_);
return v___x_5376_;
}
v___jp_5311_:
{
lean_object* v___x_5314_; lean_object* v_toEnvExtension_5315_; lean_object* v_env_5316_; lean_object* v_nextMacroScope_5317_; lean_object* v_ngen_5318_; lean_object* v_auxDeclNGen_5319_; lean_object* v_traceState_5320_; lean_object* v_messages_5321_; lean_object* v_infoState_5322_; lean_object* v_snapshotTasks_5323_; lean_object* v_asyncMode_5324_; lean_object* v___x_5325_; lean_object* v___x_5326_; lean_object* v___x_5327_; lean_object* v___x_5328_; lean_object* v___x_5329_; lean_object* v_mctx_5330_; lean_object* v_zetaDeltaFVarIds_5331_; lean_object* v_postponed_5332_; lean_object* v_diag_5333_; lean_object* v___x_5334_; lean_object* v___x_5335_; lean_object* v___x_5336_; lean_object* v___x_5337_; lean_object* v___x_5338_; 
v___x_5314_ = lean_st_ref_take(v___y_5313_);
v_toEnvExtension_5315_ = lean_ctor_get(v___x_5308_, 0);
lean_inc_ref(v_toEnvExtension_5315_);
v_env_5316_ = lean_ctor_get(v___x_5314_, 0);
lean_inc_ref(v_env_5316_);
v_nextMacroScope_5317_ = lean_ctor_get(v___x_5314_, 1);
lean_inc(v_nextMacroScope_5317_);
v_ngen_5318_ = lean_ctor_get(v___x_5314_, 2);
lean_inc_ref(v_ngen_5318_);
v_auxDeclNGen_5319_ = lean_ctor_get(v___x_5314_, 3);
lean_inc_ref(v_auxDeclNGen_5319_);
v_traceState_5320_ = lean_ctor_get(v___x_5314_, 4);
lean_inc_ref(v_traceState_5320_);
v_messages_5321_ = lean_ctor_get(v___x_5314_, 6);
lean_inc_ref(v_messages_5321_);
v_infoState_5322_ = lean_ctor_get(v___x_5314_, 7);
lean_inc_ref(v_infoState_5322_);
v_snapshotTasks_5323_ = lean_ctor_get(v___x_5314_, 8);
lean_inc_ref(v_snapshotTasks_5323_);
lean_dec(v___x_5314_);
v_asyncMode_5324_ = lean_ctor_get(v_toEnvExtension_5315_, 2);
lean_inc(v_asyncMode_5324_);
lean_dec_ref(v_toEnvExtension_5315_);
v___x_5325_ = l_Lean_PersistentEnvExtension_addEntry___redArg(v___x_5308_, v_env_5316_, v_entry_5307_, v_asyncMode_5324_, v___x_5310_);
lean_dec(v_asyncMode_5324_);
v___x_5326_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5);
v___x_5327_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_5327_, 0, v___x_5325_);
lean_ctor_set(v___x_5327_, 1, v_nextMacroScope_5317_);
lean_ctor_set(v___x_5327_, 2, v_ngen_5318_);
lean_ctor_set(v___x_5327_, 3, v_auxDeclNGen_5319_);
lean_ctor_set(v___x_5327_, 4, v_traceState_5320_);
lean_ctor_set(v___x_5327_, 5, v___x_5326_);
lean_ctor_set(v___x_5327_, 6, v_messages_5321_);
lean_ctor_set(v___x_5327_, 7, v_infoState_5322_);
lean_ctor_set(v___x_5327_, 8, v_snapshotTasks_5323_);
v___x_5328_ = lean_st_ref_set(v___y_5313_, v___x_5327_);
v___x_5329_ = lean_st_ref_take(v___y_5312_);
v_mctx_5330_ = lean_ctor_get(v___x_5329_, 0);
lean_inc_ref(v_mctx_5330_);
v_zetaDeltaFVarIds_5331_ = lean_ctor_get(v___x_5329_, 2);
lean_inc(v_zetaDeltaFVarIds_5331_);
v_postponed_5332_ = lean_ctor_get(v___x_5329_, 3);
lean_inc_ref(v_postponed_5332_);
v_diag_5333_ = lean_ctor_get(v___x_5329_, 4);
lean_inc_ref(v_diag_5333_);
lean_dec(v___x_5329_);
v___x_5334_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6);
v___x_5335_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_5335_, 0, v_mctx_5330_);
lean_ctor_set(v___x_5335_, 1, v___x_5334_);
lean_ctor_set(v___x_5335_, 2, v_zetaDeltaFVarIds_5331_);
lean_ctor_set(v___x_5335_, 3, v_postponed_5332_);
lean_ctor_set(v___x_5335_, 4, v_diag_5333_);
v___x_5336_ = lean_st_ref_set(v___y_5312_, v___x_5335_);
v___x_5337_ = lean_box(0);
v___x_5338_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5338_, 0, v___x_5337_);
return v___x_5338_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3___boxed(lean_object* v_mod_5377_, lean_object* v_isMeta_5378_, lean_object* v_hint_5379_, lean_object* v___y_5380_, lean_object* v___y_5381_, lean_object* v___y_5382_, lean_object* v___y_5383_, lean_object* v___y_5384_, lean_object* v___y_5385_, lean_object* v___y_5386_){
_start:
{
uint8_t v_isMeta_boxed_5387_; lean_object* v_res_5388_; 
v_isMeta_boxed_5387_ = lean_unbox(v_isMeta_5378_);
v_res_5388_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3(v_mod_5377_, v_isMeta_boxed_5387_, v_hint_5379_, v___y_5380_, v___y_5381_, v___y_5382_, v___y_5383_, v___y_5384_, v___y_5385_);
lean_dec(v___y_5385_);
lean_dec_ref(v___y_5384_);
lean_dec(v___y_5383_);
lean_dec_ref(v___y_5382_);
lean_dec(v___y_5381_);
lean_dec_ref(v___y_5380_);
return v_res_5388_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4(lean_object* v___x_5389_, lean_object* v_declName_5390_, lean_object* v_as_5391_, size_t v_sz_5392_, size_t v_i_5393_, lean_object* v_b_5394_, lean_object* v___y_5395_, lean_object* v___y_5396_, lean_object* v___y_5397_, lean_object* v___y_5398_, lean_object* v___y_5399_, lean_object* v___y_5400_){
_start:
{
uint8_t v___x_5402_; 
v___x_5402_ = lean_usize_dec_lt(v_i_5393_, v_sz_5392_);
if (v___x_5402_ == 0)
{
lean_object* v___x_5403_; 
lean_dec(v_declName_5390_);
v___x_5403_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5403_, 0, v_b_5394_);
return v___x_5403_;
}
else
{
lean_object* v___x_5404_; lean_object* v_modules_5405_; lean_object* v___x_5406_; lean_object* v_a_5407_; lean_object* v___x_5408_; lean_object* v_toImport_5409_; lean_object* v_module_5410_; uint8_t v___x_5411_; lean_object* v___x_5412_; 
v___x_5404_ = l_Lean_Environment_header(v___x_5389_);
v_modules_5405_ = lean_ctor_get(v___x_5404_, 3);
lean_inc_ref(v_modules_5405_);
lean_dec_ref(v___x_5404_);
v___x_5406_ = l_Lean_instInhabitedEffectiveImport_default;
v_a_5407_ = lean_array_uget_borrowed(v_as_5391_, v_i_5393_);
v___x_5408_ = lean_array_get(v___x_5406_, v_modules_5405_, v_a_5407_);
lean_dec_ref(v_modules_5405_);
v_toImport_5409_ = lean_ctor_get(v___x_5408_, 0);
lean_inc_ref(v_toImport_5409_);
lean_dec(v___x_5408_);
v_module_5410_ = lean_ctor_get(v_toImport_5409_, 0);
lean_inc(v_module_5410_);
lean_dec_ref(v_toImport_5409_);
v___x_5411_ = 0;
lean_inc(v_declName_5390_);
v___x_5412_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3(v_module_5410_, v___x_5411_, v_declName_5390_, v___y_5395_, v___y_5396_, v___y_5397_, v___y_5398_, v___y_5399_, v___y_5400_);
if (lean_obj_tag(v___x_5412_) == 0)
{
lean_object* v___x_5413_; size_t v___x_5414_; size_t v___x_5415_; 
lean_dec_ref(v___x_5412_);
v___x_5413_ = lean_box(0);
v___x_5414_ = ((size_t)1ULL);
v___x_5415_ = lean_usize_add(v_i_5393_, v___x_5414_);
v_i_5393_ = v___x_5415_;
v_b_5394_ = v___x_5413_;
goto _start;
}
else
{
lean_dec(v_declName_5390_);
return v___x_5412_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4___boxed(lean_object* v___x_5417_, lean_object* v_declName_5418_, lean_object* v_as_5419_, lean_object* v_sz_5420_, lean_object* v_i_5421_, lean_object* v_b_5422_, lean_object* v___y_5423_, lean_object* v___y_5424_, lean_object* v___y_5425_, lean_object* v___y_5426_, lean_object* v___y_5427_, lean_object* v___y_5428_, lean_object* v___y_5429_){
_start:
{
size_t v_sz_boxed_5430_; size_t v_i_boxed_5431_; lean_object* v_res_5432_; 
v_sz_boxed_5430_ = lean_unbox_usize(v_sz_5420_);
lean_dec(v_sz_5420_);
v_i_boxed_5431_ = lean_unbox_usize(v_i_5421_);
lean_dec(v_i_5421_);
v_res_5432_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4(v___x_5417_, v_declName_5418_, v_as_5419_, v_sz_boxed_5430_, v_i_boxed_5431_, v_b_5422_, v___y_5423_, v___y_5424_, v___y_5425_, v___y_5426_, v___y_5427_, v___y_5428_);
lean_dec(v___y_5428_);
lean_dec_ref(v___y_5427_);
lean_dec(v___y_5426_);
lean_dec_ref(v___y_5425_);
lean_dec(v___y_5424_);
lean_dec_ref(v___y_5423_);
lean_dec_ref(v_as_5419_);
lean_dec_ref(v___x_5417_);
return v_res_5432_;
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2(lean_object* v_declName_5433_, uint8_t v_isMeta_5434_, lean_object* v___y_5435_, lean_object* v___y_5436_, lean_object* v___y_5437_, lean_object* v___y_5438_, lean_object* v___y_5439_, lean_object* v___y_5440_){
_start:
{
lean_object* v___x_5442_; lean_object* v_env_5446_; lean_object* v___y_5448_; lean_object* v___x_5454_; 
v___x_5442_ = lean_st_ref_get(v___y_5440_);
v_env_5446_ = lean_ctor_get(v___x_5442_, 0);
lean_inc_ref(v_env_5446_);
lean_dec(v___x_5442_);
v___x_5454_ = l_Lean_Environment_getModuleIdxFor_x3f(v_env_5446_, v_declName_5433_);
if (lean_obj_tag(v___x_5454_) == 0)
{
lean_dec_ref(v_env_5446_);
lean_dec(v_declName_5433_);
goto v___jp_5443_;
}
else
{
lean_object* v_val_5455_; lean_object* v___x_5456_; lean_object* v_modules_5457_; lean_object* v___x_5458_; uint8_t v___x_5459_; 
v_val_5455_ = lean_ctor_get(v___x_5454_, 0);
lean_inc(v_val_5455_);
lean_dec_ref(v___x_5454_);
v___x_5456_ = l_Lean_Environment_header(v_env_5446_);
v_modules_5457_ = lean_ctor_get(v___x_5456_, 3);
lean_inc_ref(v_modules_5457_);
lean_dec_ref(v___x_5456_);
v___x_5458_ = lean_array_get_size(v_modules_5457_);
v___x_5459_ = lean_nat_dec_lt(v_val_5455_, v___x_5458_);
if (v___x_5459_ == 0)
{
lean_dec_ref(v_modules_5457_);
lean_dec(v_val_5455_);
lean_dec_ref(v_env_5446_);
lean_dec(v_declName_5433_);
goto v___jp_5443_;
}
else
{
lean_object* v___x_5460_; lean_object* v_env_5461_; lean_object* v___x_5462_; lean_object* v___x_5463_; uint8_t v___y_5465_; 
v___x_5460_ = lean_st_ref_get(v___y_5440_);
v_env_5461_ = lean_ctor_get(v___x_5460_, 0);
lean_inc_ref(v_env_5461_);
lean_dec(v___x_5460_);
v___x_5462_ = lean_obj_once(&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2, &l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2_once, _init_l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2);
v___x_5463_ = lean_array_fget(v_modules_5457_, v_val_5455_);
lean_dec(v_val_5455_);
lean_dec_ref(v_modules_5457_);
if (v_isMeta_5434_ == 0)
{
lean_dec_ref(v_env_5461_);
v___y_5465_ = v_isMeta_5434_;
goto v___jp_5464_;
}
else
{
uint8_t v___x_5476_; 
lean_inc(v_declName_5433_);
v___x_5476_ = l_Lean_isMarkedMeta(v_env_5461_, v_declName_5433_);
if (v___x_5476_ == 0)
{
v___y_5465_ = v_isMeta_5434_;
goto v___jp_5464_;
}
else
{
uint8_t v___x_5477_; 
v___x_5477_ = 0;
v___y_5465_ = v___x_5477_;
goto v___jp_5464_;
}
}
v___jp_5464_:
{
lean_object* v_toImport_5466_; lean_object* v_module_5467_; lean_object* v___x_5468_; 
v_toImport_5466_ = lean_ctor_get(v___x_5463_, 0);
lean_inc_ref(v_toImport_5466_);
lean_dec(v___x_5463_);
v_module_5467_ = lean_ctor_get(v_toImport_5466_, 0);
lean_inc(v_module_5467_);
lean_dec_ref(v_toImport_5466_);
lean_inc(v_declName_5433_);
v___x_5468_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__3(v_module_5467_, v___y_5465_, v_declName_5433_, v___y_5435_, v___y_5436_, v___y_5437_, v___y_5438_, v___y_5439_, v___y_5440_);
if (lean_obj_tag(v___x_5468_) == 0)
{
lean_object* v___x_5469_; lean_object* v___x_5470_; lean_object* v___x_5471_; lean_object* v___x_5472_; lean_object* v___x_5473_; 
lean_dec_ref(v___x_5468_);
v___x_5469_ = l_Lean_indirectModUseExt;
v___x_5470_ = lean_box(1);
v___x_5471_ = lean_box(0);
lean_inc_ref(v_env_5446_);
v___x_5472_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_5462_, v___x_5469_, v_env_5446_, v___x_5470_, v___x_5471_);
v___x_5473_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(v___x_5472_, v_declName_5433_);
lean_dec(v___x_5472_);
if (lean_obj_tag(v___x_5473_) == 0)
{
lean_object* v___x_5474_; 
v___x_5474_ = ((lean_object*)(l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3));
v___y_5448_ = v___x_5474_;
goto v___jp_5447_;
}
else
{
lean_object* v_val_5475_; 
v_val_5475_ = lean_ctor_get(v___x_5473_, 0);
lean_inc(v_val_5475_);
lean_dec_ref(v___x_5473_);
v___y_5448_ = v_val_5475_;
goto v___jp_5447_;
}
}
else
{
lean_dec_ref(v_env_5446_);
lean_dec(v_declName_5433_);
return v___x_5468_;
}
}
}
}
v___jp_5443_:
{
lean_object* v___x_5444_; lean_object* v___x_5445_; 
v___x_5444_ = lean_box(0);
v___x_5445_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5445_, 0, v___x_5444_);
return v___x_5445_;
}
v___jp_5447_:
{
lean_object* v___x_5449_; size_t v_sz_5450_; size_t v___x_5451_; lean_object* v___x_5452_; 
v___x_5449_ = lean_box(0);
v_sz_5450_ = lean_array_size(v___y_5448_);
v___x_5451_ = ((size_t)0ULL);
v___x_5452_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2_spec__4(v_env_5446_, v_declName_5433_, v___y_5448_, v_sz_5450_, v___x_5451_, v___x_5449_, v___y_5435_, v___y_5436_, v___y_5437_, v___y_5438_, v___y_5439_, v___y_5440_);
lean_dec_ref(v___y_5448_);
lean_dec_ref(v_env_5446_);
if (lean_obj_tag(v___x_5452_) == 0)
{
lean_object* v___x_5453_; 
lean_dec_ref(v___x_5452_);
v___x_5453_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5453_, 0, v___x_5449_);
return v___x_5453_;
}
else
{
return v___x_5452_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2___boxed(lean_object* v_declName_5478_, lean_object* v_isMeta_5479_, lean_object* v___y_5480_, lean_object* v___y_5481_, lean_object* v___y_5482_, lean_object* v___y_5483_, lean_object* v___y_5484_, lean_object* v___y_5485_, lean_object* v___y_5486_){
_start:
{
uint8_t v_isMeta_boxed_5487_; lean_object* v_res_5488_; 
v_isMeta_boxed_5487_ = lean_unbox(v_isMeta_5479_);
v_res_5488_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2(v_declName_5478_, v_isMeta_boxed_5487_, v___y_5480_, v___y_5481_, v___y_5482_, v___y_5483_, v___y_5484_, v___y_5485_);
lean_dec(v___y_5485_);
lean_dec_ref(v___y_5484_);
lean_dec(v___y_5483_);
lean_dec_ref(v___y_5482_);
lean_dec(v___y_5481_);
lean_dec_ref(v___y_5480_);
return v_res_5488_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg(lean_object* v_as_x27_5489_, lean_object* v_b_5490_, lean_object* v___y_5491_, lean_object* v___y_5492_, lean_object* v___y_5493_, lean_object* v___y_5494_, lean_object* v___y_5495_, lean_object* v___y_5496_){
_start:
{
if (lean_obj_tag(v_as_x27_5489_) == 0)
{
lean_object* v___x_5498_; 
v___x_5498_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5498_, 0, v_b_5490_);
return v___x_5498_;
}
else
{
lean_object* v_head_5499_; lean_object* v_tail_5500_; uint8_t v___x_5501_; lean_object* v___x_5502_; 
v_head_5499_ = lean_ctor_get(v_as_x27_5489_, 0);
lean_inc(v_head_5499_);
v_tail_5500_ = lean_ctor_get(v_as_x27_5489_, 1);
lean_inc(v_tail_5500_);
lean_dec_ref(v_as_x27_5489_);
v___x_5501_ = 1;
v___x_5502_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__2(v_head_5499_, v___x_5501_, v___y_5491_, v___y_5492_, v___y_5493_, v___y_5494_, v___y_5495_, v___y_5496_);
if (lean_obj_tag(v___x_5502_) == 0)
{
lean_object* v___x_5503_; 
lean_dec_ref(v___x_5502_);
v___x_5503_ = lean_box(0);
v_as_x27_5489_ = v_tail_5500_;
v_b_5490_ = v___x_5503_;
goto _start;
}
else
{
lean_dec(v_tail_5500_);
return v___x_5502_;
}
}
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg___boxed(lean_object* v_as_x27_5505_, lean_object* v_b_5506_, lean_object* v___y_5507_, lean_object* v___y_5508_, lean_object* v___y_5509_, lean_object* v___y_5510_, lean_object* v___y_5511_, lean_object* v___y_5512_, lean_object* v___y_5513_){
_start:
{
lean_object* v_res_5514_; 
v_res_5514_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg(v_as_x27_5505_, v_b_5506_, v___y_5507_, v___y_5508_, v___y_5509_, v___y_5510_, v___y_5511_, v___y_5512_);
lean_dec(v___y_5512_);
lean_dec_ref(v___y_5511_);
lean_dec(v___y_5510_);
lean_dec_ref(v___y_5509_);
lean_dec(v___y_5508_);
lean_dec_ref(v___y_5507_);
return v_res_5514_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0(lean_object* v_env_5515_, lean_object* v_stx_5516_, lean_object* v___y_5517_, lean_object* v___y_5518_){
_start:
{
lean_object* v___x_5519_; 
v___x_5519_ = l_Lean_Elab_expandMacroImpl_x3f(v_env_5515_, v_stx_5516_, v___y_5517_, v___y_5518_);
if (lean_obj_tag(v___x_5519_) == 0)
{
lean_object* v_a_5520_; 
v_a_5520_ = lean_ctor_get(v___x_5519_, 0);
lean_inc(v_a_5520_);
if (lean_obj_tag(v_a_5520_) == 0)
{
lean_object* v_a_5521_; lean_object* v___x_5522_; lean_object* v___x_5523_; 
v_a_5521_ = lean_ctor_get(v___x_5519_, 1);
lean_inc(v_a_5521_);
lean_dec_ref(v___x_5519_);
v___x_5522_ = lean_box(0);
v___x_5523_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5523_, 0, v___x_5522_);
lean_ctor_set(v___x_5523_, 1, v_a_5521_);
return v___x_5523_;
}
else
{
lean_object* v_val_5524_; lean_object* v_snd_5525_; 
v_val_5524_ = lean_ctor_get(v_a_5520_, 0);
lean_inc(v_val_5524_);
lean_dec_ref(v_a_5520_);
v_snd_5525_ = lean_ctor_get(v_val_5524_, 1);
lean_inc(v_snd_5525_);
lean_dec(v_val_5524_);
if (lean_obj_tag(v_snd_5525_) == 0)
{
lean_object* v_a_5526_; lean_object* v_a_5527_; lean_object* v___x_5528_; lean_object* v___x_5529_; 
v_a_5526_ = lean_ctor_get(v___x_5519_, 1);
lean_inc(v_a_5526_);
lean_dec_ref(v___x_5519_);
v_a_5527_ = lean_ctor_get(v_snd_5525_, 0);
lean_inc(v_a_5527_);
lean_dec_ref(v_snd_5525_);
v___x_5528_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5528_, 0, v_a_5527_);
v___x_5529_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v___x_5528_, v_a_5526_);
lean_dec_ref(v___x_5528_);
return v___x_5529_;
}
else
{
lean_object* v_a_5530_; lean_object* v_a_5531_; lean_object* v___x_5532_; lean_object* v___x_5533_; lean_object* v___x_5534_; 
v_a_5530_ = lean_ctor_get(v___x_5519_, 1);
lean_inc(v_a_5530_);
lean_dec_ref(v___x_5519_);
v_a_5531_ = lean_ctor_get(v_snd_5525_, 0);
lean_inc(v_a_5531_);
lean_dec_ref(v_snd_5525_);
v___x_5532_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5532_, 0, v_a_5531_);
v___x_5533_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5533_, 0, v___x_5532_);
v___x_5534_ = l_liftExcept___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__2___redArg(v___x_5533_, v_a_5530_);
lean_dec_ref(v___x_5533_);
return v___x_5534_;
}
}
}
else
{
lean_object* v_a_5535_; lean_object* v_a_5536_; lean_object* v___x_5537_; 
v_a_5535_ = lean_ctor_get(v___x_5519_, 0);
lean_inc(v_a_5535_);
v_a_5536_ = lean_ctor_get(v___x_5519_, 1);
lean_inc(v_a_5536_);
lean_dec_ref(v___x_5519_);
v___x_5537_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_5537_, 0, v_a_5535_);
lean_ctor_set(v___x_5537_, 1, v_a_5536_);
return v___x_5537_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0___boxed(lean_object* v_env_5538_, lean_object* v_stx_5539_, lean_object* v___y_5540_, lean_object* v___y_5541_){
_start:
{
lean_object* v_res_5542_; 
v_res_5542_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0(v_env_5538_, v_stx_5539_, v___y_5540_, v___y_5541_);
lean_dec_ref(v___y_5540_);
return v_res_5542_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg(){
_start:
{
lean_object* v___x_5544_; lean_object* v___x_5545_; 
v___x_5544_ = lean_obj_once(&l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0, &l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0_once, _init_l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0);
v___x_5545_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5545_, 0, v___x_5544_);
return v___x_5545_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg___boxed(lean_object* v___y_5546_){
_start:
{
lean_object* v_res_5547_; 
v_res_5547_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg();
return v_res_5547_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg(lean_object* v_ref_5548_){
_start:
{
lean_object* v___x_5550_; lean_object* v___x_5551_; lean_object* v___x_5552_; 
v___x_5550_ = lean_obj_once(&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5, &l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5_once, _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5);
v___x_5551_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5551_, 0, v_ref_5548_);
lean_ctor_set(v___x_5551_, 1, v___x_5550_);
v___x_5552_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5552_, 0, v___x_5551_);
return v___x_5552_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg___boxed(lean_object* v_ref_5553_, lean_object* v___y_5554_){
_start:
{
lean_object* v_res_5555_; 
v_res_5555_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg(v_ref_5553_);
return v_res_5555_;
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4(lean_object* v_as_5556_, lean_object* v___y_5557_, lean_object* v___y_5558_, lean_object* v___y_5559_, lean_object* v___y_5560_, lean_object* v___y_5561_, lean_object* v___y_5562_){
_start:
{
if (lean_obj_tag(v_as_5556_) == 0)
{
lean_object* v___x_5564_; lean_object* v___x_5565_; 
v___x_5564_ = lean_box(0);
v___x_5565_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5565_, 0, v___x_5564_);
return v___x_5565_;
}
else
{
lean_object* v_head_5566_; lean_object* v_tail_5567_; lean_object* v_fst_5568_; lean_object* v_snd_5569_; lean_object* v___x_5570_; lean_object* v_a_5571_; uint8_t v___x_5572_; 
v_head_5566_ = lean_ctor_get(v_as_5556_, 0);
lean_inc(v_head_5566_);
v_tail_5567_ = lean_ctor_get(v_as_5556_, 1);
lean_inc(v_tail_5567_);
lean_dec_ref(v_as_5556_);
v_fst_5568_ = lean_ctor_get(v_head_5566_, 0);
lean_inc(v_fst_5568_);
v_snd_5569_ = lean_ctor_get(v_head_5566_, 1);
lean_inc(v_snd_5569_);
lean_dec(v_head_5566_);
lean_inc(v_fst_5568_);
v___x_5570_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(v_fst_5568_, v___y_5561_);
v_a_5571_ = lean_ctor_get(v___x_5570_, 0);
lean_inc(v_a_5571_);
lean_dec_ref(v___x_5570_);
v___x_5572_ = lean_unbox(v_a_5571_);
lean_dec(v_a_5571_);
if (v___x_5572_ == 0)
{
lean_dec(v_snd_5569_);
lean_dec(v_fst_5568_);
v_as_5556_ = v_tail_5567_;
goto _start;
}
else
{
lean_object* v___x_5574_; lean_object* v___x_5575_; lean_object* v___x_5576_; 
v___x_5574_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_5574_, 0, v_snd_5569_);
v___x_5575_ = l_Lean_MessageData_ofFormat(v___x_5574_);
v___x_5576_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(v_fst_5568_, v___x_5575_, v___y_5559_, v___y_5560_, v___y_5561_, v___y_5562_);
if (lean_obj_tag(v___x_5576_) == 0)
{
lean_dec_ref(v___x_5576_);
v_as_5556_ = v_tail_5567_;
goto _start;
}
else
{
lean_dec(v_tail_5567_);
return v___x_5576_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4___boxed(lean_object* v_as_5578_, lean_object* v___y_5579_, lean_object* v___y_5580_, lean_object* v___y_5581_, lean_object* v___y_5582_, lean_object* v___y_5583_, lean_object* v___y_5584_, lean_object* v___y_5585_){
_start:
{
lean_object* v_res_5586_; 
v_res_5586_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4(v_as_5578_, v___y_5579_, v___y_5580_, v___y_5581_, v___y_5582_, v___y_5583_, v___y_5584_);
lean_dec(v___y_5584_);
lean_dec_ref(v___y_5583_);
lean_dec(v___y_5582_);
lean_dec_ref(v___y_5581_);
lean_dec(v___y_5580_);
lean_dec_ref(v___y_5579_);
return v_res_5586_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(lean_object* v_x_5587_, lean_object* v___y_5588_, lean_object* v___y_5589_, lean_object* v___y_5590_, lean_object* v___y_5591_, lean_object* v___y_5592_, lean_object* v___y_5593_){
_start:
{
lean_object* v___x_5595_; lean_object* v_env_5596_; lean_object* v_options_5597_; lean_object* v_currRecDepth_5598_; lean_object* v_maxRecDepth_5599_; lean_object* v_ref_5600_; lean_object* v_currNamespace_5601_; lean_object* v_openDecls_5602_; lean_object* v_quotContext_5603_; lean_object* v_currMacroScope_5604_; lean_object* v___x_5605_; lean_object* v_nextMacroScope_5606_; lean_object* v___f_5607_; lean_object* v___f_5608_; lean_object* v___f_5609_; lean_object* v___f_5610_; lean_object* v___f_5611_; lean_object* v_methods_5612_; lean_object* v___x_5613_; lean_object* v___x_5614_; lean_object* v___x_5615_; lean_object* v___x_5616_; 
v___x_5595_ = lean_st_ref_get(v___y_5593_);
v_env_5596_ = lean_ctor_get(v___x_5595_, 0);
lean_inc_ref(v_env_5596_);
lean_dec(v___x_5595_);
v_options_5597_ = lean_ctor_get(v___y_5592_, 2);
v_currRecDepth_5598_ = lean_ctor_get(v___y_5592_, 3);
v_maxRecDepth_5599_ = lean_ctor_get(v___y_5592_, 4);
v_ref_5600_ = lean_ctor_get(v___y_5592_, 5);
v_currNamespace_5601_ = lean_ctor_get(v___y_5592_, 6);
v_openDecls_5602_ = lean_ctor_get(v___y_5592_, 7);
v_quotContext_5603_ = lean_ctor_get(v___y_5592_, 10);
v_currMacroScope_5604_ = lean_ctor_get(v___y_5592_, 11);
v___x_5605_ = lean_st_ref_get(v___y_5593_);
v_nextMacroScope_5606_ = lean_ctor_get(v___x_5605_, 1);
lean_inc(v_nextMacroScope_5606_);
lean_dec(v___x_5605_);
lean_inc_ref(v_env_5596_);
v___f_5607_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0___boxed), 4, 1);
lean_closure_set(v___f_5607_, 0, v_env_5596_);
lean_inc_ref(v_env_5596_);
v___f_5608_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1___boxed), 4, 1);
lean_closure_set(v___f_5608_, 0, v_env_5596_);
lean_inc(v_openDecls_5602_);
lean_inc(v_currNamespace_5601_);
lean_inc_ref(v_env_5596_);
v___f_5609_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2___boxed), 6, 3);
lean_closure_set(v___f_5609_, 0, v_env_5596_);
lean_closure_set(v___f_5609_, 1, v_currNamespace_5601_);
lean_closure_set(v___f_5609_, 2, v_openDecls_5602_);
lean_inc(v_currNamespace_5601_);
v___f_5610_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3___boxed), 3, 1);
lean_closure_set(v___f_5610_, 0, v_currNamespace_5601_);
lean_inc(v_openDecls_5602_);
lean_inc(v_currNamespace_5601_);
lean_inc_ref(v_options_5597_);
v___f_5611_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4___boxed), 7, 4);
lean_closure_set(v___f_5611_, 0, v_env_5596_);
lean_closure_set(v___f_5611_, 1, v_options_5597_);
lean_closure_set(v___f_5611_, 2, v_currNamespace_5601_);
lean_closure_set(v___f_5611_, 3, v_openDecls_5602_);
v_methods_5612_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v_methods_5612_, 0, v___f_5607_);
lean_ctor_set(v_methods_5612_, 1, v___f_5610_);
lean_ctor_set(v_methods_5612_, 2, v___f_5608_);
lean_ctor_set(v_methods_5612_, 3, v___f_5609_);
lean_ctor_set(v_methods_5612_, 4, v___f_5611_);
lean_inc(v_ref_5600_);
lean_inc(v_maxRecDepth_5599_);
lean_inc(v_currRecDepth_5598_);
lean_inc(v_currMacroScope_5604_);
lean_inc(v_quotContext_5603_);
v___x_5613_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_5613_, 0, v_methods_5612_);
lean_ctor_set(v___x_5613_, 1, v_quotContext_5603_);
lean_ctor_set(v___x_5613_, 2, v_currMacroScope_5604_);
lean_ctor_set(v___x_5613_, 3, v_currRecDepth_5598_);
lean_ctor_set(v___x_5613_, 4, v_maxRecDepth_5599_);
lean_ctor_set(v___x_5613_, 5, v_ref_5600_);
v___x_5614_ = lean_box(0);
v___x_5615_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_5615_, 0, v_nextMacroScope_5606_);
lean_ctor_set(v___x_5615_, 1, v___x_5614_);
lean_ctor_set(v___x_5615_, 2, v___x_5614_);
v___x_5616_ = lean_apply_2(v_x_5587_, v___x_5613_, v___x_5615_);
if (lean_obj_tag(v___x_5616_) == 0)
{
lean_object* v_a_5617_; lean_object* v_a_5618_; lean_object* v_macroScope_5619_; lean_object* v_traceMsgs_5620_; lean_object* v_expandedMacroDecls_5621_; lean_object* v___x_5622_; lean_object* v___x_5623_; 
v_a_5617_ = lean_ctor_get(v___x_5616_, 1);
lean_inc(v_a_5617_);
v_a_5618_ = lean_ctor_get(v___x_5616_, 0);
lean_inc(v_a_5618_);
lean_dec_ref(v___x_5616_);
v_macroScope_5619_ = lean_ctor_get(v_a_5617_, 0);
lean_inc(v_macroScope_5619_);
v_traceMsgs_5620_ = lean_ctor_get(v_a_5617_, 1);
lean_inc(v_traceMsgs_5620_);
v_expandedMacroDecls_5621_ = lean_ctor_get(v_a_5617_, 2);
lean_inc(v_expandedMacroDecls_5621_);
lean_dec(v_a_5617_);
v___x_5622_ = lean_box(0);
v___x_5623_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg(v_expandedMacroDecls_5621_, v___x_5622_, v___y_5588_, v___y_5589_, v___y_5590_, v___y_5591_, v___y_5592_, v___y_5593_);
if (lean_obj_tag(v___x_5623_) == 0)
{
lean_object* v___x_5624_; lean_object* v_env_5625_; lean_object* v_ngen_5626_; lean_object* v_auxDeclNGen_5627_; lean_object* v_traceState_5628_; lean_object* v_cache_5629_; lean_object* v_messages_5630_; lean_object* v_infoState_5631_; lean_object* v_snapshotTasks_5632_; lean_object* v___x_5633_; lean_object* v___x_5634_; lean_object* v___x_5635_; lean_object* v___x_5636_; 
lean_dec_ref(v___x_5623_);
v___x_5624_ = lean_st_ref_take(v___y_5593_);
v_env_5625_ = lean_ctor_get(v___x_5624_, 0);
lean_inc_ref(v_env_5625_);
v_ngen_5626_ = lean_ctor_get(v___x_5624_, 2);
lean_inc_ref(v_ngen_5626_);
v_auxDeclNGen_5627_ = lean_ctor_get(v___x_5624_, 3);
lean_inc_ref(v_auxDeclNGen_5627_);
v_traceState_5628_ = lean_ctor_get(v___x_5624_, 4);
lean_inc_ref(v_traceState_5628_);
v_cache_5629_ = lean_ctor_get(v___x_5624_, 5);
lean_inc_ref(v_cache_5629_);
v_messages_5630_ = lean_ctor_get(v___x_5624_, 6);
lean_inc_ref(v_messages_5630_);
v_infoState_5631_ = lean_ctor_get(v___x_5624_, 7);
lean_inc_ref(v_infoState_5631_);
v_snapshotTasks_5632_ = lean_ctor_get(v___x_5624_, 8);
lean_inc_ref(v_snapshotTasks_5632_);
lean_dec(v___x_5624_);
v___x_5633_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_5633_, 0, v_env_5625_);
lean_ctor_set(v___x_5633_, 1, v_macroScope_5619_);
lean_ctor_set(v___x_5633_, 2, v_ngen_5626_);
lean_ctor_set(v___x_5633_, 3, v_auxDeclNGen_5627_);
lean_ctor_set(v___x_5633_, 4, v_traceState_5628_);
lean_ctor_set(v___x_5633_, 5, v_cache_5629_);
lean_ctor_set(v___x_5633_, 6, v_messages_5630_);
lean_ctor_set(v___x_5633_, 7, v_infoState_5631_);
lean_ctor_set(v___x_5633_, 8, v_snapshotTasks_5632_);
v___x_5634_ = lean_st_ref_set(v___y_5593_, v___x_5633_);
v___x_5635_ = l_List_reverse___redArg(v_traceMsgs_5620_);
v___x_5636_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__4(v___x_5635_, v___y_5588_, v___y_5589_, v___y_5590_, v___y_5591_, v___y_5592_, v___y_5593_);
lean_dec_ref(v___y_5592_);
lean_dec_ref(v___y_5588_);
if (lean_obj_tag(v___x_5636_) == 0)
{
lean_object* v___x_5637_; 
lean_dec_ref(v___x_5636_);
v___x_5637_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5637_, 0, v_a_5618_);
return v___x_5637_;
}
else
{
lean_object* v_a_5638_; lean_object* v___x_5639_; 
lean_dec(v_a_5618_);
v_a_5638_ = lean_ctor_get(v___x_5636_, 0);
lean_inc(v_a_5638_);
lean_dec_ref(v___x_5636_);
v___x_5639_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5639_, 0, v_a_5638_);
return v___x_5639_;
}
}
else
{
lean_object* v_a_5640_; lean_object* v___x_5641_; 
lean_dec(v_traceMsgs_5620_);
lean_dec(v_macroScope_5619_);
lean_dec(v_a_5618_);
lean_dec_ref(v___y_5592_);
lean_dec_ref(v___y_5588_);
v_a_5640_ = lean_ctor_get(v___x_5623_, 0);
lean_inc(v_a_5640_);
lean_dec_ref(v___x_5623_);
v___x_5641_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5641_, 0, v_a_5640_);
return v___x_5641_;
}
}
else
{
lean_object* v_a_5642_; 
v_a_5642_ = lean_ctor_get(v___x_5616_, 0);
lean_inc(v_a_5642_);
lean_dec_ref(v___x_5616_);
if (lean_obj_tag(v_a_5642_) == 0)
{
lean_object* v_a_5643_; lean_object* v_a_5644_; lean_object* v___x_5645_; uint8_t v___x_5646_; 
v_a_5643_ = lean_ctor_get(v_a_5642_, 0);
lean_inc(v_a_5643_);
v_a_5644_ = lean_ctor_get(v_a_5642_, 1);
lean_inc_ref(v_a_5644_);
lean_dec_ref(v_a_5642_);
v___x_5645_ = ((lean_object*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0));
v___x_5646_ = lean_string_dec_eq(v_a_5644_, v___x_5645_);
if (v___x_5646_ == 0)
{
lean_object* v___x_5647_; lean_object* v___x_5648_; lean_object* v___x_5649_; 
v___x_5647_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_5647_, 0, v_a_5644_);
v___x_5648_ = l_Lean_MessageData_ofFormat(v___x_5647_);
v___x_5649_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(v_a_5643_, v___x_5648_, v___y_5588_, v___y_5589_, v___y_5590_, v___y_5591_, v___y_5592_, v___y_5593_);
lean_dec_ref(v___y_5592_);
lean_dec(v_a_5643_);
return v___x_5649_;
}
else
{
lean_object* v___x_5650_; 
lean_dec_ref(v_a_5644_);
lean_dec_ref(v___y_5592_);
lean_dec_ref(v___y_5588_);
v___x_5650_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg(v_a_5643_);
return v___x_5650_;
}
}
else
{
lean_object* v___x_5651_; 
lean_dec_ref(v___y_5592_);
lean_dec_ref(v___y_5588_);
v___x_5651_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg();
return v___x_5651_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___boxed(lean_object* v_x_5652_, lean_object* v___y_5653_, lean_object* v___y_5654_, lean_object* v___y_5655_, lean_object* v___y_5656_, lean_object* v___y_5657_, lean_object* v___y_5658_, lean_object* v___y_5659_){
_start:
{
lean_object* v_res_5660_; 
v_res_5660_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(v_x_5652_, v___y_5653_, v___y_5654_, v___y_5655_, v___y_5656_, v___y_5657_, v___y_5658_);
lean_dec(v___y_5658_);
lean_dec(v___y_5656_);
lean_dec_ref(v___y_5655_);
lean_dec(v___y_5654_);
return v_res_5660_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_concat___closed__1(void){
_start:
{
lean_object* v___x_5662_; lean_object* v___x_5663_; 
v___x_5662_ = ((lean_object*)(l_Lean_Elab_Term_Do_concat___closed__0));
v___x_5663_ = l_Lean_stringToMessageData(v___x_5662_);
return v___x_5663_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat(lean_object* v_terminal_5664_, lean_object* v_kRef_5665_, lean_object* v_y_x3f_5666_, lean_object* v_k_5667_, lean_object* v_a_5668_, lean_object* v_a_5669_, lean_object* v_a_5670_, lean_object* v_a_5671_, lean_object* v_a_5672_, lean_object* v_a_5673_){
_start:
{
lean_object* v___y_5676_; lean_object* v___y_5677_; lean_object* v___y_5678_; lean_object* v___y_5679_; lean_object* v_y_5680_; lean_object* v___y_5681_; lean_object* v___y_5682_; lean_object* v___y_5683_; lean_object* v___y_5684_; lean_object* v___y_5685_; lean_object* v___y_5686_; lean_object* v___y_5709_; lean_object* v___y_5710_; lean_object* v___y_5711_; lean_object* v___y_5712_; lean_object* v___y_5713_; lean_object* v___y_5714_; lean_object* v_code_5735_; uint8_t v___x_5736_; 
v_code_5735_ = lean_ctor_get(v_terminal_5664_, 0);
lean_inc_ref(v_code_5735_);
v___x_5736_ = l_Lean_Elab_Term_Do_hasTerminalAction(v_code_5735_);
if (v___x_5736_ == 0)
{
lean_object* v___x_5737_; lean_object* v___x_5738_; lean_object* v_a_5739_; lean_object* v___x_5740_; 
lean_dec_ref(v_k_5667_);
lean_dec(v_y_x3f_5666_);
lean_dec_ref(v_terminal_5664_);
v___x_5737_ = lean_obj_once(&l_Lean_Elab_Term_Do_concat___closed__1, &l_Lean_Elab_Term_Do_concat___closed__1_once, _init_l_Lean_Elab_Term_Do_concat___closed__1);
v___x_5738_ = l_Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0___redArg(v_kRef_5665_, v___x_5737_, v_a_5668_, v_a_5669_, v_a_5670_, v_a_5671_, v_a_5672_, v_a_5673_);
lean_dec(v_a_5673_);
lean_dec_ref(v_a_5672_);
lean_dec(v_a_5671_);
lean_dec_ref(v_a_5670_);
lean_dec(v_a_5669_);
v_a_5739_ = lean_ctor_get(v___x_5738_, 0);
lean_inc(v_a_5739_);
lean_dec_ref(v___x_5738_);
v___x_5740_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5740_, 0, v_a_5739_);
return v___x_5740_;
}
else
{
v___y_5709_ = v_a_5668_;
v___y_5710_ = v_a_5669_;
v___y_5711_ = v_a_5670_;
v___y_5712_ = v_a_5671_;
v___y_5713_ = v_a_5672_;
v___y_5714_ = v_a_5673_;
goto v___jp_5708_;
}
v___jp_5675_:
{
size_t v_sz_5687_; size_t v___x_5688_; lean_object* v___x_5689_; uint8_t v___x_5690_; lean_object* v___x_5691_; lean_object* v___x_5692_; lean_object* v___x_5693_; lean_object* v___x_5694_; 
v_sz_5687_ = lean_array_size(v___y_5678_);
v___x_5688_ = ((size_t)0ULL);
lean_inc_ref(v___y_5678_);
v___x_5689_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkSimpleJmp_spec__0(v_sz_5687_, v___x_5688_, v___y_5678_);
v___x_5690_ = 0;
v___x_5691_ = lean_box(v___x_5690_);
v___x_5692_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5692_, 0, v_y_5680_);
lean_ctor_set(v___x_5692_, 1, v___x_5691_);
v___x_5693_ = lean_array_push(v___x_5689_, v___x_5692_);
lean_inc(v___y_5686_);
lean_inc_ref(v___y_5685_);
v___x_5694_ = l_Lean_Elab_Term_Do_mkFreshJP___redArg(v___x_5693_, v___y_5677_, v___y_5685_, v___y_5686_);
if (lean_obj_tag(v___x_5694_) == 0)
{
lean_object* v_a_5695_; lean_object* v_name_5696_; lean_object* v_code_5697_; lean_object* v___f_5698_; lean_object* v___x_5699_; 
v_a_5695_ = lean_ctor_get(v___x_5694_, 0);
lean_inc(v_a_5695_);
lean_dec_ref(v___x_5694_);
v_name_5696_ = lean_ctor_get(v_a_5695_, 0);
v_code_5697_ = lean_ctor_get(v___y_5679_, 0);
lean_inc_ref(v_code_5697_);
lean_dec_ref(v___y_5679_);
lean_inc(v_name_5696_);
v___f_5698_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_concat___lam__0), 5, 3);
lean_closure_set(v___f_5698_, 0, v_name_5696_);
lean_closure_set(v___f_5698_, 1, v___y_5678_);
lean_closure_set(v___f_5698_, 2, v_code_5697_);
v___x_5699_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(v___f_5698_, v___y_5681_, v___y_5682_, v___y_5683_, v___y_5684_, v___y_5685_, v___y_5686_);
lean_dec(v___y_5686_);
lean_dec(v___y_5684_);
lean_dec_ref(v___y_5683_);
lean_dec(v___y_5682_);
if (lean_obj_tag(v___x_5699_) == 0)
{
lean_object* v_a_5700_; lean_object* v___x_5701_; lean_object* v___x_5702_; lean_object* v___x_5703_; 
v_a_5700_ = lean_ctor_get(v___x_5699_, 0);
lean_inc(v_a_5700_);
lean_dec_ref(v___x_5699_);
v___x_5701_ = l_Lean_Elab_Term_Do_attachJP(v_a_5695_, v_a_5700_);
lean_dec(v_a_5695_);
v___x_5702_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_5702_, 0, v___x_5701_);
lean_ctor_set(v___x_5702_, 1, v___y_5676_);
v___x_5703_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_5703_, 0, v___x_5702_);
return v___x_5703_;
}
else
{
lean_object* v_a_5704_; lean_object* v___x_5705_; 
lean_dec(v_a_5695_);
lean_dec(v___y_5676_);
v_a_5704_ = lean_ctor_get(v___x_5699_, 0);
lean_inc(v_a_5704_);
lean_dec_ref(v___x_5699_);
v___x_5705_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5705_, 0, v_a_5704_);
return v___x_5705_;
}
}
else
{
lean_object* v_a_5706_; lean_object* v___x_5707_; 
lean_dec(v___y_5686_);
lean_dec_ref(v___y_5685_);
lean_dec(v___y_5684_);
lean_dec_ref(v___y_5683_);
lean_dec(v___y_5682_);
lean_dec_ref(v___y_5681_);
lean_dec_ref(v___y_5679_);
lean_dec_ref(v___y_5678_);
lean_dec(v___y_5676_);
v_a_5706_ = lean_ctor_get(v___x_5694_, 0);
lean_inc(v_a_5706_);
lean_dec_ref(v___x_5694_);
v___x_5707_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5707_, 0, v_a_5706_);
return v___x_5707_;
}
}
v___jp_5708_:
{
lean_object* v___x_5715_; 
lean_inc(v___y_5714_);
lean_inc_ref(v___y_5713_);
lean_inc(v___y_5712_);
lean_inc_ref(v___y_5711_);
lean_inc(v___y_5710_);
lean_inc_ref(v___y_5709_);
v___x_5715_ = l_Lean_Elab_Term_Do_homogenize(v_terminal_5664_, v_k_5667_, v___y_5709_, v___y_5710_, v___y_5711_, v___y_5712_, v___y_5713_, v___y_5714_);
if (lean_obj_tag(v___x_5715_) == 0)
{
lean_object* v_a_5716_; lean_object* v_snd_5717_; lean_object* v_fst_5718_; lean_object* v_code_5719_; lean_object* v_uvars_5720_; lean_object* v___x_5721_; 
v_a_5716_ = lean_ctor_get(v___x_5715_, 0);
lean_inc(v_a_5716_);
lean_dec_ref(v___x_5715_);
v_snd_5717_ = lean_ctor_get(v_a_5716_, 1);
lean_inc(v_snd_5717_);
v_fst_5718_ = lean_ctor_get(v_a_5716_, 0);
lean_inc(v_fst_5718_);
lean_dec(v_a_5716_);
v_code_5719_ = lean_ctor_get(v_snd_5717_, 0);
lean_inc_ref(v_code_5719_);
v_uvars_5720_ = lean_ctor_get(v_snd_5717_, 1);
lean_inc(v_uvars_5720_);
lean_dec(v_snd_5717_);
lean_inc(v_uvars_5720_);
v___x_5721_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v_uvars_5720_);
if (lean_obj_tag(v_y_x3f_5666_) == 0)
{
lean_object* v_ref_5722_; lean_object* v_quotContext_5723_; lean_object* v_currMacroScope_5724_; uint8_t v___x_5725_; lean_object* v___x_5726_; lean_object* v___x_5727_; lean_object* v___x_5728_; lean_object* v___x_5729_; lean_object* v___x_5730_; lean_object* v___x_5731_; 
v_ref_5722_ = lean_ctor_get(v___y_5713_, 5);
v_quotContext_5723_ = lean_ctor_get(v___y_5713_, 10);
v_currMacroScope_5724_ = lean_ctor_get(v___y_5713_, 11);
v___x_5725_ = 0;
v___x_5726_ = l_Lean_SourceInfo_fromRef(v_ref_5722_, v___x_5725_);
v___x_5727_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_5728_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_currMacroScope_5724_);
lean_inc(v_quotContext_5723_);
v___x_5729_ = l_Lean_addMacroScope(v_quotContext_5723_, v___x_5728_, v_currMacroScope_5724_);
v___x_5730_ = lean_box(0);
v___x_5731_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_5731_, 0, v___x_5726_);
lean_ctor_set(v___x_5731_, 1, v___x_5727_);
lean_ctor_set(v___x_5731_, 2, v___x_5729_);
lean_ctor_set(v___x_5731_, 3, v___x_5730_);
v___y_5676_ = v_uvars_5720_;
v___y_5677_ = v_code_5719_;
v___y_5678_ = v___x_5721_;
v___y_5679_ = v_fst_5718_;
v_y_5680_ = v___x_5731_;
v___y_5681_ = v___y_5709_;
v___y_5682_ = v___y_5710_;
v___y_5683_ = v___y_5711_;
v___y_5684_ = v___y_5712_;
v___y_5685_ = v___y_5713_;
v___y_5686_ = v___y_5714_;
goto v___jp_5675_;
}
else
{
lean_object* v_val_5732_; 
v_val_5732_ = lean_ctor_get(v_y_x3f_5666_, 0);
lean_inc(v_val_5732_);
lean_dec_ref(v_y_x3f_5666_);
v___y_5676_ = v_uvars_5720_;
v___y_5677_ = v_code_5719_;
v___y_5678_ = v___x_5721_;
v___y_5679_ = v_fst_5718_;
v_y_5680_ = v_val_5732_;
v___y_5681_ = v___y_5709_;
v___y_5682_ = v___y_5710_;
v___y_5683_ = v___y_5711_;
v___y_5684_ = v___y_5712_;
v___y_5685_ = v___y_5713_;
v___y_5686_ = v___y_5714_;
goto v___jp_5675_;
}
}
else
{
lean_object* v_a_5733_; lean_object* v___x_5734_; 
lean_dec(v___y_5714_);
lean_dec_ref(v___y_5713_);
lean_dec(v___y_5712_);
lean_dec_ref(v___y_5711_);
lean_dec(v___y_5710_);
lean_dec_ref(v___y_5709_);
lean_dec(v_y_x3f_5666_);
v_a_5733_ = lean_ctor_get(v___x_5715_, 0);
lean_inc(v_a_5733_);
lean_dec_ref(v___x_5715_);
v___x_5734_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5734_, 0, v_a_5733_);
return v___x_5734_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_concat___boxed(lean_object* v_terminal_5741_, lean_object* v_kRef_5742_, lean_object* v_y_x3f_5743_, lean_object* v_k_5744_, lean_object* v_a_5745_, lean_object* v_a_5746_, lean_object* v_a_5747_, lean_object* v_a_5748_, lean_object* v_a_5749_, lean_object* v_a_5750_, lean_object* v_a_5751_){
_start:
{
lean_object* v_res_5752_; 
v_res_5752_ = l_Lean_Elab_Term_Do_concat(v_terminal_5741_, v_kRef_5742_, v_y_x3f_5743_, v_k_5744_, v_a_5745_, v_a_5746_, v_a_5747_, v_a_5748_, v_a_5749_, v_a_5750_);
lean_dec(v_kRef_5742_);
return v_res_5752_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0(lean_object* v_cls_5753_, lean_object* v___y_5754_, lean_object* v___y_5755_, lean_object* v___y_5756_, lean_object* v___y_5757_, lean_object* v___y_5758_, lean_object* v___y_5759_){
_start:
{
lean_object* v___x_5761_; 
v___x_5761_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(v_cls_5753_, v___y_5758_);
return v___x_5761_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___boxed(lean_object* v_cls_5762_, lean_object* v___y_5763_, lean_object* v___y_5764_, lean_object* v___y_5765_, lean_object* v___y_5766_, lean_object* v___y_5767_, lean_object* v___y_5768_, lean_object* v___y_5769_){
_start:
{
lean_object* v_res_5770_; 
v_res_5770_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0(v_cls_5762_, v___y_5763_, v___y_5764_, v___y_5765_, v___y_5766_, v___y_5767_, v___y_5768_);
lean_dec(v___y_5768_);
lean_dec_ref(v___y_5767_);
lean_dec(v___y_5766_);
lean_dec_ref(v___y_5765_);
lean_dec(v___y_5764_);
lean_dec_ref(v___y_5763_);
return v_res_5770_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5(lean_object* v_00_u03b1_5771_, lean_object* v_ref_5772_, lean_object* v___y_5773_, lean_object* v___y_5774_, lean_object* v___y_5775_, lean_object* v___y_5776_, lean_object* v___y_5777_, lean_object* v___y_5778_){
_start:
{
lean_object* v___x_5780_; 
v___x_5780_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___redArg(v_ref_5772_);
return v___x_5780_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5___boxed(lean_object* v_00_u03b1_5781_, lean_object* v_ref_5782_, lean_object* v___y_5783_, lean_object* v___y_5784_, lean_object* v___y_5785_, lean_object* v___y_5786_, lean_object* v___y_5787_, lean_object* v___y_5788_, lean_object* v___y_5789_){
_start:
{
lean_object* v_res_5790_; 
v_res_5790_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__5(v_00_u03b1_5781_, v_ref_5782_, v___y_5783_, v___y_5784_, v___y_5785_, v___y_5786_, v___y_5787_, v___y_5788_);
lean_dec(v___y_5788_);
lean_dec_ref(v___y_5787_);
lean_dec(v___y_5786_);
lean_dec_ref(v___y_5785_);
lean_dec(v___y_5784_);
lean_dec_ref(v___y_5783_);
return v_res_5790_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6(lean_object* v_00_u03b1_5791_, lean_object* v___y_5792_, lean_object* v___y_5793_, lean_object* v___y_5794_, lean_object* v___y_5795_, lean_object* v___y_5796_, lean_object* v___y_5797_){
_start:
{
lean_object* v___x_5799_; 
v___x_5799_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___redArg();
return v___x_5799_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6___boxed(lean_object* v_00_u03b1_5800_, lean_object* v___y_5801_, lean_object* v___y_5802_, lean_object* v___y_5803_, lean_object* v___y_5804_, lean_object* v___y_5805_, lean_object* v___y_5806_, lean_object* v___y_5807_){
_start:
{
lean_object* v_res_5808_; 
v_res_5808_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__6(v_00_u03b1_5800_, v___y_5801_, v___y_5802_, v___y_5803_, v___y_5804_, v___y_5805_, v___y_5806_);
lean_dec(v___y_5806_);
lean_dec_ref(v___y_5805_);
lean_dec(v___y_5804_);
lean_dec_ref(v___y_5803_);
lean_dec(v___y_5802_);
lean_dec_ref(v___y_5801_);
return v_res_5808_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0(lean_object* v_00_u03b1_5809_, lean_object* v_x_5810_, lean_object* v___y_5811_, lean_object* v___y_5812_, lean_object* v___y_5813_, lean_object* v___y_5814_, lean_object* v___y_5815_, lean_object* v___y_5816_){
_start:
{
lean_object* v___x_5818_; 
v___x_5818_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(v_x_5810_, v___y_5811_, v___y_5812_, v___y_5813_, v___y_5814_, v___y_5815_, v___y_5816_);
return v___x_5818_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___boxed(lean_object* v_00_u03b1_5819_, lean_object* v_x_5820_, lean_object* v___y_5821_, lean_object* v___y_5822_, lean_object* v___y_5823_, lean_object* v___y_5824_, lean_object* v___y_5825_, lean_object* v___y_5826_, lean_object* v___y_5827_){
_start:
{
lean_object* v_res_5828_; 
v_res_5828_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0(v_00_u03b1_5819_, v_x_5820_, v___y_5821_, v___y_5822_, v___y_5823_, v___y_5824_, v___y_5825_, v___y_5826_);
lean_dec(v___y_5826_);
lean_dec(v___y_5824_);
lean_dec_ref(v___y_5823_);
lean_dec(v___y_5822_);
return v_res_5828_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1(lean_object* v_cls_5829_, lean_object* v_msg_5830_, lean_object* v___y_5831_, lean_object* v___y_5832_, lean_object* v___y_5833_, lean_object* v___y_5834_, lean_object* v___y_5835_, lean_object* v___y_5836_){
_start:
{
lean_object* v___x_5838_; 
v___x_5838_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(v_cls_5829_, v_msg_5830_, v___y_5833_, v___y_5834_, v___y_5835_, v___y_5836_);
return v___x_5838_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___boxed(lean_object* v_cls_5839_, lean_object* v_msg_5840_, lean_object* v___y_5841_, lean_object* v___y_5842_, lean_object* v___y_5843_, lean_object* v___y_5844_, lean_object* v___y_5845_, lean_object* v___y_5846_, lean_object* v___y_5847_){
_start:
{
lean_object* v_res_5848_; 
v_res_5848_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1(v_cls_5839_, v_msg_5840_, v___y_5841_, v___y_5842_, v___y_5843_, v___y_5844_, v___y_5845_, v___y_5846_);
lean_dec(v___y_5846_);
lean_dec_ref(v___y_5845_);
lean_dec(v___y_5844_);
lean_dec_ref(v___y_5843_);
lean_dec(v___y_5842_);
lean_dec_ref(v___y_5841_);
return v_res_5848_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3(lean_object* v_as_5849_, lean_object* v_as_x27_5850_, lean_object* v_b_5851_, lean_object* v_a_5852_, lean_object* v___y_5853_, lean_object* v___y_5854_, lean_object* v___y_5855_, lean_object* v___y_5856_, lean_object* v___y_5857_, lean_object* v___y_5858_){
_start:
{
lean_object* v___x_5860_; 
v___x_5860_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___redArg(v_as_x27_5850_, v_b_5851_, v___y_5853_, v___y_5854_, v___y_5855_, v___y_5856_, v___y_5857_, v___y_5858_);
return v___x_5860_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3___boxed(lean_object* v_as_5861_, lean_object* v_as_x27_5862_, lean_object* v_b_5863_, lean_object* v_a_5864_, lean_object* v___y_5865_, lean_object* v___y_5866_, lean_object* v___y_5867_, lean_object* v___y_5868_, lean_object* v___y_5869_, lean_object* v___y_5870_, lean_object* v___y_5871_){
_start:
{
lean_object* v_res_5872_; 
v_res_5872_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__3(v_as_5861_, v_as_x27_5862_, v_b_5863_, v_a_5864_, v___y_5865_, v___y_5866_, v___y_5867_, v___y_5868_, v___y_5869_, v___y_5870_);
lean_dec(v___y_5870_);
lean_dec_ref(v___y_5869_);
lean_dec(v___y_5868_);
lean_dec_ref(v___y_5867_);
lean_dec(v___y_5866_);
lean_dec_ref(v___y_5865_);
lean_dec(v_as_5861_);
return v_res_5872_;
}
}
static lean_object* _init_l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0(void){
_start:
{
lean_object* v___x_5873_; 
v___x_5873_ = l_Array_instInhabited(lean_box(0));
return v___x_5873_;
}
}
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0(lean_object* v_msg_5874_){
_start:
{
lean_object* v___x_5875_; lean_object* v___x_5876_; 
v___x_5875_ = lean_obj_once(&l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0, &l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0_once, _init_l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0___closed__0);
v___x_5876_ = lean_panic_fn(v___x_5875_, v_msg_5874_);
return v___x_5876_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getLetIdVars___closed__5(void){
_start:
{
lean_object* v___x_5886_; lean_object* v___x_5887_; lean_object* v___x_5888_; lean_object* v___x_5889_; lean_object* v___x_5890_; lean_object* v___x_5891_; 
v___x_5886_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__4));
v___x_5887_ = lean_unsigned_to_nat(2u);
v___x_5888_ = lean_unsigned_to_nat(656u);
v___x_5889_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__3));
v___x_5890_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_5891_ = l_mkPanicMessageWithDecl(v___x_5890_, v___x_5889_, v___x_5888_, v___x_5887_, v___x_5886_);
return v___x_5891_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetIdVars(lean_object* v_letId_5895_){
_start:
{
lean_object* v___x_5896_; uint8_t v___x_5897_; 
v___x_5896_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v_letId_5895_);
v___x_5897_ = l_Lean_Syntax_isOfKind(v_letId_5895_, v___x_5896_);
if (v___x_5897_ == 0)
{
lean_object* v___x_5898_; lean_object* v___x_5899_; 
lean_dec(v_letId_5895_);
v___x_5898_ = lean_obj_once(&l_Lean_Elab_Term_Do_getLetIdVars___closed__5, &l_Lean_Elab_Term_Do_getLetIdVars___closed__5_once, _init_l_Lean_Elab_Term_Do_getLetIdVars___closed__5);
v___x_5899_ = l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0(v___x_5898_);
return v___x_5899_;
}
else
{
lean_object* v___x_5900_; lean_object* v___x_5901_; uint8_t v___x_5902_; 
v___x_5900_ = lean_unsigned_to_nat(0u);
v___x_5901_ = l_Lean_Syntax_getArg(v_letId_5895_, v___x_5900_);
lean_dec(v_letId_5895_);
v___x_5902_ = l_Lean_Syntax_isIdent(v___x_5901_);
if (v___x_5902_ == 0)
{
lean_object* v___x_5903_; uint8_t v___x_5904_; 
v___x_5903_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
lean_inc(v___x_5901_);
v___x_5904_ = l_Lean_Syntax_isOfKind(v___x_5901_, v___x_5903_);
if (v___x_5904_ == 0)
{
lean_object* v___x_5905_; 
lean_dec(v___x_5901_);
v___x_5905_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
return v___x_5905_;
}
else
{
lean_object* v___x_5906_; lean_object* v___x_5907_; lean_object* v___x_5908_; lean_object* v___x_5909_; lean_object* v___x_5910_; 
v___x_5906_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__7));
v___x_5907_ = l_Lean_HygieneInfo_mkIdent(v___x_5901_, v___x_5906_, v___x_5904_);
lean_dec(v___x_5901_);
v___x_5908_ = lean_unsigned_to_nat(1u);
v___x_5909_ = lean_mk_empty_array_with_capacity(v___x_5908_);
v___x_5910_ = lean_array_push(v___x_5909_, v___x_5907_);
return v___x_5910_;
}
}
else
{
lean_object* v___x_5911_; lean_object* v___x_5912_; lean_object* v___x_5913_; 
v___x_5911_ = lean_unsigned_to_nat(1u);
v___x_5912_ = lean_mk_empty_array_with_capacity(v___x_5911_);
v___x_5913_ = lean_array_push(v___x_5912_, v___x_5901_);
return v___x_5913_;
}
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2(void){
_start:
{
lean_object* v___x_5916_; lean_object* v___x_5917_; lean_object* v___x_5918_; lean_object* v___x_5919_; lean_object* v___x_5920_; lean_object* v___x_5921_; 
v___x_5916_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__1));
v___x_5917_ = lean_unsigned_to_nat(2u);
v___x_5918_ = lean_unsigned_to_nat(666u);
v___x_5919_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__0));
v___x_5920_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_5921_ = l_mkPanicMessageWithDecl(v___x_5920_, v___x_5919_, v___x_5918_, v___x_5917_, v___x_5916_);
return v___x_5921_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetIdDeclVars(lean_object* v_letIdDecl_5922_){
_start:
{
uint8_t v___y_5924_; lean_object* v___x_5930_; uint8_t v___x_5931_; 
v___x_5930_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
lean_inc(v_letIdDecl_5922_);
v___x_5931_ = l_Lean_Syntax_isOfKind(v_letIdDecl_5922_, v___x_5930_);
if (v___x_5931_ == 0)
{
lean_object* v___x_5932_; uint8_t v___x_5933_; 
v___x_5932_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
lean_inc(v_letIdDecl_5922_);
v___x_5933_ = l_Lean_Syntax_isOfKind(v_letIdDecl_5922_, v___x_5932_);
v___y_5924_ = v___x_5933_;
goto v___jp_5923_;
}
else
{
v___y_5924_ = v___x_5931_;
goto v___jp_5923_;
}
v___jp_5923_:
{
if (v___y_5924_ == 0)
{
lean_object* v___x_5925_; lean_object* v___x_5926_; 
lean_dec(v_letIdDecl_5922_);
v___x_5925_ = lean_obj_once(&l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2, &l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2_once, _init_l_Lean_Elab_Term_Do_getLetIdDeclVars___closed__2);
v___x_5926_ = l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0(v___x_5925_);
return v___x_5926_;
}
else
{
lean_object* v___x_5927_; lean_object* v___x_5928_; lean_object* v___x_5929_; 
v___x_5927_ = lean_unsigned_to_nat(0u);
v___x_5928_ = l_Lean_Syntax_getArg(v_letIdDecl_5922_, v___x_5927_);
lean_dec(v_letIdDecl_5922_);
v___x_5929_ = l_Lean_Elab_Term_Do_getLetIdVars(v___x_5928_);
return v___x_5929_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternVarsEx(lean_object* v_pattern_5934_, lean_object* v_a_5935_, lean_object* v_a_5936_, lean_object* v_a_5937_, lean_object* v_a_5938_, lean_object* v_a_5939_, lean_object* v_a_5940_){
_start:
{
lean_object* v___x_5942_; 
v___x_5942_ = l_Lean_Meta_saveState___redArg(v_a_5938_, v_a_5940_);
if (lean_obj_tag(v___x_5942_) == 0)
{
lean_object* v_a_5943_; lean_object* v___x_5944_; 
v_a_5943_ = lean_ctor_get(v___x_5942_, 0);
lean_inc(v_a_5943_);
lean_dec_ref(v___x_5942_);
lean_inc(v_a_5940_);
lean_inc_ref(v_a_5939_);
lean_inc(v_a_5938_);
lean_inc_ref(v_a_5937_);
lean_inc(v_a_5936_);
lean_inc_ref(v_a_5935_);
lean_inc(v_pattern_5934_);
v___x_5944_ = l_Lean_Elab_Term_getPatternVars(v_pattern_5934_, v_a_5935_, v_a_5936_, v_a_5937_, v_a_5938_, v_a_5939_, v_a_5940_);
if (lean_obj_tag(v___x_5944_) == 0)
{
lean_dec(v_a_5943_);
lean_dec(v_a_5940_);
lean_dec_ref(v_a_5939_);
lean_dec(v_a_5938_);
lean_dec_ref(v_a_5937_);
lean_dec(v_a_5936_);
lean_dec_ref(v_a_5935_);
lean_dec(v_pattern_5934_);
return v___x_5944_;
}
else
{
lean_object* v_a_5945_; uint8_t v___y_5947_; uint8_t v___x_5952_; 
v_a_5945_ = lean_ctor_get(v___x_5944_, 0);
lean_inc(v_a_5945_);
v___x_5952_ = l_Lean_Exception_isInterrupt(v_a_5945_);
if (v___x_5952_ == 0)
{
uint8_t v___x_5953_; 
v___x_5953_ = l_Lean_Exception_isRuntime(v_a_5945_);
v___y_5947_ = v___x_5953_;
goto v___jp_5946_;
}
else
{
lean_dec(v_a_5945_);
v___y_5947_ = v___x_5952_;
goto v___jp_5946_;
}
v___jp_5946_:
{
if (v___y_5947_ == 0)
{
lean_object* v___x_5948_; 
lean_dec_ref(v___x_5944_);
v___x_5948_ = l_Lean_Meta_SavedState_restore___redArg(v_a_5943_, v_a_5938_, v_a_5940_);
lean_dec(v_a_5943_);
if (lean_obj_tag(v___x_5948_) == 0)
{
lean_object* v___x_5949_; 
lean_dec_ref(v___x_5948_);
v___x_5949_ = l_Lean_Elab_Term_Quotation_getPatternVars(v_pattern_5934_, v_a_5935_, v_a_5936_, v_a_5937_, v_a_5938_, v_a_5939_, v_a_5940_);
lean_dec(v_a_5940_);
lean_dec(v_a_5938_);
lean_dec_ref(v_a_5937_);
lean_dec(v_a_5936_);
return v___x_5949_;
}
else
{
lean_object* v_a_5950_; lean_object* v___x_5951_; 
lean_dec(v_a_5940_);
lean_dec_ref(v_a_5939_);
lean_dec(v_a_5938_);
lean_dec_ref(v_a_5937_);
lean_dec(v_a_5936_);
lean_dec_ref(v_a_5935_);
lean_dec(v_pattern_5934_);
v_a_5950_ = lean_ctor_get(v___x_5948_, 0);
lean_inc(v_a_5950_);
lean_dec_ref(v___x_5948_);
v___x_5951_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5951_, 0, v_a_5950_);
return v___x_5951_;
}
}
else
{
lean_dec(v_a_5943_);
lean_dec(v_a_5940_);
lean_dec_ref(v_a_5939_);
lean_dec(v_a_5938_);
lean_dec_ref(v_a_5937_);
lean_dec(v_a_5936_);
lean_dec_ref(v_a_5935_);
lean_dec(v_pattern_5934_);
return v___x_5944_;
}
}
}
}
else
{
lean_object* v_a_5954_; lean_object* v___x_5955_; 
lean_dec(v_a_5940_);
lean_dec_ref(v_a_5939_);
lean_dec(v_a_5938_);
lean_dec_ref(v_a_5937_);
lean_dec(v_a_5936_);
lean_dec_ref(v_a_5935_);
lean_dec(v_pattern_5934_);
v_a_5954_ = lean_ctor_get(v___x_5942_, 0);
lean_inc(v_a_5954_);
lean_dec_ref(v___x_5942_);
v___x_5955_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5955_, 0, v_a_5954_);
return v___x_5955_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternVarsEx___boxed(lean_object* v_pattern_5956_, lean_object* v_a_5957_, lean_object* v_a_5958_, lean_object* v_a_5959_, lean_object* v_a_5960_, lean_object* v_a_5961_, lean_object* v_a_5962_, lean_object* v_a_5963_){
_start:
{
lean_object* v_res_5964_; 
v_res_5964_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_pattern_5956_, v_a_5957_, v_a_5958_, v_a_5959_, v_a_5960_, v_a_5961_, v_a_5962_);
return v_res_5964_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternsVarsEx(lean_object* v_patterns_5965_, lean_object* v_a_5966_, lean_object* v_a_5967_, lean_object* v_a_5968_, lean_object* v_a_5969_, lean_object* v_a_5970_, lean_object* v_a_5971_){
_start:
{
lean_object* v___x_5973_; 
v___x_5973_ = l_Lean_Meta_saveState___redArg(v_a_5969_, v_a_5971_);
if (lean_obj_tag(v___x_5973_) == 0)
{
lean_object* v_a_5974_; lean_object* v___x_5975_; 
v_a_5974_ = lean_ctor_get(v___x_5973_, 0);
lean_inc(v_a_5974_);
lean_dec_ref(v___x_5973_);
lean_inc(v_a_5971_);
lean_inc_ref(v_a_5970_);
lean_inc(v_a_5969_);
lean_inc_ref(v_a_5968_);
lean_inc(v_a_5967_);
lean_inc_ref(v_a_5966_);
v___x_5975_ = l_Lean_Elab_Term_getPatternsVars(v_patterns_5965_, v_a_5966_, v_a_5967_, v_a_5968_, v_a_5969_, v_a_5970_, v_a_5971_);
if (lean_obj_tag(v___x_5975_) == 0)
{
lean_dec(v_a_5974_);
lean_dec(v_a_5971_);
lean_dec_ref(v_a_5970_);
lean_dec(v_a_5969_);
lean_dec_ref(v_a_5968_);
lean_dec(v_a_5967_);
lean_dec_ref(v_a_5966_);
return v___x_5975_;
}
else
{
lean_object* v_a_5976_; uint8_t v___y_5978_; uint8_t v___x_5983_; 
v_a_5976_ = lean_ctor_get(v___x_5975_, 0);
lean_inc(v_a_5976_);
v___x_5983_ = l_Lean_Exception_isInterrupt(v_a_5976_);
if (v___x_5983_ == 0)
{
uint8_t v___x_5984_; 
v___x_5984_ = l_Lean_Exception_isRuntime(v_a_5976_);
v___y_5978_ = v___x_5984_;
goto v___jp_5977_;
}
else
{
lean_dec(v_a_5976_);
v___y_5978_ = v___x_5983_;
goto v___jp_5977_;
}
v___jp_5977_:
{
if (v___y_5978_ == 0)
{
lean_object* v___x_5979_; 
lean_dec_ref(v___x_5975_);
v___x_5979_ = l_Lean_Meta_SavedState_restore___redArg(v_a_5974_, v_a_5969_, v_a_5971_);
lean_dec(v_a_5974_);
if (lean_obj_tag(v___x_5979_) == 0)
{
lean_object* v___x_5980_; 
lean_dec_ref(v___x_5979_);
v___x_5980_ = l_Lean_Elab_Term_Quotation_getPatternsVars(v_patterns_5965_, v_a_5966_, v_a_5967_, v_a_5968_, v_a_5969_, v_a_5970_, v_a_5971_);
lean_dec(v_a_5971_);
lean_dec(v_a_5969_);
lean_dec_ref(v_a_5968_);
lean_dec(v_a_5967_);
return v___x_5980_;
}
else
{
lean_object* v_a_5981_; lean_object* v___x_5982_; 
lean_dec(v_a_5971_);
lean_dec_ref(v_a_5970_);
lean_dec(v_a_5969_);
lean_dec_ref(v_a_5968_);
lean_dec(v_a_5967_);
lean_dec_ref(v_a_5966_);
v_a_5981_ = lean_ctor_get(v___x_5979_, 0);
lean_inc(v_a_5981_);
lean_dec_ref(v___x_5979_);
v___x_5982_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5982_, 0, v_a_5981_);
return v___x_5982_;
}
}
else
{
lean_dec(v_a_5974_);
lean_dec(v_a_5971_);
lean_dec_ref(v_a_5970_);
lean_dec(v_a_5969_);
lean_dec_ref(v_a_5968_);
lean_dec(v_a_5967_);
lean_dec_ref(v_a_5966_);
return v___x_5975_;
}
}
}
}
else
{
lean_object* v_a_5985_; lean_object* v___x_5986_; 
lean_dec(v_a_5971_);
lean_dec_ref(v_a_5970_);
lean_dec(v_a_5969_);
lean_dec_ref(v_a_5968_);
lean_dec(v_a_5967_);
lean_dec_ref(v_a_5966_);
v_a_5985_ = lean_ctor_get(v___x_5973_, 0);
lean_inc(v_a_5985_);
lean_dec_ref(v___x_5973_);
v___x_5986_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_5986_, 0, v_a_5985_);
return v___x_5986_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getPatternsVarsEx___boxed(lean_object* v_patterns_5987_, lean_object* v_a_5988_, lean_object* v_a_5989_, lean_object* v_a_5990_, lean_object* v_a_5991_, lean_object* v_a_5992_, lean_object* v_a_5993_, lean_object* v_a_5994_){
_start:
{
lean_object* v_res_5995_; 
v_res_5995_ = l_Lean_Elab_Term_Do_getPatternsVarsEx(v_patterns_5987_, v_a_5988_, v_a_5989_, v_a_5990_, v_a_5991_, v_a_5992_, v_a_5993_);
lean_dec_ref(v_patterns_5987_);
return v_res_5995_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetPatDeclVars(lean_object* v_letPatDecl_5996_, lean_object* v_a_5997_, lean_object* v_a_5998_, lean_object* v_a_5999_, lean_object* v_a_6000_, lean_object* v_a_6001_, lean_object* v_a_6002_){
_start:
{
lean_object* v___x_6004_; lean_object* v_pattern_6005_; lean_object* v___x_6006_; 
v___x_6004_ = lean_unsigned_to_nat(0u);
v_pattern_6005_ = l_Lean_Syntax_getArg(v_letPatDecl_5996_, v___x_6004_);
v___x_6006_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_pattern_6005_, v_a_5997_, v_a_5998_, v_a_5999_, v_a_6000_, v_a_6001_, v_a_6002_);
return v___x_6006_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetPatDeclVars___boxed(lean_object* v_letPatDecl_6007_, lean_object* v_a_6008_, lean_object* v_a_6009_, lean_object* v_a_6010_, lean_object* v_a_6011_, lean_object* v_a_6012_, lean_object* v_a_6013_, lean_object* v_a_6014_){
_start:
{
lean_object* v_res_6015_; 
v_res_6015_ = l_Lean_Elab_Term_Do_getLetPatDeclVars(v_letPatDecl_6007_, v_a_6008_, v_a_6009_, v_a_6010_, v_a_6011_, v_a_6012_, v_a_6013_);
lean_dec(v_letPatDecl_6007_);
return v_res_6015_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2(void){
_start:
{
lean_object* v___x_6018_; lean_object* v___x_6019_; lean_object* v___x_6020_; lean_object* v___x_6021_; lean_object* v___x_6022_; lean_object* v___x_6023_; 
v___x_6018_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__1));
v___x_6019_ = lean_unsigned_to_nat(2u);
v___x_6020_ = lean_unsigned_to_nat(686u);
v___x_6021_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__0));
v___x_6022_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_6023_ = l_mkPanicMessageWithDecl(v___x_6022_, v___x_6021_, v___x_6020_, v___x_6019_, v___x_6018_);
return v___x_6023_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetEqnsDeclVars(lean_object* v_letEqnsDecl_6024_){
_start:
{
lean_object* v___x_6025_; uint8_t v___x_6026_; 
v___x_6025_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3));
lean_inc(v_letEqnsDecl_6024_);
v___x_6026_ = l_Lean_Syntax_isOfKind(v_letEqnsDecl_6024_, v___x_6025_);
if (v___x_6026_ == 0)
{
lean_object* v___x_6027_; lean_object* v___x_6028_; 
lean_dec(v_letEqnsDecl_6024_);
v___x_6027_ = lean_obj_once(&l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2, &l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2_once, _init_l_Lean_Elab_Term_Do_getLetEqnsDeclVars___closed__2);
v___x_6028_ = l_panic___at___00Lean_Elab_Term_Do_getLetIdVars_spec__0(v___x_6027_);
return v___x_6028_;
}
else
{
lean_object* v___x_6029_; lean_object* v___x_6030_; lean_object* v___x_6031_; 
v___x_6029_ = lean_unsigned_to_nat(0u);
v___x_6030_ = l_Lean_Syntax_getArg(v_letEqnsDecl_6024_, v___x_6029_);
lean_dec(v_letEqnsDecl_6024_);
v___x_6031_ = l_Lean_Elab_Term_Do_getLetIdVars(v___x_6030_);
return v___x_6031_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getLetDeclVars___closed__1(void){
_start:
{
lean_object* v___x_6033_; lean_object* v___x_6034_; 
v___x_6033_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetDeclVars___closed__0));
v___x_6034_ = l_Lean_stringToMessageData(v___x_6033_);
return v___x_6034_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetDeclVars(lean_object* v_letDecl_6035_, lean_object* v_a_6036_, lean_object* v_a_6037_, lean_object* v_a_6038_, lean_object* v_a_6039_, lean_object* v_a_6040_, lean_object* v_a_6041_){
_start:
{
lean_object* v___x_6043_; lean_object* v_arg_6044_; lean_object* v___x_6045_; uint8_t v___y_6047_; lean_object* v___x_6059_; uint8_t v___x_6060_; 
v___x_6043_ = lean_unsigned_to_nat(0u);
v_arg_6044_ = l_Lean_Syntax_getArg(v_letDecl_6035_, v___x_6043_);
lean_inc(v_arg_6044_);
v___x_6045_ = l_Lean_Syntax_getKind(v_arg_6044_);
v___x_6059_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_6060_ = lean_name_eq(v___x_6045_, v___x_6059_);
if (v___x_6060_ == 0)
{
lean_object* v___x_6061_; uint8_t v___x_6062_; 
v___x_6061_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
v___x_6062_ = lean_name_eq(v___x_6045_, v___x_6061_);
v___y_6047_ = v___x_6062_;
goto v___jp_6046_;
}
else
{
v___y_6047_ = v___x_6060_;
goto v___jp_6046_;
}
v___jp_6046_:
{
if (v___y_6047_ == 0)
{
lean_object* v___x_6048_; uint8_t v___x_6049_; 
v___x_6048_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_6049_ = lean_name_eq(v___x_6045_, v___x_6048_);
if (v___x_6049_ == 0)
{
lean_object* v___x_6050_; uint8_t v___x_6051_; 
v___x_6050_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__3));
v___x_6051_ = lean_name_eq(v___x_6045_, v___x_6050_);
lean_dec(v___x_6045_);
if (v___x_6051_ == 0)
{
lean_object* v___x_6052_; lean_object* v___x_6053_; 
lean_dec(v_arg_6044_);
v___x_6052_ = lean_obj_once(&l_Lean_Elab_Term_Do_getLetDeclVars___closed__1, &l_Lean_Elab_Term_Do_getLetDeclVars___closed__1_once, _init_l_Lean_Elab_Term_Do_getLetDeclVars___closed__1);
v___x_6053_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v___x_6052_, v_a_6036_, v_a_6037_, v_a_6038_, v_a_6039_, v_a_6040_, v_a_6041_);
lean_dec(v_a_6041_);
lean_dec_ref(v_a_6040_);
lean_dec(v_a_6039_);
lean_dec_ref(v_a_6038_);
lean_dec(v_a_6037_);
return v___x_6053_;
}
else
{
lean_object* v___x_6054_; lean_object* v___x_6055_; 
lean_dec(v_a_6041_);
lean_dec_ref(v_a_6040_);
lean_dec(v_a_6039_);
lean_dec_ref(v_a_6038_);
lean_dec(v_a_6037_);
lean_dec_ref(v_a_6036_);
v___x_6054_ = l_Lean_Elab_Term_Do_getLetEqnsDeclVars(v_arg_6044_);
v___x_6055_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_6055_, 0, v___x_6054_);
return v___x_6055_;
}
}
else
{
lean_object* v___x_6056_; 
lean_dec(v___x_6045_);
v___x_6056_ = l_Lean_Elab_Term_Do_getLetPatDeclVars(v_arg_6044_, v_a_6036_, v_a_6037_, v_a_6038_, v_a_6039_, v_a_6040_, v_a_6041_);
lean_dec(v_arg_6044_);
return v___x_6056_;
}
}
else
{
lean_object* v___x_6057_; lean_object* v___x_6058_; 
lean_dec(v___x_6045_);
lean_dec(v_a_6041_);
lean_dec_ref(v_a_6040_);
lean_dec(v_a_6039_);
lean_dec_ref(v_a_6038_);
lean_dec(v_a_6037_);
lean_dec_ref(v_a_6036_);
v___x_6057_ = l_Lean_Elab_Term_Do_getLetIdDeclVars(v_arg_6044_);
v___x_6058_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_6058_, 0, v___x_6057_);
return v___x_6058_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getLetDeclVars___boxed(lean_object* v_letDecl_6063_, lean_object* v_a_6064_, lean_object* v_a_6065_, lean_object* v_a_6066_, lean_object* v_a_6067_, lean_object* v_a_6068_, lean_object* v_a_6069_, lean_object* v_a_6070_){
_start:
{
lean_object* v_res_6071_; 
v_res_6071_ = l_Lean_Elab_Term_Do_getLetDeclVars(v_letDecl_6063_, v_a_6064_, v_a_6065_, v_a_6066_, v_a_6067_, v_a_6068_, v_a_6069_);
lean_dec(v_letDecl_6063_);
return v_res_6071_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetVars(lean_object* v_doLet_6072_, lean_object* v_a_6073_, lean_object* v_a_6074_, lean_object* v_a_6075_, lean_object* v_a_6076_, lean_object* v_a_6077_, lean_object* v_a_6078_){
_start:
{
lean_object* v___x_6080_; lean_object* v___x_6081_; lean_object* v___x_6082_; 
v___x_6080_ = lean_unsigned_to_nat(2u);
v___x_6081_ = l_Lean_Syntax_getArg(v_doLet_6072_, v___x_6080_);
v___x_6082_ = l_Lean_Elab_Term_Do_getLetDeclVars(v___x_6081_, v_a_6073_, v_a_6074_, v_a_6075_, v_a_6076_, v_a_6077_, v_a_6078_);
lean_dec(v___x_6081_);
return v___x_6082_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetVars___boxed(lean_object* v_doLet_6083_, lean_object* v_a_6084_, lean_object* v_a_6085_, lean_object* v_a_6086_, lean_object* v_a_6087_, lean_object* v_a_6088_, lean_object* v_a_6089_, lean_object* v_a_6090_){
_start:
{
lean_object* v_res_6091_; 
v_res_6091_ = l_Lean_Elab_Term_Do_getDoLetVars(v_doLet_6083_, v_a_6084_, v_a_6085_, v_a_6086_, v_a_6087_, v_a_6088_, v_a_6089_);
lean_dec(v_doLet_6083_);
return v_res_6091_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoHaveVars(lean_object* v_doHave_6092_, lean_object* v_a_6093_, lean_object* v_a_6094_, lean_object* v_a_6095_, lean_object* v_a_6096_, lean_object* v_a_6097_, lean_object* v_a_6098_){
_start:
{
lean_object* v___x_6100_; lean_object* v___x_6101_; lean_object* v___x_6102_; 
v___x_6100_ = lean_unsigned_to_nat(1u);
v___x_6101_ = l_Lean_Syntax_getArg(v_doHave_6092_, v___x_6100_);
v___x_6102_ = l_Lean_Elab_Term_Do_getLetDeclVars(v___x_6101_, v_a_6093_, v_a_6094_, v_a_6095_, v_a_6096_, v_a_6097_, v_a_6098_);
lean_dec(v___x_6101_);
return v___x_6102_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoHaveVars___boxed(lean_object* v_doHave_6103_, lean_object* v_a_6104_, lean_object* v_a_6105_, lean_object* v_a_6106_, lean_object* v_a_6107_, lean_object* v_a_6108_, lean_object* v_a_6109_, lean_object* v_a_6110_){
_start:
{
lean_object* v_res_6111_; 
v_res_6111_ = l_Lean_Elab_Term_Do_getDoHaveVars(v_doHave_6103_, v_a_6104_, v_a_6105_, v_a_6106_, v_a_6107_, v_a_6108_, v_a_6109_);
lean_dec(v_doHave_6103_);
return v_res_6111_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0(size_t v_sz_6112_, size_t v_i_6113_, lean_object* v_bs_6114_){
_start:
{
uint8_t v___x_6115_; 
v___x_6115_ = lean_usize_dec_lt(v_i_6113_, v_sz_6112_);
if (v___x_6115_ == 0)
{
return v_bs_6114_;
}
else
{
lean_object* v_v_6116_; lean_object* v___x_6117_; lean_object* v_bs_x27_6118_; lean_object* v___x_6119_; lean_object* v___x_6120_; size_t v___x_6121_; size_t v___x_6122_; lean_object* v___x_6123_; 
v_v_6116_ = lean_array_uget(v_bs_6114_, v_i_6113_);
v___x_6117_ = lean_unsigned_to_nat(0u);
v_bs_x27_6118_ = lean_array_uset(v_bs_6114_, v_i_6113_, v___x_6117_);
v___x_6119_ = lean_unsigned_to_nat(2u);
v___x_6120_ = l_Lean_Syntax_getArg(v_v_6116_, v___x_6119_);
lean_dec(v_v_6116_);
v___x_6121_ = ((size_t)1ULL);
v___x_6122_ = lean_usize_add(v_i_6113_, v___x_6121_);
v___x_6123_ = lean_array_uset(v_bs_x27_6118_, v_i_6113_, v___x_6120_);
v_i_6113_ = v___x_6122_;
v_bs_6114_ = v___x_6123_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0___boxed(lean_object* v_sz_6125_, lean_object* v_i_6126_, lean_object* v_bs_6127_){
_start:
{
size_t v_sz_boxed_6128_; size_t v_i_boxed_6129_; lean_object* v_res_6130_; 
v_sz_boxed_6128_ = lean_unbox_usize(v_sz_6125_);
lean_dec(v_sz_6125_);
v_i_boxed_6129_ = lean_unbox_usize(v_i_6126_);
lean_dec(v_i_6126_);
v_res_6130_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0(v_sz_boxed_6128_, v_i_boxed_6129_, v_bs_6127_);
return v_res_6130_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1(lean_object* v_as_6131_, size_t v_sz_6132_, size_t v_i_6133_, lean_object* v_b_6134_, lean_object* v___y_6135_, lean_object* v___y_6136_, lean_object* v___y_6137_, lean_object* v___y_6138_, lean_object* v___y_6139_, lean_object* v___y_6140_){
_start:
{
uint8_t v___x_6142_; 
v___x_6142_ = lean_usize_dec_lt(v_i_6133_, v_sz_6132_);
if (v___x_6142_ == 0)
{
lean_object* v___x_6143_; 
lean_dec(v___y_6140_);
lean_dec_ref(v___y_6139_);
lean_dec(v___y_6138_);
lean_dec_ref(v___y_6137_);
lean_dec(v___y_6136_);
lean_dec_ref(v___y_6135_);
v___x_6143_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_6143_, 0, v_b_6134_);
return v___x_6143_;
}
else
{
lean_object* v_a_6144_; lean_object* v___x_6145_; 
v_a_6144_ = lean_array_uget_borrowed(v_as_6131_, v_i_6133_);
lean_inc(v___y_6140_);
lean_inc_ref(v___y_6139_);
lean_inc(v___y_6138_);
lean_inc_ref(v___y_6137_);
lean_inc(v___y_6136_);
lean_inc_ref(v___y_6135_);
v___x_6145_ = l_Lean_Elab_Term_Do_getLetDeclVars(v_a_6144_, v___y_6135_, v___y_6136_, v___y_6137_, v___y_6138_, v___y_6139_, v___y_6140_);
if (lean_obj_tag(v___x_6145_) == 0)
{
lean_object* v_a_6146_; lean_object* v___x_6147_; size_t v___x_6148_; size_t v___x_6149_; 
v_a_6146_ = lean_ctor_get(v___x_6145_, 0);
lean_inc(v_a_6146_);
lean_dec_ref(v___x_6145_);
v___x_6147_ = l_Array_append___redArg(v_b_6134_, v_a_6146_);
lean_dec(v_a_6146_);
v___x_6148_ = ((size_t)1ULL);
v___x_6149_ = lean_usize_add(v_i_6133_, v___x_6148_);
v_i_6133_ = v___x_6149_;
v_b_6134_ = v___x_6147_;
goto _start;
}
else
{
lean_dec(v___y_6140_);
lean_dec_ref(v___y_6139_);
lean_dec(v___y_6138_);
lean_dec_ref(v___y_6137_);
lean_dec(v___y_6136_);
lean_dec_ref(v___y_6135_);
lean_dec_ref(v_b_6134_);
return v___x_6145_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1___boxed(lean_object* v_as_6151_, lean_object* v_sz_6152_, lean_object* v_i_6153_, lean_object* v_b_6154_, lean_object* v___y_6155_, lean_object* v___y_6156_, lean_object* v___y_6157_, lean_object* v___y_6158_, lean_object* v___y_6159_, lean_object* v___y_6160_, lean_object* v___y_6161_){
_start:
{
size_t v_sz_boxed_6162_; size_t v_i_boxed_6163_; lean_object* v_res_6164_; 
v_sz_boxed_6162_ = lean_unbox_usize(v_sz_6152_);
lean_dec(v_sz_6152_);
v_i_boxed_6163_ = lean_unbox_usize(v_i_6153_);
lean_dec(v_i_6153_);
v_res_6164_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1(v_as_6151_, v_sz_boxed_6162_, v_i_boxed_6163_, v_b_6154_, v___y_6155_, v___y_6156_, v___y_6157_, v___y_6158_, v___y_6159_, v___y_6160_);
lean_dec_ref(v_as_6151_);
return v_res_6164_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetRecVars(lean_object* v_doLetRec_6165_, lean_object* v_a_6166_, lean_object* v_a_6167_, lean_object* v_a_6168_, lean_object* v_a_6169_, lean_object* v_a_6170_, lean_object* v_a_6171_){
_start:
{
lean_object* v___x_6173_; lean_object* v___x_6174_; lean_object* v___x_6175_; lean_object* v___x_6176_; lean_object* v_letRecDecls_6177_; size_t v_sz_6178_; size_t v___x_6179_; lean_object* v_letDecls_6180_; lean_object* v_allVars_6181_; size_t v_sz_6182_; lean_object* v___x_6183_; 
v___x_6173_ = lean_unsigned_to_nat(1u);
v___x_6174_ = l_Lean_Syntax_getArg(v_doLetRec_6165_, v___x_6173_);
v___x_6175_ = lean_unsigned_to_nat(0u);
v___x_6176_ = l_Lean_Syntax_getArg(v___x_6174_, v___x_6175_);
lean_dec(v___x_6174_);
v_letRecDecls_6177_ = l_Lean_Syntax_getSepArgs(v___x_6176_);
lean_dec(v___x_6176_);
v_sz_6178_ = lean_array_size(v_letRecDecls_6177_);
v___x_6179_ = ((size_t)0ULL);
v_letDecls_6180_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__0(v_sz_6178_, v___x_6179_, v_letRecDecls_6177_);
v_allVars_6181_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v_sz_6182_ = lean_array_size(v_letDecls_6180_);
v___x_6183_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_getDoLetRecVars_spec__1(v_letDecls_6180_, v_sz_6182_, v___x_6179_, v_allVars_6181_, v_a_6166_, v_a_6167_, v_a_6168_, v_a_6169_, v_a_6170_, v_a_6171_);
lean_dec_ref(v_letDecls_6180_);
return v___x_6183_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetRecVars___boxed(lean_object* v_doLetRec_6184_, lean_object* v_a_6185_, lean_object* v_a_6186_, lean_object* v_a_6187_, lean_object* v_a_6188_, lean_object* v_a_6189_, lean_object* v_a_6190_, lean_object* v_a_6191_){
_start:
{
lean_object* v_res_6192_; 
v_res_6192_ = l_Lean_Elab_Term_Do_getDoLetRecVars(v_doLetRec_6184_, v_a_6185_, v_a_6186_, v_a_6187_, v_a_6188_, v_a_6189_, v_a_6190_);
lean_dec(v_doLetRec_6184_);
return v_res_6192_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoIdDeclVar(lean_object* v_doIdDecl_6193_){
_start:
{
lean_object* v___x_6194_; lean_object* v___x_6195_; 
v___x_6194_ = lean_unsigned_to_nat(0u);
v___x_6195_ = l_Lean_Syntax_getArg(v_doIdDecl_6193_, v___x_6194_);
return v___x_6195_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoIdDeclVar___boxed(lean_object* v_doIdDecl_6196_){
_start:
{
lean_object* v_res_6197_; 
v_res_6197_ = l_Lean_Elab_Term_Do_getDoIdDeclVar(v_doIdDecl_6196_);
lean_dec(v_doIdDecl_6196_);
return v_res_6197_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoPatDeclVars(lean_object* v_doPatDecl_6198_, lean_object* v_a_6199_, lean_object* v_a_6200_, lean_object* v_a_6201_, lean_object* v_a_6202_, lean_object* v_a_6203_, lean_object* v_a_6204_){
_start:
{
lean_object* v___x_6206_; lean_object* v_pattern_6207_; lean_object* v___x_6208_; 
v___x_6206_ = lean_unsigned_to_nat(0u);
v_pattern_6207_ = l_Lean_Syntax_getArg(v_doPatDecl_6198_, v___x_6206_);
v___x_6208_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_pattern_6207_, v_a_6199_, v_a_6200_, v_a_6201_, v_a_6202_, v_a_6203_, v_a_6204_);
return v___x_6208_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoPatDeclVars___boxed(lean_object* v_doPatDecl_6209_, lean_object* v_a_6210_, lean_object* v_a_6211_, lean_object* v_a_6212_, lean_object* v_a_6213_, lean_object* v_a_6214_, lean_object* v_a_6215_, lean_object* v_a_6216_){
_start:
{
lean_object* v_res_6217_; 
v_res_6217_ = l_Lean_Elab_Term_Do_getDoPatDeclVars(v_doPatDecl_6209_, v_a_6210_, v_a_6211_, v_a_6212_, v_a_6213_, v_a_6214_, v_a_6215_);
lean_dec(v_doPatDecl_6209_);
return v_res_6217_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3(void){
_start:
{
lean_object* v___x_6225_; lean_object* v___x_6226_; 
v___x_6225_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2));
v___x_6226_ = l_Lean_stringToMessageData(v___x_6225_);
return v___x_6226_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars(lean_object* v_doLetArrow_6227_, lean_object* v_a_6228_, lean_object* v_a_6229_, lean_object* v_a_6230_, lean_object* v_a_6231_, lean_object* v_a_6232_, lean_object* v_a_6233_){
_start:
{
lean_object* v___x_6235_; lean_object* v_decl_6236_; lean_object* v___x_6237_; lean_object* v___x_6238_; uint8_t v___x_6239_; 
v___x_6235_ = lean_unsigned_to_nat(2u);
v_decl_6236_ = l_Lean_Syntax_getArg(v_doLetArrow_6227_, v___x_6235_);
lean_inc(v_decl_6236_);
v___x_6237_ = l_Lean_Syntax_getKind(v_decl_6236_);
v___x_6238_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_6239_ = lean_name_eq(v___x_6237_, v___x_6238_);
if (v___x_6239_ == 0)
{
lean_object* v___x_6240_; uint8_t v___x_6241_; 
v___x_6240_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1));
v___x_6241_ = lean_name_eq(v___x_6237_, v___x_6240_);
lean_dec(v___x_6237_);
if (v___x_6241_ == 0)
{
lean_object* v___x_6242_; lean_object* v___x_6243_; 
lean_dec(v_decl_6236_);
v___x_6242_ = lean_obj_once(&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3, &l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3_once, _init_l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3);
v___x_6243_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v___x_6242_, v_a_6228_, v_a_6229_, v_a_6230_, v_a_6231_, v_a_6232_, v_a_6233_);
lean_dec(v_a_6233_);
lean_dec_ref(v_a_6232_);
lean_dec(v_a_6231_);
lean_dec_ref(v_a_6230_);
lean_dec(v_a_6229_);
return v___x_6243_;
}
else
{
lean_object* v___x_6244_; 
v___x_6244_ = l_Lean_Elab_Term_Do_getDoPatDeclVars(v_decl_6236_, v_a_6228_, v_a_6229_, v_a_6230_, v_a_6231_, v_a_6232_, v_a_6233_);
lean_dec(v_decl_6236_);
return v___x_6244_;
}
}
else
{
lean_object* v___x_6245_; lean_object* v___x_6246_; lean_object* v___x_6247_; lean_object* v___x_6248_; lean_object* v___x_6249_; 
lean_dec(v___x_6237_);
lean_dec(v_a_6233_);
lean_dec_ref(v_a_6232_);
lean_dec(v_a_6231_);
lean_dec_ref(v_a_6230_);
lean_dec(v_a_6229_);
lean_dec_ref(v_a_6228_);
v___x_6245_ = l_Lean_Elab_Term_Do_getDoIdDeclVar(v_decl_6236_);
lean_dec(v_decl_6236_);
v___x_6246_ = lean_unsigned_to_nat(1u);
v___x_6247_ = lean_mk_empty_array_with_capacity(v___x_6246_);
v___x_6248_ = lean_array_push(v___x_6247_, v___x_6245_);
v___x_6249_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_6249_, 0, v___x_6248_);
return v___x_6249_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoLetArrowVars___boxed(lean_object* v_doLetArrow_6250_, lean_object* v_a_6251_, lean_object* v_a_6252_, lean_object* v_a_6253_, lean_object* v_a_6254_, lean_object* v_a_6255_, lean_object* v_a_6256_, lean_object* v_a_6257_){
_start:
{
lean_object* v_res_6258_; 
v_res_6258_ = l_Lean_Elab_Term_Do_getDoLetArrowVars(v_doLetArrow_6250_, v_a_6251_, v_a_6252_, v_a_6253_, v_a_6254_, v_a_6255_, v_a_6256_);
lean_dec(v_doLetArrow_6250_);
return v_res_6258_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_getDoReassignVars___closed__1(void){
_start:
{
lean_object* v___x_6260_; lean_object* v___x_6261_; 
v___x_6260_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoReassignVars___closed__0));
v___x_6261_ = l_Lean_stringToMessageData(v___x_6260_);
return v___x_6261_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoReassignVars(lean_object* v_doReassign_6262_, lean_object* v_a_6263_, lean_object* v_a_6264_, lean_object* v_a_6265_, lean_object* v_a_6266_, lean_object* v_a_6267_, lean_object* v_a_6268_){
_start:
{
lean_object* v___x_6270_; lean_object* v_arg_6271_; lean_object* v___x_6272_; uint8_t v___y_6274_; lean_object* v___x_6282_; uint8_t v___x_6283_; 
v___x_6270_ = lean_unsigned_to_nat(0u);
v_arg_6271_ = l_Lean_Syntax_getArg(v_doReassign_6262_, v___x_6270_);
lean_inc(v_arg_6271_);
v___x_6272_ = l_Lean_Syntax_getKind(v_arg_6271_);
v___x_6282_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_6283_ = lean_name_eq(v___x_6272_, v___x_6282_);
if (v___x_6283_ == 0)
{
lean_object* v___x_6284_; uint8_t v___x_6285_; 
v___x_6284_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
v___x_6285_ = lean_name_eq(v___x_6272_, v___x_6284_);
v___y_6274_ = v___x_6285_;
goto v___jp_6273_;
}
else
{
v___y_6274_ = v___x_6283_;
goto v___jp_6273_;
}
v___jp_6273_:
{
if (v___y_6274_ == 0)
{
lean_object* v___x_6275_; uint8_t v___x_6276_; 
v___x_6275_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_6276_ = lean_name_eq(v___x_6272_, v___x_6275_);
lean_dec(v___x_6272_);
if (v___x_6276_ == 0)
{
lean_object* v___x_6277_; lean_object* v___x_6278_; 
lean_dec(v_arg_6271_);
v___x_6277_ = lean_obj_once(&l_Lean_Elab_Term_Do_getDoReassignVars___closed__1, &l_Lean_Elab_Term_Do_getDoReassignVars___closed__1_once, _init_l_Lean_Elab_Term_Do_getDoReassignVars___closed__1);
v___x_6278_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0___redArg(v___x_6277_, v_a_6263_, v_a_6264_, v_a_6265_, v_a_6266_, v_a_6267_, v_a_6268_);
lean_dec(v_a_6268_);
lean_dec_ref(v_a_6267_);
lean_dec(v_a_6266_);
lean_dec_ref(v_a_6265_);
lean_dec(v_a_6264_);
return v___x_6278_;
}
else
{
lean_object* v___x_6279_; 
v___x_6279_ = l_Lean_Elab_Term_Do_getLetPatDeclVars(v_arg_6271_, v_a_6263_, v_a_6264_, v_a_6265_, v_a_6266_, v_a_6267_, v_a_6268_);
lean_dec(v_arg_6271_);
return v___x_6279_;
}
}
else
{
lean_object* v___x_6280_; lean_object* v___x_6281_; 
lean_dec(v___x_6272_);
lean_dec(v_a_6268_);
lean_dec_ref(v_a_6267_);
lean_dec(v_a_6266_);
lean_dec_ref(v_a_6265_);
lean_dec(v_a_6264_);
lean_dec_ref(v_a_6263_);
v___x_6280_ = l_Lean_Elab_Term_Do_getLetIdDeclVars(v_arg_6271_);
v___x_6281_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_6281_, 0, v___x_6280_);
return v___x_6281_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_getDoReassignVars___boxed(lean_object* v_doReassign_6286_, lean_object* v_a_6287_, lean_object* v_a_6288_, lean_object* v_a_6289_, lean_object* v_a_6290_, lean_object* v_a_6291_, lean_object* v_a_6292_, lean_object* v_a_6293_){
_start:
{
lean_object* v_res_6294_; 
v_res_6294_ = l_Lean_Elab_Term_Do_getDoReassignVars(v_doReassign_6286_, v_a_6287_, v_a_6288_, v_a_6289_, v_a_6290_, v_a_6291_, v_a_6292_);
lean_dec(v_doReassign_6286_);
return v_res_6294_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0(size_t v_sz_6295_, size_t v_i_6296_, lean_object* v_bs_6297_){
_start:
{
uint8_t v___x_6298_; 
v___x_6298_ = lean_usize_dec_lt(v_i_6296_, v_sz_6295_);
if (v___x_6298_ == 0)
{
return v_bs_6297_;
}
else
{
lean_object* v_v_6299_; lean_object* v___x_6300_; lean_object* v_bs_x27_6301_; lean_object* v___x_6302_; lean_object* v___x_6303_; lean_object* v___x_6304_; lean_object* v___x_6305_; lean_object* v___x_6306_; lean_object* v___x_6307_; lean_object* v___x_6308_; lean_object* v___x_6309_; size_t v___x_6310_; size_t v___x_6311_; lean_object* v___x_6312_; 
v_v_6299_ = lean_array_uget(v_bs_6297_, v_i_6296_);
v___x_6300_ = lean_unsigned_to_nat(0u);
v_bs_x27_6301_ = lean_array_uset(v_bs_6297_, v_i_6296_, v___x_6300_);
v___x_6302_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6303_ = lean_box(2);
v___x_6304_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkUnless___closed__0));
v___x_6305_ = lean_unsigned_to_nat(2u);
v___x_6306_ = lean_mk_empty_array_with_capacity(v___x_6305_);
v___x_6307_ = lean_array_push(v___x_6306_, v_v_6299_);
v___x_6308_ = lean_array_push(v___x_6307_, v___x_6304_);
v___x_6309_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6309_, 0, v___x_6303_);
lean_ctor_set(v___x_6309_, 1, v___x_6302_);
lean_ctor_set(v___x_6309_, 2, v___x_6308_);
v___x_6310_ = ((size_t)1ULL);
v___x_6311_ = lean_usize_add(v_i_6296_, v___x_6310_);
v___x_6312_ = lean_array_uset(v_bs_x27_6301_, v_i_6296_, v___x_6309_);
v_i_6296_ = v___x_6311_;
v_bs_6297_ = v___x_6312_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0___boxed(lean_object* v_sz_6314_, lean_object* v_i_6315_, lean_object* v_bs_6316_){
_start:
{
size_t v_sz_boxed_6317_; size_t v_i_boxed_6318_; lean_object* v_res_6319_; 
v_sz_boxed_6317_ = lean_unbox_usize(v_sz_6314_);
lean_dec(v_sz_6314_);
v_i_boxed_6318_ = lean_unbox_usize(v_i_6315_);
lean_dec(v_i_6315_);
v_res_6319_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0(v_sz_boxed_6317_, v_i_boxed_6318_, v_bs_6316_);
return v_res_6319_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_mkDoSeq(lean_object* v_doElems_6320_){
_start:
{
lean_object* v___x_6321_; size_t v_sz_6322_; size_t v___x_6323_; lean_object* v___x_6324_; lean_object* v___x_6325_; lean_object* v___x_6326_; lean_object* v___x_6327_; lean_object* v___x_6328_; lean_object* v___x_6329_; lean_object* v___x_6330_; lean_object* v___x_6331_; 
v___x_6321_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v_sz_6322_ = lean_array_size(v_doElems_6320_);
v___x_6323_ = ((size_t)0ULL);
v___x_6324_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_mkDoSeq_spec__0(v_sz_6322_, v___x_6323_, v_doElems_6320_);
v___x_6325_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6326_ = lean_box(2);
v___x_6327_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6327_, 0, v___x_6326_);
lean_ctor_set(v___x_6327_, 1, v___x_6325_);
lean_ctor_set(v___x_6327_, 2, v___x_6324_);
v___x_6328_ = lean_unsigned_to_nat(1u);
v___x_6329_ = lean_mk_empty_array_with_capacity(v___x_6328_);
v___x_6330_ = lean_array_push(v___x_6329_, v___x_6327_);
v___x_6331_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6331_, 0, v___x_6326_);
lean_ctor_set(v___x_6331_, 1, v___x_6321_);
lean_ctor_set(v___x_6331_, 2, v___x_6330_);
return v___x_6331_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(size_t v_sz_6332_, size_t v_i_6333_, lean_object* v_bs_6334_){
_start:
{
uint8_t v___x_6335_; 
v___x_6335_ = lean_usize_dec_lt(v_i_6333_, v_sz_6332_);
if (v___x_6335_ == 0)
{
return v_bs_6334_;
}
else
{
lean_object* v_v_6336_; lean_object* v_snd_6337_; lean_object* v___x_6338_; lean_object* v_bs_x27_6339_; size_t v___x_6340_; size_t v___x_6341_; lean_object* v___x_6342_; 
v_v_6336_ = lean_array_uget_borrowed(v_bs_6334_, v_i_6333_);
v_snd_6337_ = lean_ctor_get(v_v_6336_, 1);
lean_inc(v_snd_6337_);
v___x_6338_ = lean_unsigned_to_nat(0u);
v_bs_x27_6339_ = lean_array_uset(v_bs_6334_, v_i_6333_, v___x_6338_);
v___x_6340_ = ((size_t)1ULL);
v___x_6341_ = lean_usize_add(v_i_6333_, v___x_6340_);
v___x_6342_ = lean_array_uset(v_bs_x27_6339_, v_i_6333_, v_snd_6337_);
v_i_6333_ = v___x_6341_;
v_bs_6334_ = v___x_6342_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1___boxed(lean_object* v_sz_6344_, lean_object* v_i_6345_, lean_object* v_bs_6346_){
_start:
{
size_t v_sz_boxed_6347_; size_t v_i_boxed_6348_; lean_object* v_res_6349_; 
v_sz_boxed_6347_ = lean_unbox_usize(v_sz_6344_);
lean_dec(v_sz_6344_);
v_i_boxed_6348_ = lean_unbox_usize(v_i_6345_);
lean_dec(v_i_6345_);
v_res_6349_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(v_sz_boxed_6347_, v_i_boxed_6348_, v_bs_6346_);
return v_res_6349_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(size_t v_sz_6353_, size_t v_i_6354_, lean_object* v_bs_6355_){
_start:
{
uint8_t v___x_6356_; 
v___x_6356_ = lean_usize_dec_lt(v_i_6354_, v_sz_6353_);
if (v___x_6356_ == 0)
{
lean_object* v___x_6357_; 
v___x_6357_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_6357_, 0, v_bs_6355_);
return v___x_6357_;
}
else
{
lean_object* v_v_6358_; lean_object* v___x_6359_; uint8_t v___x_6360_; 
v_v_6358_ = lean_array_uget(v_bs_6355_, v_i_6354_);
v___x_6359_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___closed__1));
lean_inc(v_v_6358_);
v___x_6360_ = l_Lean_Syntax_isOfKind(v_v_6358_, v___x_6359_);
if (v___x_6360_ == 0)
{
lean_object* v___x_6361_; 
lean_dec(v_v_6358_);
lean_dec_ref(v_bs_6355_);
v___x_6361_ = lean_box(0);
return v___x_6361_;
}
else
{
lean_object* v___x_6362_; lean_object* v___x_6363_; uint8_t v___x_6364_; 
v___x_6362_ = lean_unsigned_to_nat(0u);
v___x_6363_ = l_Lean_Syntax_getArg(v_v_6358_, v___x_6362_);
v___x_6364_ = l_Lean_Syntax_isOfKind(v___x_6363_, v___x_6359_);
if (v___x_6364_ == 0)
{
lean_object* v___x_6365_; 
lean_dec(v_v_6358_);
lean_dec_ref(v_bs_6355_);
v___x_6365_ = lean_box(0);
return v___x_6365_;
}
else
{
lean_object* v___x_6366_; lean_object* v___x_6367_; lean_object* v_bs_x27_6368_; lean_object* v_conds_6369_; lean_object* v_ts_6370_; lean_object* v___x_6371_; size_t v___x_6372_; size_t v___x_6373_; lean_object* v___x_6374_; 
v___x_6366_ = lean_unsigned_to_nat(1u);
v___x_6367_ = lean_unsigned_to_nat(3u);
v_bs_x27_6368_ = lean_array_uset(v_bs_6355_, v_i_6354_, v___x_6362_);
v_conds_6369_ = l_Lean_Syntax_getArg(v_v_6358_, v___x_6366_);
v_ts_6370_ = l_Lean_Syntax_getArg(v_v_6358_, v___x_6367_);
lean_dec(v_v_6358_);
v___x_6371_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6371_, 0, v_conds_6369_);
lean_ctor_set(v___x_6371_, 1, v_ts_6370_);
v___x_6372_ = ((size_t)1ULL);
v___x_6373_ = lean_usize_add(v_i_6354_, v___x_6372_);
v___x_6374_ = lean_array_uset(v_bs_x27_6368_, v_i_6354_, v___x_6371_);
v_i_6354_ = v___x_6373_;
v_bs_6355_ = v___x_6374_;
goto _start;
}
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0___boxed(lean_object* v_sz_6376_, lean_object* v_i_6377_, lean_object* v_bs_6378_){
_start:
{
size_t v_sz_boxed_6379_; size_t v_i_boxed_6380_; lean_object* v_res_6381_; 
v_sz_boxed_6379_ = lean_unbox_usize(v_sz_6376_);
lean_dec(v_sz_6376_);
v_i_boxed_6380_ = lean_unbox_usize(v_i_6377_);
lean_dec(v_i_6377_);
v_res_6381_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(v_sz_boxed_6379_, v_i_boxed_6380_, v_bs_6378_);
return v_res_6381_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(uint8_t v___x_6382_, lean_object* v_____do__lift_6383_, lean_object* v___y_6384_, lean_object* v___y_6385_){
_start:
{
lean_object* v___x_6386_; lean_object* v___x_6387_; 
v___x_6386_ = l_Lean_SourceInfo_fromRef(v_____do__lift_6383_, v___x_6382_);
v___x_6387_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6387_, 0, v___x_6386_);
lean_ctor_set(v___x_6387_, 1, v___y_6385_);
return v___x_6387_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0___boxed(lean_object* v___x_6388_, lean_object* v_____do__lift_6389_, lean_object* v___y_6390_, lean_object* v___y_6391_){
_start:
{
uint8_t v___x_61802__boxed_6392_; lean_object* v_res_6393_; 
v___x_61802__boxed_6392_ = lean_unbox(v___x_6388_);
v_res_6393_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_61802__boxed_6392_, v_____do__lift_6389_, v___y_6390_, v___y_6391_);
lean_dec_ref(v___y_6390_);
lean_dec(v_____do__lift_6389_);
return v_res_6393_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3(uint8_t v___x_6456_, lean_object* v_as_6457_, size_t v_sz_6458_, size_t v_i_6459_, lean_object* v_b_6460_, lean_object* v___y_6461_, lean_object* v___y_6462_){
_start:
{
lean_object* v_e_6464_; lean_object* v___y_6465_; uint8_t v___x_6471_; 
v___x_6471_ = lean_usize_dec_lt(v_i_6459_, v_sz_6458_);
if (v___x_6471_ == 0)
{
lean_object* v___x_6472_; 
v___x_6472_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6472_, 0, v_b_6460_);
lean_ctor_set(v___x_6472_, 1, v___y_6462_);
return v___x_6472_;
}
else
{
lean_object* v_a_6473_; lean_object* v_fst_6474_; lean_object* v_snd_6475_; lean_object* v_fst_6476_; lean_object* v_snd_6477_; lean_object* v___x_6478_; lean_object* v___x_6479_; lean_object* v___x_6480_; lean_object* v_e_6482_; lean_object* v___y_6483_; lean_object* v___y_6484_; uint8_t v___x_6629_; 
v_a_6473_ = lean_array_uget_borrowed(v_as_6457_, v_i_6459_);
v_fst_6474_ = lean_ctor_get(v_a_6473_, 0);
v_snd_6475_ = lean_ctor_get(v_a_6473_, 1);
v_fst_6476_ = lean_ctor_get(v_b_6460_, 0);
lean_inc(v_fst_6476_);
v_snd_6477_ = lean_ctor_get(v_b_6460_, 1);
lean_inc(v_snd_6477_);
lean_dec_ref(v_b_6460_);
v___x_6478_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1));
v___x_6479_ = lean_unsigned_to_nat(1u);
v___x_6480_ = lean_unsigned_to_nat(2u);
v___x_6629_ = lean_unbox(v_snd_6477_);
lean_dec(v_snd_6477_);
if (v___x_6629_ == 0)
{
lean_object* v_ref_6630_; lean_object* v___x_6631_; 
v_ref_6630_ = lean_ctor_get(v___y_6461_, 5);
v___x_6631_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_6456_, v_ref_6630_, v___y_6461_, v___y_6462_);
if (lean_obj_tag(v___x_6631_) == 0)
{
lean_object* v_a_6632_; lean_object* v_a_6633_; lean_object* v___x_6634_; lean_object* v___x_6635_; lean_object* v___x_6636_; lean_object* v___x_6637_; lean_object* v___x_6638_; lean_object* v___x_6639_; lean_object* v___x_6640_; lean_object* v___x_6641_; 
v_a_6632_ = lean_ctor_get(v___x_6631_, 0);
lean_inc(v_a_6632_);
v_a_6633_ = lean_ctor_get(v___x_6631_, 1);
lean_inc(v_a_6633_);
lean_dec_ref(v___x_6631_);
v___x_6634_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_6635_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6636_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_6637_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6632_);
v___x_6638_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6638_, 0, v_a_6632_);
lean_ctor_set(v___x_6638_, 1, v___x_6635_);
lean_ctor_set(v___x_6638_, 2, v___x_6637_);
lean_inc(v_a_6632_);
v___x_6639_ = l_Lean_Syntax_node2(v_a_6632_, v___x_6636_, v_fst_6476_, v___x_6638_);
lean_inc(v_a_6632_);
v___x_6640_ = l_Lean_Syntax_node1(v_a_6632_, v___x_6635_, v___x_6639_);
v___x_6641_ = l_Lean_Syntax_node1(v_a_6632_, v___x_6634_, v___x_6640_);
v_e_6482_ = v___x_6641_;
v___y_6483_ = v___y_6461_;
v___y_6484_ = v_a_6633_;
goto v___jp_6481_;
}
else
{
lean_object* v_a_6642_; lean_object* v_a_6643_; lean_object* v___x_6644_; 
lean_dec(v_fst_6476_);
v_a_6642_ = lean_ctor_get(v___x_6631_, 0);
lean_inc(v_a_6642_);
v_a_6643_ = lean_ctor_get(v___x_6631_, 1);
lean_inc(v_a_6643_);
lean_dec_ref(v___x_6631_);
v___x_6644_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6644_, 0, v_a_6642_);
lean_ctor_set(v___x_6644_, 1, v_a_6643_);
return v___x_6644_;
}
}
else
{
v_e_6482_ = v_fst_6476_;
v___y_6483_ = v___y_6461_;
v___y_6484_ = v___y_6462_;
goto v___jp_6481_;
}
v___jp_6481_:
{
lean_object* v___x_6485_; uint8_t v___x_6486_; 
v___x_6485_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3));
lean_inc(v_fst_6474_);
v___x_6486_ = l_Lean_Syntax_isOfKind(v_fst_6474_, v___x_6485_);
if (v___x_6486_ == 0)
{
lean_object* v___x_6487_; uint8_t v___x_6488_; 
v___x_6487_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5));
lean_inc(v_fst_6474_);
v___x_6488_ = l_Lean_Syntax_isOfKind(v_fst_6474_, v___x_6487_);
if (v___x_6488_ == 0)
{
lean_object* v_ref_6489_; lean_object* v___x_6490_; 
v_ref_6489_ = lean_ctor_get(v___y_6483_, 5);
v___x_6490_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_6456_, v_ref_6489_, v___y_6483_, v___y_6484_);
if (lean_obj_tag(v___x_6490_) == 0)
{
lean_object* v_a_6491_; lean_object* v_a_6492_; lean_object* v___x_6493_; lean_object* v___x_6494_; lean_object* v___x_6495_; lean_object* v___x_6496_; lean_object* v___x_6497_; lean_object* v___x_6498_; lean_object* v___x_6499_; lean_object* v___x_6500_; lean_object* v___x_6501_; lean_object* v___x_6502_; lean_object* v___x_6503_; lean_object* v___x_6504_; lean_object* v___x_6505_; 
v_a_6491_ = lean_ctor_get(v___x_6490_, 0);
lean_inc(v_a_6491_);
v_a_6492_ = lean_ctor_get(v___x_6490_, 1);
lean_inc(v_a_6492_);
lean_dec_ref(v___x_6490_);
v___x_6493_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v_a_6491_);
v___x_6494_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6494_, 0, v_a_6491_);
lean_ctor_set(v___x_6494_, 1, v___x_6493_);
v___x_6495_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6496_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6491_);
v___x_6497_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6497_, 0, v_a_6491_);
lean_ctor_set(v___x_6497_, 1, v___x_6495_);
lean_ctor_set(v___x_6497_, 2, v___x_6496_);
v___x_6498_ = lean_box(0);
lean_inc_ref(v___x_6497_);
lean_inc(v_a_6491_);
v___x_6499_ = l_Lean_Syntax_node2(v_a_6491_, v___x_6487_, v___x_6497_, v___x_6498_);
v___x_6500_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v_a_6491_);
v___x_6501_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6501_, 0, v_a_6491_);
lean_ctor_set(v___x_6501_, 1, v___x_6500_);
v___x_6502_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v_a_6491_);
v___x_6503_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6503_, 0, v_a_6491_);
lean_ctor_set(v___x_6503_, 1, v___x_6502_);
lean_inc(v_a_6491_);
v___x_6504_ = l_Lean_Syntax_node2(v_a_6491_, v___x_6495_, v___x_6503_, v_e_6482_);
lean_inc(v_snd_6475_);
v___x_6505_ = l_Lean_Syntax_node6(v_a_6491_, v___x_6478_, v___x_6494_, v___x_6499_, v___x_6501_, v_snd_6475_, v___x_6497_, v___x_6504_);
v_e_6464_ = v___x_6505_;
v___y_6465_ = v_a_6492_;
goto v___jp_6463_;
}
else
{
lean_object* v_a_6506_; lean_object* v_a_6507_; lean_object* v___x_6508_; 
lean_dec(v_e_6482_);
v_a_6506_ = lean_ctor_get(v___x_6490_, 0);
lean_inc(v_a_6506_);
v_a_6507_ = lean_ctor_get(v___x_6490_, 1);
lean_inc(v_a_6507_);
lean_dec_ref(v___x_6490_);
v___x_6508_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6508_, 0, v_a_6506_);
lean_ctor_set(v___x_6508_, 1, v_a_6507_);
return v___x_6508_;
}
}
else
{
lean_object* v_ref_6509_; lean_object* v___x_6510_; lean_object* v___x_6511_; lean_object* v___x_6512_; lean_object* v___x_6513_; lean_object* v___x_6514_; lean_object* v___x_6515_; lean_object* v___x_6516_; lean_object* v___x_6517_; lean_object* v___x_6518_; lean_object* v___x_6519_; lean_object* v___x_6520_; lean_object* v___x_6521_; 
v_ref_6509_ = lean_ctor_get(v___y_6483_, 5);
v___x_6510_ = l_Lean_SourceInfo_fromRef(v_ref_6509_, v___x_6456_);
v___x_6511_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v___x_6510_);
v___x_6512_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6512_, 0, v___x_6510_);
lean_ctor_set(v___x_6512_, 1, v___x_6511_);
v___x_6513_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v___x_6510_);
v___x_6514_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6514_, 0, v___x_6510_);
lean_ctor_set(v___x_6514_, 1, v___x_6513_);
v___x_6515_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6516_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_6510_);
v___x_6517_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6517_, 0, v___x_6510_);
lean_ctor_set(v___x_6517_, 1, v___x_6515_);
lean_ctor_set(v___x_6517_, 2, v___x_6516_);
v___x_6518_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v___x_6510_);
v___x_6519_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6519_, 0, v___x_6510_);
lean_ctor_set(v___x_6519_, 1, v___x_6518_);
lean_inc(v___x_6510_);
v___x_6520_ = l_Lean_Syntax_node2(v___x_6510_, v___x_6515_, v___x_6519_, v_e_6482_);
lean_inc(v_snd_6475_);
lean_inc(v_fst_6474_);
v___x_6521_ = l_Lean_Syntax_node6(v___x_6510_, v___x_6478_, v___x_6512_, v_fst_6474_, v___x_6514_, v_snd_6475_, v___x_6517_, v___x_6520_);
v_e_6464_ = v___x_6521_;
v___y_6465_ = v___y_6484_;
goto v___jp_6463_;
}
}
else
{
lean_object* v___x_6522_; lean_object* v___x_6523_; lean_object* v___x_6524_; uint8_t v___x_6525_; 
v___x_6522_ = l_Lean_Syntax_getArg(v_fst_6474_, v___x_6479_);
v___x_6523_ = l_Lean_Syntax_getArg(v_fst_6474_, v___x_6480_);
v___x_6524_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10));
lean_inc(v___x_6523_);
v___x_6525_ = l_Lean_Syntax_isOfKind(v___x_6523_, v___x_6524_);
if (v___x_6525_ == 0)
{
lean_object* v___x_6526_; uint8_t v___x_6527_; 
v___x_6526_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12));
lean_inc(v___x_6523_);
v___x_6527_ = l_Lean_Syntax_isOfKind(v___x_6523_, v___x_6526_);
if (v___x_6527_ == 0)
{
lean_object* v_ref_6528_; lean_object* v___x_6529_; 
lean_dec(v___x_6523_);
lean_dec(v___x_6522_);
v_ref_6528_ = lean_ctor_get(v___y_6483_, 5);
v___x_6529_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_6456_, v_ref_6528_, v___y_6483_, v___y_6484_);
if (lean_obj_tag(v___x_6529_) == 0)
{
lean_object* v_a_6530_; lean_object* v_a_6531_; lean_object* v___x_6532_; lean_object* v___x_6533_; lean_object* v___x_6534_; lean_object* v___x_6535_; lean_object* v___x_6536_; lean_object* v___x_6537_; lean_object* v___x_6538_; lean_object* v___x_6539_; lean_object* v___x_6540_; lean_object* v___x_6541_; lean_object* v___x_6542_; lean_object* v___x_6543_; lean_object* v___x_6544_; lean_object* v___x_6545_; 
v_a_6530_ = lean_ctor_get(v___x_6529_, 0);
lean_inc(v_a_6530_);
v_a_6531_ = lean_ctor_get(v___x_6529_, 1);
lean_inc(v_a_6531_);
lean_dec_ref(v___x_6529_);
v___x_6532_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v_a_6530_);
v___x_6533_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6533_, 0, v_a_6530_);
lean_ctor_set(v___x_6533_, 1, v___x_6532_);
v___x_6534_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5));
v___x_6535_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6536_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6530_);
v___x_6537_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6537_, 0, v_a_6530_);
lean_ctor_set(v___x_6537_, 1, v___x_6535_);
lean_ctor_set(v___x_6537_, 2, v___x_6536_);
v___x_6538_ = lean_box(0);
lean_inc_ref(v___x_6537_);
lean_inc(v_a_6530_);
v___x_6539_ = l_Lean_Syntax_node2(v_a_6530_, v___x_6534_, v___x_6537_, v___x_6538_);
v___x_6540_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v_a_6530_);
v___x_6541_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6541_, 0, v_a_6530_);
lean_ctor_set(v___x_6541_, 1, v___x_6540_);
v___x_6542_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v_a_6530_);
v___x_6543_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6543_, 0, v_a_6530_);
lean_ctor_set(v___x_6543_, 1, v___x_6542_);
lean_inc(v_a_6530_);
v___x_6544_ = l_Lean_Syntax_node2(v_a_6530_, v___x_6535_, v___x_6543_, v_e_6482_);
lean_inc(v_snd_6475_);
v___x_6545_ = l_Lean_Syntax_node6(v_a_6530_, v___x_6478_, v___x_6533_, v___x_6539_, v___x_6541_, v_snd_6475_, v___x_6537_, v___x_6544_);
v_e_6464_ = v___x_6545_;
v___y_6465_ = v_a_6531_;
goto v___jp_6463_;
}
else
{
lean_object* v_a_6546_; lean_object* v_a_6547_; lean_object* v___x_6548_; 
lean_dec(v_e_6482_);
v_a_6546_ = lean_ctor_get(v___x_6529_, 0);
lean_inc(v_a_6546_);
v_a_6547_ = lean_ctor_get(v___x_6529_, 1);
lean_inc(v_a_6547_);
lean_dec_ref(v___x_6529_);
v___x_6548_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6548_, 0, v_a_6546_);
lean_ctor_set(v___x_6548_, 1, v_a_6547_);
return v___x_6548_;
}
}
else
{
lean_object* v_ref_6549_; lean_object* v___x_6550_; 
v_ref_6549_ = lean_ctor_get(v___y_6483_, 5);
v___x_6550_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_6456_, v_ref_6549_, v___y_6483_, v___y_6484_);
if (lean_obj_tag(v___x_6550_) == 0)
{
lean_object* v_a_6551_; lean_object* v_a_6552_; lean_object* v___x_6553_; lean_object* v___x_6554_; lean_object* v___x_6555_; lean_object* v___x_6556_; lean_object* v___x_6557_; lean_object* v___x_6558_; lean_object* v___x_6559_; lean_object* v___x_6560_; lean_object* v___x_6561_; lean_object* v___x_6562_; lean_object* v___x_6563_; lean_object* v___x_6564_; lean_object* v___x_6565_; lean_object* v___x_6566_; lean_object* v___x_6567_; lean_object* v___x_6568_; lean_object* v___x_6569_; lean_object* v___x_6570_; lean_object* v___x_6571_; lean_object* v___x_6572_; lean_object* v___x_6573_; lean_object* v___x_6574_; lean_object* v___x_6575_; lean_object* v___x_6576_; lean_object* v___x_6577_; lean_object* v___x_6578_; lean_object* v___x_6579_; lean_object* v___x_6580_; lean_object* v___x_6581_; lean_object* v___x_6582_; lean_object* v___x_6583_; lean_object* v___x_6584_; lean_object* v___x_6585_; lean_object* v___x_6586_; lean_object* v___x_6587_; 
v_a_6551_ = lean_ctor_get(v___x_6550_, 0);
lean_inc(v_a_6551_);
v_a_6552_ = lean_ctor_get(v___x_6550_, 1);
lean_inc(v_a_6552_);
lean_dec_ref(v___x_6550_);
v___x_6553_ = l_Lean_Syntax_getArg(v___x_6523_, v___x_6479_);
lean_dec(v___x_6523_);
v___x_6554_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_6555_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v_a_6551_);
v___x_6556_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6556_, 0, v_a_6551_);
lean_ctor_set(v___x_6556_, 1, v___x_6555_);
v___x_6557_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6558_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6551_);
v___x_6559_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6559_, 0, v_a_6551_);
lean_ctor_set(v___x_6559_, 1, v___x_6557_);
lean_ctor_set(v___x_6559_, 2, v___x_6558_);
v___x_6560_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
v___x_6561_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1));
v___x_6562_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_a_6551_);
v___x_6563_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6563_, 0, v_a_6551_);
lean_ctor_set(v___x_6563_, 1, v___x_6562_);
lean_inc(v_a_6551_);
v___x_6564_ = l_Lean_Syntax_node2(v_a_6551_, v___x_6561_, v___x_6563_, v___x_6553_);
lean_inc_ref(v___x_6559_);
lean_inc(v_a_6551_);
v___x_6565_ = l_Lean_Syntax_node2(v_a_6551_, v___x_6560_, v___x_6559_, v___x_6564_);
lean_inc(v_a_6551_);
v___x_6566_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6557_, v___x_6565_);
v___x_6567_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v_a_6551_);
v___x_6568_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6568_, 0, v_a_6551_);
lean_ctor_set(v___x_6568_, 1, v___x_6567_);
v___x_6569_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_6570_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_6571_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v_a_6551_);
v___x_6572_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6572_, 0, v_a_6551_);
lean_ctor_set(v___x_6572_, 1, v___x_6571_);
lean_inc(v_a_6551_);
v___x_6573_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6557_, v___x_6522_);
lean_inc(v_a_6551_);
v___x_6574_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6557_, v___x_6573_);
v___x_6575_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_6551_);
v___x_6576_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6576_, 0, v_a_6551_);
lean_ctor_set(v___x_6576_, 1, v___x_6575_);
lean_inc(v_snd_6475_);
lean_inc_ref(v___x_6576_);
lean_inc_ref(v___x_6572_);
lean_inc(v_a_6551_);
v___x_6577_ = l_Lean_Syntax_node4(v_a_6551_, v___x_6570_, v___x_6572_, v___x_6574_, v___x_6576_, v_snd_6475_);
v___x_6578_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_6579_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_6551_);
v___x_6580_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6580_, 0, v_a_6551_);
lean_ctor_set(v___x_6580_, 1, v___x_6579_);
lean_inc(v_a_6551_);
v___x_6581_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6578_, v___x_6580_);
lean_inc(v_a_6551_);
v___x_6582_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6557_, v___x_6581_);
lean_inc(v_a_6551_);
v___x_6583_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6557_, v___x_6582_);
lean_inc(v_a_6551_);
v___x_6584_ = l_Lean_Syntax_node4(v_a_6551_, v___x_6570_, v___x_6572_, v___x_6583_, v___x_6576_, v_e_6482_);
lean_inc(v_a_6551_);
v___x_6585_ = l_Lean_Syntax_node2(v_a_6551_, v___x_6557_, v___x_6577_, v___x_6584_);
lean_inc(v_a_6551_);
v___x_6586_ = l_Lean_Syntax_node1(v_a_6551_, v___x_6569_, v___x_6585_);
lean_inc_ref_n(v___x_6559_, 2);
v___x_6587_ = l_Lean_Syntax_node7(v_a_6551_, v___x_6554_, v___x_6556_, v___x_6559_, v___x_6559_, v___x_6559_, v___x_6566_, v___x_6568_, v___x_6586_);
v_e_6464_ = v___x_6587_;
v___y_6465_ = v_a_6552_;
goto v___jp_6463_;
}
else
{
lean_object* v_a_6588_; lean_object* v_a_6589_; lean_object* v___x_6590_; 
lean_dec(v___x_6523_);
lean_dec(v___x_6522_);
lean_dec(v_e_6482_);
v_a_6588_ = lean_ctor_get(v___x_6550_, 0);
lean_inc(v_a_6588_);
v_a_6589_ = lean_ctor_get(v___x_6550_, 1);
lean_inc(v_a_6589_);
lean_dec_ref(v___x_6550_);
v___x_6590_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6590_, 0, v_a_6588_);
lean_ctor_set(v___x_6590_, 1, v_a_6589_);
return v___x_6590_;
}
}
}
else
{
lean_object* v_ref_6591_; lean_object* v___x_6592_; 
v_ref_6591_ = lean_ctor_get(v___y_6483_, 5);
v___x_6592_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___lam__0(v___x_6456_, v_ref_6591_, v___y_6483_, v___y_6484_);
if (lean_obj_tag(v___x_6592_) == 0)
{
lean_object* v_a_6593_; lean_object* v_a_6594_; lean_object* v___x_6595_; lean_object* v___x_6596_; lean_object* v___x_6597_; lean_object* v___x_6598_; lean_object* v___x_6599_; lean_object* v___x_6600_; lean_object* v___x_6601_; lean_object* v___x_6602_; lean_object* v___x_6603_; lean_object* v___x_6604_; lean_object* v___x_6605_; lean_object* v___x_6606_; lean_object* v___x_6607_; lean_object* v___x_6608_; lean_object* v___x_6609_; lean_object* v___x_6610_; lean_object* v___x_6611_; lean_object* v___x_6612_; lean_object* v___x_6613_; lean_object* v___x_6614_; lean_object* v___x_6615_; lean_object* v___x_6616_; lean_object* v___x_6617_; lean_object* v___x_6618_; lean_object* v___x_6619_; lean_object* v___x_6620_; lean_object* v___x_6621_; lean_object* v___x_6622_; lean_object* v___x_6623_; lean_object* v___x_6624_; lean_object* v___x_6625_; 
v_a_6593_ = lean_ctor_get(v___x_6592_, 0);
lean_inc(v_a_6593_);
v_a_6594_ = lean_ctor_get(v___x_6592_, 1);
lean_inc(v_a_6594_);
lean_dec_ref(v___x_6592_);
v___x_6595_ = l_Lean_Syntax_getArg(v___x_6523_, v___x_6479_);
lean_dec(v___x_6523_);
v___x_6596_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_6597_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v_a_6593_);
v___x_6598_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6598_, 0, v_a_6593_);
lean_ctor_set(v___x_6598_, 1, v___x_6597_);
v___x_6599_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6600_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6593_);
v___x_6601_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6601_, 0, v_a_6593_);
lean_ctor_set(v___x_6601_, 1, v___x_6599_);
lean_ctor_set(v___x_6601_, 2, v___x_6600_);
v___x_6602_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_6601_);
lean_inc(v_a_6593_);
v___x_6603_ = l_Lean_Syntax_node2(v_a_6593_, v___x_6602_, v___x_6601_, v___x_6595_);
lean_inc(v_a_6593_);
v___x_6604_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6599_, v___x_6603_);
v___x_6605_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v_a_6593_);
v___x_6606_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6606_, 0, v_a_6593_);
lean_ctor_set(v___x_6606_, 1, v___x_6605_);
v___x_6607_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_6608_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_6609_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v_a_6593_);
v___x_6610_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6610_, 0, v_a_6593_);
lean_ctor_set(v___x_6610_, 1, v___x_6609_);
lean_inc(v_a_6593_);
v___x_6611_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6599_, v___x_6522_);
lean_inc(v_a_6593_);
v___x_6612_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6599_, v___x_6611_);
v___x_6613_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_6593_);
v___x_6614_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6614_, 0, v_a_6593_);
lean_ctor_set(v___x_6614_, 1, v___x_6613_);
lean_inc(v_snd_6475_);
lean_inc_ref(v___x_6614_);
lean_inc_ref(v___x_6610_);
lean_inc(v_a_6593_);
v___x_6615_ = l_Lean_Syntax_node4(v_a_6593_, v___x_6608_, v___x_6610_, v___x_6612_, v___x_6614_, v_snd_6475_);
v___x_6616_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_6617_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_6593_);
v___x_6618_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6618_, 0, v_a_6593_);
lean_ctor_set(v___x_6618_, 1, v___x_6617_);
lean_inc(v_a_6593_);
v___x_6619_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6616_, v___x_6618_);
lean_inc(v_a_6593_);
v___x_6620_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6599_, v___x_6619_);
lean_inc(v_a_6593_);
v___x_6621_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6599_, v___x_6620_);
lean_inc(v_a_6593_);
v___x_6622_ = l_Lean_Syntax_node4(v_a_6593_, v___x_6608_, v___x_6610_, v___x_6621_, v___x_6614_, v_e_6482_);
lean_inc(v_a_6593_);
v___x_6623_ = l_Lean_Syntax_node2(v_a_6593_, v___x_6599_, v___x_6615_, v___x_6622_);
lean_inc(v_a_6593_);
v___x_6624_ = l_Lean_Syntax_node1(v_a_6593_, v___x_6607_, v___x_6623_);
lean_inc_ref_n(v___x_6601_, 2);
v___x_6625_ = l_Lean_Syntax_node7(v_a_6593_, v___x_6596_, v___x_6598_, v___x_6601_, v___x_6601_, v___x_6601_, v___x_6604_, v___x_6606_, v___x_6624_);
v_e_6464_ = v___x_6625_;
v___y_6465_ = v_a_6594_;
goto v___jp_6463_;
}
else
{
lean_object* v_a_6626_; lean_object* v_a_6627_; lean_object* v___x_6628_; 
lean_dec(v___x_6523_);
lean_dec(v___x_6522_);
lean_dec(v_e_6482_);
v_a_6626_ = lean_ctor_get(v___x_6592_, 0);
lean_inc(v_a_6626_);
v_a_6627_ = lean_ctor_get(v___x_6592_, 1);
lean_inc(v_a_6627_);
lean_dec_ref(v___x_6592_);
v___x_6628_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6628_, 0, v_a_6626_);
lean_ctor_set(v___x_6628_, 1, v_a_6627_);
return v___x_6628_;
}
}
}
}
}
v___jp_6463_:
{
lean_object* v___x_6466_; lean_object* v___x_6467_; size_t v___x_6468_; size_t v___x_6469_; 
v___x_6466_ = lean_box(v___x_6456_);
v___x_6467_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6467_, 0, v_e_6464_);
lean_ctor_set(v___x_6467_, 1, v___x_6466_);
v___x_6468_ = ((size_t)1ULL);
v___x_6469_ = lean_usize_add(v_i_6459_, v___x_6468_);
v_i_6459_ = v___x_6469_;
v_b_6460_ = v___x_6467_;
v___y_6462_ = v___y_6465_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___boxed(lean_object* v___x_6645_, lean_object* v_as_6646_, lean_object* v_sz_6647_, lean_object* v_i_6648_, lean_object* v_b_6649_, lean_object* v___y_6650_, lean_object* v___y_6651_){
_start:
{
uint8_t v___x_62041__boxed_6652_; size_t v_sz_boxed_6653_; size_t v_i_boxed_6654_; lean_object* v_res_6655_; 
v___x_62041__boxed_6652_ = lean_unbox(v___x_6645_);
v_sz_boxed_6653_ = lean_unbox_usize(v_sz_6647_);
lean_dec(v_sz_6647_);
v_i_boxed_6654_ = lean_unbox_usize(v_i_6648_);
lean_dec(v_i_6648_);
v_res_6655_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3(v___x_62041__boxed_6652_, v_as_6646_, v_sz_boxed_6653_, v_i_boxed_6654_, v_b_6649_, v___y_6650_, v___y_6651_);
lean_dec_ref(v___y_6650_);
lean_dec_ref(v_as_6646_);
return v_res_6655_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(lean_object* v_____do__lift_6656_, lean_object* v___y_6657_, lean_object* v___y_6658_){
_start:
{
uint8_t v___x_6659_; lean_object* v___x_6660_; lean_object* v___x_6661_; 
v___x_6659_ = 0;
v___x_6660_ = l_Lean_SourceInfo_fromRef(v_____do__lift_6656_, v___x_6659_);
v___x_6661_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6661_, 0, v___x_6660_);
lean_ctor_set(v___x_6661_, 1, v___y_6658_);
return v___x_6661_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0___boxed(lean_object* v_____do__lift_6662_, lean_object* v___y_6663_, lean_object* v___y_6664_){
_start:
{
lean_object* v_res_6665_; 
v_res_6665_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_____do__lift_6662_, v___y_6663_, v___y_6664_);
lean_dec_ref(v___y_6663_);
lean_dec(v_____do__lift_6662_);
return v_res_6665_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4(lean_object* v_as_6666_, size_t v_sz_6667_, size_t v_i_6668_, lean_object* v_b_6669_, lean_object* v___y_6670_, lean_object* v___y_6671_){
_start:
{
lean_object* v_e_6673_; lean_object* v___y_6674_; uint8_t v___x_6681_; 
v___x_6681_ = lean_usize_dec_lt(v_i_6668_, v_sz_6667_);
if (v___x_6681_ == 0)
{
lean_object* v___x_6682_; 
v___x_6682_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6682_, 0, v_b_6669_);
lean_ctor_set(v___x_6682_, 1, v___y_6671_);
return v___x_6682_;
}
else
{
lean_object* v_a_6683_; lean_object* v_fst_6684_; lean_object* v_snd_6685_; lean_object* v_fst_6686_; lean_object* v_snd_6687_; lean_object* v___x_6688_; lean_object* v___x_6689_; lean_object* v___x_6690_; lean_object* v_e_6692_; lean_object* v___y_6693_; lean_object* v___y_6694_; uint8_t v___x_6839_; 
v_a_6683_ = lean_array_uget_borrowed(v_as_6666_, v_i_6668_);
v_fst_6684_ = lean_ctor_get(v_a_6683_, 0);
v_snd_6685_ = lean_ctor_get(v_a_6683_, 1);
v_fst_6686_ = lean_ctor_get(v_b_6669_, 0);
lean_inc(v_fst_6686_);
v_snd_6687_ = lean_ctor_get(v_b_6669_, 1);
lean_inc(v_snd_6687_);
lean_dec_ref(v_b_6669_);
v___x_6688_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1));
v___x_6689_ = lean_unsigned_to_nat(1u);
v___x_6690_ = lean_unsigned_to_nat(2u);
v___x_6839_ = lean_unbox(v_snd_6687_);
lean_dec(v_snd_6687_);
if (v___x_6839_ == 0)
{
lean_object* v_ref_6840_; lean_object* v___x_6841_; 
v_ref_6840_ = lean_ctor_get(v___y_6670_, 5);
v___x_6841_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_ref_6840_, v___y_6670_, v___y_6671_);
if (lean_obj_tag(v___x_6841_) == 0)
{
lean_object* v_a_6842_; lean_object* v_a_6843_; lean_object* v___x_6844_; lean_object* v___x_6845_; lean_object* v___x_6846_; lean_object* v___x_6847_; lean_object* v___x_6848_; lean_object* v___x_6849_; lean_object* v___x_6850_; lean_object* v___x_6851_; 
v_a_6842_ = lean_ctor_get(v___x_6841_, 0);
lean_inc(v_a_6842_);
v_a_6843_ = lean_ctor_get(v___x_6841_, 1);
lean_inc(v_a_6843_);
lean_dec_ref(v___x_6841_);
v___x_6844_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_6845_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6846_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_6847_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6842_);
v___x_6848_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6848_, 0, v_a_6842_);
lean_ctor_set(v___x_6848_, 1, v___x_6845_);
lean_ctor_set(v___x_6848_, 2, v___x_6847_);
lean_inc(v_a_6842_);
v___x_6849_ = l_Lean_Syntax_node2(v_a_6842_, v___x_6846_, v_fst_6686_, v___x_6848_);
lean_inc(v_a_6842_);
v___x_6850_ = l_Lean_Syntax_node1(v_a_6842_, v___x_6845_, v___x_6849_);
v___x_6851_ = l_Lean_Syntax_node1(v_a_6842_, v___x_6844_, v___x_6850_);
v_e_6692_ = v___x_6851_;
v___y_6693_ = v___y_6670_;
v___y_6694_ = v_a_6843_;
goto v___jp_6691_;
}
else
{
lean_object* v_a_6852_; lean_object* v_a_6853_; lean_object* v___x_6854_; 
lean_dec(v_fst_6686_);
v_a_6852_ = lean_ctor_get(v___x_6841_, 0);
lean_inc(v_a_6852_);
v_a_6853_ = lean_ctor_get(v___x_6841_, 1);
lean_inc(v_a_6853_);
lean_dec_ref(v___x_6841_);
v___x_6854_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6854_, 0, v_a_6852_);
lean_ctor_set(v___x_6854_, 1, v_a_6853_);
return v___x_6854_;
}
}
else
{
v_e_6692_ = v_fst_6686_;
v___y_6693_ = v___y_6670_;
v___y_6694_ = v___y_6671_;
goto v___jp_6691_;
}
v___jp_6691_:
{
lean_object* v___x_6695_; uint8_t v___x_6696_; 
v___x_6695_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__3));
lean_inc(v_fst_6684_);
v___x_6696_ = l_Lean_Syntax_isOfKind(v_fst_6684_, v___x_6695_);
if (v___x_6696_ == 0)
{
lean_object* v___x_6697_; uint8_t v___x_6698_; 
v___x_6697_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5));
lean_inc(v_fst_6684_);
v___x_6698_ = l_Lean_Syntax_isOfKind(v_fst_6684_, v___x_6697_);
if (v___x_6698_ == 0)
{
lean_object* v_ref_6699_; lean_object* v___x_6700_; 
v_ref_6699_ = lean_ctor_get(v___y_6693_, 5);
v___x_6700_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_ref_6699_, v___y_6693_, v___y_6694_);
if (lean_obj_tag(v___x_6700_) == 0)
{
lean_object* v_a_6701_; lean_object* v_a_6702_; lean_object* v___x_6703_; lean_object* v___x_6704_; lean_object* v___x_6705_; lean_object* v___x_6706_; lean_object* v___x_6707_; lean_object* v___x_6708_; lean_object* v___x_6709_; lean_object* v___x_6710_; lean_object* v___x_6711_; lean_object* v___x_6712_; lean_object* v___x_6713_; lean_object* v___x_6714_; lean_object* v___x_6715_; 
v_a_6701_ = lean_ctor_get(v___x_6700_, 0);
lean_inc(v_a_6701_);
v_a_6702_ = lean_ctor_get(v___x_6700_, 1);
lean_inc(v_a_6702_);
lean_dec_ref(v___x_6700_);
v___x_6703_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v_a_6701_);
v___x_6704_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6704_, 0, v_a_6701_);
lean_ctor_set(v___x_6704_, 1, v___x_6703_);
v___x_6705_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6706_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6701_);
v___x_6707_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6707_, 0, v_a_6701_);
lean_ctor_set(v___x_6707_, 1, v___x_6705_);
lean_ctor_set(v___x_6707_, 2, v___x_6706_);
v___x_6708_ = lean_box(0);
lean_inc_ref(v___x_6707_);
lean_inc(v_a_6701_);
v___x_6709_ = l_Lean_Syntax_node2(v_a_6701_, v___x_6697_, v___x_6707_, v___x_6708_);
v___x_6710_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v_a_6701_);
v___x_6711_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6711_, 0, v_a_6701_);
lean_ctor_set(v___x_6711_, 1, v___x_6710_);
v___x_6712_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v_a_6701_);
v___x_6713_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6713_, 0, v_a_6701_);
lean_ctor_set(v___x_6713_, 1, v___x_6712_);
lean_inc(v_a_6701_);
v___x_6714_ = l_Lean_Syntax_node2(v_a_6701_, v___x_6705_, v___x_6713_, v_e_6692_);
lean_inc(v_snd_6685_);
v___x_6715_ = l_Lean_Syntax_node6(v_a_6701_, v___x_6688_, v___x_6704_, v___x_6709_, v___x_6711_, v_snd_6685_, v___x_6707_, v___x_6714_);
v_e_6673_ = v___x_6715_;
v___y_6674_ = v_a_6702_;
goto v___jp_6672_;
}
else
{
lean_object* v_a_6716_; lean_object* v_a_6717_; lean_object* v___x_6718_; 
lean_dec(v_e_6692_);
v_a_6716_ = lean_ctor_get(v___x_6700_, 0);
lean_inc(v_a_6716_);
v_a_6717_ = lean_ctor_get(v___x_6700_, 1);
lean_inc(v_a_6717_);
lean_dec_ref(v___x_6700_);
v___x_6718_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6718_, 0, v_a_6716_);
lean_ctor_set(v___x_6718_, 1, v_a_6717_);
return v___x_6718_;
}
}
else
{
lean_object* v_ref_6719_; lean_object* v___x_6720_; lean_object* v___x_6721_; lean_object* v___x_6722_; lean_object* v___x_6723_; lean_object* v___x_6724_; lean_object* v___x_6725_; lean_object* v___x_6726_; lean_object* v___x_6727_; lean_object* v___x_6728_; lean_object* v___x_6729_; lean_object* v___x_6730_; lean_object* v___x_6731_; 
v_ref_6719_ = lean_ctor_get(v___y_6693_, 5);
v___x_6720_ = l_Lean_SourceInfo_fromRef(v_ref_6719_, v___x_6696_);
v___x_6721_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v___x_6720_);
v___x_6722_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6722_, 0, v___x_6720_);
lean_ctor_set(v___x_6722_, 1, v___x_6721_);
v___x_6723_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v___x_6720_);
v___x_6724_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6724_, 0, v___x_6720_);
lean_ctor_set(v___x_6724_, 1, v___x_6723_);
v___x_6725_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6726_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_6720_);
v___x_6727_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6727_, 0, v___x_6720_);
lean_ctor_set(v___x_6727_, 1, v___x_6725_);
lean_ctor_set(v___x_6727_, 2, v___x_6726_);
v___x_6728_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v___x_6720_);
v___x_6729_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6729_, 0, v___x_6720_);
lean_ctor_set(v___x_6729_, 1, v___x_6728_);
lean_inc(v___x_6720_);
v___x_6730_ = l_Lean_Syntax_node2(v___x_6720_, v___x_6725_, v___x_6729_, v_e_6692_);
lean_inc(v_snd_6685_);
lean_inc(v_fst_6684_);
v___x_6731_ = l_Lean_Syntax_node6(v___x_6720_, v___x_6688_, v___x_6722_, v_fst_6684_, v___x_6724_, v_snd_6685_, v___x_6727_, v___x_6730_);
v_e_6673_ = v___x_6731_;
v___y_6674_ = v___y_6694_;
goto v___jp_6672_;
}
}
else
{
lean_object* v___x_6732_; lean_object* v___x_6733_; lean_object* v___x_6734_; uint8_t v___x_6735_; 
v___x_6732_ = l_Lean_Syntax_getArg(v_fst_6684_, v___x_6689_);
v___x_6733_ = l_Lean_Syntax_getArg(v_fst_6684_, v___x_6690_);
v___x_6734_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__10));
lean_inc(v___x_6733_);
v___x_6735_ = l_Lean_Syntax_isOfKind(v___x_6733_, v___x_6734_);
if (v___x_6735_ == 0)
{
lean_object* v___x_6736_; uint8_t v___x_6737_; 
v___x_6736_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__12));
lean_inc(v___x_6733_);
v___x_6737_ = l_Lean_Syntax_isOfKind(v___x_6733_, v___x_6736_);
if (v___x_6737_ == 0)
{
lean_object* v_ref_6738_; lean_object* v___x_6739_; 
lean_dec(v___x_6733_);
lean_dec(v___x_6732_);
v_ref_6738_ = lean_ctor_get(v___y_6693_, 5);
v___x_6739_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_ref_6738_, v___y_6693_, v___y_6694_);
if (lean_obj_tag(v___x_6739_) == 0)
{
lean_object* v_a_6740_; lean_object* v_a_6741_; lean_object* v___x_6742_; lean_object* v___x_6743_; lean_object* v___x_6744_; lean_object* v___x_6745_; lean_object* v___x_6746_; lean_object* v___x_6747_; lean_object* v___x_6748_; lean_object* v___x_6749_; lean_object* v___x_6750_; lean_object* v___x_6751_; lean_object* v___x_6752_; lean_object* v___x_6753_; lean_object* v___x_6754_; lean_object* v___x_6755_; 
v_a_6740_ = lean_ctor_get(v___x_6739_, 0);
lean_inc(v_a_6740_);
v_a_6741_ = lean_ctor_get(v___x_6739_, 1);
lean_inc(v_a_6741_);
lean_dec_ref(v___x_6739_);
v___x_6742_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v_a_6740_);
v___x_6743_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6743_, 0, v_a_6740_);
lean_ctor_set(v___x_6743_, 1, v___x_6742_);
v___x_6744_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5));
v___x_6745_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6746_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6740_);
v___x_6747_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6747_, 0, v_a_6740_);
lean_ctor_set(v___x_6747_, 1, v___x_6745_);
lean_ctor_set(v___x_6747_, 2, v___x_6746_);
v___x_6748_ = lean_box(0);
lean_inc_ref(v___x_6747_);
lean_inc(v_a_6740_);
v___x_6749_ = l_Lean_Syntax_node2(v_a_6740_, v___x_6744_, v___x_6747_, v___x_6748_);
v___x_6750_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v_a_6740_);
v___x_6751_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6751_, 0, v_a_6740_);
lean_ctor_set(v___x_6751_, 1, v___x_6750_);
v___x_6752_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v_a_6740_);
v___x_6753_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6753_, 0, v_a_6740_);
lean_ctor_set(v___x_6753_, 1, v___x_6752_);
lean_inc(v_a_6740_);
v___x_6754_ = l_Lean_Syntax_node2(v_a_6740_, v___x_6745_, v___x_6753_, v_e_6692_);
lean_inc(v_snd_6685_);
v___x_6755_ = l_Lean_Syntax_node6(v_a_6740_, v___x_6688_, v___x_6743_, v___x_6749_, v___x_6751_, v_snd_6685_, v___x_6747_, v___x_6754_);
v_e_6673_ = v___x_6755_;
v___y_6674_ = v_a_6741_;
goto v___jp_6672_;
}
else
{
lean_object* v_a_6756_; lean_object* v_a_6757_; lean_object* v___x_6758_; 
lean_dec(v_e_6692_);
v_a_6756_ = lean_ctor_get(v___x_6739_, 0);
lean_inc(v_a_6756_);
v_a_6757_ = lean_ctor_get(v___x_6739_, 1);
lean_inc(v_a_6757_);
lean_dec_ref(v___x_6739_);
v___x_6758_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6758_, 0, v_a_6756_);
lean_ctor_set(v___x_6758_, 1, v_a_6757_);
return v___x_6758_;
}
}
else
{
lean_object* v_ref_6759_; lean_object* v___x_6760_; 
v_ref_6759_ = lean_ctor_get(v___y_6693_, 5);
v___x_6760_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_ref_6759_, v___y_6693_, v___y_6694_);
if (lean_obj_tag(v___x_6760_) == 0)
{
lean_object* v_a_6761_; lean_object* v_a_6762_; lean_object* v___x_6763_; lean_object* v___x_6764_; lean_object* v___x_6765_; lean_object* v___x_6766_; lean_object* v___x_6767_; lean_object* v___x_6768_; lean_object* v___x_6769_; lean_object* v___x_6770_; lean_object* v___x_6771_; lean_object* v___x_6772_; lean_object* v___x_6773_; lean_object* v___x_6774_; lean_object* v___x_6775_; lean_object* v___x_6776_; lean_object* v___x_6777_; lean_object* v___x_6778_; lean_object* v___x_6779_; lean_object* v___x_6780_; lean_object* v___x_6781_; lean_object* v___x_6782_; lean_object* v___x_6783_; lean_object* v___x_6784_; lean_object* v___x_6785_; lean_object* v___x_6786_; lean_object* v___x_6787_; lean_object* v___x_6788_; lean_object* v___x_6789_; lean_object* v___x_6790_; lean_object* v___x_6791_; lean_object* v___x_6792_; lean_object* v___x_6793_; lean_object* v___x_6794_; lean_object* v___x_6795_; lean_object* v___x_6796_; lean_object* v___x_6797_; 
v_a_6761_ = lean_ctor_get(v___x_6760_, 0);
lean_inc(v_a_6761_);
v_a_6762_ = lean_ctor_get(v___x_6760_, 1);
lean_inc(v_a_6762_);
lean_dec_ref(v___x_6760_);
v___x_6763_ = l_Lean_Syntax_getArg(v___x_6733_, v___x_6689_);
lean_dec(v___x_6733_);
v___x_6764_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_6765_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v_a_6761_);
v___x_6766_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6766_, 0, v_a_6761_);
lean_ctor_set(v___x_6766_, 1, v___x_6765_);
v___x_6767_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6768_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6761_);
v___x_6769_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6769_, 0, v_a_6761_);
lean_ctor_set(v___x_6769_, 1, v___x_6767_);
lean_ctor_set(v___x_6769_, 2, v___x_6768_);
v___x_6770_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
v___x_6771_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1));
v___x_6772_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_a_6761_);
v___x_6773_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6773_, 0, v_a_6761_);
lean_ctor_set(v___x_6773_, 1, v___x_6772_);
lean_inc(v_a_6761_);
v___x_6774_ = l_Lean_Syntax_node2(v_a_6761_, v___x_6771_, v___x_6773_, v___x_6763_);
lean_inc_ref(v___x_6769_);
lean_inc(v_a_6761_);
v___x_6775_ = l_Lean_Syntax_node2(v_a_6761_, v___x_6770_, v___x_6769_, v___x_6774_);
lean_inc(v_a_6761_);
v___x_6776_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6767_, v___x_6775_);
v___x_6777_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v_a_6761_);
v___x_6778_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6778_, 0, v_a_6761_);
lean_ctor_set(v___x_6778_, 1, v___x_6777_);
v___x_6779_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_6780_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_6781_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v_a_6761_);
v___x_6782_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6782_, 0, v_a_6761_);
lean_ctor_set(v___x_6782_, 1, v___x_6781_);
lean_inc(v_a_6761_);
v___x_6783_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6767_, v___x_6732_);
lean_inc(v_a_6761_);
v___x_6784_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6767_, v___x_6783_);
v___x_6785_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_6761_);
v___x_6786_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6786_, 0, v_a_6761_);
lean_ctor_set(v___x_6786_, 1, v___x_6785_);
lean_inc(v_snd_6685_);
lean_inc_ref(v___x_6786_);
lean_inc_ref(v___x_6782_);
lean_inc(v_a_6761_);
v___x_6787_ = l_Lean_Syntax_node4(v_a_6761_, v___x_6780_, v___x_6782_, v___x_6784_, v___x_6786_, v_snd_6685_);
v___x_6788_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_6789_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_6761_);
v___x_6790_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6790_, 0, v_a_6761_);
lean_ctor_set(v___x_6790_, 1, v___x_6789_);
lean_inc(v_a_6761_);
v___x_6791_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6788_, v___x_6790_);
lean_inc(v_a_6761_);
v___x_6792_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6767_, v___x_6791_);
lean_inc(v_a_6761_);
v___x_6793_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6767_, v___x_6792_);
lean_inc(v_a_6761_);
v___x_6794_ = l_Lean_Syntax_node4(v_a_6761_, v___x_6780_, v___x_6782_, v___x_6793_, v___x_6786_, v_e_6692_);
lean_inc(v_a_6761_);
v___x_6795_ = l_Lean_Syntax_node2(v_a_6761_, v___x_6767_, v___x_6787_, v___x_6794_);
lean_inc(v_a_6761_);
v___x_6796_ = l_Lean_Syntax_node1(v_a_6761_, v___x_6779_, v___x_6795_);
lean_inc_ref_n(v___x_6769_, 2);
v___x_6797_ = l_Lean_Syntax_node7(v_a_6761_, v___x_6764_, v___x_6766_, v___x_6769_, v___x_6769_, v___x_6769_, v___x_6776_, v___x_6778_, v___x_6796_);
v_e_6673_ = v___x_6797_;
v___y_6674_ = v_a_6762_;
goto v___jp_6672_;
}
else
{
lean_object* v_a_6798_; lean_object* v_a_6799_; lean_object* v___x_6800_; 
lean_dec(v___x_6733_);
lean_dec(v___x_6732_);
lean_dec(v_e_6692_);
v_a_6798_ = lean_ctor_get(v___x_6760_, 0);
lean_inc(v_a_6798_);
v_a_6799_ = lean_ctor_get(v___x_6760_, 1);
lean_inc(v_a_6799_);
lean_dec_ref(v___x_6760_);
v___x_6800_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6800_, 0, v_a_6798_);
lean_ctor_set(v___x_6800_, 1, v_a_6799_);
return v___x_6800_;
}
}
}
else
{
lean_object* v_ref_6801_; lean_object* v___x_6802_; 
v_ref_6801_ = lean_ctor_get(v___y_6693_, 5);
v___x_6802_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___lam__0(v_ref_6801_, v___y_6693_, v___y_6694_);
if (lean_obj_tag(v___x_6802_) == 0)
{
lean_object* v_a_6803_; lean_object* v_a_6804_; lean_object* v___x_6805_; lean_object* v___x_6806_; lean_object* v___x_6807_; lean_object* v___x_6808_; lean_object* v___x_6809_; lean_object* v___x_6810_; lean_object* v___x_6811_; lean_object* v___x_6812_; lean_object* v___x_6813_; lean_object* v___x_6814_; lean_object* v___x_6815_; lean_object* v___x_6816_; lean_object* v___x_6817_; lean_object* v___x_6818_; lean_object* v___x_6819_; lean_object* v___x_6820_; lean_object* v___x_6821_; lean_object* v___x_6822_; lean_object* v___x_6823_; lean_object* v___x_6824_; lean_object* v___x_6825_; lean_object* v___x_6826_; lean_object* v___x_6827_; lean_object* v___x_6828_; lean_object* v___x_6829_; lean_object* v___x_6830_; lean_object* v___x_6831_; lean_object* v___x_6832_; lean_object* v___x_6833_; lean_object* v___x_6834_; lean_object* v___x_6835_; 
v_a_6803_ = lean_ctor_get(v___x_6802_, 0);
lean_inc(v_a_6803_);
v_a_6804_ = lean_ctor_get(v___x_6802_, 1);
lean_inc(v_a_6804_);
lean_dec_ref(v___x_6802_);
v___x_6805_ = l_Lean_Syntax_getArg(v___x_6733_, v___x_6689_);
lean_dec(v___x_6733_);
v___x_6806_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_6807_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v_a_6803_);
v___x_6808_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6808_, 0, v_a_6803_);
lean_ctor_set(v___x_6808_, 1, v___x_6807_);
v___x_6809_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6810_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_6803_);
v___x_6811_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6811_, 0, v_a_6803_);
lean_ctor_set(v___x_6811_, 1, v___x_6809_);
lean_ctor_set(v___x_6811_, 2, v___x_6810_);
v___x_6812_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_6811_);
lean_inc(v_a_6803_);
v___x_6813_ = l_Lean_Syntax_node2(v_a_6803_, v___x_6812_, v___x_6811_, v___x_6805_);
lean_inc(v_a_6803_);
v___x_6814_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6809_, v___x_6813_);
v___x_6815_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v_a_6803_);
v___x_6816_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6816_, 0, v_a_6803_);
lean_ctor_set(v___x_6816_, 1, v___x_6815_);
v___x_6817_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_6818_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_6819_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v_a_6803_);
v___x_6820_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6820_, 0, v_a_6803_);
lean_ctor_set(v___x_6820_, 1, v___x_6819_);
lean_inc(v_a_6803_);
v___x_6821_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6809_, v___x_6732_);
lean_inc(v_a_6803_);
v___x_6822_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6809_, v___x_6821_);
v___x_6823_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_6803_);
v___x_6824_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6824_, 0, v_a_6803_);
lean_ctor_set(v___x_6824_, 1, v___x_6823_);
lean_inc(v_snd_6685_);
lean_inc_ref(v___x_6824_);
lean_inc_ref(v___x_6820_);
lean_inc(v_a_6803_);
v___x_6825_ = l_Lean_Syntax_node4(v_a_6803_, v___x_6818_, v___x_6820_, v___x_6822_, v___x_6824_, v_snd_6685_);
v___x_6826_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_6827_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_6803_);
v___x_6828_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_6828_, 0, v_a_6803_);
lean_ctor_set(v___x_6828_, 1, v___x_6827_);
lean_inc(v_a_6803_);
v___x_6829_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6826_, v___x_6828_);
lean_inc(v_a_6803_);
v___x_6830_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6809_, v___x_6829_);
lean_inc(v_a_6803_);
v___x_6831_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6809_, v___x_6830_);
lean_inc(v_a_6803_);
v___x_6832_ = l_Lean_Syntax_node4(v_a_6803_, v___x_6818_, v___x_6820_, v___x_6831_, v___x_6824_, v_e_6692_);
lean_inc(v_a_6803_);
v___x_6833_ = l_Lean_Syntax_node2(v_a_6803_, v___x_6809_, v___x_6825_, v___x_6832_);
lean_inc(v_a_6803_);
v___x_6834_ = l_Lean_Syntax_node1(v_a_6803_, v___x_6817_, v___x_6833_);
lean_inc_ref_n(v___x_6811_, 2);
v___x_6835_ = l_Lean_Syntax_node7(v_a_6803_, v___x_6806_, v___x_6808_, v___x_6811_, v___x_6811_, v___x_6811_, v___x_6814_, v___x_6816_, v___x_6834_);
v_e_6673_ = v___x_6835_;
v___y_6674_ = v_a_6804_;
goto v___jp_6672_;
}
else
{
lean_object* v_a_6836_; lean_object* v_a_6837_; lean_object* v___x_6838_; 
lean_dec(v___x_6733_);
lean_dec(v___x_6732_);
lean_dec(v_e_6692_);
v_a_6836_ = lean_ctor_get(v___x_6802_, 0);
lean_inc(v_a_6836_);
v_a_6837_ = lean_ctor_get(v___x_6802_, 1);
lean_inc(v_a_6837_);
lean_dec_ref(v___x_6802_);
v___x_6838_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6838_, 0, v_a_6836_);
lean_ctor_set(v___x_6838_, 1, v_a_6837_);
return v___x_6838_;
}
}
}
}
}
v___jp_6672_:
{
uint8_t v___x_6675_; lean_object* v___x_6676_; lean_object* v___x_6677_; size_t v___x_6678_; size_t v___x_6679_; 
v___x_6675_ = 0;
v___x_6676_ = lean_box(v___x_6675_);
v___x_6677_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6677_, 0, v_e_6673_);
lean_ctor_set(v___x_6677_, 1, v___x_6676_);
v___x_6678_ = ((size_t)1ULL);
v___x_6679_ = lean_usize_add(v_i_6668_, v___x_6678_);
v_i_6668_ = v___x_6679_;
v_b_6669_ = v___x_6677_;
v___y_6671_ = v___y_6674_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4___boxed(lean_object* v_as_6855_, lean_object* v_sz_6856_, lean_object* v_i_6857_, lean_object* v_b_6858_, lean_object* v___y_6859_, lean_object* v___y_6860_){
_start:
{
size_t v_sz_boxed_6861_; size_t v_i_boxed_6862_; lean_object* v_res_6863_; 
v_sz_boxed_6861_ = lean_unbox_usize(v_sz_6856_);
lean_dec(v_sz_6856_);
v_i_boxed_6862_ = lean_unbox_usize(v_i_6857_);
lean_dec(v_i_6857_);
v_res_6863_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4(v_as_6855_, v_sz_boxed_6861_, v_i_boxed_6862_, v_b_6858_, v___y_6859_, v___y_6860_);
lean_dec_ref(v___y_6859_);
lean_dec_ref(v_as_6855_);
return v_res_6863_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(size_t v_sz_6864_, size_t v_i_6865_, lean_object* v_bs_6866_){
_start:
{
uint8_t v___x_6867_; 
v___x_6867_ = lean_usize_dec_lt(v_i_6865_, v_sz_6864_);
if (v___x_6867_ == 0)
{
return v_bs_6866_;
}
else
{
lean_object* v_v_6868_; lean_object* v_fst_6869_; lean_object* v___x_6870_; lean_object* v_bs_x27_6871_; size_t v___x_6872_; size_t v___x_6873_; lean_object* v___x_6874_; 
v_v_6868_ = lean_array_uget_borrowed(v_bs_6866_, v_i_6865_);
v_fst_6869_ = lean_ctor_get(v_v_6868_, 0);
lean_inc(v_fst_6869_);
v___x_6870_ = lean_unsigned_to_nat(0u);
v_bs_x27_6871_ = lean_array_uset(v_bs_6866_, v_i_6865_, v___x_6870_);
v___x_6872_ = ((size_t)1ULL);
v___x_6873_ = lean_usize_add(v_i_6865_, v___x_6872_);
v___x_6874_ = lean_array_uset(v_bs_x27_6871_, v_i_6865_, v_fst_6869_);
v_i_6865_ = v___x_6873_;
v_bs_6866_ = v___x_6874_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2___boxed(lean_object* v_sz_6876_, lean_object* v_i_6877_, lean_object* v_bs_6878_){
_start:
{
size_t v_sz_boxed_6879_; size_t v_i_boxed_6880_; lean_object* v_res_6881_; 
v_sz_boxed_6879_ = lean_unbox_usize(v_sz_6876_);
lean_dec(v_sz_6876_);
v_i_boxed_6880_ = lean_unbox_usize(v_i_6877_);
lean_dec(v_i_6877_);
v_res_6881_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(v_sz_boxed_6879_, v_i_boxed_6880_, v_bs_6878_);
return v_res_6881_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f(lean_object* v_stx_6882_, lean_object* v_a_6883_, lean_object* v_a_6884_){
_start:
{
lean_object* v___y_6886_; lean_object* v___x_6889_; uint8_t v_eIsSeq_6890_; 
v___x_6889_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1));
lean_inc(v_stx_6882_);
v_eIsSeq_6890_ = l_Lean_Syntax_isOfKind(v_stx_6882_, v___x_6889_);
if (v_eIsSeq_6890_ == 0)
{
lean_object* v___x_6891_; lean_object* v___x_6892_; 
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___x_6891_ = lean_box(0);
v___x_6892_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6892_, 0, v___x_6891_);
lean_ctor_set(v___x_6892_, 1, v_a_6884_);
return v___x_6892_;
}
else
{
lean_object* v___x_6893_; lean_object* v_cond_6894_; lean_object* v___x_6895_; uint8_t v___x_6896_; 
v___x_6893_ = lean_unsigned_to_nat(1u);
v_cond_6894_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_6893_);
v___x_6895_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__5));
lean_inc(v_cond_6894_);
v___x_6896_ = l_Lean_Syntax_isOfKind(v_cond_6894_, v___x_6895_);
if (v___x_6896_ == 0)
{
lean_object* v___x_6897_; lean_object* v___x_6898_; lean_object* v___x_6899_; size_t v_sz_6900_; size_t v___x_6901_; lean_object* v___x_6902_; 
v___x_6897_ = lean_unsigned_to_nat(4u);
v___x_6898_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_6897_);
v___x_6899_ = l_Lean_Syntax_getArgs(v___x_6898_);
lean_dec(v___x_6898_);
v_sz_6900_ = lean_array_size(v___x_6899_);
v___x_6901_ = ((size_t)0ULL);
v___x_6902_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(v_sz_6900_, v___x_6901_, v___x_6899_);
if (lean_obj_tag(v___x_6902_) == 0)
{
lean_object* v___x_6903_; lean_object* v___x_6904_; 
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___x_6903_ = lean_box(0);
v___x_6904_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6904_, 0, v___x_6903_);
lean_ctor_set(v___x_6904_, 1, v_a_6884_);
return v___x_6904_;
}
else
{
lean_object* v_val_6905_; lean_object* v___x_6906_; lean_object* v_t_6907_; size_t v_sz_6908_; lean_object* v_ts_6909_; lean_object* v_conds_6910_; lean_object* v___y_6912_; lean_object* v___y_6913_; lean_object* v___y_6914_; lean_object* v_e_x3f_6933_; lean_object* v___y_6934_; lean_object* v___y_6935_; lean_object* v___x_6969_; lean_object* v___x_6970_; uint8_t v___x_6971_; 
v_val_6905_ = lean_ctor_get(v___x_6902_, 0);
lean_inc(v_val_6905_);
lean_dec_ref(v___x_6902_);
v___x_6906_ = lean_unsigned_to_nat(3u);
v_t_6907_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_6906_);
v_sz_6908_ = lean_array_size(v_val_6905_);
lean_inc(v_val_6905_);
v_ts_6909_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(v_sz_6908_, v___x_6901_, v_val_6905_);
v_conds_6910_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(v_sz_6908_, v___x_6901_, v_val_6905_);
v___x_6969_ = lean_unsigned_to_nat(5u);
v___x_6970_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_6969_);
v___x_6971_ = l_Lean_Syntax_isNone(v___x_6970_);
if (v___x_6971_ == 0)
{
lean_object* v___x_6972_; uint8_t v___x_6973_; 
v___x_6972_ = lean_unsigned_to_nat(2u);
lean_inc(v___x_6970_);
v___x_6973_ = l_Lean_Syntax_matchesNull(v___x_6970_, v___x_6972_);
if (v___x_6973_ == 0)
{
lean_object* v___x_6974_; lean_object* v___x_6975_; 
lean_dec(v___x_6970_);
lean_dec_ref(v_conds_6910_);
lean_dec_ref(v_ts_6909_);
lean_dec(v_t_6907_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___x_6974_ = lean_box(0);
v___x_6975_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6975_, 0, v___x_6974_);
lean_ctor_set(v___x_6975_, 1, v_a_6884_);
return v___x_6975_;
}
else
{
lean_object* v_e_x3f_6976_; lean_object* v___x_6977_; 
v_e_x3f_6976_ = l_Lean_Syntax_getArg(v___x_6970_, v___x_6893_);
lean_dec(v___x_6970_);
v___x_6977_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_6977_, 0, v_e_x3f_6976_);
v_e_x3f_6933_ = v___x_6977_;
v___y_6934_ = v_a_6883_;
v___y_6935_ = v_a_6884_;
goto v___jp_6932_;
}
}
else
{
lean_object* v___x_6978_; 
lean_dec(v___x_6970_);
v___x_6978_ = lean_box(0);
v_e_x3f_6933_ = v___x_6978_;
v___y_6934_ = v_a_6883_;
v___y_6935_ = v_a_6884_;
goto v___jp_6932_;
}
v___jp_6911_:
{
lean_object* v___x_6915_; lean_object* v___x_6916_; lean_object* v___x_6917_; lean_object* v___x_6918_; lean_object* v___x_6919_; lean_object* v___x_6920_; lean_object* v___x_6921_; size_t v_sz_6922_; lean_object* v___x_6923_; 
v___x_6915_ = l_Array_reverse___redArg(v_conds_6910_);
v___x_6916_ = lean_array_push(v___x_6915_, v_cond_6894_);
v___x_6917_ = l_Array_reverse___redArg(v_ts_6909_);
v___x_6918_ = lean_array_push(v___x_6917_, v_t_6907_);
v___x_6919_ = l_Array_zip___redArg(v___x_6916_, v___x_6918_);
lean_dec_ref(v___x_6918_);
lean_dec_ref(v___x_6916_);
v___x_6920_ = lean_box(v_eIsSeq_6890_);
v___x_6921_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6921_, 0, v___y_6914_);
lean_ctor_set(v___x_6921_, 1, v___x_6920_);
v_sz_6922_ = lean_array_size(v___x_6919_);
v___x_6923_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3(v___x_6896_, v___x_6919_, v_sz_6922_, v___x_6901_, v___x_6921_, v___y_6912_, v___y_6913_);
lean_dec_ref(v___y_6912_);
lean_dec_ref(v___x_6919_);
if (lean_obj_tag(v___x_6923_) == 0)
{
lean_object* v_a_6924_; lean_object* v_a_6925_; lean_object* v_fst_6926_; lean_object* v___x_6927_; lean_object* v___x_6928_; 
v_a_6924_ = lean_ctor_get(v___x_6923_, 0);
lean_inc(v_a_6924_);
v_a_6925_ = lean_ctor_get(v___x_6923_, 1);
lean_inc(v_a_6925_);
lean_dec_ref(v___x_6923_);
v_fst_6926_ = lean_ctor_get(v_a_6924_, 0);
lean_inc(v_fst_6926_);
lean_dec(v_a_6924_);
v___x_6927_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_6927_, 0, v_fst_6926_);
v___x_6928_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6928_, 0, v___x_6927_);
lean_ctor_set(v___x_6928_, 1, v_a_6925_);
return v___x_6928_;
}
else
{
lean_object* v_a_6929_; lean_object* v_a_6930_; lean_object* v___x_6931_; 
v_a_6929_ = lean_ctor_get(v___x_6923_, 0);
lean_inc(v_a_6929_);
v_a_6930_ = lean_ctor_get(v___x_6923_, 1);
lean_inc(v_a_6930_);
lean_dec_ref(v___x_6923_);
v___x_6931_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_6931_, 0, v_a_6929_);
lean_ctor_set(v___x_6931_, 1, v_a_6930_);
return v___x_6931_;
}
}
v___jp_6932_:
{
lean_object* v_methods_6936_; lean_object* v_quotContext_6937_; lean_object* v_currMacroScope_6938_; lean_object* v_currRecDepth_6939_; lean_object* v_maxRecDepth_6940_; lean_object* v_ref_6941_; lean_object* v_ref_6942_; lean_object* v___x_6943_; lean_object* v___x_6944_; lean_object* v___x_6945_; lean_object* v___x_6946_; lean_object* v___x_6947_; lean_object* v___x_6948_; lean_object* v___x_6949_; lean_object* v___x_6950_; lean_object* v___x_6951_; lean_object* v___x_6952_; lean_object* v___x_6953_; lean_object* v___x_6954_; lean_object* v___x_6955_; lean_object* v___x_6956_; lean_object* v___x_6957_; lean_object* v___x_6958_; lean_object* v___x_6959_; lean_object* v___x_6960_; lean_object* v___x_6961_; lean_object* v___x_6962_; lean_object* v___x_6963_; lean_object* v___x_6964_; 
v_methods_6936_ = lean_ctor_get(v___y_6934_, 0);
lean_inc(v_methods_6936_);
v_quotContext_6937_ = lean_ctor_get(v___y_6934_, 1);
lean_inc(v_quotContext_6937_);
v_currMacroScope_6938_ = lean_ctor_get(v___y_6934_, 2);
lean_inc(v_currMacroScope_6938_);
v_currRecDepth_6939_ = lean_ctor_get(v___y_6934_, 3);
lean_inc(v_currRecDepth_6939_);
v_maxRecDepth_6940_ = lean_ctor_get(v___y_6934_, 4);
lean_inc(v_maxRecDepth_6940_);
v_ref_6941_ = lean_ctor_get(v___y_6934_, 5);
lean_inc(v_ref_6941_);
lean_dec_ref(v___y_6934_);
v_ref_6942_ = l_Lean_replaceRef(v_stx_6882_, v_ref_6941_);
lean_dec(v_ref_6941_);
lean_dec(v_stx_6882_);
lean_inc(v_ref_6942_);
lean_inc(v_currMacroScope_6938_);
lean_inc(v_quotContext_6937_);
v___x_6943_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_6943_, 0, v_methods_6936_);
lean_ctor_set(v___x_6943_, 1, v_quotContext_6937_);
lean_ctor_set(v___x_6943_, 2, v_currMacroScope_6938_);
lean_ctor_set(v___x_6943_, 3, v_currRecDepth_6939_);
lean_ctor_set(v___x_6943_, 4, v_maxRecDepth_6940_);
lean_ctor_set(v___x_6943_, 5, v_ref_6942_);
v___x_6944_ = l_Lean_SourceInfo_fromRef(v_ref_6942_, v___x_6896_);
lean_dec(v_ref_6942_);
v___x_6945_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_6946_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_6947_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_6948_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
v___x_6949_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_6950_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_6951_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_6938_);
lean_inc(v_quotContext_6937_);
v___x_6952_ = l_Lean_addMacroScope(v_quotContext_6937_, v___x_6951_, v_currMacroScope_6938_);
v___x_6953_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_6944_);
v___x_6954_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_6954_, 0, v___x_6944_);
lean_ctor_set(v___x_6954_, 1, v___x_6950_);
lean_ctor_set(v___x_6954_, 2, v___x_6952_);
lean_ctor_set(v___x_6954_, 3, v___x_6953_);
v___x_6955_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3);
v___x_6956_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4));
v___x_6957_ = l_Lean_addMacroScope(v_quotContext_6937_, v___x_6956_, v_currMacroScope_6938_);
v___x_6958_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8));
lean_inc(v___x_6944_);
v___x_6959_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_6959_, 0, v___x_6944_);
lean_ctor_set(v___x_6959_, 1, v___x_6955_);
lean_ctor_set(v___x_6959_, 2, v___x_6957_);
lean_ctor_set(v___x_6959_, 3, v___x_6958_);
lean_inc(v___x_6944_);
v___x_6960_ = l_Lean_Syntax_node1(v___x_6944_, v___x_6946_, v___x_6959_);
lean_inc(v___x_6944_);
v___x_6961_ = l_Lean_Syntax_node2(v___x_6944_, v___x_6949_, v___x_6954_, v___x_6960_);
lean_inc(v___x_6944_);
v___x_6962_ = l_Lean_Syntax_node1(v___x_6944_, v___x_6948_, v___x_6961_);
v___x_6963_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_6944_);
v___x_6964_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_6964_, 0, v___x_6944_);
lean_ctor_set(v___x_6964_, 1, v___x_6946_);
lean_ctor_set(v___x_6964_, 2, v___x_6963_);
if (lean_obj_tag(v_e_x3f_6933_) == 0)
{
lean_object* v___x_6965_; lean_object* v___x_6966_; lean_object* v___x_6967_; 
lean_inc(v___x_6944_);
v___x_6965_ = l_Lean_Syntax_node2(v___x_6944_, v___x_6947_, v___x_6962_, v___x_6964_);
lean_inc(v___x_6944_);
v___x_6966_ = l_Lean_Syntax_node1(v___x_6944_, v___x_6946_, v___x_6965_);
v___x_6967_ = l_Lean_Syntax_node1(v___x_6944_, v___x_6945_, v___x_6966_);
v___y_6912_ = v___x_6943_;
v___y_6913_ = v___y_6935_;
v___y_6914_ = v___x_6967_;
goto v___jp_6911_;
}
else
{
lean_object* v_val_6968_; 
lean_dec_ref(v___x_6964_);
lean_dec(v___x_6962_);
lean_dec(v___x_6944_);
v_val_6968_ = lean_ctor_get(v_e_x3f_6933_, 0);
lean_inc(v_val_6968_);
lean_dec_ref(v_e_x3f_6933_);
v___y_6912_ = v___x_6943_;
v___y_6913_ = v___y_6935_;
v___y_6914_ = v_val_6968_;
goto v___jp_6911_;
}
}
}
}
else
{
lean_object* v___x_6979_; lean_object* v___x_6980_; lean_object* v___x_6981_; lean_object* v_t_6982_; lean_object* v___y_6984_; lean_object* v___y_6985_; lean_object* v___y_6986_; lean_object* v___y_6987_; lean_object* v___y_6988_; lean_object* v_conds_7008_; lean_object* v_ts_7009_; lean_object* v_e_x3f_7010_; lean_object* v___y_7011_; lean_object* v___y_7012_; lean_object* v___x_7047_; lean_object* v___x_7048_; uint8_t v___x_7049_; 
v___x_6979_ = lean_unsigned_to_nat(0u);
v___x_6980_ = lean_unsigned_to_nat(2u);
v___x_6981_ = lean_unsigned_to_nat(3u);
v_t_6982_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_6981_);
v___x_7047_ = lean_unsigned_to_nat(4u);
v___x_7048_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_7047_);
lean_inc(v___x_7048_);
v___x_7049_ = l_Lean_Syntax_matchesNull(v___x_7048_, v___x_6979_);
if (v___x_7049_ == 0)
{
lean_object* v___x_7050_; size_t v_sz_7051_; size_t v___x_7052_; lean_object* v___x_7053_; 
v___x_7050_ = l_Lean_Syntax_getArgs(v___x_7048_);
lean_dec(v___x_7048_);
v_sz_7051_ = lean_array_size(v___x_7050_);
v___x_7052_ = ((size_t)0ULL);
v___x_7053_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(v_sz_7051_, v___x_7052_, v___x_7050_);
if (lean_obj_tag(v___x_7053_) == 0)
{
lean_dec(v_t_6982_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___y_6886_ = v_a_6884_;
goto v___jp_6885_;
}
else
{
lean_object* v_val_7054_; size_t v_sz_7055_; lean_object* v_ts_7056_; lean_object* v_conds_7057_; lean_object* v___x_7058_; lean_object* v___x_7059_; uint8_t v___x_7060_; 
v_val_7054_ = lean_ctor_get(v___x_7053_, 0);
lean_inc(v_val_7054_);
lean_dec_ref(v___x_7053_);
v_sz_7055_ = lean_array_size(v_val_7054_);
lean_inc(v_val_7054_);
v_ts_7056_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(v_sz_7055_, v___x_7052_, v_val_7054_);
v_conds_7057_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(v_sz_7055_, v___x_7052_, v_val_7054_);
v___x_7058_ = lean_unsigned_to_nat(5u);
v___x_7059_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_7058_);
v___x_7060_ = l_Lean_Syntax_isNone(v___x_7059_);
if (v___x_7060_ == 0)
{
uint8_t v___x_7061_; 
lean_inc(v___x_7059_);
v___x_7061_ = l_Lean_Syntax_matchesNull(v___x_7059_, v___x_6980_);
if (v___x_7061_ == 0)
{
lean_dec(v___x_7059_);
lean_dec_ref(v_conds_7057_);
lean_dec_ref(v_ts_7056_);
lean_dec(v_t_6982_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___y_6886_ = v_a_6884_;
goto v___jp_6885_;
}
else
{
lean_object* v_e_x3f_7062_; lean_object* v___x_7063_; 
v_e_x3f_7062_ = l_Lean_Syntax_getArg(v___x_7059_, v___x_6893_);
lean_dec(v___x_7059_);
v___x_7063_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7063_, 0, v_e_x3f_7062_);
v_conds_7008_ = v_conds_7057_;
v_ts_7009_ = v_ts_7056_;
v_e_x3f_7010_ = v___x_7063_;
v___y_7011_ = v_a_6883_;
v___y_7012_ = v_a_6884_;
goto v___jp_7007_;
}
}
else
{
lean_object* v___x_7064_; 
lean_dec(v___x_7059_);
v___x_7064_ = lean_box(0);
v_conds_7008_ = v_conds_7057_;
v_ts_7009_ = v_ts_7056_;
v_e_x3f_7010_ = v___x_7064_;
v___y_7011_ = v_a_6883_;
v___y_7012_ = v_a_6884_;
goto v___jp_7007_;
}
}
}
else
{
lean_object* v___x_7065_; lean_object* v___x_7066_; uint8_t v___x_7067_; 
v___x_7065_ = lean_unsigned_to_nat(5u);
v___x_7066_ = l_Lean_Syntax_getArg(v_stx_6882_, v___x_7065_);
lean_inc(v___x_7066_);
v___x_7067_ = l_Lean_Syntax_matchesNull(v___x_7066_, v___x_6980_);
if (v___x_7067_ == 0)
{
lean_object* v___x_7068_; size_t v_sz_7069_; size_t v___x_7070_; lean_object* v___x_7071_; 
v___x_7068_ = l_Lean_Syntax_getArgs(v___x_7048_);
lean_dec(v___x_7048_);
v_sz_7069_ = lean_array_size(v___x_7068_);
v___x_7070_ = ((size_t)0ULL);
v___x_7071_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__0(v_sz_7069_, v___x_7070_, v___x_7068_);
if (lean_obj_tag(v___x_7071_) == 0)
{
lean_dec(v___x_7066_);
lean_dec(v_t_6982_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___y_6886_ = v_a_6884_;
goto v___jp_6885_;
}
else
{
lean_object* v_val_7072_; size_t v_sz_7073_; lean_object* v_ts_7074_; lean_object* v_conds_7075_; uint8_t v___x_7076_; 
v_val_7072_ = lean_ctor_get(v___x_7071_, 0);
lean_inc(v_val_7072_);
lean_dec_ref(v___x_7071_);
v_sz_7073_ = lean_array_size(v_val_7072_);
lean_inc(v_val_7072_);
v_ts_7074_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__1(v_sz_7073_, v___x_7070_, v_val_7072_);
v_conds_7075_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__2(v_sz_7073_, v___x_7070_, v_val_7072_);
v___x_7076_ = l_Lean_Syntax_isNone(v___x_7066_);
if (v___x_7076_ == 0)
{
if (v___x_7067_ == 0)
{
lean_dec_ref(v_conds_7075_);
lean_dec_ref(v_ts_7074_);
lean_dec(v___x_7066_);
lean_dec(v_t_6982_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___y_6886_ = v_a_6884_;
goto v___jp_6885_;
}
else
{
lean_object* v_e_x3f_7077_; lean_object* v___x_7078_; 
v_e_x3f_7077_ = l_Lean_Syntax_getArg(v___x_7066_, v___x_6893_);
lean_dec(v___x_7066_);
v___x_7078_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7078_, 0, v_e_x3f_7077_);
v_conds_7008_ = v_conds_7075_;
v_ts_7009_ = v_ts_7074_;
v_e_x3f_7010_ = v___x_7078_;
v___y_7011_ = v_a_6883_;
v___y_7012_ = v_a_6884_;
goto v___jp_7007_;
}
}
else
{
lean_object* v___x_7079_; 
lean_dec(v___x_7066_);
v___x_7079_ = lean_box(0);
v_conds_7008_ = v_conds_7075_;
v_ts_7009_ = v_ts_7074_;
v_e_x3f_7010_ = v___x_7079_;
v___y_7011_ = v_a_6883_;
v___y_7012_ = v_a_6884_;
goto v___jp_7007_;
}
}
}
else
{
lean_object* v___x_7080_; lean_object* v___x_7081_; 
lean_dec(v___x_7066_);
lean_dec(v___x_7048_);
lean_dec(v_t_6982_);
lean_dec(v_cond_6894_);
lean_dec_ref(v_a_6883_);
lean_dec(v_stx_6882_);
v___x_7080_ = lean_box(0);
v___x_7081_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7081_, 0, v___x_7080_);
lean_ctor_set(v___x_7081_, 1, v_a_6884_);
return v___x_7081_;
}
}
v___jp_6983_:
{
lean_object* v___x_6989_; lean_object* v___x_6990_; lean_object* v___x_6991_; lean_object* v___x_6992_; lean_object* v___x_6993_; lean_object* v___x_6994_; lean_object* v___x_6995_; size_t v_sz_6996_; size_t v___x_6997_; lean_object* v___x_6998_; 
v___x_6989_ = l_Array_reverse___redArg(v___y_6986_);
v___x_6990_ = lean_array_push(v___x_6989_, v_cond_6894_);
v___x_6991_ = l_Array_reverse___redArg(v___y_6985_);
v___x_6992_ = lean_array_push(v___x_6991_, v_t_6982_);
v___x_6993_ = l_Array_zip___redArg(v___x_6990_, v___x_6992_);
lean_dec_ref(v___x_6992_);
lean_dec_ref(v___x_6990_);
v___x_6994_ = lean_box(v_eIsSeq_6890_);
v___x_6995_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6995_, 0, v___y_6988_);
lean_ctor_set(v___x_6995_, 1, v___x_6994_);
v_sz_6996_ = lean_array_size(v___x_6993_);
v___x_6997_ = ((size_t)0ULL);
v___x_6998_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__4(v___x_6993_, v_sz_6996_, v___x_6997_, v___x_6995_, v___y_6984_, v___y_6987_);
lean_dec_ref(v___y_6984_);
lean_dec_ref(v___x_6993_);
if (lean_obj_tag(v___x_6998_) == 0)
{
lean_object* v_a_6999_; lean_object* v_a_7000_; lean_object* v_fst_7001_; lean_object* v___x_7002_; lean_object* v___x_7003_; 
v_a_6999_ = lean_ctor_get(v___x_6998_, 0);
lean_inc(v_a_6999_);
v_a_7000_ = lean_ctor_get(v___x_6998_, 1);
lean_inc(v_a_7000_);
lean_dec_ref(v___x_6998_);
v_fst_7001_ = lean_ctor_get(v_a_6999_, 0);
lean_inc(v_fst_7001_);
lean_dec(v_a_6999_);
v___x_7002_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7002_, 0, v_fst_7001_);
v___x_7003_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7003_, 0, v___x_7002_);
lean_ctor_set(v___x_7003_, 1, v_a_7000_);
return v___x_7003_;
}
else
{
lean_object* v_a_7004_; lean_object* v_a_7005_; lean_object* v___x_7006_; 
v_a_7004_ = lean_ctor_get(v___x_6998_, 0);
lean_inc(v_a_7004_);
v_a_7005_ = lean_ctor_get(v___x_6998_, 1);
lean_inc(v_a_7005_);
lean_dec_ref(v___x_6998_);
v___x_7006_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_7006_, 0, v_a_7004_);
lean_ctor_set(v___x_7006_, 1, v_a_7005_);
return v___x_7006_;
}
}
v___jp_7007_:
{
lean_object* v_methods_7013_; lean_object* v_quotContext_7014_; lean_object* v_currMacroScope_7015_; lean_object* v_currRecDepth_7016_; lean_object* v_maxRecDepth_7017_; lean_object* v_ref_7018_; lean_object* v_ref_7019_; lean_object* v___x_7020_; uint8_t v___x_7021_; lean_object* v___x_7022_; lean_object* v___x_7023_; lean_object* v___x_7024_; lean_object* v___x_7025_; lean_object* v___x_7026_; lean_object* v___x_7027_; lean_object* v___x_7028_; lean_object* v___x_7029_; lean_object* v___x_7030_; lean_object* v___x_7031_; lean_object* v___x_7032_; lean_object* v___x_7033_; lean_object* v___x_7034_; lean_object* v___x_7035_; lean_object* v___x_7036_; lean_object* v___x_7037_; lean_object* v___x_7038_; lean_object* v___x_7039_; lean_object* v___x_7040_; lean_object* v___x_7041_; lean_object* v___x_7042_; 
v_methods_7013_ = lean_ctor_get(v___y_7011_, 0);
lean_inc(v_methods_7013_);
v_quotContext_7014_ = lean_ctor_get(v___y_7011_, 1);
lean_inc(v_quotContext_7014_);
v_currMacroScope_7015_ = lean_ctor_get(v___y_7011_, 2);
lean_inc(v_currMacroScope_7015_);
v_currRecDepth_7016_ = lean_ctor_get(v___y_7011_, 3);
lean_inc(v_currRecDepth_7016_);
v_maxRecDepth_7017_ = lean_ctor_get(v___y_7011_, 4);
lean_inc(v_maxRecDepth_7017_);
v_ref_7018_ = lean_ctor_get(v___y_7011_, 5);
lean_inc(v_ref_7018_);
lean_dec_ref(v___y_7011_);
v_ref_7019_ = l_Lean_replaceRef(v_stx_6882_, v_ref_7018_);
lean_dec(v_ref_7018_);
lean_dec(v_stx_6882_);
lean_inc(v_ref_7019_);
lean_inc(v_currMacroScope_7015_);
lean_inc(v_quotContext_7014_);
v___x_7020_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_7020_, 0, v_methods_7013_);
lean_ctor_set(v___x_7020_, 1, v_quotContext_7014_);
lean_ctor_set(v___x_7020_, 2, v_currMacroScope_7015_);
lean_ctor_set(v___x_7020_, 3, v_currRecDepth_7016_);
lean_ctor_set(v___x_7020_, 4, v_maxRecDepth_7017_);
lean_ctor_set(v___x_7020_, 5, v_ref_7019_);
v___x_7021_ = 0;
v___x_7022_ = l_Lean_SourceInfo_fromRef(v_ref_7019_, v___x_7021_);
lean_dec(v_ref_7019_);
v___x_7023_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_7024_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7025_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_7026_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
v___x_7027_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_7028_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_7029_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_7015_);
lean_inc(v_quotContext_7014_);
v___x_7030_ = l_Lean_addMacroScope(v_quotContext_7014_, v___x_7029_, v_currMacroScope_7015_);
v___x_7031_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_7022_);
v___x_7032_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7032_, 0, v___x_7022_);
lean_ctor_set(v___x_7032_, 1, v___x_7028_);
lean_ctor_set(v___x_7032_, 2, v___x_7030_);
lean_ctor_set(v___x_7032_, 3, v___x_7031_);
v___x_7033_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3);
v___x_7034_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4));
v___x_7035_ = l_Lean_addMacroScope(v_quotContext_7014_, v___x_7034_, v_currMacroScope_7015_);
v___x_7036_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__8));
lean_inc(v___x_7022_);
v___x_7037_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7037_, 0, v___x_7022_);
lean_ctor_set(v___x_7037_, 1, v___x_7033_);
lean_ctor_set(v___x_7037_, 2, v___x_7035_);
lean_ctor_set(v___x_7037_, 3, v___x_7036_);
lean_inc(v___x_7022_);
v___x_7038_ = l_Lean_Syntax_node1(v___x_7022_, v___x_7024_, v___x_7037_);
lean_inc(v___x_7022_);
v___x_7039_ = l_Lean_Syntax_node2(v___x_7022_, v___x_7027_, v___x_7032_, v___x_7038_);
lean_inc(v___x_7022_);
v___x_7040_ = l_Lean_Syntax_node1(v___x_7022_, v___x_7026_, v___x_7039_);
v___x_7041_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_7022_);
v___x_7042_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_7042_, 0, v___x_7022_);
lean_ctor_set(v___x_7042_, 1, v___x_7024_);
lean_ctor_set(v___x_7042_, 2, v___x_7041_);
if (lean_obj_tag(v_e_x3f_7010_) == 0)
{
lean_object* v___x_7043_; lean_object* v___x_7044_; lean_object* v___x_7045_; 
lean_inc(v___x_7022_);
v___x_7043_ = l_Lean_Syntax_node2(v___x_7022_, v___x_7025_, v___x_7040_, v___x_7042_);
lean_inc(v___x_7022_);
v___x_7044_ = l_Lean_Syntax_node1(v___x_7022_, v___x_7024_, v___x_7043_);
v___x_7045_ = l_Lean_Syntax_node1(v___x_7022_, v___x_7023_, v___x_7044_);
v___y_6984_ = v___x_7020_;
v___y_6985_ = v_ts_7009_;
v___y_6986_ = v_conds_7008_;
v___y_6987_ = v___y_7012_;
v___y_6988_ = v___x_7045_;
goto v___jp_6983_;
}
else
{
lean_object* v_val_7046_; 
lean_dec_ref(v___x_7042_);
lean_dec(v___x_7040_);
lean_dec(v___x_7022_);
v_val_7046_ = lean_ctor_get(v_e_x3f_7010_, 0);
lean_inc(v_val_7046_);
lean_dec_ref(v_e_x3f_7010_);
v___y_6984_ = v___x_7020_;
v___y_6985_ = v_ts_7009_;
v___y_6986_ = v_conds_7008_;
v___y_6987_ = v___y_7012_;
v___y_6988_ = v_val_7046_;
goto v___jp_6983_;
}
}
}
}
v___jp_6885_:
{
lean_object* v___x_6887_; lean_object* v___x_6888_; 
v___x_6887_ = lean_box(0);
v___x_6888_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_6888_, 0, v___x_6887_);
lean_ctor_set(v___x_6888_, 1, v___y_6886_);
return v___x_6888_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f(lean_object* v_stx_7127_, lean_object* v_doElems_7128_, lean_object* v_a_7129_, lean_object* v_a_7130_){
_start:
{
lean_object* v___x_7131_; uint8_t v___x_7132_; 
v___x_7131_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__1));
lean_inc(v_stx_7127_);
v___x_7132_ = l_Lean_Syntax_isOfKind(v_stx_7127_, v___x_7131_);
if (v___x_7132_ == 0)
{
lean_object* v___x_7133_; uint8_t v___x_7134_; 
v___x_7133_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__3));
lean_inc(v_stx_7127_);
v___x_7134_ = l_Lean_Syntax_isOfKind(v_stx_7127_, v___x_7133_);
if (v___x_7134_ == 0)
{
lean_object* v___x_7135_; lean_object* v___x_7136_; 
lean_dec(v_doElems_7128_);
lean_dec(v_stx_7127_);
v___x_7135_ = lean_box(0);
v___x_7136_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7136_, 0, v___x_7135_);
lean_ctor_set(v___x_7136_, 1, v_a_7130_);
return v___x_7136_;
}
else
{
lean_object* v___x_7137_; lean_object* v___x_7138_; lean_object* v___x_7139_; uint8_t v___x_7140_; 
v___x_7137_ = lean_unsigned_to_nat(1u);
v___x_7138_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7137_);
v___x_7139_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5));
lean_inc(v___x_7138_);
v___x_7140_ = l_Lean_Syntax_isOfKind(v___x_7138_, v___x_7139_);
if (v___x_7140_ == 0)
{
lean_object* v___x_7141_; lean_object* v___x_7142_; 
lean_dec(v___x_7138_);
lean_dec(v_doElems_7128_);
lean_dec(v_stx_7127_);
v___x_7141_ = lean_box(0);
v___x_7142_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7142_, 0, v___x_7141_);
lean_ctor_set(v___x_7142_, 1, v_a_7130_);
return v___x_7142_;
}
else
{
lean_object* v___x_7143_; lean_object* v___x_7144_; uint8_t v___x_7145_; 
v___x_7143_ = lean_unsigned_to_nat(6u);
v___x_7144_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7143_);
lean_inc(v___x_7144_);
v___x_7145_ = l_Lean_Syntax_matchesNull(v___x_7144_, v___x_7137_);
if (v___x_7145_ == 0)
{
lean_object* v___x_7146_; lean_object* v___x_7147_; 
lean_dec(v___x_7144_);
lean_dec(v___x_7138_);
lean_dec(v_doElems_7128_);
lean_dec(v_stx_7127_);
v___x_7146_ = lean_box(0);
v___x_7147_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7147_, 0, v___x_7146_);
lean_ctor_set(v___x_7147_, 1, v_a_7130_);
return v___x_7147_;
}
else
{
lean_object* v_ref_7148_; lean_object* v___x_7149_; lean_object* v___x_7150_; lean_object* v___x_7151_; lean_object* v___x_7152_; lean_object* v___x_7153_; lean_object* v___x_7154_; lean_object* v___x_7155_; lean_object* v___x_7156_; lean_object* v___x_7157_; lean_object* v___x_7158_; lean_object* v___x_7159_; lean_object* v___x_7160_; lean_object* v___x_7161_; lean_object* v___x_7162_; lean_object* v___x_7163_; lean_object* v___x_7164_; lean_object* v___x_7165_; lean_object* v___x_7166_; lean_object* v___x_7167_; lean_object* v___x_7168_; lean_object* v___x_7169_; lean_object* v___x_7170_; lean_object* v___x_7171_; lean_object* v___x_7172_; lean_object* v___x_7173_; lean_object* v___x_7174_; lean_object* v___x_7175_; lean_object* v___x_7176_; lean_object* v___x_7177_; lean_object* v___x_7178_; lean_object* v___x_7179_; lean_object* v___x_7180_; lean_object* v___x_7181_; lean_object* v___x_7182_; lean_object* v___x_7183_; lean_object* v___x_7184_; lean_object* v___x_7185_; 
v_ref_7148_ = lean_ctor_get(v_a_7129_, 5);
v___x_7149_ = lean_unsigned_to_nat(0u);
v___x_7150_ = lean_unsigned_to_nat(3u);
v___x_7151_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7150_);
v___x_7152_ = lean_unsigned_to_nat(5u);
v___x_7153_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7152_);
lean_dec(v_stx_7127_);
v___x_7154_ = l_Lean_Syntax_getArg(v___x_7144_, v___x_7149_);
lean_dec(v___x_7144_);
v___x_7155_ = l_Lean_SourceInfo_fromRef(v_ref_7148_, v___x_7132_);
v___x_7156_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7));
v___x_7157_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8));
lean_inc(v___x_7155_);
v___x_7158_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7158_, 0, v___x_7155_);
lean_ctor_set(v___x_7158_, 1, v___x_7157_);
v___x_7159_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7160_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_7155_);
v___x_7161_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_7161_, 0, v___x_7155_);
lean_ctor_set(v___x_7161_, 1, v___x_7159_);
lean_ctor_set(v___x_7161_, 2, v___x_7160_);
v___x_7162_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_7155_);
v___x_7163_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7163_, 0, v___x_7155_);
lean_ctor_set(v___x_7163_, 1, v___x_7162_);
v___x_7164_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10));
v___x_7165_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12));
v___x_7166_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_7155_);
v___x_7167_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7167_, 0, v___x_7155_);
lean_ctor_set(v___x_7167_, 1, v___x_7166_);
v___x_7168_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_7155_);
v___x_7169_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7169_, 0, v___x_7155_);
lean_ctor_set(v___x_7169_, 1, v___x_7168_);
v___x_7170_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_7154_);
v___x_7171_ = l_List_appendTR___redArg(v___x_7170_, v_doElems_7128_);
v___x_7172_ = lean_array_mk(v___x_7171_);
v___x_7173_ = l_Lean_Elab_Term_Do_mkDoSeq(v___x_7172_);
lean_inc_ref(v___x_7169_);
lean_inc_ref(v___x_7167_);
lean_inc(v___x_7155_);
v___x_7174_ = l_Lean_Syntax_node4(v___x_7155_, v___x_7165_, v___x_7167_, v___x_7138_, v___x_7169_, v___x_7173_);
lean_inc(v___x_7155_);
v___x_7175_ = l_Lean_Syntax_node1(v___x_7155_, v___x_7159_, v___x_7174_);
v___x_7176_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14));
v___x_7177_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_7178_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_7155_);
v___x_7179_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7179_, 0, v___x_7155_);
lean_ctor_set(v___x_7179_, 1, v___x_7178_);
lean_inc(v___x_7155_);
v___x_7180_ = l_Lean_Syntax_node1(v___x_7155_, v___x_7177_, v___x_7179_);
lean_inc(v___x_7155_);
v___x_7181_ = l_Lean_Syntax_node4(v___x_7155_, v___x_7176_, v___x_7167_, v___x_7180_, v___x_7169_, v___x_7153_);
lean_inc(v___x_7155_);
v___x_7182_ = l_Lean_Syntax_node2(v___x_7155_, v___x_7164_, v___x_7175_, v___x_7181_);
v___x_7183_ = l_Lean_Syntax_node5(v___x_7155_, v___x_7156_, v___x_7158_, v___x_7161_, v___x_7151_, v___x_7163_, v___x_7182_);
v___x_7184_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7184_, 0, v___x_7183_);
v___x_7185_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7185_, 0, v___x_7184_);
lean_ctor_set(v___x_7185_, 1, v_a_7130_);
return v___x_7185_;
}
}
}
}
else
{
lean_object* v___x_7186_; lean_object* v___x_7187_; lean_object* v___x_7188_; uint8_t v___x_7189_; 
v___x_7186_ = lean_unsigned_to_nat(1u);
v___x_7187_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7186_);
v___x_7188_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5));
lean_inc(v___x_7187_);
v___x_7189_ = l_Lean_Syntax_isOfKind(v___x_7187_, v___x_7188_);
if (v___x_7189_ == 0)
{
lean_object* v___x_7190_; lean_object* v___x_7191_; 
lean_dec(v___x_7187_);
lean_dec(v_doElems_7128_);
lean_dec(v_stx_7127_);
v___x_7190_ = lean_box(0);
v___x_7191_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7191_, 0, v___x_7190_);
lean_ctor_set(v___x_7191_, 1, v_a_7130_);
return v___x_7191_;
}
else
{
lean_object* v___x_7192_; lean_object* v___x_7193_; uint8_t v___x_7194_; 
v___x_7192_ = lean_unsigned_to_nat(6u);
v___x_7193_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7192_);
lean_inc(v___x_7193_);
v___x_7194_ = l_Lean_Syntax_matchesNull(v___x_7193_, v___x_7186_);
if (v___x_7194_ == 0)
{
lean_object* v___x_7195_; lean_object* v___x_7196_; 
lean_dec(v___x_7193_);
lean_dec(v___x_7187_);
lean_dec(v_doElems_7128_);
lean_dec(v_stx_7127_);
v___x_7195_ = lean_box(0);
v___x_7196_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7196_, 0, v___x_7195_);
lean_ctor_set(v___x_7196_, 1, v_a_7130_);
return v___x_7196_;
}
else
{
lean_object* v_ref_7197_; lean_object* v___x_7198_; lean_object* v___x_7199_; lean_object* v___x_7200_; lean_object* v___x_7201_; lean_object* v___x_7202_; lean_object* v___x_7203_; uint8_t v___x_7204_; lean_object* v___x_7205_; lean_object* v___x_7206_; lean_object* v___x_7207_; lean_object* v___x_7208_; lean_object* v___x_7209_; lean_object* v___x_7210_; lean_object* v___x_7211_; lean_object* v___x_7212_; lean_object* v___x_7213_; lean_object* v___x_7214_; lean_object* v___x_7215_; lean_object* v___x_7216_; lean_object* v___x_7217_; lean_object* v___x_7218_; lean_object* v___x_7219_; lean_object* v___x_7220_; lean_object* v___x_7221_; lean_object* v___x_7222_; lean_object* v___x_7223_; lean_object* v___x_7224_; lean_object* v___x_7225_; lean_object* v___x_7226_; lean_object* v___x_7227_; lean_object* v___x_7228_; lean_object* v___x_7229_; lean_object* v___x_7230_; lean_object* v___x_7231_; lean_object* v___x_7232_; lean_object* v___x_7233_; lean_object* v___x_7234_; lean_object* v___x_7235_; lean_object* v___x_7236_; lean_object* v___x_7237_; lean_object* v___x_7238_; lean_object* v___x_7239_; lean_object* v___x_7240_; lean_object* v___x_7241_; lean_object* v___x_7242_; lean_object* v___x_7243_; lean_object* v___x_7244_; 
v_ref_7197_ = lean_ctor_get(v_a_7129_, 5);
v___x_7198_ = lean_unsigned_to_nat(0u);
v___x_7199_ = lean_unsigned_to_nat(3u);
v___x_7200_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7199_);
v___x_7201_ = lean_unsigned_to_nat(5u);
v___x_7202_ = l_Lean_Syntax_getArg(v_stx_7127_, v___x_7201_);
lean_dec(v_stx_7127_);
v___x_7203_ = l_Lean_Syntax_getArg(v___x_7193_, v___x_7198_);
lean_dec(v___x_7193_);
v___x_7204_ = 0;
v___x_7205_ = l_Lean_SourceInfo_fromRef(v_ref_7197_, v___x_7204_);
v___x_7206_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7));
v___x_7207_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8));
lean_inc(v___x_7205_);
v___x_7208_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7208_, 0, v___x_7205_);
lean_ctor_set(v___x_7208_, 1, v___x_7207_);
v___x_7209_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7210_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_7205_);
v___x_7211_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7211_, 0, v___x_7205_);
lean_ctor_set(v___x_7211_, 1, v___x_7210_);
v___x_7212_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16));
lean_inc(v___x_7205_);
v___x_7213_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7213_, 0, v___x_7205_);
lean_ctor_set(v___x_7213_, 1, v___x_7212_);
v___x_7214_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_7205_);
v___x_7215_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7215_, 0, v___x_7205_);
lean_ctor_set(v___x_7215_, 1, v___x_7214_);
v___x_7216_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__16));
lean_inc(v___x_7205_);
v___x_7217_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7217_, 0, v___x_7205_);
lean_ctor_set(v___x_7217_, 1, v___x_7216_);
v___x_7218_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_7205_);
v___x_7219_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7219_, 0, v___x_7205_);
lean_ctor_set(v___x_7219_, 1, v___x_7218_);
lean_inc(v___x_7205_);
v___x_7220_ = l_Lean_Syntax_node5(v___x_7205_, v___x_7209_, v___x_7211_, v___x_7213_, v___x_7215_, v___x_7217_, v___x_7219_);
v___x_7221_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_7205_);
v___x_7222_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7222_, 0, v___x_7205_);
lean_ctor_set(v___x_7222_, 1, v___x_7221_);
v___x_7223_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10));
v___x_7224_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12));
v___x_7225_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_7205_);
v___x_7226_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7226_, 0, v___x_7205_);
lean_ctor_set(v___x_7226_, 1, v___x_7225_);
v___x_7227_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_7205_);
v___x_7228_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7228_, 0, v___x_7205_);
lean_ctor_set(v___x_7228_, 1, v___x_7227_);
v___x_7229_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_7203_);
v___x_7230_ = l_List_appendTR___redArg(v___x_7229_, v_doElems_7128_);
v___x_7231_ = lean_array_mk(v___x_7230_);
v___x_7232_ = l_Lean_Elab_Term_Do_mkDoSeq(v___x_7231_);
lean_inc_ref(v___x_7228_);
lean_inc_ref(v___x_7226_);
lean_inc(v___x_7205_);
v___x_7233_ = l_Lean_Syntax_node4(v___x_7205_, v___x_7224_, v___x_7226_, v___x_7187_, v___x_7228_, v___x_7232_);
lean_inc(v___x_7205_);
v___x_7234_ = l_Lean_Syntax_node1(v___x_7205_, v___x_7209_, v___x_7233_);
v___x_7235_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14));
v___x_7236_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_7237_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_7205_);
v___x_7238_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7238_, 0, v___x_7205_);
lean_ctor_set(v___x_7238_, 1, v___x_7237_);
lean_inc(v___x_7205_);
v___x_7239_ = l_Lean_Syntax_node1(v___x_7205_, v___x_7236_, v___x_7238_);
lean_inc(v___x_7205_);
v___x_7240_ = l_Lean_Syntax_node4(v___x_7205_, v___x_7235_, v___x_7226_, v___x_7239_, v___x_7228_, v___x_7202_);
lean_inc(v___x_7205_);
v___x_7241_ = l_Lean_Syntax_node2(v___x_7205_, v___x_7223_, v___x_7234_, v___x_7240_);
v___x_7242_ = l_Lean_Syntax_node5(v___x_7205_, v___x_7206_, v___x_7208_, v___x_7220_, v___x_7200_, v___x_7222_, v___x_7241_);
v___x_7243_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7243_, 0, v___x_7242_);
v___x_7244_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7244_, 0, v___x_7243_);
lean_ctor_set(v___x_7244_, 1, v_a_7130_);
return v___x_7244_;
}
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___boxed(lean_object* v_stx_7245_, lean_object* v_doElems_7246_, lean_object* v_a_7247_, lean_object* v_a_7248_){
_start:
{
lean_object* v_res_7249_; 
v_res_7249_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f(v_stx_7245_, v_doElems_7246_, v_a_7247_, v_a_7248_);
lean_dec_ref(v_a_7247_);
return v_res_7249_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkDoIfView(lean_object* v_doIf_7250_){
_start:
{
lean_object* v___x_7251_; lean_object* v___x_7252_; lean_object* v___x_7253_; lean_object* v___x_7254_; lean_object* v___x_7255_; lean_object* v___x_7256_; lean_object* v___x_7257_; lean_object* v___x_7258_; lean_object* v___x_7259_; lean_object* v___x_7260_; lean_object* v___x_7261_; 
v___x_7251_ = lean_unsigned_to_nat(1u);
v___x_7252_ = l_Lean_Syntax_getArg(v_doIf_7250_, v___x_7251_);
v___x_7253_ = lean_unsigned_to_nat(0u);
v___x_7254_ = l_Lean_Syntax_getArg(v___x_7252_, v___x_7253_);
v___x_7255_ = l_Lean_Syntax_getArg(v___x_7252_, v___x_7251_);
lean_dec(v___x_7252_);
v___x_7256_ = lean_unsigned_to_nat(3u);
v___x_7257_ = l_Lean_Syntax_getArg(v_doIf_7250_, v___x_7256_);
v___x_7258_ = lean_unsigned_to_nat(5u);
v___x_7259_ = l_Lean_Syntax_getArg(v_doIf_7250_, v___x_7258_);
v___x_7260_ = l_Lean_Syntax_getArg(v___x_7259_, v___x_7251_);
lean_dec(v___x_7259_);
v___x_7261_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_7261_, 0, v_doIf_7250_);
lean_ctor_set(v___x_7261_, 1, v___x_7254_);
lean_ctor_set(v___x_7261_, 2, v___x_7255_);
lean_ctor_set(v___x_7261_, 3, v___x_7257_);
lean_ctor_set(v___x_7261_, 4, v___x_7260_);
return v___x_7261_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1(void){
_start:
{
lean_object* v___x_7263_; lean_object* v___x_7264_; 
v___x_7263_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__0));
v___x_7264_ = l_String_toRawSubstring_x27(v___x_7263_);
return v___x_7264_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0(lean_object* v_as_7281_, size_t v_i_7282_, size_t v_stop_7283_, lean_object* v_b_7284_, lean_object* v___y_7285_, lean_object* v___y_7286_){
_start:
{
uint8_t v___x_7287_; 
v___x_7287_ = lean_usize_dec_eq(v_i_7282_, v_stop_7283_);
if (v___x_7287_ == 0)
{
lean_object* v_quotContext_7288_; lean_object* v_currMacroScope_7289_; lean_object* v_ref_7290_; size_t v___x_7291_; size_t v___x_7292_; lean_object* v___x_7293_; lean_object* v___x_7294_; lean_object* v___x_7295_; lean_object* v___x_7296_; lean_object* v___x_7297_; lean_object* v___x_7298_; lean_object* v___x_7299_; lean_object* v___x_7300_; lean_object* v___x_7301_; lean_object* v___x_7302_; lean_object* v___x_7303_; 
v_quotContext_7288_ = lean_ctor_get(v___y_7285_, 1);
v_currMacroScope_7289_ = lean_ctor_get(v___y_7285_, 2);
v_ref_7290_ = lean_ctor_get(v___y_7285_, 5);
v___x_7291_ = ((size_t)1ULL);
v___x_7292_ = lean_usize_sub(v_i_7282_, v___x_7291_);
v___x_7293_ = lean_array_uget_borrowed(v_as_7281_, v___x_7292_);
v___x_7294_ = l_Lean_SourceInfo_fromRef(v_ref_7290_, v___x_7287_);
v___x_7295_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_7296_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_7297_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_7289_);
lean_inc(v_quotContext_7288_);
v___x_7298_ = l_Lean_addMacroScope(v_quotContext_7288_, v___x_7297_, v_currMacroScope_7289_);
v___x_7299_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_7294_);
v___x_7300_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7300_, 0, v___x_7294_);
lean_ctor_set(v___x_7300_, 1, v___x_7296_);
lean_ctor_set(v___x_7300_, 2, v___x_7298_);
lean_ctor_set(v___x_7300_, 3, v___x_7299_);
v___x_7301_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v___x_7293_);
lean_inc(v___x_7294_);
v___x_7302_ = l_Lean_Syntax_node2(v___x_7294_, v___x_7301_, v___x_7293_, v_b_7284_);
v___x_7303_ = l_Lean_Syntax_node2(v___x_7294_, v___x_7295_, v___x_7300_, v___x_7302_);
v_i_7282_ = v___x_7292_;
v_b_7284_ = v___x_7303_;
goto _start;
}
else
{
lean_object* v___x_7305_; 
lean_dec_ref(v___y_7285_);
v___x_7305_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7305_, 0, v_b_7284_);
lean_ctor_set(v___x_7305_, 1, v___y_7286_);
return v___x_7305_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___boxed(lean_object* v_as_7306_, lean_object* v_i_7307_, lean_object* v_stop_7308_, lean_object* v_b_7309_, lean_object* v___y_7310_, lean_object* v___y_7311_){
_start:
{
size_t v_i_boxed_7312_; size_t v_stop_boxed_7313_; lean_object* v_res_7314_; 
v_i_boxed_7312_ = lean_unbox_usize(v_i_7307_);
lean_dec(v_i_7307_);
v_stop_boxed_7313_ = lean_unbox_usize(v_stop_7308_);
lean_dec(v_stop_7308_);
v_res_7314_ = l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0(v_as_7306_, v_i_boxed_7312_, v_stop_boxed_7313_, v_b_7309_, v___y_7310_, v___y_7311_);
lean_dec_ref(v_as_7306_);
return v_res_7314_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple(lean_object* v_elems_7315_, lean_object* v_a_7316_, lean_object* v_a_7317_){
_start:
{
lean_object* v___x_7318_; lean_object* v___x_7319_; uint8_t v___x_7320_; 
v___x_7318_ = lean_array_get_size(v_elems_7315_);
v___x_7319_ = lean_unsigned_to_nat(0u);
v___x_7320_ = lean_nat_dec_eq(v___x_7318_, v___x_7319_);
if (v___x_7320_ == 0)
{
lean_object* v___x_7321_; uint8_t v___x_7322_; 
v___x_7321_ = lean_unsigned_to_nat(1u);
v___x_7322_ = lean_nat_dec_eq(v___x_7318_, v___x_7321_);
if (v___x_7322_ == 0)
{
lean_object* v___x_7323_; lean_object* v___x_7324_; lean_object* v___x_7325_; lean_object* v___x_7326_; lean_object* v___x_7327_; uint8_t v___x_7328_; 
v___x_7323_ = lean_box(0);
v___x_7324_ = lean_nat_sub(v___x_7318_, v___x_7321_);
v___x_7325_ = lean_array_get_borrowed(v___x_7323_, v_elems_7315_, v___x_7324_);
v___x_7326_ = l_Array_extract___redArg(v_elems_7315_, v___x_7319_, v___x_7324_);
v___x_7327_ = lean_array_get_size(v___x_7326_);
v___x_7328_ = lean_nat_dec_lt(v___x_7319_, v___x_7327_);
if (v___x_7328_ == 0)
{
lean_object* v___x_7329_; 
lean_dec_ref(v___x_7326_);
lean_dec_ref(v_a_7316_);
lean_inc(v___x_7325_);
v___x_7329_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7329_, 0, v___x_7325_);
lean_ctor_set(v___x_7329_, 1, v_a_7317_);
return v___x_7329_;
}
else
{
size_t v___x_7330_; size_t v___x_7331_; lean_object* v___x_7332_; 
v___x_7330_ = lean_usize_of_nat(v___x_7327_);
v___x_7331_ = ((size_t)0ULL);
lean_inc(v___x_7325_);
v___x_7332_ = l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0(v___x_7326_, v___x_7330_, v___x_7331_, v___x_7325_, v_a_7316_, v_a_7317_);
lean_dec_ref(v___x_7326_);
return v___x_7332_;
}
}
else
{
lean_object* v___x_7333_; lean_object* v___x_7334_; 
lean_dec_ref(v_a_7316_);
v___x_7333_ = lean_array_fget_borrowed(v_elems_7315_, v___x_7319_);
lean_inc(v___x_7333_);
v___x_7334_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7334_, 0, v___x_7333_);
lean_ctor_set(v___x_7334_, 1, v_a_7317_);
return v___x_7334_;
}
}
else
{
lean_object* v___x_7335_; 
v___x_7335_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit(v_a_7316_, v_a_7317_);
return v___x_7335_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple___boxed(lean_object* v_elems_7336_, lean_object* v_a_7337_, lean_object* v_a_7338_){
_start:
{
lean_object* v_res_7339_; 
v_res_7339_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple(v_elems_7336_, v_a_7337_, v_a_7338_);
lean_dec_ref(v_elems_7336_);
return v_res_7339_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_isDoExpr_x3f(lean_object* v_doElem_7340_){
_start:
{
lean_object* v___x_7341_; lean_object* v___x_7342_; uint8_t v___x_7343_; 
lean_inc(v_doElem_7340_);
v___x_7341_ = l_Lean_Syntax_getKind(v_doElem_7340_);
v___x_7342_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
v___x_7343_ = lean_name_eq(v___x_7341_, v___x_7342_);
lean_dec(v___x_7341_);
if (v___x_7343_ == 0)
{
lean_object* v___x_7344_; 
lean_dec(v_doElem_7340_);
v___x_7344_ = lean_box(0);
return v___x_7344_;
}
else
{
lean_object* v___x_7345_; lean_object* v___x_7346_; lean_object* v___x_7347_; 
v___x_7345_ = lean_unsigned_to_nat(0u);
v___x_7346_ = l_Lean_Syntax_getArg(v_doElem_7340_, v___x_7345_);
lean_dec(v_doElem_7340_);
v___x_7347_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_7347_, 0, v___x_7346_);
return v___x_7347_;
}
}
}
LEAN_EXPORT lean_object* l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0(lean_object* v_msg_7355_, lean_object* v___y_7356_, lean_object* v___y_7357_){
_start:
{
lean_object* v___f_7358_; lean_object* v___f_7359_; lean_object* v___f_7360_; lean_object* v___x_7361_; lean_object* v___x_7362_; lean_object* v___x_7363_; lean_object* v___x_7364_; lean_object* v___x_7365_; lean_object* v___x_7366_; lean_object* v___x_7367_; lean_object* v___x_7368_; lean_object* v___x_7369_; lean_object* v___f_7370_; lean_object* v___x_5337__overap_7371_; lean_object* v___x_7372_; 
v___f_7358_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0));
v___f_7359_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1));
v___f_7360_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2));
v___x_7361_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3));
v___x_7362_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7362_, 0, v___x_7361_);
lean_ctor_set(v___x_7362_, 1, v___f_7358_);
v___x_7363_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4));
v___x_7364_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5));
v___x_7365_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_7365_, 0, v___x_7362_);
lean_ctor_set(v___x_7365_, 1, v___x_7363_);
lean_ctor_set(v___x_7365_, 2, v___f_7359_);
lean_ctor_set(v___x_7365_, 3, v___f_7360_);
lean_ctor_set(v___x_7365_, 4, v___x_7364_);
v___x_7366_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6));
v___x_7367_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7367_, 0, v___x_7365_);
lean_ctor_set(v___x_7367_, 1, v___x_7366_);
v___x_7368_ = lean_box(0);
v___x_7369_ = l_instInhabitedOfMonad___redArg(v___x_7367_, v___x_7368_);
v___f_7370_ = lean_alloc_closure((void*)(l_instInhabitedForall___redArg___lam__0___boxed), 2, 1);
lean_closure_set(v___f_7370_, 0, v___x_7369_);
v___x_5337__overap_7371_ = lean_panic_fn(v___f_7370_, v_msg_7355_);
v___x_7372_ = lean_apply_2(v___x_5337__overap_7371_, v___y_7356_, v___y_7357_);
return v___x_7372_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1(void){
_start:
{
lean_object* v___x_7374_; lean_object* v___x_7375_; 
v___x_7374_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__0));
v___x_7375_ = l_String_toRawSubstring_x27(v___x_7374_);
return v___x_7375_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17(void){
_start:
{
lean_object* v___x_7405_; lean_object* v___x_7406_; lean_object* v___x_7407_; lean_object* v___x_7408_; lean_object* v___x_7409_; lean_object* v___x_7410_; 
v___x_7405_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_7406_ = lean_unsigned_to_nat(13u);
v___x_7407_ = lean_unsigned_to_nat(861u);
v___x_7408_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__15));
v___x_7409_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_7410_ = l_mkPanicMessageWithDecl(v___x_7409_, v___x_7408_, v___x_7407_, v___x_7406_, v___x_7405_);
return v___x_7410_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct(lean_object* v_as_7411_, lean_object* v_x_7412_, lean_object* v_body_7413_, lean_object* v_a_7414_, lean_object* v_a_7415_){
_start:
{
if (lean_obj_tag(v_as_7411_) == 1)
{
lean_object* v_head_7416_; lean_object* v_tail_7417_; lean_object* v___y_7419_; lean_object* v___y_7420_; 
v_head_7416_ = lean_ctor_get(v_as_7411_, 0);
lean_inc(v_head_7416_);
v_tail_7417_ = lean_ctor_get(v_as_7411_, 1);
lean_inc(v_tail_7417_);
lean_dec_ref(v_as_7411_);
if (lean_obj_tag(v_tail_7417_) == 1)
{
lean_object* v_tail_7479_; 
v_tail_7479_ = lean_ctor_get(v_tail_7417_, 1);
if (lean_obj_tag(v_tail_7479_) == 0)
{
lean_object* v_head_7480_; lean_object* v_ref_7481_; uint8_t v___x_7482_; lean_object* v___x_7483_; lean_object* v___x_7484_; lean_object* v___x_7485_; lean_object* v___x_7486_; lean_object* v___x_7487_; lean_object* v___x_7488_; lean_object* v___x_7489_; lean_object* v___x_7490_; lean_object* v___x_7491_; lean_object* v___x_7492_; lean_object* v___x_7493_; lean_object* v___x_7494_; lean_object* v___x_7495_; lean_object* v___x_7496_; lean_object* v___x_7497_; lean_object* v___x_7498_; lean_object* v___x_7499_; lean_object* v___x_7500_; lean_object* v___x_7501_; lean_object* v___x_7502_; lean_object* v___x_7503_; lean_object* v___x_7504_; lean_object* v___x_7505_; lean_object* v___x_7506_; lean_object* v___x_7507_; lean_object* v___x_7508_; lean_object* v___x_7509_; lean_object* v___x_7510_; lean_object* v___x_7511_; lean_object* v___x_7512_; lean_object* v___x_7513_; lean_object* v___x_7514_; lean_object* v___x_7515_; lean_object* v___x_7516_; lean_object* v___x_7517_; lean_object* v___x_7518_; lean_object* v___x_7519_; 
v_head_7480_ = lean_ctor_get(v_tail_7417_, 0);
lean_inc(v_head_7480_);
lean_dec_ref(v_tail_7417_);
v_ref_7481_ = lean_ctor_get(v_a_7414_, 5);
lean_inc(v_ref_7481_);
lean_dec_ref(v_a_7414_);
v___x_7482_ = 0;
v___x_7483_ = l_Lean_SourceInfo_fromRef(v_ref_7481_, v___x_7482_);
lean_dec(v_ref_7481_);
v___x_7484_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_7485_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_7483_);
v___x_7486_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7486_, 0, v___x_7483_);
lean_ctor_set(v___x_7486_, 1, v___x_7484_);
v___x_7487_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_7488_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7489_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_7483_);
v___x_7490_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_7490_, 0, v___x_7483_);
lean_ctor_set(v___x_7490_, 1, v___x_7488_);
lean_ctor_set(v___x_7490_, 2, v___x_7489_);
lean_inc_ref(v___x_7490_);
lean_inc(v___x_7483_);
v___x_7491_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7487_, v___x_7490_);
v___x_7492_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_7493_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_7494_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v___x_7483_);
v___x_7495_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7494_, v_head_7416_);
v___x_7496_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_7483_);
v___x_7497_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7497_, 0, v___x_7483_);
lean_ctor_set(v___x_7497_, 1, v___x_7496_);
v___x_7498_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_7499_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_7483_);
v___x_7500_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7500_, 0, v___x_7483_);
lean_ctor_set(v___x_7500_, 1, v___x_7499_);
v___x_7501_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_7502_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12));
lean_inc(v___x_7483_);
v___x_7503_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7503_, 0, v___x_7483_);
lean_ctor_set(v___x_7503_, 1, v___x_7502_);
lean_inc(v___x_7483_);
v___x_7504_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7501_, v___x_7503_);
lean_inc_ref(v___x_7500_);
lean_inc(v_x_7412_);
lean_inc(v___x_7483_);
v___x_7505_ = l_Lean_Syntax_node3(v___x_7483_, v___x_7498_, v_x_7412_, v___x_7500_, v___x_7504_);
lean_inc_ref(v___x_7497_);
lean_inc_ref_n(v___x_7490_, 2);
lean_inc(v___x_7483_);
v___x_7506_ = l_Lean_Syntax_node5(v___x_7483_, v___x_7493_, v___x_7495_, v___x_7490_, v___x_7490_, v___x_7497_, v___x_7505_);
lean_inc(v___x_7483_);
v___x_7507_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7492_, v___x_7506_);
v___x_7508_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_7483_);
v___x_7509_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7509_, 0, v___x_7483_);
lean_ctor_set(v___x_7509_, 1, v___x_7508_);
lean_inc(v___x_7483_);
v___x_7510_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7494_, v_head_7480_);
v___x_7511_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v___x_7483_);
v___x_7512_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7512_, 0, v___x_7483_);
lean_ctor_set(v___x_7512_, 1, v___x_7511_);
lean_inc(v___x_7483_);
v___x_7513_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7501_, v___x_7512_);
lean_inc(v___x_7483_);
v___x_7514_ = l_Lean_Syntax_node3(v___x_7483_, v___x_7498_, v_x_7412_, v___x_7500_, v___x_7513_);
lean_inc_ref(v___x_7490_);
lean_inc(v___x_7483_);
v___x_7515_ = l_Lean_Syntax_node5(v___x_7483_, v___x_7493_, v___x_7510_, v___x_7490_, v___x_7490_, v___x_7497_, v___x_7514_);
lean_inc(v___x_7483_);
v___x_7516_ = l_Lean_Syntax_node1(v___x_7483_, v___x_7492_, v___x_7515_);
lean_inc_ref(v___x_7509_);
lean_inc(v___x_7491_);
lean_inc_ref(v___x_7486_);
lean_inc(v___x_7483_);
v___x_7517_ = l_Lean_Syntax_node5(v___x_7483_, v___x_7485_, v___x_7486_, v___x_7491_, v___x_7516_, v___x_7509_, v_body_7413_);
v___x_7518_ = l_Lean_Syntax_node5(v___x_7483_, v___x_7485_, v___x_7486_, v___x_7491_, v___x_7507_, v___x_7509_, v___x_7517_);
v___x_7519_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7519_, 0, v___x_7518_);
lean_ctor_set(v___x_7519_, 1, v_a_7415_);
return v___x_7519_;
}
else
{
v___y_7419_ = v_a_7414_;
v___y_7420_ = v_a_7415_;
goto v___jp_7418_;
}
}
else
{
v___y_7419_ = v_a_7414_;
v___y_7420_ = v_a_7415_;
goto v___jp_7418_;
}
v___jp_7418_:
{
lean_object* v_macroScope_7421_; lean_object* v_traceMsgs_7422_; lean_object* v_expandedMacroDecls_7423_; lean_object* v_methods_7424_; lean_object* v_quotContext_7425_; lean_object* v_currRecDepth_7426_; lean_object* v_maxRecDepth_7427_; lean_object* v_ref_7428_; lean_object* v___x_7429_; lean_object* v___x_7430_; lean_object* v___x_7431_; lean_object* v___x_7432_; uint8_t v___x_7433_; lean_object* v___x_7434_; lean_object* v___x_7435_; lean_object* v___x_7436_; lean_object* v___x_7437_; lean_object* v___x_7438_; lean_object* v___x_7439_; lean_object* v___x_7440_; 
v_macroScope_7421_ = lean_ctor_get(v___y_7420_, 0);
lean_inc(v_macroScope_7421_);
v_traceMsgs_7422_ = lean_ctor_get(v___y_7420_, 1);
lean_inc(v_traceMsgs_7422_);
v_expandedMacroDecls_7423_ = lean_ctor_get(v___y_7420_, 2);
lean_inc(v_expandedMacroDecls_7423_);
lean_dec_ref(v___y_7420_);
v_methods_7424_ = lean_ctor_get(v___y_7419_, 0);
lean_inc(v_methods_7424_);
v_quotContext_7425_ = lean_ctor_get(v___y_7419_, 1);
lean_inc(v_quotContext_7425_);
v_currRecDepth_7426_ = lean_ctor_get(v___y_7419_, 3);
lean_inc(v_currRecDepth_7426_);
v_maxRecDepth_7427_ = lean_ctor_get(v___y_7419_, 4);
lean_inc(v_maxRecDepth_7427_);
v_ref_7428_ = lean_ctor_get(v___y_7419_, 5);
lean_inc(v_ref_7428_);
lean_dec_ref(v___y_7419_);
v___x_7429_ = lean_unsigned_to_nat(1u);
v___x_7430_ = lean_nat_add(v_macroScope_7421_, v___x_7429_);
v___x_7431_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_7431_, 0, v___x_7430_);
lean_ctor_set(v___x_7431_, 1, v_traceMsgs_7422_);
lean_ctor_set(v___x_7431_, 2, v_expandedMacroDecls_7423_);
lean_inc(v_ref_7428_);
lean_inc(v_macroScope_7421_);
lean_inc(v_quotContext_7425_);
v___x_7432_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_7432_, 0, v_methods_7424_);
lean_ctor_set(v___x_7432_, 1, v_quotContext_7425_);
lean_ctor_set(v___x_7432_, 2, v_macroScope_7421_);
lean_ctor_set(v___x_7432_, 3, v_currRecDepth_7426_);
lean_ctor_set(v___x_7432_, 4, v_maxRecDepth_7427_);
lean_ctor_set(v___x_7432_, 5, v_ref_7428_);
v___x_7433_ = 0;
v___x_7434_ = l_Lean_SourceInfo_fromRef(v_ref_7428_, v___x_7433_);
lean_dec(v_ref_7428_);
v___x_7435_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__1);
v___x_7436_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__2));
v___x_7437_ = l_Lean_addMacroScope(v_quotContext_7425_, v___x_7436_, v_macroScope_7421_);
v___x_7438_ = lean_box(0);
lean_inc(v___x_7434_);
v___x_7439_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7439_, 0, v___x_7434_);
lean_ctor_set(v___x_7439_, 1, v___x_7435_);
lean_ctor_set(v___x_7439_, 2, v___x_7437_);
lean_ctor_set(v___x_7439_, 3, v___x_7438_);
lean_inc_ref(v___x_7439_);
v___x_7440_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct(v_tail_7417_, v___x_7439_, v_body_7413_, v___x_7432_, v___x_7431_);
if (lean_obj_tag(v___x_7440_) == 0)
{
lean_object* v_a_7441_; lean_object* v_a_7442_; lean_object* v___x_7443_; lean_object* v___x_7444_; lean_object* v___x_7445_; lean_object* v___x_7446_; lean_object* v___x_7447_; lean_object* v___x_7448_; lean_object* v___x_7449_; lean_object* v___x_7450_; lean_object* v___x_7451_; lean_object* v___x_7452_; lean_object* v___x_7453_; lean_object* v___x_7454_; lean_object* v___x_7455_; lean_object* v___x_7456_; lean_object* v___x_7457_; lean_object* v___x_7458_; lean_object* v___x_7459_; lean_object* v___x_7460_; lean_object* v___x_7461_; lean_object* v___x_7462_; lean_object* v___x_7463_; lean_object* v___x_7464_; lean_object* v___x_7465_; lean_object* v___x_7466_; lean_object* v___x_7467_; lean_object* v___x_7468_; lean_object* v___x_7469_; lean_object* v___x_7470_; lean_object* v___x_7471_; lean_object* v___x_7472_; lean_object* v___x_7473_; lean_object* v___x_7474_; lean_object* v___x_7475_; lean_object* v___x_7476_; lean_object* v___x_7477_; lean_object* v___x_7478_; 
v_a_7441_ = lean_ctor_get(v___x_7440_, 0);
lean_inc(v_a_7441_);
v_a_7442_ = lean_ctor_get(v___x_7440_, 1);
lean_inc(v_a_7442_);
lean_dec_ref(v___x_7440_);
v___x_7443_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_7444_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_7434_);
v___x_7445_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7445_, 0, v___x_7434_);
lean_ctor_set(v___x_7445_, 1, v___x_7443_);
v___x_7446_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_7447_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7448_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_7434_);
v___x_7449_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_7449_, 0, v___x_7434_);
lean_ctor_set(v___x_7449_, 1, v___x_7447_);
lean_ctor_set(v___x_7449_, 2, v___x_7448_);
lean_inc_ref(v___x_7449_);
lean_inc(v___x_7434_);
v___x_7450_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7446_, v___x_7449_);
v___x_7451_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_7452_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_7453_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v___x_7434_);
v___x_7454_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7453_, v_head_7416_);
v___x_7455_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_7434_);
v___x_7456_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7456_, 0, v___x_7434_);
lean_ctor_set(v___x_7456_, 1, v___x_7455_);
v___x_7457_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_7458_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_7434_);
v___x_7459_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7459_, 0, v___x_7434_);
lean_ctor_set(v___x_7459_, 1, v___x_7458_);
v___x_7460_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_7461_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12));
lean_inc(v___x_7434_);
v___x_7462_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7462_, 0, v___x_7434_);
lean_ctor_set(v___x_7462_, 1, v___x_7461_);
lean_inc(v___x_7434_);
v___x_7463_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7460_, v___x_7462_);
lean_inc_ref(v___x_7459_);
lean_inc(v_x_7412_);
lean_inc(v___x_7434_);
v___x_7464_ = l_Lean_Syntax_node3(v___x_7434_, v___x_7457_, v_x_7412_, v___x_7459_, v___x_7463_);
lean_inc_ref(v___x_7456_);
lean_inc_ref_n(v___x_7449_, 2);
lean_inc(v___x_7434_);
v___x_7465_ = l_Lean_Syntax_node5(v___x_7434_, v___x_7452_, v___x_7454_, v___x_7449_, v___x_7449_, v___x_7456_, v___x_7464_);
lean_inc(v___x_7434_);
v___x_7466_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7451_, v___x_7465_);
v___x_7467_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_7434_);
v___x_7468_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7468_, 0, v___x_7434_);
lean_ctor_set(v___x_7468_, 1, v___x_7467_);
lean_inc(v___x_7434_);
v___x_7469_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7453_, v___x_7439_);
v___x_7470_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v___x_7434_);
v___x_7471_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7471_, 0, v___x_7434_);
lean_ctor_set(v___x_7471_, 1, v___x_7470_);
lean_inc(v___x_7434_);
v___x_7472_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7460_, v___x_7471_);
lean_inc(v___x_7434_);
v___x_7473_ = l_Lean_Syntax_node3(v___x_7434_, v___x_7457_, v_x_7412_, v___x_7459_, v___x_7472_);
lean_inc_ref(v___x_7449_);
lean_inc(v___x_7434_);
v___x_7474_ = l_Lean_Syntax_node5(v___x_7434_, v___x_7452_, v___x_7469_, v___x_7449_, v___x_7449_, v___x_7456_, v___x_7473_);
lean_inc(v___x_7434_);
v___x_7475_ = l_Lean_Syntax_node1(v___x_7434_, v___x_7451_, v___x_7474_);
lean_inc_ref(v___x_7468_);
lean_inc(v___x_7450_);
lean_inc_ref(v___x_7445_);
lean_inc(v___x_7434_);
v___x_7476_ = l_Lean_Syntax_node5(v___x_7434_, v___x_7444_, v___x_7445_, v___x_7450_, v___x_7475_, v___x_7468_, v_a_7441_);
v___x_7477_ = l_Lean_Syntax_node5(v___x_7434_, v___x_7444_, v___x_7445_, v___x_7450_, v___x_7466_, v___x_7468_, v___x_7476_);
v___x_7478_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7478_, 0, v___x_7477_);
lean_ctor_set(v___x_7478_, 1, v_a_7442_);
return v___x_7478_;
}
else
{
lean_dec_ref(v___x_7439_);
lean_dec(v___x_7434_);
lean_dec(v_head_7416_);
lean_dec(v_x_7412_);
return v___x_7440_;
}
}
}
else
{
lean_object* v___x_7520_; lean_object* v___x_7521_; 
lean_dec(v_body_7413_);
lean_dec(v_x_7412_);
lean_dec(v_as_7411_);
v___x_7520_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__17);
v___x_7521_ = l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0(v___x_7520_, v_a_7414_, v_a_7415_);
return v___x_7521_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple(lean_object* v_uvars_7522_, lean_object* v_x_7523_, lean_object* v_body_7524_, lean_object* v_a_7525_, lean_object* v_a_7526_){
_start:
{
lean_object* v___x_7527_; lean_object* v___x_7528_; uint8_t v___x_7529_; 
v___x_7527_ = lean_array_get_size(v_uvars_7522_);
v___x_7528_ = lean_unsigned_to_nat(0u);
v___x_7529_ = lean_nat_dec_eq(v___x_7527_, v___x_7528_);
if (v___x_7529_ == 0)
{
lean_object* v___x_7530_; uint8_t v___x_7531_; 
v___x_7530_ = lean_unsigned_to_nat(1u);
v___x_7531_ = lean_nat_dec_eq(v___x_7527_, v___x_7530_);
if (v___x_7531_ == 0)
{
lean_object* v___x_7532_; lean_object* v___x_7533_; 
v___x_7532_ = lean_array_to_list(v_uvars_7522_);
v___x_7533_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct(v___x_7532_, v_x_7523_, v_body_7524_, v_a_7525_, v_a_7526_);
return v___x_7533_;
}
else
{
lean_object* v_ref_7534_; lean_object* v___x_7535_; lean_object* v___x_7536_; lean_object* v___x_7537_; lean_object* v___x_7538_; lean_object* v___x_7539_; lean_object* v___x_7540_; lean_object* v___x_7541_; lean_object* v___x_7542_; lean_object* v___x_7543_; lean_object* v___x_7544_; lean_object* v___x_7545_; lean_object* v___x_7546_; lean_object* v___x_7547_; lean_object* v___x_7548_; lean_object* v___x_7549_; lean_object* v___x_7550_; lean_object* v___x_7551_; lean_object* v___x_7552_; lean_object* v___x_7553_; lean_object* v___x_7554_; lean_object* v___x_7555_; lean_object* v___x_7556_; 
v_ref_7534_ = lean_ctor_get(v_a_7525_, 5);
lean_inc(v_ref_7534_);
lean_dec_ref(v_a_7525_);
v___x_7535_ = l_Lean_SourceInfo_fromRef(v_ref_7534_, v___x_7529_);
lean_dec(v_ref_7534_);
v___x_7536_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_7537_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_7535_);
v___x_7538_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7538_, 0, v___x_7535_);
lean_ctor_set(v___x_7538_, 1, v___x_7536_);
v___x_7539_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_7540_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7541_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_7535_);
v___x_7542_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_7542_, 0, v___x_7535_);
lean_ctor_set(v___x_7542_, 1, v___x_7540_);
lean_ctor_set(v___x_7542_, 2, v___x_7541_);
lean_inc_ref(v___x_7542_);
lean_inc(v___x_7535_);
v___x_7543_ = l_Lean_Syntax_node1(v___x_7535_, v___x_7539_, v___x_7542_);
v___x_7544_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_7545_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_7546_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
v___x_7547_ = lean_array_fget(v_uvars_7522_, v___x_7528_);
lean_dec_ref(v_uvars_7522_);
lean_inc(v___x_7535_);
v___x_7548_ = l_Lean_Syntax_node1(v___x_7535_, v___x_7546_, v___x_7547_);
v___x_7549_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_7535_);
v___x_7550_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7550_, 0, v___x_7535_);
lean_ctor_set(v___x_7550_, 1, v___x_7549_);
lean_inc_ref(v___x_7542_);
lean_inc(v___x_7535_);
v___x_7551_ = l_Lean_Syntax_node5(v___x_7535_, v___x_7545_, v___x_7548_, v___x_7542_, v___x_7542_, v___x_7550_, v_x_7523_);
lean_inc(v___x_7535_);
v___x_7552_ = l_Lean_Syntax_node1(v___x_7535_, v___x_7544_, v___x_7551_);
v___x_7553_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_7535_);
v___x_7554_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7554_, 0, v___x_7535_);
lean_ctor_set(v___x_7554_, 1, v___x_7553_);
v___x_7555_ = l_Lean_Syntax_node5(v___x_7535_, v___x_7537_, v___x_7538_, v___x_7543_, v___x_7552_, v___x_7554_, v_body_7524_);
v___x_7556_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7556_, 0, v___x_7555_);
lean_ctor_set(v___x_7556_, 1, v_a_7526_);
return v___x_7556_;
}
}
else
{
lean_object* v___x_7557_; 
lean_dec_ref(v_a_7525_);
lean_dec(v_x_7523_);
lean_dec_ref(v_uvars_7522_);
v___x_7557_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7557_, 0, v_body_7524_);
lean_ctor_set(v___x_7557_, 1, v_a_7526_);
return v___x_7557_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1(lean_object* v_info_7563_, lean_object* v_ref_7564_, lean_object* v_term_7565_, lean_object* v_toPure_7566_, lean_object* v_quotCtx_7567_){
_start:
{
lean_object* v___x_7568_; lean_object* v___x_7569_; lean_object* v___x_7570_; lean_object* v___x_7571_; lean_object* v___x_7572_; 
v___x_7568_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1));
v___x_7569_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2));
lean_inc(v_info_7563_);
v___x_7570_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7570_, 0, v_info_7563_);
lean_ctor_set(v___x_7570_, 1, v___x_7569_);
v___x_7571_ = l_Lean_Syntax_node3(v_info_7563_, v___x_7568_, v___x_7570_, v_ref_7564_, v_term_7565_);
v___x_7572_ = lean_apply_2(v_toPure_7566_, lean_box(0), v___x_7571_);
return v___x_7572_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__1___boxed(lean_object* v_info_7573_, lean_object* v_ref_7574_, lean_object* v_term_7575_, lean_object* v_toPure_7576_, lean_object* v_quotCtx_7577_){
_start:
{
lean_object* v_res_7578_; 
v_res_7578_ = l_Lean_Elab_Term_Do_annotate___redArg___lam__1(v_info_7573_, v_ref_7574_, v_term_7575_, v_toPure_7576_, v_quotCtx_7577_);
lean_dec(v_quotCtx_7577_);
return v_res_7578_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__2(lean_object* v_inst_7579_, lean_object* v_ref_7580_, lean_object* v_term_7581_, lean_object* v_toPure_7582_, lean_object* v_toBind_7583_, lean_object* v_info_7584_){
_start:
{
lean_object* v_getCurrMacroScope_7585_; lean_object* v_getContext_7586_; lean_object* v___f_7587_; lean_object* v___f_7588_; lean_object* v___x_7589_; 
v_getCurrMacroScope_7585_ = lean_ctor_get(v_inst_7579_, 1);
lean_inc(v_getCurrMacroScope_7585_);
v_getContext_7586_ = lean_ctor_get(v_inst_7579_, 2);
lean_inc(v_getContext_7586_);
lean_dec_ref(v_inst_7579_);
v___f_7587_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___boxed), 5, 4);
lean_closure_set(v___f_7587_, 0, v_info_7584_);
lean_closure_set(v___f_7587_, 1, v_ref_7580_);
lean_closure_set(v___f_7587_, 2, v_term_7581_);
lean_closure_set(v___f_7587_, 3, v_toPure_7582_);
lean_inc(v_toBind_7583_);
v___f_7588_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__8___boxed), 4, 3);
lean_closure_set(v___f_7588_, 0, v_toBind_7583_);
lean_closure_set(v___f_7588_, 1, v_getContext_7586_);
lean_closure_set(v___f_7588_, 2, v___f_7587_);
v___x_7589_ = lean_apply_4(v_toBind_7583_, lean_box(0), lean_box(0), v_getCurrMacroScope_7585_, v___f_7588_);
return v___x_7589_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__0(lean_object* v_term_7590_, lean_object* v_withRef_7591_, lean_object* v___x_7592_, lean_object* v_oldRef_7593_){
_start:
{
lean_object* v_ref_7594_; lean_object* v___x_7595_; 
v_ref_7594_ = l_Lean_replaceRef(v_term_7590_, v_oldRef_7593_);
v___x_7595_ = lean_apply_3(v_withRef_7591_, lean_box(0), v_ref_7594_, v___x_7592_);
return v___x_7595_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg___lam__0___boxed(lean_object* v_term_7596_, lean_object* v_withRef_7597_, lean_object* v___x_7598_, lean_object* v_oldRef_7599_){
_start:
{
lean_object* v_res_7600_; 
v_res_7600_ = l_Lean_Elab_Term_Do_annotate___redArg___lam__0(v_term_7596_, v_withRef_7597_, v___x_7598_, v_oldRef_7599_);
lean_dec(v_oldRef_7599_);
lean_dec(v_term_7596_);
return v_res_7600_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___redArg(lean_object* v_inst_7601_, lean_object* v_inst_7602_, lean_object* v_inst_7603_, lean_object* v_ref_7604_, lean_object* v_term_7605_){
_start:
{
lean_object* v_toApplicative_7606_; lean_object* v_toBind_7607_; lean_object* v_getRef_7608_; lean_object* v_withRef_7609_; lean_object* v_toPure_7610_; lean_object* v___f_7611_; lean_object* v___f_7612_; lean_object* v___x_7613_; lean_object* v___x_7614_; lean_object* v___f_7615_; lean_object* v___x_7616_; 
v_toApplicative_7606_ = lean_ctor_get(v_inst_7601_, 0);
lean_inc_ref(v_toApplicative_7606_);
v_toBind_7607_ = lean_ctor_get(v_inst_7601_, 1);
lean_inc(v_toBind_7607_);
lean_dec_ref(v_inst_7601_);
v_getRef_7608_ = lean_ctor_get(v_inst_7602_, 0);
lean_inc(v_getRef_7608_);
v_withRef_7609_ = lean_ctor_get(v_inst_7602_, 1);
lean_inc(v_withRef_7609_);
lean_dec_ref(v_inst_7602_);
v_toPure_7610_ = lean_ctor_get(v_toApplicative_7606_, 1);
lean_inc(v_toPure_7610_);
lean_dec_ref(v_toApplicative_7606_);
lean_inc(v_toPure_7610_);
v___f_7611_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__6___boxed), 2, 1);
lean_closure_set(v___f_7611_, 0, v_toPure_7610_);
lean_inc(v_toBind_7607_);
lean_inc(v_term_7605_);
v___f_7612_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__2), 6, 5);
lean_closure_set(v___f_7612_, 0, v_inst_7603_);
lean_closure_set(v___f_7612_, 1, v_ref_7604_);
lean_closure_set(v___f_7612_, 2, v_term_7605_);
lean_closure_set(v___f_7612_, 3, v_toPure_7610_);
lean_closure_set(v___f_7612_, 4, v_toBind_7607_);
lean_inc(v_toBind_7607_);
lean_inc(v_getRef_7608_);
v___x_7613_ = lean_apply_4(v_toBind_7607_, lean_box(0), lean_box(0), v_getRef_7608_, v___f_7611_);
lean_inc(v_toBind_7607_);
v___x_7614_ = lean_apply_4(v_toBind_7607_, lean_box(0), lean_box(0), v___x_7613_, v___f_7612_);
v___f_7615_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__0___boxed), 4, 3);
lean_closure_set(v___f_7615_, 0, v_term_7605_);
lean_closure_set(v___f_7615_, 1, v_withRef_7609_);
lean_closure_set(v___f_7615_, 2, v___x_7614_);
v___x_7616_ = lean_apply_4(v_toBind_7607_, lean_box(0), lean_box(0), v_getRef_7608_, v___f_7615_);
return v___x_7616_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate(lean_object* v_m_7617_, lean_object* v_inst_7618_, lean_object* v_inst_7619_, lean_object* v_inst_7620_, lean_object* v_ref_7621_, lean_object* v_term_7622_){
_start:
{
lean_object* v___x_7623_; 
v___x_7623_ = l_Lean_Elab_Term_Do_annotate___redArg(v_inst_7618_, v_inst_7619_, v_inst_7620_, v_ref_7621_, v_term_7622_);
return v___x_7623_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx(uint8_t v_x_7624_){
_start:
{
switch(v_x_7624_)
{
case 0:
{
lean_object* v___x_7625_; 
v___x_7625_ = lean_unsigned_to_nat(0u);
return v___x_7625_;
}
case 1:
{
lean_object* v___x_7626_; 
v___x_7626_ = lean_unsigned_to_nat(1u);
return v___x_7626_;
}
case 2:
{
lean_object* v___x_7627_; 
v___x_7627_ = lean_unsigned_to_nat(2u);
return v___x_7627_;
}
case 3:
{
lean_object* v___x_7628_; 
v___x_7628_ = lean_unsigned_to_nat(3u);
return v___x_7628_;
}
case 4:
{
lean_object* v___x_7629_; 
v___x_7629_ = lean_unsigned_to_nat(4u);
return v___x_7629_;
}
case 5:
{
lean_object* v___x_7630_; 
v___x_7630_ = lean_unsigned_to_nat(5u);
return v___x_7630_;
}
default: 
{
lean_object* v___x_7631_; 
v___x_7631_ = lean_unsigned_to_nat(6u);
return v___x_7631_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx___boxed(lean_object* v_x_7632_){
_start:
{
uint8_t v_x_boxed_7633_; lean_object* v_res_7634_; 
v_x_boxed_7633_ = lean_unbox(v_x_7632_);
v_res_7634_ = l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx(v_x_boxed_7633_);
return v_res_7634_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_toCtorIdx(uint8_t v_x_7635_){
_start:
{
lean_object* v___x_7636_; 
v___x_7636_ = l_Lean_Elab_Term_Do_ToTerm_Kind_ctorIdx(v_x_7635_);
return v___x_7636_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_toCtorIdx___boxed(lean_object* v_x_7637_){
_start:
{
uint8_t v_x_4__boxed_7638_; lean_object* v_res_7639_; 
v_x_4__boxed_7638_ = lean_unbox(v_x_7637_);
v_res_7639_ = l_Lean_Elab_Term_Do_ToTerm_Kind_toCtorIdx(v_x_4__boxed_7638_);
return v_res_7639_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___redArg(lean_object* v_k_7640_){
_start:
{
lean_inc(v_k_7640_);
return v_k_7640_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___redArg___boxed(lean_object* v_k_7641_){
_start:
{
lean_object* v_res_7642_; 
v_res_7642_ = l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___redArg(v_k_7641_);
lean_dec(v_k_7641_);
return v_res_7642_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim(lean_object* v_motive_7643_, lean_object* v_ctorIdx_7644_, uint8_t v_t_7645_, lean_object* v_h_7646_, lean_object* v_k_7647_){
_start:
{
lean_inc(v_k_7647_);
return v_k_7647_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim___boxed(lean_object* v_motive_7648_, lean_object* v_ctorIdx_7649_, lean_object* v_t_7650_, lean_object* v_h_7651_, lean_object* v_k_7652_){
_start:
{
uint8_t v_t_boxed_7653_; lean_object* v_res_7654_; 
v_t_boxed_7653_ = lean_unbox(v_t_7650_);
v_res_7654_ = l_Lean_Elab_Term_Do_ToTerm_Kind_ctorElim(v_motive_7648_, v_ctorIdx_7649_, v_t_boxed_7653_, v_h_7651_, v_k_7652_);
lean_dec(v_k_7652_);
lean_dec(v_ctorIdx_7649_);
return v_res_7654_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___redArg(lean_object* v_regular_7655_){
_start:
{
lean_inc(v_regular_7655_);
return v_regular_7655_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___redArg___boxed(lean_object* v_regular_7656_){
_start:
{
lean_object* v_res_7657_; 
v_res_7657_ = l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___redArg(v_regular_7656_);
lean_dec(v_regular_7656_);
return v_res_7657_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim(lean_object* v_motive_7658_, uint8_t v_t_7659_, lean_object* v_h_7660_, lean_object* v_regular_7661_){
_start:
{
lean_inc(v_regular_7661_);
return v_regular_7661_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim___boxed(lean_object* v_motive_7662_, lean_object* v_t_7663_, lean_object* v_h_7664_, lean_object* v_regular_7665_){
_start:
{
uint8_t v_t_boxed_7666_; lean_object* v_res_7667_; 
v_t_boxed_7666_ = lean_unbox(v_t_7663_);
v_res_7667_ = l_Lean_Elab_Term_Do_ToTerm_Kind_regular_elim(v_motive_7662_, v_t_boxed_7666_, v_h_7664_, v_regular_7665_);
lean_dec(v_regular_7665_);
return v_res_7667_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___redArg(lean_object* v_forIn_7668_){
_start:
{
lean_inc(v_forIn_7668_);
return v_forIn_7668_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___redArg___boxed(lean_object* v_forIn_7669_){
_start:
{
lean_object* v_res_7670_; 
v_res_7670_ = l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___redArg(v_forIn_7669_);
lean_dec(v_forIn_7669_);
return v_res_7670_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim(lean_object* v_motive_7671_, uint8_t v_t_7672_, lean_object* v_h_7673_, lean_object* v_forIn_7674_){
_start:
{
lean_inc(v_forIn_7674_);
return v_forIn_7674_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim___boxed(lean_object* v_motive_7675_, lean_object* v_t_7676_, lean_object* v_h_7677_, lean_object* v_forIn_7678_){
_start:
{
uint8_t v_t_boxed_7679_; lean_object* v_res_7680_; 
v_t_boxed_7679_ = lean_unbox(v_t_7676_);
v_res_7680_ = l_Lean_Elab_Term_Do_ToTerm_Kind_forIn_elim(v_motive_7675_, v_t_boxed_7679_, v_h_7677_, v_forIn_7678_);
lean_dec(v_forIn_7678_);
return v_res_7680_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___redArg(lean_object* v_forInWithReturn_7681_){
_start:
{
lean_inc(v_forInWithReturn_7681_);
return v_forInWithReturn_7681_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___redArg___boxed(lean_object* v_forInWithReturn_7682_){
_start:
{
lean_object* v_res_7683_; 
v_res_7683_ = l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___redArg(v_forInWithReturn_7682_);
lean_dec(v_forInWithReturn_7682_);
return v_res_7683_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim(lean_object* v_motive_7684_, uint8_t v_t_7685_, lean_object* v_h_7686_, lean_object* v_forInWithReturn_7687_){
_start:
{
lean_inc(v_forInWithReturn_7687_);
return v_forInWithReturn_7687_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim___boxed(lean_object* v_motive_7688_, lean_object* v_t_7689_, lean_object* v_h_7690_, lean_object* v_forInWithReturn_7691_){
_start:
{
uint8_t v_t_boxed_7692_; lean_object* v_res_7693_; 
v_t_boxed_7692_ = lean_unbox(v_t_7689_);
v_res_7693_ = l_Lean_Elab_Term_Do_ToTerm_Kind_forInWithReturn_elim(v_motive_7688_, v_t_boxed_7692_, v_h_7690_, v_forInWithReturn_7691_);
lean_dec(v_forInWithReturn_7691_);
return v_res_7693_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___redArg(lean_object* v_nestedBC_7694_){
_start:
{
lean_inc(v_nestedBC_7694_);
return v_nestedBC_7694_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___redArg___boxed(lean_object* v_nestedBC_7695_){
_start:
{
lean_object* v_res_7696_; 
v_res_7696_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___redArg(v_nestedBC_7695_);
lean_dec(v_nestedBC_7695_);
return v_res_7696_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim(lean_object* v_motive_7697_, uint8_t v_t_7698_, lean_object* v_h_7699_, lean_object* v_nestedBC_7700_){
_start:
{
lean_inc(v_nestedBC_7700_);
return v_nestedBC_7700_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim___boxed(lean_object* v_motive_7701_, lean_object* v_t_7702_, lean_object* v_h_7703_, lean_object* v_nestedBC_7704_){
_start:
{
uint8_t v_t_boxed_7705_; lean_object* v_res_7706_; 
v_t_boxed_7705_ = lean_unbox(v_t_7702_);
v_res_7706_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedBC_elim(v_motive_7701_, v_t_boxed_7705_, v_h_7703_, v_nestedBC_7704_);
lean_dec(v_nestedBC_7704_);
return v_res_7706_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___redArg(lean_object* v_nestedPR_7707_){
_start:
{
lean_inc(v_nestedPR_7707_);
return v_nestedPR_7707_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___redArg___boxed(lean_object* v_nestedPR_7708_){
_start:
{
lean_object* v_res_7709_; 
v_res_7709_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___redArg(v_nestedPR_7708_);
lean_dec(v_nestedPR_7708_);
return v_res_7709_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim(lean_object* v_motive_7710_, uint8_t v_t_7711_, lean_object* v_h_7712_, lean_object* v_nestedPR_7713_){
_start:
{
lean_inc(v_nestedPR_7713_);
return v_nestedPR_7713_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim___boxed(lean_object* v_motive_7714_, lean_object* v_t_7715_, lean_object* v_h_7716_, lean_object* v_nestedPR_7717_){
_start:
{
uint8_t v_t_boxed_7718_; lean_object* v_res_7719_; 
v_t_boxed_7718_ = lean_unbox(v_t_7715_);
v_res_7719_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPR_elim(v_motive_7714_, v_t_boxed_7718_, v_h_7716_, v_nestedPR_7717_);
lean_dec(v_nestedPR_7717_);
return v_res_7719_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___redArg(lean_object* v_nestedSBC_7720_){
_start:
{
lean_inc(v_nestedSBC_7720_);
return v_nestedSBC_7720_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___redArg___boxed(lean_object* v_nestedSBC_7721_){
_start:
{
lean_object* v_res_7722_; 
v_res_7722_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___redArg(v_nestedSBC_7721_);
lean_dec(v_nestedSBC_7721_);
return v_res_7722_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim(lean_object* v_motive_7723_, uint8_t v_t_7724_, lean_object* v_h_7725_, lean_object* v_nestedSBC_7726_){
_start:
{
lean_inc(v_nestedSBC_7726_);
return v_nestedSBC_7726_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim___boxed(lean_object* v_motive_7727_, lean_object* v_t_7728_, lean_object* v_h_7729_, lean_object* v_nestedSBC_7730_){
_start:
{
uint8_t v_t_boxed_7731_; lean_object* v_res_7732_; 
v_t_boxed_7731_ = lean_unbox(v_t_7728_);
v_res_7732_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedSBC_elim(v_motive_7727_, v_t_boxed_7731_, v_h_7729_, v_nestedSBC_7730_);
lean_dec(v_nestedSBC_7730_);
return v_res_7732_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___redArg(lean_object* v_nestedPRBC_7733_){
_start:
{
lean_inc(v_nestedPRBC_7733_);
return v_nestedPRBC_7733_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___redArg___boxed(lean_object* v_nestedPRBC_7734_){
_start:
{
lean_object* v_res_7735_; 
v_res_7735_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___redArg(v_nestedPRBC_7734_);
lean_dec(v_nestedPRBC_7734_);
return v_res_7735_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim(lean_object* v_motive_7736_, uint8_t v_t_7737_, lean_object* v_h_7738_, lean_object* v_nestedPRBC_7739_){
_start:
{
lean_inc(v_nestedPRBC_7739_);
return v_nestedPRBC_7739_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim___boxed(lean_object* v_motive_7740_, lean_object* v_t_7741_, lean_object* v_h_7742_, lean_object* v_nestedPRBC_7743_){
_start:
{
uint8_t v_t_boxed_7744_; lean_object* v_res_7745_; 
v_t_boxed_7744_ = lean_unbox(v_t_7741_);
v_res_7745_ = l_Lean_Elab_Term_Do_ToTerm_Kind_nestedPRBC_elim(v_motive_7740_, v_t_boxed_7744_, v_h_7742_, v_nestedPRBC_7743_);
lean_dec(v_nestedPRBC_7743_);
return v_res_7745_;
}
}
static uint8_t _init_l_Lean_Elab_Term_Do_ToTerm_instInhabitedKind(void){
_start:
{
uint8_t v___x_7746_; 
v___x_7746_ = 0;
return v___x_7746_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToTerm_Kind_isRegular(uint8_t v_x_7747_){
_start:
{
if (v_x_7747_ == 0)
{
uint8_t v___x_7748_; 
v___x_7748_ = 1;
return v___x_7748_;
}
else
{
uint8_t v___x_7749_; 
v___x_7749_ = 0;
return v___x_7749_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_Kind_isRegular___boxed(lean_object* v_x_7750_){
_start:
{
uint8_t v_x_21__boxed_7751_; uint8_t v_res_7752_; lean_object* v_r_7753_; 
v_x_21__boxed_7751_ = lean_unbox(v_x_7750_);
v_res_7752_ = l_Lean_Elab_Term_Do_ToTerm_Kind_isRegular(v_x_21__boxed_7751_);
v_r_7753_ = lean_box(v_res_7752_);
return v_r_7753_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(lean_object* v_a_7754_, lean_object* v_a_7755_, lean_object* v_a_7756_){
_start:
{
lean_object* v_uvars_7757_; lean_object* v___x_7758_; 
v_uvars_7757_ = lean_ctor_get(v_a_7754_, 2);
v___x_7758_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple(v_uvars_7757_, v_a_7755_, v_a_7756_);
return v___x_7758_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple___boxed(lean_object* v_a_7759_, lean_object* v_a_7760_, lean_object* v_a_7761_){
_start:
{
lean_object* v_res_7762_; 
v_res_7762_ = l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(v_a_7759_, v_a_7760_, v_a_7761_);
lean_dec_ref(v_a_7759_);
return v_res_7762_;
}
}
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(lean_object* v_msg_7763_, lean_object* v___y_7764_, lean_object* v___y_7765_, lean_object* v___y_7766_){
_start:
{
lean_object* v___f_7767_; lean_object* v___f_7768_; lean_object* v___f_7769_; lean_object* v___x_7770_; lean_object* v___x_7771_; lean_object* v___x_7772_; lean_object* v___x_7773_; lean_object* v___x_7774_; lean_object* v___x_7775_; lean_object* v___x_7776_; lean_object* v___x_7777_; lean_object* v___x_7778_; lean_object* v___f_7779_; lean_object* v___f_7780_; lean_object* v___x_37906__overap_7781_; lean_object* v___x_7782_; 
v___f_7767_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0));
v___f_7768_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1));
v___f_7769_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2));
v___x_7770_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3));
v___x_7771_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7771_, 0, v___x_7770_);
lean_ctor_set(v___x_7771_, 1, v___f_7767_);
v___x_7772_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4));
v___x_7773_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5));
v___x_7774_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_7774_, 0, v___x_7771_);
lean_ctor_set(v___x_7774_, 1, v___x_7772_);
lean_ctor_set(v___x_7774_, 2, v___f_7768_);
lean_ctor_set(v___x_7774_, 3, v___f_7769_);
lean_ctor_set(v___x_7774_, 4, v___x_7773_);
v___x_7775_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6));
v___x_7776_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7776_, 0, v___x_7774_);
lean_ctor_set(v___x_7776_, 1, v___x_7775_);
v___x_7777_ = lean_box(0);
v___x_7778_ = l_instInhabitedOfMonad___redArg(v___x_7776_, v___x_7777_);
v___f_7779_ = lean_alloc_closure((void*)(l_instInhabitedForall___redArg___lam__0___boxed), 2, 1);
lean_closure_set(v___f_7779_, 0, v___x_7778_);
v___f_7780_ = lean_alloc_closure((void*)(l_instInhabitedForall___redArg___lam__0___boxed), 2, 1);
lean_closure_set(v___f_7780_, 0, v___f_7779_);
v___x_37906__overap_7781_ = lean_panic_fn(v___f_7780_, v_msg_7763_);
v___x_7782_ = lean_apply_3(v___x_37906__overap_7781_, v___y_7764_, v___y_7765_, v___y_7766_);
return v___x_7782_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10(void){
_start:
{
lean_object* v___x_7811_; lean_object* v___x_7812_; 
v___x_7811_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__9));
v___x_7812_ = l_String_toRawSubstring_x27(v___x_7811_);
return v___x_7812_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19(void){
_start:
{
lean_object* v___x_7830_; lean_object* v___x_7831_; 
v___x_7830_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__18));
v___x_7831_ = l_String_toRawSubstring_x27(v___x_7830_);
return v___x_7831_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26(void){
_start:
{
lean_object* v___x_7845_; lean_object* v___x_7846_; lean_object* v___x_7847_; lean_object* v___x_7848_; lean_object* v___x_7849_; lean_object* v___x_7850_; 
v___x_7845_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_7846_ = lean_unsigned_to_nat(24u);
v___x_7847_ = lean_unsigned_to_nat(1005u);
v___x_7848_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__25));
v___x_7849_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_7850_ = l_mkPanicMessageWithDecl(v___x_7849_, v___x_7848_, v___x_7847_, v___x_7846_, v___x_7845_);
return v___x_7850_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28(void){
_start:
{
lean_object* v___x_7852_; lean_object* v___x_7853_; 
v___x_7852_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__27));
v___x_7853_ = l_String_toRawSubstring_x27(v___x_7852_);
return v___x_7853_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37(void){
_start:
{
lean_object* v___x_7871_; lean_object* v___x_7872_; 
v___x_7871_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__36));
v___x_7872_ = l_String_toRawSubstring_x27(v___x_7871_);
return v___x_7872_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46(void){
_start:
{
lean_object* v___x_7890_; lean_object* v___x_7891_; 
v___x_7890_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__45));
v___x_7891_ = l_String_toRawSubstring_x27(v___x_7890_);
return v___x_7891_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_returnToTerm(lean_object* v_val_7907_, lean_object* v_a_7908_, lean_object* v_a_7909_, lean_object* v_a_7910_){
_start:
{
lean_object* v___x_7911_; 
lean_inc_ref(v_a_7909_);
v___x_7911_ = l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(v_a_7908_, v_a_7909_, v_a_7910_);
if (lean_obj_tag(v___x_7911_) == 0)
{
uint8_t v_kind_7912_; 
v_kind_7912_ = lean_ctor_get_uint8(v_a_7908_, sizeof(void*)*3);
switch(v_kind_7912_)
{
case 0:
{
lean_object* v_a_7913_; lean_object* v_a_7914_; lean_object* v_uvars_7915_; lean_object* v___x_7916_; lean_object* v___x_7917_; uint8_t v___x_7918_; 
v_a_7913_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_7913_);
v_a_7914_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_7914_);
lean_dec_ref(v___x_7911_);
v_uvars_7915_ = lean_ctor_get(v_a_7908_, 2);
lean_inc_ref(v_uvars_7915_);
lean_dec_ref(v_a_7908_);
v___x_7916_ = lean_array_get_size(v_uvars_7915_);
lean_dec_ref(v_uvars_7915_);
v___x_7917_ = lean_unsigned_to_nat(0u);
v___x_7918_ = lean_nat_dec_eq(v___x_7916_, v___x_7917_);
if (v___x_7918_ == 0)
{
lean_object* v_quotContext_7919_; lean_object* v_currMacroScope_7920_; lean_object* v_ref_7921_; lean_object* v___x_7922_; lean_object* v___x_7923_; lean_object* v___x_7924_; lean_object* v___x_7925_; lean_object* v___x_7926_; lean_object* v___x_7927_; lean_object* v___x_7928_; lean_object* v___x_7929_; lean_object* v___x_7930_; lean_object* v___x_7931_; lean_object* v___x_7932_; lean_object* v___x_7933_; lean_object* v___x_7934_; lean_object* v___x_7935_; lean_object* v___x_7936_; lean_object* v___x_7937_; lean_object* v___x_7938_; lean_object* v___x_7939_; lean_object* v___x_7940_; lean_object* v___x_7941_; lean_object* v___x_7942_; lean_object* v___x_7943_; lean_object* v___x_7944_; lean_object* v___x_7945_; lean_object* v___x_7946_; lean_object* v___x_7947_; lean_object* v___x_7948_; lean_object* v___x_7949_; lean_object* v___x_7950_; lean_object* v___x_7951_; lean_object* v___x_7952_; lean_object* v___x_7953_; lean_object* v___x_7954_; 
v_quotContext_7919_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_7919_);
v_currMacroScope_7920_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_7920_);
v_ref_7921_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_7921_);
lean_dec_ref(v_a_7909_);
v___x_7922_ = l_Lean_SourceInfo_fromRef(v_ref_7921_, v___x_7918_);
lean_dec(v_ref_7921_);
v___x_7923_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_7924_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_7925_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_7920_);
lean_inc(v_quotContext_7919_);
v___x_7926_ = l_Lean_addMacroScope(v_quotContext_7919_, v___x_7925_, v_currMacroScope_7920_);
v___x_7927_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_7922_);
v___x_7928_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7928_, 0, v___x_7922_);
lean_ctor_set(v___x_7928_, 1, v___x_7924_);
lean_ctor_set(v___x_7928_, 2, v___x_7926_);
lean_ctor_set(v___x_7928_, 3, v___x_7927_);
v___x_7929_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7930_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_7931_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_7932_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_7922_);
v___x_7933_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7933_, 0, v___x_7922_);
lean_ctor_set(v___x_7933_, 1, v___x_7932_);
v___x_7934_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_7935_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_7936_ = lean_box(0);
lean_inc(v_currMacroScope_7920_);
lean_inc(v_quotContext_7919_);
v___x_7937_ = l_Lean_addMacroScope(v_quotContext_7919_, v___x_7936_, v_currMacroScope_7920_);
v___x_7938_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_7922_);
v___x_7939_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7939_, 0, v___x_7922_);
lean_ctor_set(v___x_7939_, 1, v___x_7935_);
lean_ctor_set(v___x_7939_, 2, v___x_7937_);
lean_ctor_set(v___x_7939_, 3, v___x_7938_);
lean_inc(v___x_7922_);
v___x_7940_ = l_Lean_Syntax_node1(v___x_7922_, v___x_7934_, v___x_7939_);
lean_inc(v___x_7922_);
v___x_7941_ = l_Lean_Syntax_node2(v___x_7922_, v___x_7931_, v___x_7933_, v___x_7940_);
v___x_7942_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_7943_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
v___x_7944_ = l_Lean_addMacroScope(v_quotContext_7919_, v___x_7943_, v_currMacroScope_7920_);
v___x_7945_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_7922_);
v___x_7946_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7946_, 0, v___x_7922_);
lean_ctor_set(v___x_7946_, 1, v___x_7942_);
lean_ctor_set(v___x_7946_, 2, v___x_7944_);
lean_ctor_set(v___x_7946_, 3, v___x_7945_);
lean_inc(v___x_7922_);
v___x_7947_ = l_Lean_Syntax_node2(v___x_7922_, v___x_7929_, v_val_7907_, v_a_7913_);
lean_inc(v___x_7922_);
v___x_7948_ = l_Lean_Syntax_node2(v___x_7922_, v___x_7923_, v___x_7946_, v___x_7947_);
v___x_7949_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_7922_);
v___x_7950_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7950_, 0, v___x_7922_);
lean_ctor_set(v___x_7950_, 1, v___x_7949_);
lean_inc(v___x_7922_);
v___x_7951_ = l_Lean_Syntax_node3(v___x_7922_, v___x_7930_, v___x_7941_, v___x_7948_, v___x_7950_);
lean_inc(v___x_7922_);
v___x_7952_ = l_Lean_Syntax_node1(v___x_7922_, v___x_7929_, v___x_7951_);
v___x_7953_ = l_Lean_Syntax_node2(v___x_7922_, v___x_7923_, v___x_7928_, v___x_7952_);
v___x_7954_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7954_, 0, v___x_7953_);
lean_ctor_set(v___x_7954_, 1, v_a_7914_);
return v___x_7954_;
}
else
{
lean_object* v_quotContext_7955_; lean_object* v_currMacroScope_7956_; lean_object* v_ref_7957_; uint8_t v___x_7958_; lean_object* v___x_7959_; lean_object* v___x_7960_; lean_object* v___x_7961_; lean_object* v___x_7962_; lean_object* v___x_7963_; lean_object* v___x_7964_; lean_object* v___x_7965_; lean_object* v___x_7966_; lean_object* v___x_7967_; lean_object* v___x_7968_; lean_object* v___x_7969_; 
lean_dec(v_a_7913_);
v_quotContext_7955_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_7955_);
v_currMacroScope_7956_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_7956_);
v_ref_7957_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_7957_);
lean_dec_ref(v_a_7909_);
v___x_7958_ = 0;
v___x_7959_ = l_Lean_SourceInfo_fromRef(v_ref_7957_, v___x_7958_);
lean_dec(v_ref_7957_);
v___x_7960_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_7961_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_7962_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
v___x_7963_ = l_Lean_addMacroScope(v_quotContext_7955_, v___x_7962_, v_currMacroScope_7956_);
v___x_7964_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_7959_);
v___x_7965_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7965_, 0, v___x_7959_);
lean_ctor_set(v___x_7965_, 1, v___x_7961_);
lean_ctor_set(v___x_7965_, 2, v___x_7963_);
lean_ctor_set(v___x_7965_, 3, v___x_7964_);
v___x_7966_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v___x_7959_);
v___x_7967_ = l_Lean_Syntax_node1(v___x_7959_, v___x_7966_, v_val_7907_);
v___x_7968_ = l_Lean_Syntax_node2(v___x_7959_, v___x_7960_, v___x_7965_, v___x_7967_);
v___x_7969_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_7969_, 0, v___x_7968_);
lean_ctor_set(v___x_7969_, 1, v_a_7914_);
return v___x_7969_;
}
}
case 1:
{
lean_object* v_a_7970_; lean_object* v_a_7971_; lean_object* v_quotContext_7972_; lean_object* v_currMacroScope_7973_; lean_object* v_ref_7974_; uint8_t v___x_7975_; lean_object* v___x_7976_; lean_object* v___x_7977_; lean_object* v___x_7978_; lean_object* v___x_7979_; lean_object* v___x_7980_; lean_object* v___x_7981_; lean_object* v___x_7982_; lean_object* v___x_7983_; lean_object* v___x_7984_; lean_object* v___x_7985_; lean_object* v___x_7986_; lean_object* v___x_7987_; lean_object* v___x_7988_; lean_object* v___x_7989_; lean_object* v___x_7990_; lean_object* v___x_7991_; lean_object* v___x_7992_; lean_object* v___x_7993_; lean_object* v___x_7994_; lean_object* v___x_7995_; lean_object* v___x_7996_; lean_object* v___x_7997_; lean_object* v___x_7998_; lean_object* v___x_7999_; lean_object* v___x_8000_; lean_object* v___x_8001_; lean_object* v___x_8002_; lean_object* v___x_8003_; lean_object* v___x_8004_; lean_object* v___x_8005_; lean_object* v___x_8006_; lean_object* v___x_8007_; lean_object* v___x_8008_; 
lean_dec_ref(v_a_7908_);
lean_dec(v_val_7907_);
v_a_7970_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_7970_);
v_a_7971_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_7971_);
lean_dec_ref(v___x_7911_);
v_quotContext_7972_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_7972_);
v_currMacroScope_7973_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_7973_);
v_ref_7974_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_7974_);
lean_dec_ref(v_a_7909_);
v___x_7975_ = 0;
v___x_7976_ = l_Lean_SourceInfo_fromRef(v_ref_7974_, v___x_7975_);
lean_dec(v_ref_7974_);
v___x_7977_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_7978_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_7979_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_7973_);
lean_inc(v_quotContext_7972_);
v___x_7980_ = l_Lean_addMacroScope(v_quotContext_7972_, v___x_7979_, v_currMacroScope_7973_);
v___x_7981_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_7976_);
v___x_7982_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7982_, 0, v___x_7976_);
lean_ctor_set(v___x_7982_, 1, v___x_7978_);
lean_ctor_set(v___x_7982_, 2, v___x_7980_);
lean_ctor_set(v___x_7982_, 3, v___x_7981_);
v___x_7983_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_7984_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_7985_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_7986_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_7976_);
v___x_7987_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_7987_, 0, v___x_7976_);
lean_ctor_set(v___x_7987_, 1, v___x_7986_);
v___x_7988_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_7989_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_7990_ = lean_box(0);
lean_inc(v_currMacroScope_7973_);
lean_inc(v_quotContext_7972_);
v___x_7991_ = l_Lean_addMacroScope(v_quotContext_7972_, v___x_7990_, v_currMacroScope_7973_);
v___x_7992_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_7976_);
v___x_7993_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_7993_, 0, v___x_7976_);
lean_ctor_set(v___x_7993_, 1, v___x_7989_);
lean_ctor_set(v___x_7993_, 2, v___x_7991_);
lean_ctor_set(v___x_7993_, 3, v___x_7992_);
lean_inc(v___x_7976_);
v___x_7994_ = l_Lean_Syntax_node1(v___x_7976_, v___x_7988_, v___x_7993_);
lean_inc(v___x_7976_);
v___x_7995_ = l_Lean_Syntax_node2(v___x_7976_, v___x_7985_, v___x_7987_, v___x_7994_);
v___x_7996_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10);
v___x_7997_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13));
v___x_7998_ = l_Lean_addMacroScope(v_quotContext_7972_, v___x_7997_, v_currMacroScope_7973_);
v___x_7999_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17));
lean_inc(v___x_7976_);
v___x_8000_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8000_, 0, v___x_7976_);
lean_ctor_set(v___x_8000_, 1, v___x_7996_);
lean_ctor_set(v___x_8000_, 2, v___x_7998_);
lean_ctor_set(v___x_8000_, 3, v___x_7999_);
lean_inc(v___x_7976_);
v___x_8001_ = l_Lean_Syntax_node1(v___x_7976_, v___x_7983_, v_a_7970_);
lean_inc(v___x_7976_);
v___x_8002_ = l_Lean_Syntax_node2(v___x_7976_, v___x_7977_, v___x_8000_, v___x_8001_);
v___x_8003_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_7976_);
v___x_8004_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8004_, 0, v___x_7976_);
lean_ctor_set(v___x_8004_, 1, v___x_8003_);
lean_inc(v___x_7976_);
v___x_8005_ = l_Lean_Syntax_node3(v___x_7976_, v___x_7984_, v___x_7995_, v___x_8002_, v___x_8004_);
lean_inc(v___x_7976_);
v___x_8006_ = l_Lean_Syntax_node1(v___x_7976_, v___x_7983_, v___x_8005_);
v___x_8007_ = l_Lean_Syntax_node2(v___x_7976_, v___x_7977_, v___x_7982_, v___x_8006_);
v___x_8008_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8008_, 0, v___x_8007_);
lean_ctor_set(v___x_8008_, 1, v_a_7971_);
return v___x_8008_;
}
case 2:
{
lean_object* v_a_8009_; lean_object* v_a_8010_; lean_object* v_quotContext_8011_; lean_object* v_currMacroScope_8012_; lean_object* v_ref_8013_; uint8_t v___x_8014_; lean_object* v___x_8015_; lean_object* v___x_8016_; lean_object* v___x_8017_; lean_object* v___x_8018_; lean_object* v___x_8019_; lean_object* v___x_8020_; lean_object* v___x_8021_; lean_object* v___x_8022_; lean_object* v___x_8023_; lean_object* v___x_8024_; lean_object* v___x_8025_; lean_object* v___x_8026_; lean_object* v___x_8027_; lean_object* v___x_8028_; lean_object* v___x_8029_; lean_object* v___x_8030_; lean_object* v___x_8031_; lean_object* v___x_8032_; lean_object* v___x_8033_; lean_object* v___x_8034_; lean_object* v___x_8035_; lean_object* v___x_8036_; lean_object* v___x_8037_; lean_object* v___x_8038_; lean_object* v___x_8039_; lean_object* v___x_8040_; lean_object* v___x_8041_; lean_object* v___x_8042_; lean_object* v___x_8043_; lean_object* v___x_8044_; lean_object* v___x_8045_; lean_object* v___x_8046_; lean_object* v___x_8047_; lean_object* v___x_8048_; lean_object* v___x_8049_; lean_object* v___x_8050_; lean_object* v___x_8051_; lean_object* v___x_8052_; lean_object* v___x_8053_; lean_object* v___x_8054_; lean_object* v___x_8055_; lean_object* v___x_8056_; lean_object* v___x_8057_; lean_object* v___x_8058_; lean_object* v___x_8059_; lean_object* v___x_8060_; lean_object* v___x_8061_; lean_object* v___x_8062_; lean_object* v___x_8063_; 
lean_dec_ref(v_a_7908_);
v_a_8009_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_8009_);
v_a_8010_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_8010_);
lean_dec_ref(v___x_7911_);
v_quotContext_8011_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_8011_);
v_currMacroScope_8012_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_8012_);
v_ref_8013_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_8013_);
lean_dec_ref(v_a_7909_);
v___x_8014_ = 0;
v___x_8015_ = l_Lean_SourceInfo_fromRef(v_ref_8013_, v___x_8014_);
lean_dec(v_ref_8013_);
v___x_8016_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8017_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8018_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8012_);
lean_inc(v_quotContext_8011_);
v___x_8019_ = l_Lean_addMacroScope(v_quotContext_8011_, v___x_8018_, v_currMacroScope_8012_);
v___x_8020_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8015_);
v___x_8021_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8021_, 0, v___x_8015_);
lean_ctor_set(v___x_8021_, 1, v___x_8017_);
lean_ctor_set(v___x_8021_, 2, v___x_8019_);
lean_ctor_set(v___x_8021_, 3, v___x_8020_);
v___x_8022_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8023_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8024_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8025_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8015_);
v___x_8026_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8026_, 0, v___x_8015_);
lean_ctor_set(v___x_8026_, 1, v___x_8025_);
v___x_8027_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8028_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8029_ = lean_box(0);
lean_inc(v_currMacroScope_8012_);
lean_inc(v_quotContext_8011_);
v___x_8030_ = l_Lean_addMacroScope(v_quotContext_8011_, v___x_8029_, v_currMacroScope_8012_);
v___x_8031_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8015_);
v___x_8032_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8032_, 0, v___x_8015_);
lean_ctor_set(v___x_8032_, 1, v___x_8028_);
lean_ctor_set(v___x_8032_, 2, v___x_8030_);
lean_ctor_set(v___x_8032_, 3, v___x_8031_);
lean_inc(v___x_8015_);
v___x_8033_ = l_Lean_Syntax_node1(v___x_8015_, v___x_8027_, v___x_8032_);
lean_inc(v___x_8015_);
v___x_8034_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8024_, v___x_8026_, v___x_8033_);
v___x_8035_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10);
v___x_8036_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13));
lean_inc(v_currMacroScope_8012_);
lean_inc(v_quotContext_8011_);
v___x_8037_ = l_Lean_addMacroScope(v_quotContext_8011_, v___x_8036_, v_currMacroScope_8012_);
v___x_8038_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17));
lean_inc(v___x_8015_);
v___x_8039_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8039_, 0, v___x_8015_);
lean_ctor_set(v___x_8039_, 1, v___x_8035_);
lean_ctor_set(v___x_8039_, 2, v___x_8037_);
lean_ctor_set(v___x_8039_, 3, v___x_8038_);
v___x_8040_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_8041_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_8012_);
lean_inc(v_quotContext_8011_);
v___x_8042_ = l_Lean_addMacroScope(v_quotContext_8011_, v___x_8041_, v_currMacroScope_8012_);
v___x_8043_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_8015_);
v___x_8044_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8044_, 0, v___x_8015_);
lean_ctor_set(v___x_8044_, 1, v___x_8040_);
lean_ctor_set(v___x_8044_, 2, v___x_8042_);
lean_ctor_set(v___x_8044_, 3, v___x_8043_);
v___x_8045_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19);
v___x_8046_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20));
v___x_8047_ = l_Lean_addMacroScope(v_quotContext_8011_, v___x_8046_, v_currMacroScope_8012_);
v___x_8048_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__24));
lean_inc(v___x_8015_);
v___x_8049_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8049_, 0, v___x_8015_);
lean_ctor_set(v___x_8049_, 1, v___x_8045_);
lean_ctor_set(v___x_8049_, 2, v___x_8047_);
lean_ctor_set(v___x_8049_, 3, v___x_8048_);
lean_inc(v___x_8015_);
v___x_8050_ = l_Lean_Syntax_node1(v___x_8015_, v___x_8022_, v_val_7907_);
lean_inc(v___x_8015_);
v___x_8051_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8016_, v___x_8049_, v___x_8050_);
v___x_8052_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8015_);
v___x_8053_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8053_, 0, v___x_8015_);
lean_ctor_set(v___x_8053_, 1, v___x_8052_);
lean_inc_ref(v___x_8053_);
lean_inc(v___x_8034_);
lean_inc(v___x_8015_);
v___x_8054_ = l_Lean_Syntax_node3(v___x_8015_, v___x_8023_, v___x_8034_, v___x_8051_, v___x_8053_);
lean_inc(v___x_8015_);
v___x_8055_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8022_, v___x_8054_, v_a_8009_);
lean_inc(v___x_8015_);
v___x_8056_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8016_, v___x_8044_, v___x_8055_);
lean_inc_ref(v___x_8053_);
lean_inc(v___x_8034_);
lean_inc(v___x_8015_);
v___x_8057_ = l_Lean_Syntax_node3(v___x_8015_, v___x_8023_, v___x_8034_, v___x_8056_, v___x_8053_);
lean_inc(v___x_8015_);
v___x_8058_ = l_Lean_Syntax_node1(v___x_8015_, v___x_8022_, v___x_8057_);
lean_inc(v___x_8015_);
v___x_8059_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8016_, v___x_8039_, v___x_8058_);
lean_inc(v___x_8015_);
v___x_8060_ = l_Lean_Syntax_node3(v___x_8015_, v___x_8023_, v___x_8034_, v___x_8059_, v___x_8053_);
lean_inc(v___x_8015_);
v___x_8061_ = l_Lean_Syntax_node1(v___x_8015_, v___x_8022_, v___x_8060_);
v___x_8062_ = l_Lean_Syntax_node2(v___x_8015_, v___x_8016_, v___x_8021_, v___x_8061_);
v___x_8063_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8063_, 0, v___x_8062_);
lean_ctor_set(v___x_8063_, 1, v_a_8010_);
return v___x_8063_;
}
case 3:
{
lean_object* v_a_8064_; lean_object* v___x_8065_; lean_object* v___x_8066_; 
lean_dec(v_val_7907_);
v_a_8064_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_8064_);
lean_dec_ref(v___x_7911_);
v___x_8065_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__26);
v___x_8066_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_8065_, v_a_7908_, v_a_7909_, v_a_8064_);
return v___x_8066_;
}
case 4:
{
lean_object* v_a_8067_; lean_object* v_a_8068_; lean_object* v_quotContext_8069_; lean_object* v_currMacroScope_8070_; lean_object* v_ref_8071_; uint8_t v___x_8072_; lean_object* v___x_8073_; lean_object* v___x_8074_; lean_object* v___x_8075_; lean_object* v___x_8076_; lean_object* v___x_8077_; lean_object* v___x_8078_; lean_object* v___x_8079_; lean_object* v___x_8080_; lean_object* v___x_8081_; lean_object* v___x_8082_; lean_object* v___x_8083_; lean_object* v___x_8084_; lean_object* v___x_8085_; lean_object* v___x_8086_; lean_object* v___x_8087_; lean_object* v___x_8088_; lean_object* v___x_8089_; lean_object* v___x_8090_; lean_object* v___x_8091_; lean_object* v___x_8092_; lean_object* v___x_8093_; lean_object* v___x_8094_; lean_object* v___x_8095_; lean_object* v___x_8096_; lean_object* v___x_8097_; lean_object* v___x_8098_; lean_object* v___x_8099_; lean_object* v___x_8100_; lean_object* v___x_8101_; lean_object* v___x_8102_; lean_object* v___x_8103_; lean_object* v___x_8104_; lean_object* v___x_8105_; 
lean_dec_ref(v_a_7908_);
v_a_8067_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_8067_);
v_a_8068_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_8068_);
lean_dec_ref(v___x_7911_);
v_quotContext_8069_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_8069_);
v_currMacroScope_8070_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_8070_);
v_ref_8071_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_8071_);
lean_dec_ref(v_a_7909_);
v___x_8072_ = 0;
v___x_8073_ = l_Lean_SourceInfo_fromRef(v_ref_8071_, v___x_8072_);
lean_dec(v_ref_8071_);
v___x_8074_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8075_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8076_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8070_);
lean_inc(v_quotContext_8069_);
v___x_8077_ = l_Lean_addMacroScope(v_quotContext_8069_, v___x_8076_, v_currMacroScope_8070_);
v___x_8078_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8073_);
v___x_8079_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8079_, 0, v___x_8073_);
lean_ctor_set(v___x_8079_, 1, v___x_8075_);
lean_ctor_set(v___x_8079_, 2, v___x_8077_);
lean_ctor_set(v___x_8079_, 3, v___x_8078_);
v___x_8080_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8081_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8082_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8083_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8073_);
v___x_8084_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8084_, 0, v___x_8073_);
lean_ctor_set(v___x_8084_, 1, v___x_8083_);
v___x_8085_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8086_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8087_ = lean_box(0);
lean_inc(v_currMacroScope_8070_);
lean_inc(v_quotContext_8069_);
v___x_8088_ = l_Lean_addMacroScope(v_quotContext_8069_, v___x_8087_, v_currMacroScope_8070_);
v___x_8089_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8073_);
v___x_8090_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8090_, 0, v___x_8073_);
lean_ctor_set(v___x_8090_, 1, v___x_8086_);
lean_ctor_set(v___x_8090_, 2, v___x_8088_);
lean_ctor_set(v___x_8090_, 3, v___x_8089_);
lean_inc(v___x_8073_);
v___x_8091_ = l_Lean_Syntax_node1(v___x_8073_, v___x_8085_, v___x_8090_);
lean_inc(v___x_8073_);
v___x_8092_ = l_Lean_Syntax_node2(v___x_8073_, v___x_8082_, v___x_8084_, v___x_8091_);
v___x_8093_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__28);
v___x_8094_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__31));
v___x_8095_ = l_Lean_addMacroScope(v_quotContext_8069_, v___x_8094_, v_currMacroScope_8070_);
v___x_8096_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__35));
lean_inc(v___x_8073_);
v___x_8097_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8097_, 0, v___x_8073_);
lean_ctor_set(v___x_8097_, 1, v___x_8093_);
lean_ctor_set(v___x_8097_, 2, v___x_8095_);
lean_ctor_set(v___x_8097_, 3, v___x_8096_);
lean_inc(v___x_8073_);
v___x_8098_ = l_Lean_Syntax_node2(v___x_8073_, v___x_8080_, v_val_7907_, v_a_8067_);
lean_inc(v___x_8073_);
v___x_8099_ = l_Lean_Syntax_node2(v___x_8073_, v___x_8074_, v___x_8097_, v___x_8098_);
v___x_8100_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8073_);
v___x_8101_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8101_, 0, v___x_8073_);
lean_ctor_set(v___x_8101_, 1, v___x_8100_);
lean_inc(v___x_8073_);
v___x_8102_ = l_Lean_Syntax_node3(v___x_8073_, v___x_8081_, v___x_8092_, v___x_8099_, v___x_8101_);
lean_inc(v___x_8073_);
v___x_8103_ = l_Lean_Syntax_node1(v___x_8073_, v___x_8080_, v___x_8102_);
v___x_8104_ = l_Lean_Syntax_node2(v___x_8073_, v___x_8074_, v___x_8079_, v___x_8103_);
v___x_8105_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8105_, 0, v___x_8104_);
lean_ctor_set(v___x_8105_, 1, v_a_8068_);
return v___x_8105_;
}
case 5:
{
lean_object* v_a_8106_; lean_object* v_a_8107_; lean_object* v_quotContext_8108_; lean_object* v_currMacroScope_8109_; lean_object* v_ref_8110_; uint8_t v___x_8111_; lean_object* v___x_8112_; lean_object* v___x_8113_; lean_object* v___x_8114_; lean_object* v___x_8115_; lean_object* v___x_8116_; lean_object* v___x_8117_; lean_object* v___x_8118_; lean_object* v___x_8119_; lean_object* v___x_8120_; lean_object* v___x_8121_; lean_object* v___x_8122_; lean_object* v___x_8123_; lean_object* v___x_8124_; lean_object* v___x_8125_; lean_object* v___x_8126_; lean_object* v___x_8127_; lean_object* v___x_8128_; lean_object* v___x_8129_; lean_object* v___x_8130_; lean_object* v___x_8131_; lean_object* v___x_8132_; lean_object* v___x_8133_; lean_object* v___x_8134_; lean_object* v___x_8135_; lean_object* v___x_8136_; lean_object* v___x_8137_; lean_object* v___x_8138_; lean_object* v___x_8139_; lean_object* v___x_8140_; lean_object* v___x_8141_; lean_object* v___x_8142_; lean_object* v___x_8143_; lean_object* v___x_8144_; 
lean_dec_ref(v_a_7908_);
v_a_8106_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_8106_);
v_a_8107_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_8107_);
lean_dec_ref(v___x_7911_);
v_quotContext_8108_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_8108_);
v_currMacroScope_8109_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_8109_);
v_ref_8110_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_8110_);
lean_dec_ref(v_a_7909_);
v___x_8111_ = 0;
v___x_8112_ = l_Lean_SourceInfo_fromRef(v_ref_8110_, v___x_8111_);
lean_dec(v_ref_8110_);
v___x_8113_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8114_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8115_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8109_);
lean_inc(v_quotContext_8108_);
v___x_8116_ = l_Lean_addMacroScope(v_quotContext_8108_, v___x_8115_, v_currMacroScope_8109_);
v___x_8117_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8112_);
v___x_8118_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8118_, 0, v___x_8112_);
lean_ctor_set(v___x_8118_, 1, v___x_8114_);
lean_ctor_set(v___x_8118_, 2, v___x_8116_);
lean_ctor_set(v___x_8118_, 3, v___x_8117_);
v___x_8119_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8120_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8121_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8122_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8112_);
v___x_8123_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8123_, 0, v___x_8112_);
lean_ctor_set(v___x_8123_, 1, v___x_8122_);
v___x_8124_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8125_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8126_ = lean_box(0);
lean_inc(v_currMacroScope_8109_);
lean_inc(v_quotContext_8108_);
v___x_8127_ = l_Lean_addMacroScope(v_quotContext_8108_, v___x_8126_, v_currMacroScope_8109_);
v___x_8128_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8112_);
v___x_8129_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8129_, 0, v___x_8112_);
lean_ctor_set(v___x_8129_, 1, v___x_8125_);
lean_ctor_set(v___x_8129_, 2, v___x_8127_);
lean_ctor_set(v___x_8129_, 3, v___x_8128_);
lean_inc(v___x_8112_);
v___x_8130_ = l_Lean_Syntax_node1(v___x_8112_, v___x_8124_, v___x_8129_);
lean_inc(v___x_8112_);
v___x_8131_ = l_Lean_Syntax_node2(v___x_8112_, v___x_8121_, v___x_8123_, v___x_8130_);
v___x_8132_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37);
v___x_8133_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40));
v___x_8134_ = l_Lean_addMacroScope(v_quotContext_8108_, v___x_8133_, v_currMacroScope_8109_);
v___x_8135_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__44));
lean_inc(v___x_8112_);
v___x_8136_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8136_, 0, v___x_8112_);
lean_ctor_set(v___x_8136_, 1, v___x_8132_);
lean_ctor_set(v___x_8136_, 2, v___x_8134_);
lean_ctor_set(v___x_8136_, 3, v___x_8135_);
lean_inc(v___x_8112_);
v___x_8137_ = l_Lean_Syntax_node2(v___x_8112_, v___x_8119_, v_val_7907_, v_a_8106_);
lean_inc(v___x_8112_);
v___x_8138_ = l_Lean_Syntax_node2(v___x_8112_, v___x_8113_, v___x_8136_, v___x_8137_);
v___x_8139_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8112_);
v___x_8140_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8140_, 0, v___x_8112_);
lean_ctor_set(v___x_8140_, 1, v___x_8139_);
lean_inc(v___x_8112_);
v___x_8141_ = l_Lean_Syntax_node3(v___x_8112_, v___x_8120_, v___x_8131_, v___x_8138_, v___x_8140_);
lean_inc(v___x_8112_);
v___x_8142_ = l_Lean_Syntax_node1(v___x_8112_, v___x_8119_, v___x_8141_);
v___x_8143_ = l_Lean_Syntax_node2(v___x_8112_, v___x_8113_, v___x_8118_, v___x_8142_);
v___x_8144_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8144_, 0, v___x_8143_);
lean_ctor_set(v___x_8144_, 1, v_a_8107_);
return v___x_8144_;
}
default: 
{
lean_object* v_a_8145_; lean_object* v_a_8146_; lean_object* v_quotContext_8147_; lean_object* v_currMacroScope_8148_; lean_object* v_ref_8149_; uint8_t v___x_8150_; lean_object* v___x_8151_; lean_object* v___x_8152_; lean_object* v___x_8153_; lean_object* v___x_8154_; lean_object* v___x_8155_; lean_object* v___x_8156_; lean_object* v___x_8157_; lean_object* v___x_8158_; lean_object* v___x_8159_; lean_object* v___x_8160_; lean_object* v___x_8161_; lean_object* v___x_8162_; lean_object* v___x_8163_; lean_object* v___x_8164_; lean_object* v___x_8165_; lean_object* v___x_8166_; lean_object* v___x_8167_; lean_object* v___x_8168_; lean_object* v___x_8169_; lean_object* v___x_8170_; lean_object* v___x_8171_; lean_object* v___x_8172_; lean_object* v___x_8173_; lean_object* v___x_8174_; lean_object* v___x_8175_; lean_object* v___x_8176_; lean_object* v___x_8177_; lean_object* v___x_8178_; lean_object* v___x_8179_; lean_object* v___x_8180_; lean_object* v___x_8181_; lean_object* v___x_8182_; lean_object* v___x_8183_; 
lean_dec_ref(v_a_7908_);
v_a_8145_ = lean_ctor_get(v___x_7911_, 0);
lean_inc(v_a_8145_);
v_a_8146_ = lean_ctor_get(v___x_7911_, 1);
lean_inc(v_a_8146_);
lean_dec_ref(v___x_7911_);
v_quotContext_8147_ = lean_ctor_get(v_a_7909_, 1);
lean_inc(v_quotContext_8147_);
v_currMacroScope_8148_ = lean_ctor_get(v_a_7909_, 2);
lean_inc(v_currMacroScope_8148_);
v_ref_8149_ = lean_ctor_get(v_a_7909_, 5);
lean_inc(v_ref_8149_);
lean_dec_ref(v_a_7909_);
v___x_8150_ = 0;
v___x_8151_ = l_Lean_SourceInfo_fromRef(v_ref_8149_, v___x_8150_);
lean_dec(v_ref_8149_);
v___x_8152_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8153_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8154_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8148_);
lean_inc(v_quotContext_8147_);
v___x_8155_ = l_Lean_addMacroScope(v_quotContext_8147_, v___x_8154_, v_currMacroScope_8148_);
v___x_8156_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8151_);
v___x_8157_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8157_, 0, v___x_8151_);
lean_ctor_set(v___x_8157_, 1, v___x_8153_);
lean_ctor_set(v___x_8157_, 2, v___x_8155_);
lean_ctor_set(v___x_8157_, 3, v___x_8156_);
v___x_8158_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8159_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8160_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8161_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8151_);
v___x_8162_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8162_, 0, v___x_8151_);
lean_ctor_set(v___x_8162_, 1, v___x_8161_);
v___x_8163_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8164_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8165_ = lean_box(0);
lean_inc(v_currMacroScope_8148_);
lean_inc(v_quotContext_8147_);
v___x_8166_ = l_Lean_addMacroScope(v_quotContext_8147_, v___x_8165_, v_currMacroScope_8148_);
v___x_8167_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8151_);
v___x_8168_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8168_, 0, v___x_8151_);
lean_ctor_set(v___x_8168_, 1, v___x_8164_);
lean_ctor_set(v___x_8168_, 2, v___x_8166_);
lean_ctor_set(v___x_8168_, 3, v___x_8167_);
lean_inc(v___x_8151_);
v___x_8169_ = l_Lean_Syntax_node1(v___x_8151_, v___x_8163_, v___x_8168_);
lean_inc(v___x_8151_);
v___x_8170_ = l_Lean_Syntax_node2(v___x_8151_, v___x_8160_, v___x_8162_, v___x_8169_);
v___x_8171_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__46);
v___x_8172_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__48));
v___x_8173_ = l_Lean_addMacroScope(v_quotContext_8147_, v___x_8172_, v_currMacroScope_8148_);
v___x_8174_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__52));
lean_inc(v___x_8151_);
v___x_8175_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8175_, 0, v___x_8151_);
lean_ctor_set(v___x_8175_, 1, v___x_8171_);
lean_ctor_set(v___x_8175_, 2, v___x_8173_);
lean_ctor_set(v___x_8175_, 3, v___x_8174_);
lean_inc(v___x_8151_);
v___x_8176_ = l_Lean_Syntax_node2(v___x_8151_, v___x_8158_, v_val_7907_, v_a_8145_);
lean_inc(v___x_8151_);
v___x_8177_ = l_Lean_Syntax_node2(v___x_8151_, v___x_8152_, v___x_8175_, v___x_8176_);
v___x_8178_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8151_);
v___x_8179_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8179_, 0, v___x_8151_);
lean_ctor_set(v___x_8179_, 1, v___x_8178_);
lean_inc(v___x_8151_);
v___x_8180_ = l_Lean_Syntax_node3(v___x_8151_, v___x_8159_, v___x_8170_, v___x_8177_, v___x_8179_);
lean_inc(v___x_8151_);
v___x_8181_ = l_Lean_Syntax_node1(v___x_8151_, v___x_8158_, v___x_8180_);
v___x_8182_ = l_Lean_Syntax_node2(v___x_8151_, v___x_8152_, v___x_8157_, v___x_8181_);
v___x_8183_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8183_, 0, v___x_8182_);
lean_ctor_set(v___x_8183_, 1, v_a_8146_);
return v___x_8183_;
}
}
}
else
{
lean_dec_ref(v_a_7909_);
lean_dec_ref(v_a_7908_);
lean_dec(v_val_7907_);
return v___x_7911_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1(void){
_start:
{
lean_object* v___x_8185_; lean_object* v___x_8186_; lean_object* v___x_8187_; lean_object* v___x_8188_; lean_object* v___x_8189_; lean_object* v___x_8190_; 
v___x_8185_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_8186_ = lean_unsigned_to_nat(24u);
v___x_8187_ = lean_unsigned_to_nat(1014u);
v___x_8188_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__0));
v___x_8189_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_8190_ = l_mkPanicMessageWithDecl(v___x_8189_, v___x_8188_, v___x_8187_, v___x_8186_, v___x_8185_);
return v___x_8190_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3(void){
_start:
{
lean_object* v___x_8192_; lean_object* v___x_8193_; 
v___x_8192_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__2));
v___x_8193_ = l_String_toRawSubstring_x27(v___x_8192_);
return v___x_8193_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11(void){
_start:
{
lean_object* v___x_8210_; lean_object* v___x_8211_; 
v___x_8210_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__10));
v___x_8211_ = l_String_toRawSubstring_x27(v___x_8210_);
return v___x_8211_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17(void){
_start:
{
lean_object* v___x_8224_; lean_object* v___x_8225_; 
v___x_8224_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__16));
v___x_8225_ = l_String_toRawSubstring_x27(v___x_8224_);
return v___x_8225_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25(void){
_start:
{
lean_object* v___x_8242_; lean_object* v___x_8243_; lean_object* v___x_8244_; lean_object* v___x_8245_; lean_object* v___x_8246_; lean_object* v___x_8247_; 
v___x_8242_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_8243_ = lean_unsigned_to_nat(24u);
v___x_8244_ = lean_unsigned_to_nat(1018u);
v___x_8245_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__0));
v___x_8246_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_8247_ = l_mkPanicMessageWithDecl(v___x_8246_, v___x_8245_, v___x_8244_, v___x_8243_, v___x_8242_);
return v___x_8247_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27(void){
_start:
{
lean_object* v___x_8249_; lean_object* v___x_8250_; 
v___x_8249_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__26));
v___x_8250_ = l_String_toRawSubstring_x27(v___x_8249_);
return v___x_8250_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34(void){
_start:
{
lean_object* v___x_8266_; lean_object* v___x_8267_; 
v___x_8266_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__33));
v___x_8267_ = l_String_toRawSubstring_x27(v___x_8266_);
return v___x_8267_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_continueToTerm(lean_object* v_a_8282_, lean_object* v_a_8283_, lean_object* v_a_8284_){
_start:
{
lean_object* v___x_8285_; 
lean_inc_ref(v_a_8283_);
v___x_8285_ = l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(v_a_8282_, v_a_8283_, v_a_8284_);
if (lean_obj_tag(v___x_8285_) == 0)
{
uint8_t v_kind_8286_; 
v_kind_8286_ = lean_ctor_get_uint8(v_a_8282_, sizeof(void*)*3);
switch(v_kind_8286_)
{
case 0:
{
lean_object* v_a_8287_; lean_object* v___x_8288_; lean_object* v___x_8289_; 
v_a_8287_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8287_);
lean_dec_ref(v___x_8285_);
v___x_8288_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__1);
v___x_8289_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_8288_, v_a_8282_, v_a_8283_, v_a_8287_);
return v___x_8289_;
}
case 1:
{
lean_object* v_a_8290_; lean_object* v_a_8291_; lean_object* v_quotContext_8292_; lean_object* v_currMacroScope_8293_; lean_object* v_ref_8294_; uint8_t v___x_8295_; lean_object* v___x_8296_; lean_object* v___x_8297_; lean_object* v___x_8298_; lean_object* v___x_8299_; lean_object* v___x_8300_; lean_object* v___x_8301_; lean_object* v___x_8302_; lean_object* v___x_8303_; lean_object* v___x_8304_; lean_object* v___x_8305_; lean_object* v___x_8306_; lean_object* v___x_8307_; lean_object* v___x_8308_; lean_object* v___x_8309_; lean_object* v___x_8310_; lean_object* v___x_8311_; lean_object* v___x_8312_; lean_object* v___x_8313_; lean_object* v___x_8314_; lean_object* v___x_8315_; lean_object* v___x_8316_; lean_object* v___x_8317_; lean_object* v___x_8318_; lean_object* v___x_8319_; lean_object* v___x_8320_; lean_object* v___x_8321_; lean_object* v___x_8322_; lean_object* v___x_8323_; lean_object* v___x_8324_; lean_object* v___x_8325_; lean_object* v___x_8326_; lean_object* v___x_8327_; lean_object* v___x_8328_; 
lean_dec_ref(v_a_8282_);
v_a_8290_ = lean_ctor_get(v___x_8285_, 0);
lean_inc(v_a_8290_);
v_a_8291_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8291_);
lean_dec_ref(v___x_8285_);
v_quotContext_8292_ = lean_ctor_get(v_a_8283_, 1);
lean_inc(v_quotContext_8292_);
v_currMacroScope_8293_ = lean_ctor_get(v_a_8283_, 2);
lean_inc(v_currMacroScope_8293_);
v_ref_8294_ = lean_ctor_get(v_a_8283_, 5);
lean_inc(v_ref_8294_);
lean_dec_ref(v_a_8283_);
v___x_8295_ = 0;
v___x_8296_ = l_Lean_SourceInfo_fromRef(v_ref_8294_, v___x_8295_);
lean_dec(v_ref_8294_);
v___x_8297_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8298_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8299_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8293_);
lean_inc(v_quotContext_8292_);
v___x_8300_ = l_Lean_addMacroScope(v_quotContext_8292_, v___x_8299_, v_currMacroScope_8293_);
v___x_8301_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8296_);
v___x_8302_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8302_, 0, v___x_8296_);
lean_ctor_set(v___x_8302_, 1, v___x_8298_);
lean_ctor_set(v___x_8302_, 2, v___x_8300_);
lean_ctor_set(v___x_8302_, 3, v___x_8301_);
v___x_8303_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8304_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8305_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8306_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8296_);
v___x_8307_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8307_, 0, v___x_8296_);
lean_ctor_set(v___x_8307_, 1, v___x_8306_);
v___x_8308_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8309_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8310_ = lean_box(0);
lean_inc(v_currMacroScope_8293_);
lean_inc(v_quotContext_8292_);
v___x_8311_ = l_Lean_addMacroScope(v_quotContext_8292_, v___x_8310_, v_currMacroScope_8293_);
v___x_8312_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8296_);
v___x_8313_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8313_, 0, v___x_8296_);
lean_ctor_set(v___x_8313_, 1, v___x_8309_);
lean_ctor_set(v___x_8313_, 2, v___x_8311_);
lean_ctor_set(v___x_8313_, 3, v___x_8312_);
lean_inc(v___x_8296_);
v___x_8314_ = l_Lean_Syntax_node1(v___x_8296_, v___x_8308_, v___x_8313_);
lean_inc(v___x_8296_);
v___x_8315_ = l_Lean_Syntax_node2(v___x_8296_, v___x_8305_, v___x_8307_, v___x_8314_);
v___x_8316_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3);
v___x_8317_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5));
v___x_8318_ = l_Lean_addMacroScope(v_quotContext_8292_, v___x_8317_, v_currMacroScope_8293_);
v___x_8319_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9));
lean_inc(v___x_8296_);
v___x_8320_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8320_, 0, v___x_8296_);
lean_ctor_set(v___x_8320_, 1, v___x_8316_);
lean_ctor_set(v___x_8320_, 2, v___x_8318_);
lean_ctor_set(v___x_8320_, 3, v___x_8319_);
lean_inc(v___x_8296_);
v___x_8321_ = l_Lean_Syntax_node1(v___x_8296_, v___x_8303_, v_a_8290_);
lean_inc(v___x_8296_);
v___x_8322_ = l_Lean_Syntax_node2(v___x_8296_, v___x_8297_, v___x_8320_, v___x_8321_);
v___x_8323_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8296_);
v___x_8324_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8324_, 0, v___x_8296_);
lean_ctor_set(v___x_8324_, 1, v___x_8323_);
lean_inc(v___x_8296_);
v___x_8325_ = l_Lean_Syntax_node3(v___x_8296_, v___x_8304_, v___x_8315_, v___x_8322_, v___x_8324_);
lean_inc(v___x_8296_);
v___x_8326_ = l_Lean_Syntax_node1(v___x_8296_, v___x_8303_, v___x_8325_);
v___x_8327_ = l_Lean_Syntax_node2(v___x_8296_, v___x_8297_, v___x_8302_, v___x_8326_);
v___x_8328_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8328_, 0, v___x_8327_);
lean_ctor_set(v___x_8328_, 1, v_a_8291_);
return v___x_8328_;
}
case 2:
{
lean_object* v_a_8329_; lean_object* v_a_8330_; lean_object* v_quotContext_8331_; lean_object* v_currMacroScope_8332_; lean_object* v_ref_8333_; uint8_t v___x_8334_; lean_object* v___x_8335_; lean_object* v___x_8336_; lean_object* v___x_8337_; lean_object* v___x_8338_; lean_object* v___x_8339_; lean_object* v___x_8340_; lean_object* v___x_8341_; lean_object* v___x_8342_; lean_object* v___x_8343_; lean_object* v___x_8344_; lean_object* v___x_8345_; lean_object* v___x_8346_; lean_object* v___x_8347_; lean_object* v___x_8348_; lean_object* v___x_8349_; lean_object* v___x_8350_; lean_object* v___x_8351_; lean_object* v___x_8352_; lean_object* v___x_8353_; lean_object* v___x_8354_; lean_object* v___x_8355_; lean_object* v___x_8356_; lean_object* v___x_8357_; lean_object* v___x_8358_; lean_object* v___x_8359_; lean_object* v___x_8360_; lean_object* v___x_8361_; lean_object* v___x_8362_; lean_object* v___x_8363_; lean_object* v___x_8364_; lean_object* v___x_8365_; lean_object* v___x_8366_; lean_object* v___x_8367_; lean_object* v___x_8368_; lean_object* v___x_8369_; lean_object* v___x_8370_; lean_object* v___x_8371_; lean_object* v___x_8372_; lean_object* v___x_8373_; lean_object* v___x_8374_; lean_object* v___x_8375_; lean_object* v___x_8376_; lean_object* v___x_8377_; lean_object* v___x_8378_; lean_object* v___x_8379_; lean_object* v___x_8380_; 
lean_dec_ref(v_a_8282_);
v_a_8329_ = lean_ctor_get(v___x_8285_, 0);
lean_inc(v_a_8329_);
v_a_8330_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8330_);
lean_dec_ref(v___x_8285_);
v_quotContext_8331_ = lean_ctor_get(v_a_8283_, 1);
lean_inc(v_quotContext_8331_);
v_currMacroScope_8332_ = lean_ctor_get(v_a_8283_, 2);
lean_inc(v_currMacroScope_8332_);
v_ref_8333_ = lean_ctor_get(v_a_8283_, 5);
lean_inc(v_ref_8333_);
lean_dec_ref(v_a_8283_);
v___x_8334_ = 0;
v___x_8335_ = l_Lean_SourceInfo_fromRef(v_ref_8333_, v___x_8334_);
lean_dec(v_ref_8333_);
v___x_8336_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8337_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8338_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8332_);
lean_inc(v_quotContext_8331_);
v___x_8339_ = l_Lean_addMacroScope(v_quotContext_8331_, v___x_8338_, v_currMacroScope_8332_);
v___x_8340_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8335_);
v___x_8341_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8341_, 0, v___x_8335_);
lean_ctor_set(v___x_8341_, 1, v___x_8337_);
lean_ctor_set(v___x_8341_, 2, v___x_8339_);
lean_ctor_set(v___x_8341_, 3, v___x_8340_);
v___x_8342_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8343_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8344_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8345_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8335_);
v___x_8346_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8346_, 0, v___x_8335_);
lean_ctor_set(v___x_8346_, 1, v___x_8345_);
v___x_8347_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8348_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8349_ = lean_box(0);
lean_inc(v_currMacroScope_8332_);
lean_inc(v_quotContext_8331_);
v___x_8350_ = l_Lean_addMacroScope(v_quotContext_8331_, v___x_8349_, v_currMacroScope_8332_);
v___x_8351_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8335_);
v___x_8352_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8352_, 0, v___x_8335_);
lean_ctor_set(v___x_8352_, 1, v___x_8348_);
lean_ctor_set(v___x_8352_, 2, v___x_8350_);
lean_ctor_set(v___x_8352_, 3, v___x_8351_);
lean_inc(v___x_8335_);
v___x_8353_ = l_Lean_Syntax_node1(v___x_8335_, v___x_8347_, v___x_8352_);
lean_inc(v___x_8335_);
v___x_8354_ = l_Lean_Syntax_node2(v___x_8335_, v___x_8344_, v___x_8346_, v___x_8353_);
v___x_8355_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3);
v___x_8356_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5));
lean_inc(v_currMacroScope_8332_);
lean_inc(v_quotContext_8331_);
v___x_8357_ = l_Lean_addMacroScope(v_quotContext_8331_, v___x_8356_, v_currMacroScope_8332_);
v___x_8358_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9));
lean_inc(v___x_8335_);
v___x_8359_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8359_, 0, v___x_8335_);
lean_ctor_set(v___x_8359_, 1, v___x_8355_);
lean_ctor_set(v___x_8359_, 2, v___x_8357_);
lean_ctor_set(v___x_8359_, 3, v___x_8358_);
v___x_8360_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_8361_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_8332_);
lean_inc(v_quotContext_8331_);
v___x_8362_ = l_Lean_addMacroScope(v_quotContext_8331_, v___x_8361_, v_currMacroScope_8332_);
v___x_8363_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_8335_);
v___x_8364_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8364_, 0, v___x_8335_);
lean_ctor_set(v___x_8364_, 1, v___x_8360_);
lean_ctor_set(v___x_8364_, 2, v___x_8362_);
lean_ctor_set(v___x_8364_, 3, v___x_8363_);
v___x_8365_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_8366_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
v___x_8367_ = l_Lean_addMacroScope(v_quotContext_8331_, v___x_8366_, v_currMacroScope_8332_);
v___x_8368_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15));
lean_inc(v___x_8335_);
v___x_8369_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8369_, 0, v___x_8335_);
lean_ctor_set(v___x_8369_, 1, v___x_8365_);
lean_ctor_set(v___x_8369_, 2, v___x_8367_);
lean_ctor_set(v___x_8369_, 3, v___x_8368_);
lean_inc(v___x_8335_);
v___x_8370_ = l_Lean_Syntax_node2(v___x_8335_, v___x_8342_, v___x_8369_, v_a_8329_);
lean_inc(v___x_8335_);
v___x_8371_ = l_Lean_Syntax_node2(v___x_8335_, v___x_8336_, v___x_8364_, v___x_8370_);
v___x_8372_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8335_);
v___x_8373_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8373_, 0, v___x_8335_);
lean_ctor_set(v___x_8373_, 1, v___x_8372_);
lean_inc_ref(v___x_8373_);
lean_inc(v___x_8354_);
lean_inc(v___x_8335_);
v___x_8374_ = l_Lean_Syntax_node3(v___x_8335_, v___x_8343_, v___x_8354_, v___x_8371_, v___x_8373_);
lean_inc(v___x_8335_);
v___x_8375_ = l_Lean_Syntax_node1(v___x_8335_, v___x_8342_, v___x_8374_);
lean_inc(v___x_8335_);
v___x_8376_ = l_Lean_Syntax_node2(v___x_8335_, v___x_8336_, v___x_8359_, v___x_8375_);
lean_inc(v___x_8335_);
v___x_8377_ = l_Lean_Syntax_node3(v___x_8335_, v___x_8343_, v___x_8354_, v___x_8376_, v___x_8373_);
lean_inc(v___x_8335_);
v___x_8378_ = l_Lean_Syntax_node1(v___x_8335_, v___x_8342_, v___x_8377_);
v___x_8379_ = l_Lean_Syntax_node2(v___x_8335_, v___x_8336_, v___x_8341_, v___x_8378_);
v___x_8380_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8380_, 0, v___x_8379_);
lean_ctor_set(v___x_8380_, 1, v_a_8330_);
return v___x_8380_;
}
case 3:
{
lean_object* v_a_8381_; lean_object* v_a_8382_; lean_object* v_quotContext_8383_; lean_object* v_currMacroScope_8384_; lean_object* v_ref_8385_; uint8_t v___x_8386_; lean_object* v___x_8387_; lean_object* v___x_8388_; lean_object* v___x_8389_; lean_object* v___x_8390_; lean_object* v___x_8391_; lean_object* v___x_8392_; lean_object* v___x_8393_; lean_object* v___x_8394_; lean_object* v___x_8395_; lean_object* v___x_8396_; lean_object* v___x_8397_; lean_object* v___x_8398_; lean_object* v___x_8399_; lean_object* v___x_8400_; lean_object* v___x_8401_; lean_object* v___x_8402_; lean_object* v___x_8403_; lean_object* v___x_8404_; lean_object* v___x_8405_; lean_object* v___x_8406_; lean_object* v___x_8407_; lean_object* v___x_8408_; lean_object* v___x_8409_; lean_object* v___x_8410_; lean_object* v___x_8411_; lean_object* v___x_8412_; lean_object* v___x_8413_; lean_object* v___x_8414_; lean_object* v___x_8415_; lean_object* v___x_8416_; lean_object* v___x_8417_; lean_object* v___x_8418_; lean_object* v___x_8419_; 
lean_dec_ref(v_a_8282_);
v_a_8381_ = lean_ctor_get(v___x_8285_, 0);
lean_inc(v_a_8381_);
v_a_8382_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8382_);
lean_dec_ref(v___x_8285_);
v_quotContext_8383_ = lean_ctor_get(v_a_8283_, 1);
lean_inc(v_quotContext_8383_);
v_currMacroScope_8384_ = lean_ctor_get(v_a_8283_, 2);
lean_inc(v_currMacroScope_8384_);
v_ref_8385_ = lean_ctor_get(v_a_8283_, 5);
lean_inc(v_ref_8385_);
lean_dec_ref(v_a_8283_);
v___x_8386_ = 0;
v___x_8387_ = l_Lean_SourceInfo_fromRef(v_ref_8385_, v___x_8386_);
lean_dec(v_ref_8385_);
v___x_8388_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8389_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8390_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8384_);
lean_inc(v_quotContext_8383_);
v___x_8391_ = l_Lean_addMacroScope(v_quotContext_8383_, v___x_8390_, v_currMacroScope_8384_);
v___x_8392_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8387_);
v___x_8393_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8393_, 0, v___x_8387_);
lean_ctor_set(v___x_8393_, 1, v___x_8389_);
lean_ctor_set(v___x_8393_, 2, v___x_8391_);
lean_ctor_set(v___x_8393_, 3, v___x_8392_);
v___x_8394_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8395_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8396_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8397_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8387_);
v___x_8398_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8398_, 0, v___x_8387_);
lean_ctor_set(v___x_8398_, 1, v___x_8397_);
v___x_8399_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8400_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8401_ = lean_box(0);
lean_inc(v_currMacroScope_8384_);
lean_inc(v_quotContext_8383_);
v___x_8402_ = l_Lean_addMacroScope(v_quotContext_8383_, v___x_8401_, v_currMacroScope_8384_);
v___x_8403_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8387_);
v___x_8404_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8404_, 0, v___x_8387_);
lean_ctor_set(v___x_8404_, 1, v___x_8400_);
lean_ctor_set(v___x_8404_, 2, v___x_8402_);
lean_ctor_set(v___x_8404_, 3, v___x_8403_);
lean_inc(v___x_8387_);
v___x_8405_ = l_Lean_Syntax_node1(v___x_8387_, v___x_8399_, v___x_8404_);
lean_inc(v___x_8387_);
v___x_8406_ = l_Lean_Syntax_node2(v___x_8387_, v___x_8396_, v___x_8398_, v___x_8405_);
v___x_8407_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__17);
v___x_8408_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__20));
v___x_8409_ = l_Lean_addMacroScope(v_quotContext_8383_, v___x_8408_, v_currMacroScope_8384_);
v___x_8410_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__24));
lean_inc(v___x_8387_);
v___x_8411_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8411_, 0, v___x_8387_);
lean_ctor_set(v___x_8411_, 1, v___x_8407_);
lean_ctor_set(v___x_8411_, 2, v___x_8409_);
lean_ctor_set(v___x_8411_, 3, v___x_8410_);
lean_inc(v___x_8387_);
v___x_8412_ = l_Lean_Syntax_node1(v___x_8387_, v___x_8394_, v_a_8381_);
lean_inc(v___x_8387_);
v___x_8413_ = l_Lean_Syntax_node2(v___x_8387_, v___x_8388_, v___x_8411_, v___x_8412_);
v___x_8414_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8387_);
v___x_8415_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8415_, 0, v___x_8387_);
lean_ctor_set(v___x_8415_, 1, v___x_8414_);
lean_inc(v___x_8387_);
v___x_8416_ = l_Lean_Syntax_node3(v___x_8387_, v___x_8395_, v___x_8406_, v___x_8413_, v___x_8415_);
lean_inc(v___x_8387_);
v___x_8417_ = l_Lean_Syntax_node1(v___x_8387_, v___x_8394_, v___x_8416_);
v___x_8418_ = l_Lean_Syntax_node2(v___x_8387_, v___x_8388_, v___x_8393_, v___x_8417_);
v___x_8419_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8419_, 0, v___x_8418_);
lean_ctor_set(v___x_8419_, 1, v_a_8382_);
return v___x_8419_;
}
case 4:
{
lean_object* v_a_8420_; lean_object* v___x_8421_; lean_object* v___x_8422_; 
v_a_8420_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8420_);
lean_dec_ref(v___x_8285_);
v___x_8421_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__25);
v___x_8422_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_8421_, v_a_8282_, v_a_8283_, v_a_8420_);
return v___x_8422_;
}
case 5:
{
lean_object* v_a_8423_; lean_object* v_a_8424_; lean_object* v_quotContext_8425_; lean_object* v_currMacroScope_8426_; lean_object* v_ref_8427_; uint8_t v___x_8428_; lean_object* v___x_8429_; lean_object* v___x_8430_; lean_object* v___x_8431_; lean_object* v___x_8432_; lean_object* v___x_8433_; lean_object* v___x_8434_; lean_object* v___x_8435_; lean_object* v___x_8436_; lean_object* v___x_8437_; lean_object* v___x_8438_; lean_object* v___x_8439_; lean_object* v___x_8440_; lean_object* v___x_8441_; lean_object* v___x_8442_; lean_object* v___x_8443_; lean_object* v___x_8444_; lean_object* v___x_8445_; lean_object* v___x_8446_; lean_object* v___x_8447_; lean_object* v___x_8448_; lean_object* v___x_8449_; lean_object* v___x_8450_; lean_object* v___x_8451_; lean_object* v___x_8452_; lean_object* v___x_8453_; lean_object* v___x_8454_; lean_object* v___x_8455_; lean_object* v___x_8456_; lean_object* v___x_8457_; lean_object* v___x_8458_; lean_object* v___x_8459_; lean_object* v___x_8460_; lean_object* v___x_8461_; 
lean_dec_ref(v_a_8282_);
v_a_8423_ = lean_ctor_get(v___x_8285_, 0);
lean_inc(v_a_8423_);
v_a_8424_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8424_);
lean_dec_ref(v___x_8285_);
v_quotContext_8425_ = lean_ctor_get(v_a_8283_, 1);
lean_inc(v_quotContext_8425_);
v_currMacroScope_8426_ = lean_ctor_get(v_a_8283_, 2);
lean_inc(v_currMacroScope_8426_);
v_ref_8427_ = lean_ctor_get(v_a_8283_, 5);
lean_inc(v_ref_8427_);
lean_dec_ref(v_a_8283_);
v___x_8428_ = 0;
v___x_8429_ = l_Lean_SourceInfo_fromRef(v_ref_8427_, v___x_8428_);
lean_dec(v_ref_8427_);
v___x_8430_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8431_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8432_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8426_);
lean_inc(v_quotContext_8425_);
v___x_8433_ = l_Lean_addMacroScope(v_quotContext_8425_, v___x_8432_, v_currMacroScope_8426_);
v___x_8434_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8429_);
v___x_8435_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8435_, 0, v___x_8429_);
lean_ctor_set(v___x_8435_, 1, v___x_8431_);
lean_ctor_set(v___x_8435_, 2, v___x_8433_);
lean_ctor_set(v___x_8435_, 3, v___x_8434_);
v___x_8436_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8437_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8438_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8439_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8429_);
v___x_8440_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8440_, 0, v___x_8429_);
lean_ctor_set(v___x_8440_, 1, v___x_8439_);
v___x_8441_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8442_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8443_ = lean_box(0);
lean_inc(v_currMacroScope_8426_);
lean_inc(v_quotContext_8425_);
v___x_8444_ = l_Lean_addMacroScope(v_quotContext_8425_, v___x_8443_, v_currMacroScope_8426_);
v___x_8445_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8429_);
v___x_8446_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8446_, 0, v___x_8429_);
lean_ctor_set(v___x_8446_, 1, v___x_8442_);
lean_ctor_set(v___x_8446_, 2, v___x_8444_);
lean_ctor_set(v___x_8446_, 3, v___x_8445_);
lean_inc(v___x_8429_);
v___x_8447_ = l_Lean_Syntax_node1(v___x_8429_, v___x_8441_, v___x_8446_);
lean_inc(v___x_8429_);
v___x_8448_ = l_Lean_Syntax_node2(v___x_8429_, v___x_8438_, v___x_8440_, v___x_8447_);
v___x_8449_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__27);
v___x_8450_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__28));
v___x_8451_ = l_Lean_addMacroScope(v_quotContext_8425_, v___x_8450_, v_currMacroScope_8426_);
v___x_8452_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__32));
lean_inc(v___x_8429_);
v___x_8453_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8453_, 0, v___x_8429_);
lean_ctor_set(v___x_8453_, 1, v___x_8449_);
lean_ctor_set(v___x_8453_, 2, v___x_8451_);
lean_ctor_set(v___x_8453_, 3, v___x_8452_);
lean_inc(v___x_8429_);
v___x_8454_ = l_Lean_Syntax_node1(v___x_8429_, v___x_8436_, v_a_8423_);
lean_inc(v___x_8429_);
v___x_8455_ = l_Lean_Syntax_node2(v___x_8429_, v___x_8430_, v___x_8453_, v___x_8454_);
v___x_8456_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8429_);
v___x_8457_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8457_, 0, v___x_8429_);
lean_ctor_set(v___x_8457_, 1, v___x_8456_);
lean_inc(v___x_8429_);
v___x_8458_ = l_Lean_Syntax_node3(v___x_8429_, v___x_8437_, v___x_8448_, v___x_8455_, v___x_8457_);
lean_inc(v___x_8429_);
v___x_8459_ = l_Lean_Syntax_node1(v___x_8429_, v___x_8436_, v___x_8458_);
v___x_8460_ = l_Lean_Syntax_node2(v___x_8429_, v___x_8430_, v___x_8435_, v___x_8459_);
v___x_8461_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8461_, 0, v___x_8460_);
lean_ctor_set(v___x_8461_, 1, v_a_8424_);
return v___x_8461_;
}
default: 
{
lean_object* v_a_8462_; lean_object* v_a_8463_; lean_object* v_quotContext_8464_; lean_object* v_currMacroScope_8465_; lean_object* v_ref_8466_; uint8_t v___x_8467_; lean_object* v___x_8468_; lean_object* v___x_8469_; lean_object* v___x_8470_; lean_object* v___x_8471_; lean_object* v___x_8472_; lean_object* v___x_8473_; lean_object* v___x_8474_; lean_object* v___x_8475_; lean_object* v___x_8476_; lean_object* v___x_8477_; lean_object* v___x_8478_; lean_object* v___x_8479_; lean_object* v___x_8480_; lean_object* v___x_8481_; lean_object* v___x_8482_; lean_object* v___x_8483_; lean_object* v___x_8484_; lean_object* v___x_8485_; lean_object* v___x_8486_; lean_object* v___x_8487_; lean_object* v___x_8488_; lean_object* v___x_8489_; lean_object* v___x_8490_; lean_object* v___x_8491_; lean_object* v___x_8492_; lean_object* v___x_8493_; lean_object* v___x_8494_; lean_object* v___x_8495_; lean_object* v___x_8496_; lean_object* v___x_8497_; lean_object* v___x_8498_; lean_object* v___x_8499_; lean_object* v___x_8500_; 
lean_dec_ref(v_a_8282_);
v_a_8462_ = lean_ctor_get(v___x_8285_, 0);
lean_inc(v_a_8462_);
v_a_8463_ = lean_ctor_get(v___x_8285_, 1);
lean_inc(v_a_8463_);
lean_dec_ref(v___x_8285_);
v_quotContext_8464_ = lean_ctor_get(v_a_8283_, 1);
lean_inc(v_quotContext_8464_);
v_currMacroScope_8465_ = lean_ctor_get(v_a_8283_, 2);
lean_inc(v_currMacroScope_8465_);
v_ref_8466_ = lean_ctor_get(v_a_8283_, 5);
lean_inc(v_ref_8466_);
lean_dec_ref(v_a_8283_);
v___x_8467_ = 0;
v___x_8468_ = l_Lean_SourceInfo_fromRef(v_ref_8466_, v___x_8467_);
lean_dec(v_ref_8466_);
v___x_8469_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8470_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8471_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8465_);
lean_inc(v_quotContext_8464_);
v___x_8472_ = l_Lean_addMacroScope(v_quotContext_8464_, v___x_8471_, v_currMacroScope_8465_);
v___x_8473_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8468_);
v___x_8474_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8474_, 0, v___x_8468_);
lean_ctor_set(v___x_8474_, 1, v___x_8470_);
lean_ctor_set(v___x_8474_, 2, v___x_8472_);
lean_ctor_set(v___x_8474_, 3, v___x_8473_);
v___x_8475_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8476_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8477_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8478_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8468_);
v___x_8479_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8479_, 0, v___x_8468_);
lean_ctor_set(v___x_8479_, 1, v___x_8478_);
v___x_8480_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8481_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8482_ = lean_box(0);
lean_inc(v_currMacroScope_8465_);
lean_inc(v_quotContext_8464_);
v___x_8483_ = l_Lean_addMacroScope(v_quotContext_8464_, v___x_8482_, v_currMacroScope_8465_);
v___x_8484_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8468_);
v___x_8485_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8485_, 0, v___x_8468_);
lean_ctor_set(v___x_8485_, 1, v___x_8481_);
lean_ctor_set(v___x_8485_, 2, v___x_8483_);
lean_ctor_set(v___x_8485_, 3, v___x_8484_);
lean_inc(v___x_8468_);
v___x_8486_ = l_Lean_Syntax_node1(v___x_8468_, v___x_8480_, v___x_8485_);
lean_inc(v___x_8468_);
v___x_8487_ = l_Lean_Syntax_node2(v___x_8468_, v___x_8477_, v___x_8479_, v___x_8486_);
v___x_8488_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__34);
v___x_8489_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__35));
v___x_8490_ = l_Lean_addMacroScope(v_quotContext_8464_, v___x_8489_, v_currMacroScope_8465_);
v___x_8491_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__39));
lean_inc(v___x_8468_);
v___x_8492_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8492_, 0, v___x_8468_);
lean_ctor_set(v___x_8492_, 1, v___x_8488_);
lean_ctor_set(v___x_8492_, 2, v___x_8490_);
lean_ctor_set(v___x_8492_, 3, v___x_8491_);
lean_inc(v___x_8468_);
v___x_8493_ = l_Lean_Syntax_node1(v___x_8468_, v___x_8475_, v_a_8462_);
lean_inc(v___x_8468_);
v___x_8494_ = l_Lean_Syntax_node2(v___x_8468_, v___x_8469_, v___x_8492_, v___x_8493_);
v___x_8495_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8468_);
v___x_8496_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8496_, 0, v___x_8468_);
lean_ctor_set(v___x_8496_, 1, v___x_8495_);
lean_inc(v___x_8468_);
v___x_8497_ = l_Lean_Syntax_node3(v___x_8468_, v___x_8476_, v___x_8487_, v___x_8494_, v___x_8496_);
lean_inc(v___x_8468_);
v___x_8498_ = l_Lean_Syntax_node1(v___x_8468_, v___x_8475_, v___x_8497_);
v___x_8499_ = l_Lean_Syntax_node2(v___x_8468_, v___x_8469_, v___x_8474_, v___x_8498_);
v___x_8500_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8500_, 0, v___x_8499_);
lean_ctor_set(v___x_8500_, 1, v_a_8463_);
return v___x_8500_;
}
}
}
else
{
lean_dec_ref(v_a_8283_);
lean_dec_ref(v_a_8282_);
return v___x_8285_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1(void){
_start:
{
lean_object* v___x_8502_; lean_object* v___x_8503_; lean_object* v___x_8504_; lean_object* v___x_8505_; lean_object* v___x_8506_; lean_object* v___x_8507_; 
v___x_8502_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_8503_ = lean_unsigned_to_nat(24u);
v___x_8504_ = lean_unsigned_to_nat(1026u);
v___x_8505_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__0));
v___x_8506_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_8507_ = l_mkPanicMessageWithDecl(v___x_8506_, v___x_8505_, v___x_8504_, v___x_8503_, v___x_8502_);
return v___x_8507_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3(void){
_start:
{
lean_object* v___x_8509_; lean_object* v___x_8510_; 
v___x_8509_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__2));
v___x_8510_ = l_String_toRawSubstring_x27(v___x_8509_);
return v___x_8510_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10(void){
_start:
{
lean_object* v___x_8526_; lean_object* v___x_8527_; lean_object* v___x_8528_; lean_object* v___x_8529_; lean_object* v___x_8530_; lean_object* v___x_8531_; 
v___x_8526_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_8527_ = lean_unsigned_to_nat(24u);
v___x_8528_ = lean_unsigned_to_nat(1030u);
v___x_8529_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__0));
v___x_8530_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_8531_ = l_mkPanicMessageWithDecl(v___x_8530_, v___x_8529_, v___x_8528_, v___x_8527_, v___x_8526_);
return v___x_8531_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12(void){
_start:
{
lean_object* v___x_8533_; lean_object* v___x_8534_; 
v___x_8533_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__11));
v___x_8534_ = l_String_toRawSubstring_x27(v___x_8533_);
return v___x_8534_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19(void){
_start:
{
lean_object* v___x_8550_; lean_object* v___x_8551_; 
v___x_8550_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__18));
v___x_8551_ = l_String_toRawSubstring_x27(v___x_8550_);
return v___x_8551_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_breakToTerm(lean_object* v_a_8566_, lean_object* v_a_8567_, lean_object* v_a_8568_){
_start:
{
lean_object* v___x_8569_; 
lean_inc_ref(v_a_8567_);
v___x_8569_ = l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(v_a_8566_, v_a_8567_, v_a_8568_);
if (lean_obj_tag(v___x_8569_) == 0)
{
uint8_t v_kind_8570_; 
v_kind_8570_ = lean_ctor_get_uint8(v_a_8566_, sizeof(void*)*3);
switch(v_kind_8570_)
{
case 0:
{
lean_object* v_a_8571_; lean_object* v___x_8572_; lean_object* v___x_8573_; 
v_a_8571_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8571_);
lean_dec_ref(v___x_8569_);
v___x_8572_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__1);
v___x_8573_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_8572_, v_a_8566_, v_a_8567_, v_a_8571_);
return v___x_8573_;
}
case 1:
{
lean_object* v_a_8574_; lean_object* v_a_8575_; lean_object* v_quotContext_8576_; lean_object* v_currMacroScope_8577_; lean_object* v_ref_8578_; uint8_t v___x_8579_; lean_object* v___x_8580_; lean_object* v___x_8581_; lean_object* v___x_8582_; lean_object* v___x_8583_; lean_object* v___x_8584_; lean_object* v___x_8585_; lean_object* v___x_8586_; lean_object* v___x_8587_; lean_object* v___x_8588_; lean_object* v___x_8589_; lean_object* v___x_8590_; lean_object* v___x_8591_; lean_object* v___x_8592_; lean_object* v___x_8593_; lean_object* v___x_8594_; lean_object* v___x_8595_; lean_object* v___x_8596_; lean_object* v___x_8597_; lean_object* v___x_8598_; lean_object* v___x_8599_; lean_object* v___x_8600_; lean_object* v___x_8601_; lean_object* v___x_8602_; lean_object* v___x_8603_; lean_object* v___x_8604_; lean_object* v___x_8605_; lean_object* v___x_8606_; lean_object* v___x_8607_; lean_object* v___x_8608_; lean_object* v___x_8609_; lean_object* v___x_8610_; lean_object* v___x_8611_; lean_object* v___x_8612_; 
lean_dec_ref(v_a_8566_);
v_a_8574_ = lean_ctor_get(v___x_8569_, 0);
lean_inc(v_a_8574_);
v_a_8575_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8575_);
lean_dec_ref(v___x_8569_);
v_quotContext_8576_ = lean_ctor_get(v_a_8567_, 1);
lean_inc(v_quotContext_8576_);
v_currMacroScope_8577_ = lean_ctor_get(v_a_8567_, 2);
lean_inc(v_currMacroScope_8577_);
v_ref_8578_ = lean_ctor_get(v_a_8567_, 5);
lean_inc(v_ref_8578_);
lean_dec_ref(v_a_8567_);
v___x_8579_ = 0;
v___x_8580_ = l_Lean_SourceInfo_fromRef(v_ref_8578_, v___x_8579_);
lean_dec(v_ref_8578_);
v___x_8581_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8582_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8583_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8577_);
lean_inc(v_quotContext_8576_);
v___x_8584_ = l_Lean_addMacroScope(v_quotContext_8576_, v___x_8583_, v_currMacroScope_8577_);
v___x_8585_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8580_);
v___x_8586_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8586_, 0, v___x_8580_);
lean_ctor_set(v___x_8586_, 1, v___x_8582_);
lean_ctor_set(v___x_8586_, 2, v___x_8584_);
lean_ctor_set(v___x_8586_, 3, v___x_8585_);
v___x_8587_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8588_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8589_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8590_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8580_);
v___x_8591_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8591_, 0, v___x_8580_);
lean_ctor_set(v___x_8591_, 1, v___x_8590_);
v___x_8592_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8593_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8594_ = lean_box(0);
lean_inc(v_currMacroScope_8577_);
lean_inc(v_quotContext_8576_);
v___x_8595_ = l_Lean_addMacroScope(v_quotContext_8576_, v___x_8594_, v_currMacroScope_8577_);
v___x_8596_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8580_);
v___x_8597_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8597_, 0, v___x_8580_);
lean_ctor_set(v___x_8597_, 1, v___x_8593_);
lean_ctor_set(v___x_8597_, 2, v___x_8595_);
lean_ctor_set(v___x_8597_, 3, v___x_8596_);
lean_inc(v___x_8580_);
v___x_8598_ = l_Lean_Syntax_node1(v___x_8580_, v___x_8592_, v___x_8597_);
lean_inc(v___x_8580_);
v___x_8599_ = l_Lean_Syntax_node2(v___x_8580_, v___x_8589_, v___x_8591_, v___x_8598_);
v___x_8600_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10);
v___x_8601_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13));
v___x_8602_ = l_Lean_addMacroScope(v_quotContext_8576_, v___x_8601_, v_currMacroScope_8577_);
v___x_8603_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17));
lean_inc(v___x_8580_);
v___x_8604_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8604_, 0, v___x_8580_);
lean_ctor_set(v___x_8604_, 1, v___x_8600_);
lean_ctor_set(v___x_8604_, 2, v___x_8602_);
lean_ctor_set(v___x_8604_, 3, v___x_8603_);
lean_inc(v___x_8580_);
v___x_8605_ = l_Lean_Syntax_node1(v___x_8580_, v___x_8587_, v_a_8574_);
lean_inc(v___x_8580_);
v___x_8606_ = l_Lean_Syntax_node2(v___x_8580_, v___x_8581_, v___x_8604_, v___x_8605_);
v___x_8607_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8580_);
v___x_8608_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8608_, 0, v___x_8580_);
lean_ctor_set(v___x_8608_, 1, v___x_8607_);
lean_inc(v___x_8580_);
v___x_8609_ = l_Lean_Syntax_node3(v___x_8580_, v___x_8588_, v___x_8599_, v___x_8606_, v___x_8608_);
lean_inc(v___x_8580_);
v___x_8610_ = l_Lean_Syntax_node1(v___x_8580_, v___x_8587_, v___x_8609_);
v___x_8611_ = l_Lean_Syntax_node2(v___x_8580_, v___x_8581_, v___x_8586_, v___x_8610_);
v___x_8612_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8612_, 0, v___x_8611_);
lean_ctor_set(v___x_8612_, 1, v_a_8575_);
return v___x_8612_;
}
case 2:
{
lean_object* v_a_8613_; lean_object* v_a_8614_; lean_object* v_quotContext_8615_; lean_object* v_currMacroScope_8616_; lean_object* v_ref_8617_; uint8_t v___x_8618_; lean_object* v___x_8619_; lean_object* v___x_8620_; lean_object* v___x_8621_; lean_object* v___x_8622_; lean_object* v___x_8623_; lean_object* v___x_8624_; lean_object* v___x_8625_; lean_object* v___x_8626_; lean_object* v___x_8627_; lean_object* v___x_8628_; lean_object* v___x_8629_; lean_object* v___x_8630_; lean_object* v___x_8631_; lean_object* v___x_8632_; lean_object* v___x_8633_; lean_object* v___x_8634_; lean_object* v___x_8635_; lean_object* v___x_8636_; lean_object* v___x_8637_; lean_object* v___x_8638_; lean_object* v___x_8639_; lean_object* v___x_8640_; lean_object* v___x_8641_; lean_object* v___x_8642_; lean_object* v___x_8643_; lean_object* v___x_8644_; lean_object* v___x_8645_; lean_object* v___x_8646_; lean_object* v___x_8647_; lean_object* v___x_8648_; lean_object* v___x_8649_; lean_object* v___x_8650_; lean_object* v___x_8651_; lean_object* v___x_8652_; lean_object* v___x_8653_; lean_object* v___x_8654_; lean_object* v___x_8655_; lean_object* v___x_8656_; lean_object* v___x_8657_; lean_object* v___x_8658_; lean_object* v___x_8659_; lean_object* v___x_8660_; lean_object* v___x_8661_; lean_object* v___x_8662_; lean_object* v___x_8663_; lean_object* v___x_8664_; 
lean_dec_ref(v_a_8566_);
v_a_8613_ = lean_ctor_get(v___x_8569_, 0);
lean_inc(v_a_8613_);
v_a_8614_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8614_);
lean_dec_ref(v___x_8569_);
v_quotContext_8615_ = lean_ctor_get(v_a_8567_, 1);
lean_inc(v_quotContext_8615_);
v_currMacroScope_8616_ = lean_ctor_get(v_a_8567_, 2);
lean_inc(v_currMacroScope_8616_);
v_ref_8617_ = lean_ctor_get(v_a_8567_, 5);
lean_inc(v_ref_8617_);
lean_dec_ref(v_a_8567_);
v___x_8618_ = 0;
v___x_8619_ = l_Lean_SourceInfo_fromRef(v_ref_8617_, v___x_8618_);
lean_dec(v_ref_8617_);
v___x_8620_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8621_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8622_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8616_);
lean_inc(v_quotContext_8615_);
v___x_8623_ = l_Lean_addMacroScope(v_quotContext_8615_, v___x_8622_, v_currMacroScope_8616_);
v___x_8624_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8619_);
v___x_8625_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8625_, 0, v___x_8619_);
lean_ctor_set(v___x_8625_, 1, v___x_8621_);
lean_ctor_set(v___x_8625_, 2, v___x_8623_);
lean_ctor_set(v___x_8625_, 3, v___x_8624_);
v___x_8626_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8627_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8628_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8629_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8619_);
v___x_8630_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8630_, 0, v___x_8619_);
lean_ctor_set(v___x_8630_, 1, v___x_8629_);
v___x_8631_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8632_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8633_ = lean_box(0);
lean_inc(v_currMacroScope_8616_);
lean_inc(v_quotContext_8615_);
v___x_8634_ = l_Lean_addMacroScope(v_quotContext_8615_, v___x_8633_, v_currMacroScope_8616_);
v___x_8635_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8619_);
v___x_8636_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8636_, 0, v___x_8619_);
lean_ctor_set(v___x_8636_, 1, v___x_8632_);
lean_ctor_set(v___x_8636_, 2, v___x_8634_);
lean_ctor_set(v___x_8636_, 3, v___x_8635_);
lean_inc(v___x_8619_);
v___x_8637_ = l_Lean_Syntax_node1(v___x_8619_, v___x_8631_, v___x_8636_);
lean_inc(v___x_8619_);
v___x_8638_ = l_Lean_Syntax_node2(v___x_8619_, v___x_8628_, v___x_8630_, v___x_8637_);
v___x_8639_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__10);
v___x_8640_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__13));
lean_inc(v_currMacroScope_8616_);
lean_inc(v_quotContext_8615_);
v___x_8641_ = l_Lean_addMacroScope(v_quotContext_8615_, v___x_8640_, v_currMacroScope_8616_);
v___x_8642_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__17));
lean_inc(v___x_8619_);
v___x_8643_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8643_, 0, v___x_8619_);
lean_ctor_set(v___x_8643_, 1, v___x_8639_);
lean_ctor_set(v___x_8643_, 2, v___x_8641_);
lean_ctor_set(v___x_8643_, 3, v___x_8642_);
v___x_8644_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_8645_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_8616_);
lean_inc(v_quotContext_8615_);
v___x_8646_ = l_Lean_addMacroScope(v_quotContext_8615_, v___x_8645_, v_currMacroScope_8616_);
v___x_8647_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_8619_);
v___x_8648_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8648_, 0, v___x_8619_);
lean_ctor_set(v___x_8648_, 1, v___x_8644_);
lean_ctor_set(v___x_8648_, 2, v___x_8646_);
lean_ctor_set(v___x_8648_, 3, v___x_8647_);
v___x_8649_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_8650_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
v___x_8651_ = l_Lean_addMacroScope(v_quotContext_8615_, v___x_8650_, v_currMacroScope_8616_);
v___x_8652_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15));
lean_inc(v___x_8619_);
v___x_8653_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8653_, 0, v___x_8619_);
lean_ctor_set(v___x_8653_, 1, v___x_8649_);
lean_ctor_set(v___x_8653_, 2, v___x_8651_);
lean_ctor_set(v___x_8653_, 3, v___x_8652_);
lean_inc(v___x_8619_);
v___x_8654_ = l_Lean_Syntax_node2(v___x_8619_, v___x_8626_, v___x_8653_, v_a_8613_);
lean_inc(v___x_8619_);
v___x_8655_ = l_Lean_Syntax_node2(v___x_8619_, v___x_8620_, v___x_8648_, v___x_8654_);
v___x_8656_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8619_);
v___x_8657_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8657_, 0, v___x_8619_);
lean_ctor_set(v___x_8657_, 1, v___x_8656_);
lean_inc_ref(v___x_8657_);
lean_inc(v___x_8638_);
lean_inc(v___x_8619_);
v___x_8658_ = l_Lean_Syntax_node3(v___x_8619_, v___x_8627_, v___x_8638_, v___x_8655_, v___x_8657_);
lean_inc(v___x_8619_);
v___x_8659_ = l_Lean_Syntax_node1(v___x_8619_, v___x_8626_, v___x_8658_);
lean_inc(v___x_8619_);
v___x_8660_ = l_Lean_Syntax_node2(v___x_8619_, v___x_8620_, v___x_8643_, v___x_8659_);
lean_inc(v___x_8619_);
v___x_8661_ = l_Lean_Syntax_node3(v___x_8619_, v___x_8627_, v___x_8638_, v___x_8660_, v___x_8657_);
lean_inc(v___x_8619_);
v___x_8662_ = l_Lean_Syntax_node1(v___x_8619_, v___x_8626_, v___x_8661_);
v___x_8663_ = l_Lean_Syntax_node2(v___x_8619_, v___x_8620_, v___x_8625_, v___x_8662_);
v___x_8664_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8664_, 0, v___x_8663_);
lean_ctor_set(v___x_8664_, 1, v_a_8614_);
return v___x_8664_;
}
case 3:
{
lean_object* v_a_8665_; lean_object* v_a_8666_; lean_object* v_quotContext_8667_; lean_object* v_currMacroScope_8668_; lean_object* v_ref_8669_; uint8_t v___x_8670_; lean_object* v___x_8671_; lean_object* v___x_8672_; lean_object* v___x_8673_; lean_object* v___x_8674_; lean_object* v___x_8675_; lean_object* v___x_8676_; lean_object* v___x_8677_; lean_object* v___x_8678_; lean_object* v___x_8679_; lean_object* v___x_8680_; lean_object* v___x_8681_; lean_object* v___x_8682_; lean_object* v___x_8683_; lean_object* v___x_8684_; lean_object* v___x_8685_; lean_object* v___x_8686_; lean_object* v___x_8687_; lean_object* v___x_8688_; lean_object* v___x_8689_; lean_object* v___x_8690_; lean_object* v___x_8691_; lean_object* v___x_8692_; lean_object* v___x_8693_; lean_object* v___x_8694_; lean_object* v___x_8695_; lean_object* v___x_8696_; lean_object* v___x_8697_; lean_object* v___x_8698_; lean_object* v___x_8699_; lean_object* v___x_8700_; lean_object* v___x_8701_; lean_object* v___x_8702_; lean_object* v___x_8703_; 
lean_dec_ref(v_a_8566_);
v_a_8665_ = lean_ctor_get(v___x_8569_, 0);
lean_inc(v_a_8665_);
v_a_8666_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8666_);
lean_dec_ref(v___x_8569_);
v_quotContext_8667_ = lean_ctor_get(v_a_8567_, 1);
lean_inc(v_quotContext_8667_);
v_currMacroScope_8668_ = lean_ctor_get(v_a_8567_, 2);
lean_inc(v_currMacroScope_8668_);
v_ref_8669_ = lean_ctor_get(v_a_8567_, 5);
lean_inc(v_ref_8669_);
lean_dec_ref(v_a_8567_);
v___x_8670_ = 0;
v___x_8671_ = l_Lean_SourceInfo_fromRef(v_ref_8669_, v___x_8670_);
lean_dec(v_ref_8669_);
v___x_8672_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8673_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8674_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8668_);
lean_inc(v_quotContext_8667_);
v___x_8675_ = l_Lean_addMacroScope(v_quotContext_8667_, v___x_8674_, v_currMacroScope_8668_);
v___x_8676_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8671_);
v___x_8677_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8677_, 0, v___x_8671_);
lean_ctor_set(v___x_8677_, 1, v___x_8673_);
lean_ctor_set(v___x_8677_, 2, v___x_8675_);
lean_ctor_set(v___x_8677_, 3, v___x_8676_);
v___x_8678_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8679_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8680_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8681_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8671_);
v___x_8682_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8682_, 0, v___x_8671_);
lean_ctor_set(v___x_8682_, 1, v___x_8681_);
v___x_8683_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8684_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8685_ = lean_box(0);
lean_inc(v_currMacroScope_8668_);
lean_inc(v_quotContext_8667_);
v___x_8686_ = l_Lean_addMacroScope(v_quotContext_8667_, v___x_8685_, v_currMacroScope_8668_);
v___x_8687_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8671_);
v___x_8688_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8688_, 0, v___x_8671_);
lean_ctor_set(v___x_8688_, 1, v___x_8684_);
lean_ctor_set(v___x_8688_, 2, v___x_8686_);
lean_ctor_set(v___x_8688_, 3, v___x_8687_);
lean_inc(v___x_8671_);
v___x_8689_ = l_Lean_Syntax_node1(v___x_8671_, v___x_8683_, v___x_8688_);
lean_inc(v___x_8671_);
v___x_8690_ = l_Lean_Syntax_node2(v___x_8671_, v___x_8680_, v___x_8682_, v___x_8689_);
v___x_8691_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3, &l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__3);
v___x_8692_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__5));
v___x_8693_ = l_Lean_addMacroScope(v_quotContext_8667_, v___x_8692_, v_currMacroScope_8668_);
v___x_8694_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__9));
lean_inc(v___x_8671_);
v___x_8695_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8695_, 0, v___x_8671_);
lean_ctor_set(v___x_8695_, 1, v___x_8691_);
lean_ctor_set(v___x_8695_, 2, v___x_8693_);
lean_ctor_set(v___x_8695_, 3, v___x_8694_);
lean_inc(v___x_8671_);
v___x_8696_ = l_Lean_Syntax_node1(v___x_8671_, v___x_8678_, v_a_8665_);
lean_inc(v___x_8671_);
v___x_8697_ = l_Lean_Syntax_node2(v___x_8671_, v___x_8672_, v___x_8695_, v___x_8696_);
v___x_8698_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8671_);
v___x_8699_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8699_, 0, v___x_8671_);
lean_ctor_set(v___x_8699_, 1, v___x_8698_);
lean_inc(v___x_8671_);
v___x_8700_ = l_Lean_Syntax_node3(v___x_8671_, v___x_8679_, v___x_8690_, v___x_8697_, v___x_8699_);
lean_inc(v___x_8671_);
v___x_8701_ = l_Lean_Syntax_node1(v___x_8671_, v___x_8678_, v___x_8700_);
v___x_8702_ = l_Lean_Syntax_node2(v___x_8671_, v___x_8672_, v___x_8677_, v___x_8701_);
v___x_8703_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8703_, 0, v___x_8702_);
lean_ctor_set(v___x_8703_, 1, v_a_8666_);
return v___x_8703_;
}
case 4:
{
lean_object* v_a_8704_; lean_object* v___x_8705_; lean_object* v___x_8706_; 
v_a_8704_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8704_);
lean_dec_ref(v___x_8569_);
v___x_8705_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10, &l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__10);
v___x_8706_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_8705_, v_a_8566_, v_a_8567_, v_a_8704_);
return v___x_8706_;
}
case 5:
{
lean_object* v_a_8707_; lean_object* v_a_8708_; lean_object* v_quotContext_8709_; lean_object* v_currMacroScope_8710_; lean_object* v_ref_8711_; uint8_t v___x_8712_; lean_object* v___x_8713_; lean_object* v___x_8714_; lean_object* v___x_8715_; lean_object* v___x_8716_; lean_object* v___x_8717_; lean_object* v___x_8718_; lean_object* v___x_8719_; lean_object* v___x_8720_; lean_object* v___x_8721_; lean_object* v___x_8722_; lean_object* v___x_8723_; lean_object* v___x_8724_; lean_object* v___x_8725_; lean_object* v___x_8726_; lean_object* v___x_8727_; lean_object* v___x_8728_; lean_object* v___x_8729_; lean_object* v___x_8730_; lean_object* v___x_8731_; lean_object* v___x_8732_; lean_object* v___x_8733_; lean_object* v___x_8734_; lean_object* v___x_8735_; lean_object* v___x_8736_; lean_object* v___x_8737_; lean_object* v___x_8738_; lean_object* v___x_8739_; lean_object* v___x_8740_; lean_object* v___x_8741_; lean_object* v___x_8742_; lean_object* v___x_8743_; lean_object* v___x_8744_; lean_object* v___x_8745_; 
lean_dec_ref(v_a_8566_);
v_a_8707_ = lean_ctor_get(v___x_8569_, 0);
lean_inc(v_a_8707_);
v_a_8708_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8708_);
lean_dec_ref(v___x_8569_);
v_quotContext_8709_ = lean_ctor_get(v_a_8567_, 1);
lean_inc(v_quotContext_8709_);
v_currMacroScope_8710_ = lean_ctor_get(v_a_8567_, 2);
lean_inc(v_currMacroScope_8710_);
v_ref_8711_ = lean_ctor_get(v_a_8567_, 5);
lean_inc(v_ref_8711_);
lean_dec_ref(v_a_8567_);
v___x_8712_ = 0;
v___x_8713_ = l_Lean_SourceInfo_fromRef(v_ref_8711_, v___x_8712_);
lean_dec(v_ref_8711_);
v___x_8714_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8715_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8716_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8710_);
lean_inc(v_quotContext_8709_);
v___x_8717_ = l_Lean_addMacroScope(v_quotContext_8709_, v___x_8716_, v_currMacroScope_8710_);
v___x_8718_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8713_);
v___x_8719_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8719_, 0, v___x_8713_);
lean_ctor_set(v___x_8719_, 1, v___x_8715_);
lean_ctor_set(v___x_8719_, 2, v___x_8717_);
lean_ctor_set(v___x_8719_, 3, v___x_8718_);
v___x_8720_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8721_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8722_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8723_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8713_);
v___x_8724_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8724_, 0, v___x_8713_);
lean_ctor_set(v___x_8724_, 1, v___x_8723_);
v___x_8725_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8726_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8727_ = lean_box(0);
lean_inc(v_currMacroScope_8710_);
lean_inc(v_quotContext_8709_);
v___x_8728_ = l_Lean_addMacroScope(v_quotContext_8709_, v___x_8727_, v_currMacroScope_8710_);
v___x_8729_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8713_);
v___x_8730_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8730_, 0, v___x_8713_);
lean_ctor_set(v___x_8730_, 1, v___x_8726_);
lean_ctor_set(v___x_8730_, 2, v___x_8728_);
lean_ctor_set(v___x_8730_, 3, v___x_8729_);
lean_inc(v___x_8713_);
v___x_8731_ = l_Lean_Syntax_node1(v___x_8713_, v___x_8725_, v___x_8730_);
lean_inc(v___x_8713_);
v___x_8732_ = l_Lean_Syntax_node2(v___x_8713_, v___x_8722_, v___x_8724_, v___x_8731_);
v___x_8733_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12, &l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12_once, _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__12);
v___x_8734_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__13));
v___x_8735_ = l_Lean_addMacroScope(v_quotContext_8709_, v___x_8734_, v_currMacroScope_8710_);
v___x_8736_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__17));
lean_inc(v___x_8713_);
v___x_8737_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8737_, 0, v___x_8713_);
lean_ctor_set(v___x_8737_, 1, v___x_8733_);
lean_ctor_set(v___x_8737_, 2, v___x_8735_);
lean_ctor_set(v___x_8737_, 3, v___x_8736_);
lean_inc(v___x_8713_);
v___x_8738_ = l_Lean_Syntax_node1(v___x_8713_, v___x_8720_, v_a_8707_);
lean_inc(v___x_8713_);
v___x_8739_ = l_Lean_Syntax_node2(v___x_8713_, v___x_8714_, v___x_8737_, v___x_8738_);
v___x_8740_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8713_);
v___x_8741_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8741_, 0, v___x_8713_);
lean_ctor_set(v___x_8741_, 1, v___x_8740_);
lean_inc(v___x_8713_);
v___x_8742_ = l_Lean_Syntax_node3(v___x_8713_, v___x_8721_, v___x_8732_, v___x_8739_, v___x_8741_);
lean_inc(v___x_8713_);
v___x_8743_ = l_Lean_Syntax_node1(v___x_8713_, v___x_8720_, v___x_8742_);
v___x_8744_ = l_Lean_Syntax_node2(v___x_8713_, v___x_8714_, v___x_8719_, v___x_8743_);
v___x_8745_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8745_, 0, v___x_8744_);
lean_ctor_set(v___x_8745_, 1, v_a_8708_);
return v___x_8745_;
}
default: 
{
lean_object* v_a_8746_; lean_object* v_a_8747_; lean_object* v_quotContext_8748_; lean_object* v_currMacroScope_8749_; lean_object* v_ref_8750_; uint8_t v___x_8751_; lean_object* v___x_8752_; lean_object* v___x_8753_; lean_object* v___x_8754_; lean_object* v___x_8755_; lean_object* v___x_8756_; lean_object* v___x_8757_; lean_object* v___x_8758_; lean_object* v___x_8759_; lean_object* v___x_8760_; lean_object* v___x_8761_; lean_object* v___x_8762_; lean_object* v___x_8763_; lean_object* v___x_8764_; lean_object* v___x_8765_; lean_object* v___x_8766_; lean_object* v___x_8767_; lean_object* v___x_8768_; lean_object* v___x_8769_; lean_object* v___x_8770_; lean_object* v___x_8771_; lean_object* v___x_8772_; lean_object* v___x_8773_; lean_object* v___x_8774_; lean_object* v___x_8775_; lean_object* v___x_8776_; lean_object* v___x_8777_; lean_object* v___x_8778_; lean_object* v___x_8779_; lean_object* v___x_8780_; lean_object* v___x_8781_; lean_object* v___x_8782_; lean_object* v___x_8783_; lean_object* v___x_8784_; 
lean_dec_ref(v_a_8566_);
v_a_8746_ = lean_ctor_get(v___x_8569_, 0);
lean_inc(v_a_8746_);
v_a_8747_ = lean_ctor_get(v___x_8569_, 1);
lean_inc(v_a_8747_);
lean_dec_ref(v___x_8569_);
v_quotContext_8748_ = lean_ctor_get(v_a_8567_, 1);
lean_inc(v_quotContext_8748_);
v_currMacroScope_8749_ = lean_ctor_get(v_a_8567_, 2);
lean_inc(v_currMacroScope_8749_);
v_ref_8750_ = lean_ctor_get(v_a_8567_, 5);
lean_inc(v_ref_8750_);
lean_dec_ref(v_a_8567_);
v___x_8751_ = 0;
v___x_8752_ = l_Lean_SourceInfo_fromRef(v_ref_8750_, v___x_8751_);
lean_dec(v_ref_8750_);
v___x_8753_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8754_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8755_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_8749_);
lean_inc(v_quotContext_8748_);
v___x_8756_ = l_Lean_addMacroScope(v_quotContext_8748_, v___x_8755_, v_currMacroScope_8749_);
v___x_8757_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8752_);
v___x_8758_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8758_, 0, v___x_8752_);
lean_ctor_set(v___x_8758_, 1, v___x_8754_);
lean_ctor_set(v___x_8758_, 2, v___x_8756_);
lean_ctor_set(v___x_8758_, 3, v___x_8757_);
v___x_8759_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8760_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8761_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8762_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8752_);
v___x_8763_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8763_, 0, v___x_8752_);
lean_ctor_set(v___x_8763_, 1, v___x_8762_);
v___x_8764_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8765_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8766_ = lean_box(0);
lean_inc(v_currMacroScope_8749_);
lean_inc(v_quotContext_8748_);
v___x_8767_ = l_Lean_addMacroScope(v_quotContext_8748_, v___x_8766_, v_currMacroScope_8749_);
v___x_8768_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8752_);
v___x_8769_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8769_, 0, v___x_8752_);
lean_ctor_set(v___x_8769_, 1, v___x_8765_);
lean_ctor_set(v___x_8769_, 2, v___x_8767_);
lean_ctor_set(v___x_8769_, 3, v___x_8768_);
lean_inc(v___x_8752_);
v___x_8770_ = l_Lean_Syntax_node1(v___x_8752_, v___x_8764_, v___x_8769_);
lean_inc(v___x_8752_);
v___x_8771_ = l_Lean_Syntax_node2(v___x_8752_, v___x_8761_, v___x_8763_, v___x_8770_);
v___x_8772_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19, &l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19_once, _init_l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__19);
v___x_8773_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__20));
v___x_8774_ = l_Lean_addMacroScope(v_quotContext_8748_, v___x_8773_, v_currMacroScope_8749_);
v___x_8775_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__24));
lean_inc(v___x_8752_);
v___x_8776_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8776_, 0, v___x_8752_);
lean_ctor_set(v___x_8776_, 1, v___x_8772_);
lean_ctor_set(v___x_8776_, 2, v___x_8774_);
lean_ctor_set(v___x_8776_, 3, v___x_8775_);
lean_inc(v___x_8752_);
v___x_8777_ = l_Lean_Syntax_node1(v___x_8752_, v___x_8759_, v_a_8746_);
lean_inc(v___x_8752_);
v___x_8778_ = l_Lean_Syntax_node2(v___x_8752_, v___x_8753_, v___x_8776_, v___x_8777_);
v___x_8779_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8752_);
v___x_8780_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8780_, 0, v___x_8752_);
lean_ctor_set(v___x_8780_, 1, v___x_8779_);
lean_inc(v___x_8752_);
v___x_8781_ = l_Lean_Syntax_node3(v___x_8752_, v___x_8760_, v___x_8771_, v___x_8778_, v___x_8780_);
lean_inc(v___x_8752_);
v___x_8782_ = l_Lean_Syntax_node1(v___x_8752_, v___x_8759_, v___x_8781_);
v___x_8783_ = l_Lean_Syntax_node2(v___x_8752_, v___x_8753_, v___x_8758_, v___x_8782_);
v___x_8784_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8784_, 0, v___x_8783_);
lean_ctor_set(v___x_8784_, 1, v_a_8747_);
return v___x_8784_;
}
}
}
else
{
lean_dec_ref(v_a_8567_);
lean_dec_ref(v_a_8566_);
return v___x_8569_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1(void){
_start:
{
lean_object* v___x_8786_; lean_object* v___x_8787_; 
v___x_8786_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__0));
v___x_8787_ = l_String_toRawSubstring_x27(v___x_8786_);
return v___x_8787_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12(void){
_start:
{
lean_object* v___x_8814_; lean_object* v___x_8815_; lean_object* v___x_8816_; lean_object* v___x_8817_; lean_object* v___x_8818_; lean_object* v___x_8819_; 
v___x_8814_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_8815_ = lean_unsigned_to_nat(24u);
v___x_8816_ = lean_unsigned_to_nat(1041u);
v___x_8817_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__11));
v___x_8818_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_8819_ = l_mkPanicMessageWithDecl(v___x_8818_, v___x_8817_, v___x_8816_, v___x_8815_, v___x_8814_);
return v___x_8819_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14(void){
_start:
{
lean_object* v___x_8821_; lean_object* v___x_8822_; 
v___x_8821_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__13));
v___x_8822_ = l_String_toRawSubstring_x27(v___x_8821_);
return v___x_8822_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21(void){
_start:
{
lean_object* v___x_8838_; lean_object* v___x_8839_; 
v___x_8838_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__20));
v___x_8839_ = l_String_toRawSubstring_x27(v___x_8838_);
return v___x_8839_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm(lean_object* v_action_8854_, lean_object* v_a_8855_, lean_object* v_a_8856_, lean_object* v_a_8857_){
_start:
{
lean_object* v_methods_8858_; lean_object* v_quotContext_8859_; lean_object* v_currRecDepth_8860_; lean_object* v_maxRecDepth_8861_; lean_object* v_ref_8862_; lean_object* v_macroScope_8863_; lean_object* v_traceMsgs_8864_; lean_object* v_expandedMacroDecls_8865_; lean_object* v_ref_8866_; lean_object* v___x_8867_; lean_object* v___x_8868_; lean_object* v___x_8869_; lean_object* v___x_8870_; lean_object* v___x_8871_; 
v_methods_8858_ = lean_ctor_get(v_a_8856_, 0);
lean_inc(v_methods_8858_);
v_quotContext_8859_ = lean_ctor_get(v_a_8856_, 1);
lean_inc(v_quotContext_8859_);
v_currRecDepth_8860_ = lean_ctor_get(v_a_8856_, 3);
lean_inc(v_currRecDepth_8860_);
v_maxRecDepth_8861_ = lean_ctor_get(v_a_8856_, 4);
lean_inc(v_maxRecDepth_8861_);
v_ref_8862_ = lean_ctor_get(v_a_8856_, 5);
lean_inc(v_ref_8862_);
lean_dec_ref(v_a_8856_);
v_macroScope_8863_ = lean_ctor_get(v_a_8857_, 0);
lean_inc(v_macroScope_8863_);
v_traceMsgs_8864_ = lean_ctor_get(v_a_8857_, 1);
lean_inc(v_traceMsgs_8864_);
v_expandedMacroDecls_8865_ = lean_ctor_get(v_a_8857_, 2);
lean_inc(v_expandedMacroDecls_8865_);
lean_dec_ref(v_a_8857_);
v_ref_8866_ = l_Lean_replaceRef(v_action_8854_, v_ref_8862_);
lean_dec(v_ref_8862_);
v___x_8867_ = lean_unsigned_to_nat(1u);
v___x_8868_ = lean_nat_add(v_macroScope_8863_, v___x_8867_);
v___x_8869_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_8869_, 0, v___x_8868_);
lean_ctor_set(v___x_8869_, 1, v_traceMsgs_8864_);
lean_ctor_set(v___x_8869_, 2, v_expandedMacroDecls_8865_);
lean_inc(v_ref_8866_);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8870_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_8870_, 0, v_methods_8858_);
lean_ctor_set(v___x_8870_, 1, v_quotContext_8859_);
lean_ctor_set(v___x_8870_, 2, v_macroScope_8863_);
lean_ctor_set(v___x_8870_, 3, v_currRecDepth_8860_);
lean_ctor_set(v___x_8870_, 4, v_maxRecDepth_8861_);
lean_ctor_set(v___x_8870_, 5, v_ref_8866_);
lean_inc_ref(v___x_8870_);
v___x_8871_ = l_Lean_Elab_Term_Do_ToTerm_mkUVarTuple(v_a_8855_, v___x_8870_, v___x_8869_);
if (lean_obj_tag(v___x_8871_) == 0)
{
uint8_t v_kind_8872_; 
v_kind_8872_ = lean_ctor_get_uint8(v_a_8855_, sizeof(void*)*3);
switch(v_kind_8872_)
{
case 0:
{
lean_object* v_a_8873_; lean_object* v_a_8874_; lean_object* v_uvars_8875_; lean_object* v___x_8876_; lean_object* v___x_8877_; uint8_t v___x_8878_; 
lean_dec_ref(v___x_8870_);
v_a_8873_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_8873_);
v_a_8874_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_8874_);
lean_dec_ref(v___x_8871_);
v_uvars_8875_ = lean_ctor_get(v_a_8855_, 2);
lean_inc_ref(v_uvars_8875_);
lean_dec_ref(v_a_8855_);
v___x_8876_ = lean_array_get_size(v_uvars_8875_);
lean_dec_ref(v_uvars_8875_);
v___x_8877_ = lean_unsigned_to_nat(0u);
v___x_8878_ = lean_nat_dec_eq(v___x_8876_, v___x_8877_);
if (v___x_8878_ == 0)
{
lean_object* v___x_8879_; lean_object* v___x_8880_; lean_object* v___x_8881_; lean_object* v___x_8882_; lean_object* v___x_8883_; lean_object* v___x_8884_; lean_object* v___x_8885_; lean_object* v___x_8886_; lean_object* v___x_8887_; lean_object* v___x_8888_; lean_object* v___x_8889_; lean_object* v___x_8890_; lean_object* v___x_8891_; lean_object* v___x_8892_; lean_object* v___x_8893_; lean_object* v___x_8894_; lean_object* v___x_8895_; lean_object* v___x_8896_; lean_object* v___x_8897_; lean_object* v___x_8898_; lean_object* v___x_8899_; lean_object* v___x_8900_; lean_object* v___x_8901_; lean_object* v___x_8902_; lean_object* v___x_8903_; lean_object* v___x_8904_; lean_object* v___x_8905_; lean_object* v___x_8906_; lean_object* v___x_8907_; lean_object* v___x_8908_; lean_object* v___x_8909_; lean_object* v___x_8910_; lean_object* v___x_8911_; lean_object* v___x_8912_; lean_object* v___x_8913_; lean_object* v___x_8914_; lean_object* v___x_8915_; lean_object* v___x_8916_; lean_object* v___x_8917_; lean_object* v___x_8918_; lean_object* v___x_8919_; lean_object* v___x_8920_; lean_object* v___x_8921_; lean_object* v___x_8922_; lean_object* v___x_8923_; lean_object* v___x_8924_; lean_object* v___x_8925_; lean_object* v___x_8926_; lean_object* v___x_8927_; lean_object* v___x_8928_; lean_object* v___x_8929_; lean_object* v___x_8930_; lean_object* v___x_8931_; lean_object* v___x_8932_; lean_object* v___x_8933_; lean_object* v___x_8934_; 
v___x_8879_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_8878_);
lean_dec(v_ref_8866_);
v___x_8880_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8881_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_8882_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8883_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8882_, v_macroScope_8863_);
v___x_8884_ = lean_box(0);
v___x_8885_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_8879_);
v___x_8886_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8886_, 0, v___x_8879_);
lean_ctor_set(v___x_8886_, 1, v___x_8881_);
lean_ctor_set(v___x_8886_, 2, v___x_8883_);
lean_ctor_set(v___x_8886_, 3, v___x_8885_);
v___x_8887_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8888_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_8889_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_8879_);
v___x_8890_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8890_, 0, v___x_8879_);
lean_ctor_set(v___x_8890_, 1, v___x_8888_);
v___x_8891_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_8892_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_8893_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8894_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8893_, v_macroScope_8863_);
lean_inc(v___x_8879_);
v___x_8895_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8895_, 0, v___x_8879_);
lean_ctor_set(v___x_8895_, 1, v___x_8892_);
lean_ctor_set(v___x_8895_, 2, v___x_8894_);
lean_ctor_set(v___x_8895_, 3, v___x_8884_);
lean_inc_ref(v___x_8895_);
lean_inc(v___x_8879_);
v___x_8896_ = l_Lean_Syntax_node1(v___x_8879_, v___x_8887_, v___x_8895_);
v___x_8897_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_8879_);
v___x_8898_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_8898_, 0, v___x_8879_);
lean_ctor_set(v___x_8898_, 1, v___x_8887_);
lean_ctor_set(v___x_8898_, 2, v___x_8897_);
v___x_8899_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_8879_);
v___x_8900_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8900_, 0, v___x_8879_);
lean_ctor_set(v___x_8900_, 1, v___x_8899_);
v___x_8901_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8902_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8903_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8902_, v_macroScope_8863_);
v___x_8904_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8879_);
v___x_8905_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8905_, 0, v___x_8879_);
lean_ctor_set(v___x_8905_, 1, v___x_8901_);
lean_ctor_set(v___x_8905_, 2, v___x_8903_);
lean_ctor_set(v___x_8905_, 3, v___x_8904_);
v___x_8906_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8907_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8908_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8879_);
v___x_8909_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8909_, 0, v___x_8879_);
lean_ctor_set(v___x_8909_, 1, v___x_8908_);
v___x_8910_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8911_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8912_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8913_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8912_, v_macroScope_8863_);
v___x_8914_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8879_);
v___x_8915_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8915_, 0, v___x_8879_);
lean_ctor_set(v___x_8915_, 1, v___x_8911_);
lean_ctor_set(v___x_8915_, 2, v___x_8913_);
lean_ctor_set(v___x_8915_, 3, v___x_8914_);
lean_inc(v___x_8879_);
v___x_8916_ = l_Lean_Syntax_node1(v___x_8879_, v___x_8910_, v___x_8915_);
lean_inc(v___x_8879_);
v___x_8917_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8907_, v___x_8909_, v___x_8916_);
v___x_8918_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_8919_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
v___x_8920_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8919_, v_macroScope_8863_);
v___x_8921_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_8879_);
v___x_8922_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8922_, 0, v___x_8879_);
lean_ctor_set(v___x_8922_, 1, v___x_8918_);
lean_ctor_set(v___x_8922_, 2, v___x_8920_);
lean_ctor_set(v___x_8922_, 3, v___x_8921_);
lean_inc(v___x_8879_);
v___x_8923_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8887_, v___x_8895_, v_a_8873_);
lean_inc(v___x_8879_);
v___x_8924_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8880_, v___x_8922_, v___x_8923_);
v___x_8925_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8879_);
v___x_8926_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8926_, 0, v___x_8879_);
lean_ctor_set(v___x_8926_, 1, v___x_8925_);
lean_inc(v___x_8879_);
v___x_8927_ = l_Lean_Syntax_node3(v___x_8879_, v___x_8906_, v___x_8917_, v___x_8924_, v___x_8926_);
lean_inc(v___x_8879_);
v___x_8928_ = l_Lean_Syntax_node1(v___x_8879_, v___x_8887_, v___x_8927_);
lean_inc(v___x_8879_);
v___x_8929_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8880_, v___x_8905_, v___x_8928_);
lean_inc(v___x_8879_);
v___x_8930_ = l_Lean_Syntax_node4(v___x_8879_, v___x_8891_, v___x_8896_, v___x_8898_, v___x_8900_, v___x_8929_);
lean_inc(v___x_8879_);
v___x_8931_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8889_, v___x_8890_, v___x_8930_);
lean_inc(v___x_8879_);
v___x_8932_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8887_, v_action_8854_, v___x_8931_);
v___x_8933_ = l_Lean_Syntax_node2(v___x_8879_, v___x_8880_, v___x_8886_, v___x_8932_);
v___x_8934_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8934_, 0, v___x_8933_);
lean_ctor_set(v___x_8934_, 1, v_a_8874_);
return v___x_8934_;
}
else
{
lean_object* v___x_8935_; 
lean_dec(v_a_8873_);
lean_dec(v_ref_8866_);
lean_dec(v_macroScope_8863_);
lean_dec(v_quotContext_8859_);
v___x_8935_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_8935_, 0, v_action_8854_);
lean_ctor_set(v___x_8935_, 1, v_a_8874_);
return v___x_8935_;
}
}
case 1:
{
lean_object* v_a_8936_; lean_object* v_a_8937_; uint8_t v___x_8938_; lean_object* v___x_8939_; lean_object* v___x_8940_; lean_object* v___x_8941_; lean_object* v___x_8942_; lean_object* v___x_8943_; lean_object* v___x_8944_; lean_object* v___x_8945_; lean_object* v___x_8946_; lean_object* v___x_8947_; lean_object* v___x_8948_; lean_object* v___x_8949_; lean_object* v___x_8950_; lean_object* v___x_8951_; lean_object* v___x_8952_; lean_object* v___x_8953_; lean_object* v___x_8954_; lean_object* v___x_8955_; lean_object* v___x_8956_; lean_object* v___x_8957_; lean_object* v___x_8958_; lean_object* v___x_8959_; lean_object* v___x_8960_; lean_object* v___x_8961_; lean_object* v___x_8962_; lean_object* v___x_8963_; lean_object* v___x_8964_; lean_object* v___x_8965_; lean_object* v___x_8966_; lean_object* v___x_8967_; lean_object* v___x_8968_; lean_object* v___x_8969_; lean_object* v___x_8970_; lean_object* v___x_8971_; lean_object* v___x_8972_; lean_object* v___x_8973_; lean_object* v___x_8974_; lean_object* v___x_8975_; lean_object* v___x_8976_; lean_object* v___x_8977_; lean_object* v___x_8978_; lean_object* v___x_8979_; lean_object* v___x_8980_; lean_object* v___x_8981_; lean_object* v___x_8982_; lean_object* v___x_8983_; lean_object* v___x_8984_; lean_object* v___x_8985_; lean_object* v___x_8986_; lean_object* v___x_8987_; lean_object* v___x_8988_; lean_object* v___x_8989_; lean_object* v___x_8990_; lean_object* v___x_8991_; lean_object* v___x_8992_; lean_object* v___x_8993_; lean_object* v___x_8994_; lean_object* v___x_8995_; lean_object* v___x_8996_; lean_object* v___x_8997_; lean_object* v___x_8998_; lean_object* v___x_8999_; lean_object* v___x_9000_; lean_object* v___x_9001_; lean_object* v___x_9002_; lean_object* v___x_9003_; 
lean_dec_ref(v___x_8870_);
lean_dec_ref(v_a_8855_);
v_a_8936_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_8936_);
v_a_8937_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_8937_);
lean_dec_ref(v___x_8871_);
v___x_8938_ = 0;
v___x_8939_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_8938_);
lean_dec(v_ref_8866_);
v___x_8940_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_8941_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_8942_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8943_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8942_, v_macroScope_8863_);
v___x_8944_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_8939_);
v___x_8945_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8945_, 0, v___x_8939_);
lean_ctor_set(v___x_8945_, 1, v___x_8941_);
lean_ctor_set(v___x_8945_, 2, v___x_8943_);
lean_ctor_set(v___x_8945_, 3, v___x_8944_);
v___x_8946_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_8947_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_8948_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_8939_);
v___x_8949_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8949_, 0, v___x_8939_);
lean_ctor_set(v___x_8949_, 1, v___x_8947_);
v___x_8950_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_8951_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_8952_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_8953_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_8939_);
v___x_8954_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8954_, 0, v___x_8939_);
lean_ctor_set(v___x_8954_, 1, v___x_8953_);
v___x_8955_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_8956_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_8957_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8958_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8957_, v_macroScope_8863_);
v___x_8959_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_8939_);
v___x_8960_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8960_, 0, v___x_8939_);
lean_ctor_set(v___x_8960_, 1, v___x_8956_);
lean_ctor_set(v___x_8960_, 2, v___x_8958_);
lean_ctor_set(v___x_8960_, 3, v___x_8959_);
lean_inc(v___x_8939_);
v___x_8961_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8955_, v___x_8960_);
lean_inc(v___x_8939_);
v___x_8962_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8952_, v___x_8954_, v___x_8961_);
v___x_8963_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_8964_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_8939_);
v___x_8965_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8965_, 0, v___x_8939_);
lean_ctor_set(v___x_8965_, 1, v___x_8964_);
lean_inc(v___x_8939_);
v___x_8966_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8963_, v___x_8965_);
v___x_8967_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_8939_);
v___x_8968_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8968_, 0, v___x_8939_);
lean_ctor_set(v___x_8968_, 1, v___x_8967_);
v___x_8969_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31);
v___x_8970_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8971_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8970_, v_macroScope_8863_);
v___x_8972_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__10));
lean_inc(v___x_8939_);
v___x_8973_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8973_, 0, v___x_8939_);
lean_ctor_set(v___x_8973_, 1, v___x_8969_);
lean_ctor_set(v___x_8973_, 2, v___x_8971_);
lean_ctor_set(v___x_8973_, 3, v___x_8972_);
lean_inc(v___x_8939_);
v___x_8974_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8946_, v___x_8973_);
v___x_8975_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_8939_);
v___x_8976_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8976_, 0, v___x_8939_);
lean_ctor_set(v___x_8976_, 1, v___x_8975_);
lean_inc_ref(v___x_8976_);
lean_inc(v___x_8962_);
lean_inc(v___x_8939_);
v___x_8977_ = l_Lean_Syntax_node5(v___x_8939_, v___x_8951_, v___x_8962_, v___x_8966_, v___x_8968_, v___x_8974_, v___x_8976_);
lean_inc(v___x_8939_);
v___x_8978_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8946_, v___x_8977_);
v___x_8979_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_8939_);
v___x_8980_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_8980_, 0, v___x_8939_);
lean_ctor_set(v___x_8980_, 1, v___x_8946_);
lean_ctor_set(v___x_8980_, 2, v___x_8979_);
v___x_8981_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_8939_);
v___x_8982_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_8982_, 0, v___x_8939_);
lean_ctor_set(v___x_8982_, 1, v___x_8981_);
v___x_8983_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_8984_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_8985_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8984_, v_macroScope_8863_);
v___x_8986_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_8939_);
v___x_8987_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8987_, 0, v___x_8939_);
lean_ctor_set(v___x_8987_, 1, v___x_8983_);
lean_ctor_set(v___x_8987_, 2, v___x_8985_);
lean_ctor_set(v___x_8987_, 3, v___x_8986_);
v___x_8988_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_8989_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3);
v___x_8990_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5));
v___x_8991_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_8990_, v_macroScope_8863_);
v___x_8992_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9));
lean_inc(v___x_8939_);
v___x_8993_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_8993_, 0, v___x_8939_);
lean_ctor_set(v___x_8993_, 1, v___x_8989_);
lean_ctor_set(v___x_8993_, 2, v___x_8991_);
lean_ctor_set(v___x_8993_, 3, v___x_8992_);
lean_inc(v___x_8939_);
v___x_8994_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8946_, v_a_8936_);
lean_inc(v___x_8939_);
v___x_8995_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8940_, v___x_8993_, v___x_8994_);
lean_inc(v___x_8939_);
v___x_8996_ = l_Lean_Syntax_node3(v___x_8939_, v___x_8988_, v___x_8962_, v___x_8995_, v___x_8976_);
lean_inc(v___x_8939_);
v___x_8997_ = l_Lean_Syntax_node1(v___x_8939_, v___x_8946_, v___x_8996_);
lean_inc(v___x_8939_);
v___x_8998_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8940_, v___x_8987_, v___x_8997_);
lean_inc(v___x_8939_);
v___x_8999_ = l_Lean_Syntax_node4(v___x_8939_, v___x_8950_, v___x_8978_, v___x_8980_, v___x_8982_, v___x_8998_);
lean_inc(v___x_8939_);
v___x_9000_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8948_, v___x_8949_, v___x_8999_);
lean_inc(v___x_8939_);
v___x_9001_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8946_, v_action_8854_, v___x_9000_);
v___x_9002_ = l_Lean_Syntax_node2(v___x_8939_, v___x_8940_, v___x_8945_, v___x_9001_);
v___x_9003_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9003_, 0, v___x_9002_);
lean_ctor_set(v___x_9003_, 1, v_a_8937_);
return v___x_9003_;
}
case 2:
{
lean_object* v_a_9004_; lean_object* v_a_9005_; uint8_t v___x_9006_; lean_object* v___x_9007_; lean_object* v___x_9008_; lean_object* v___x_9009_; lean_object* v___x_9010_; lean_object* v___x_9011_; lean_object* v___x_9012_; lean_object* v___x_9013_; lean_object* v___x_9014_; lean_object* v___x_9015_; lean_object* v___x_9016_; lean_object* v___x_9017_; lean_object* v___x_9018_; lean_object* v___x_9019_; lean_object* v___x_9020_; lean_object* v___x_9021_; lean_object* v___x_9022_; lean_object* v___x_9023_; lean_object* v___x_9024_; lean_object* v___x_9025_; lean_object* v___x_9026_; lean_object* v___x_9027_; lean_object* v___x_9028_; lean_object* v___x_9029_; lean_object* v___x_9030_; lean_object* v___x_9031_; lean_object* v___x_9032_; lean_object* v___x_9033_; lean_object* v___x_9034_; lean_object* v___x_9035_; lean_object* v___x_9036_; lean_object* v___x_9037_; lean_object* v___x_9038_; lean_object* v___x_9039_; lean_object* v___x_9040_; lean_object* v___x_9041_; lean_object* v___x_9042_; lean_object* v___x_9043_; lean_object* v___x_9044_; lean_object* v___x_9045_; lean_object* v___x_9046_; lean_object* v___x_9047_; lean_object* v___x_9048_; lean_object* v___x_9049_; lean_object* v___x_9050_; lean_object* v___x_9051_; lean_object* v___x_9052_; lean_object* v___x_9053_; lean_object* v___x_9054_; lean_object* v___x_9055_; lean_object* v___x_9056_; lean_object* v___x_9057_; lean_object* v___x_9058_; lean_object* v___x_9059_; lean_object* v___x_9060_; lean_object* v___x_9061_; lean_object* v___x_9062_; lean_object* v___x_9063_; lean_object* v___x_9064_; lean_object* v___x_9065_; lean_object* v___x_9066_; lean_object* v___x_9067_; lean_object* v___x_9068_; lean_object* v___x_9069_; lean_object* v___x_9070_; lean_object* v___x_9071_; lean_object* v___x_9072_; lean_object* v___x_9073_; lean_object* v___x_9074_; lean_object* v___x_9075_; lean_object* v___x_9076_; lean_object* v___x_9077_; lean_object* v___x_9078_; lean_object* v___x_9079_; lean_object* v___x_9080_; lean_object* v___x_9081_; lean_object* v___x_9082_; lean_object* v___x_9083_; lean_object* v___x_9084_; 
lean_dec_ref(v___x_8870_);
lean_dec_ref(v_a_8855_);
v_a_9004_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_9004_);
v_a_9005_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_9005_);
lean_dec_ref(v___x_8871_);
v___x_9006_ = 0;
v___x_9007_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_9006_);
lean_dec(v_ref_8866_);
v___x_9008_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9009_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9010_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9011_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9010_, v_macroScope_8863_);
v___x_9012_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_9007_);
v___x_9013_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9013_, 0, v___x_9007_);
lean_ctor_set(v___x_9013_, 1, v___x_9009_);
lean_ctor_set(v___x_9013_, 2, v___x_9011_);
lean_ctor_set(v___x_9013_, 3, v___x_9012_);
v___x_9014_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9015_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9016_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9007_);
v___x_9017_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9017_, 0, v___x_9007_);
lean_ctor_set(v___x_9017_, 1, v___x_9015_);
v___x_9018_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_9019_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_9020_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9021_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9007_);
v___x_9022_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9022_, 0, v___x_9007_);
lean_ctor_set(v___x_9022_, 1, v___x_9021_);
v___x_9023_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9024_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9025_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9026_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9025_, v_macroScope_8863_);
v___x_9027_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_9007_);
v___x_9028_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9028_, 0, v___x_9007_);
lean_ctor_set(v___x_9028_, 1, v___x_9024_);
lean_ctor_set(v___x_9028_, 2, v___x_9026_);
lean_ctor_set(v___x_9028_, 3, v___x_9027_);
lean_inc(v___x_9007_);
v___x_9029_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9023_, v___x_9028_);
lean_inc(v___x_9007_);
v___x_9030_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9020_, v___x_9022_, v___x_9029_);
v___x_9031_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_9032_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_9007_);
v___x_9033_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9033_, 0, v___x_9007_);
lean_ctor_set(v___x_9033_, 1, v___x_9032_);
lean_inc(v___x_9007_);
v___x_9034_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9031_, v___x_9033_);
v___x_9035_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9007_);
v___x_9036_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9036_, 0, v___x_9007_);
lean_ctor_set(v___x_9036_, 1, v___x_9035_);
v___x_9037_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31);
v___x_9038_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9039_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9038_, v_macroScope_8863_);
v___x_9040_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__10));
lean_inc(v___x_9007_);
v___x_9041_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9041_, 0, v___x_9007_);
lean_ctor_set(v___x_9041_, 1, v___x_9037_);
lean_ctor_set(v___x_9041_, 2, v___x_9039_);
lean_ctor_set(v___x_9041_, 3, v___x_9040_);
lean_inc(v___x_9007_);
v___x_9042_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9014_, v___x_9041_);
v___x_9043_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9007_);
v___x_9044_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9044_, 0, v___x_9007_);
lean_ctor_set(v___x_9044_, 1, v___x_9043_);
lean_inc_ref(v___x_9044_);
lean_inc(v___x_9030_);
lean_inc(v___x_9007_);
v___x_9045_ = l_Lean_Syntax_node5(v___x_9007_, v___x_9019_, v___x_9030_, v___x_9034_, v___x_9036_, v___x_9042_, v___x_9044_);
lean_inc(v___x_9007_);
v___x_9046_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9014_, v___x_9045_);
v___x_9047_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9007_);
v___x_9048_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9048_, 0, v___x_9007_);
lean_ctor_set(v___x_9048_, 1, v___x_9014_);
lean_ctor_set(v___x_9048_, 2, v___x_9047_);
v___x_9049_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9007_);
v___x_9050_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9050_, 0, v___x_9007_);
lean_ctor_set(v___x_9050_, 1, v___x_9049_);
v___x_9051_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_9052_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9053_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9052_, v_macroScope_8863_);
v___x_9054_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_9007_);
v___x_9055_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9055_, 0, v___x_9007_);
lean_ctor_set(v___x_9055_, 1, v___x_9051_);
lean_ctor_set(v___x_9055_, 2, v___x_9053_);
lean_ctor_set(v___x_9055_, 3, v___x_9054_);
v___x_9056_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_9057_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__3);
v___x_9058_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__5));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9059_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9058_, v_macroScope_8863_);
v___x_9060_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__9));
lean_inc(v___x_9007_);
v___x_9061_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9061_, 0, v___x_9007_);
lean_ctor_set(v___x_9061_, 1, v___x_9057_);
lean_ctor_set(v___x_9061_, 2, v___x_9059_);
lean_ctor_set(v___x_9061_, 3, v___x_9060_);
v___x_9062_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_9063_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9064_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9063_, v_macroScope_8863_);
v___x_9065_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__8));
lean_inc(v___x_9007_);
v___x_9066_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9066_, 0, v___x_9007_);
lean_ctor_set(v___x_9066_, 1, v___x_9062_);
lean_ctor_set(v___x_9066_, 2, v___x_9064_);
lean_ctor_set(v___x_9066_, 3, v___x_9065_);
v___x_9067_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_9068_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
v___x_9069_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9068_, v_macroScope_8863_);
v___x_9070_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15));
lean_inc(v___x_9007_);
v___x_9071_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9071_, 0, v___x_9007_);
lean_ctor_set(v___x_9071_, 1, v___x_9067_);
lean_ctor_set(v___x_9071_, 2, v___x_9069_);
lean_ctor_set(v___x_9071_, 3, v___x_9070_);
lean_inc(v___x_9007_);
v___x_9072_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9014_, v___x_9071_, v_a_9004_);
lean_inc(v___x_9007_);
v___x_9073_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9008_, v___x_9066_, v___x_9072_);
lean_inc_ref(v___x_9044_);
lean_inc(v___x_9030_);
lean_inc(v___x_9007_);
v___x_9074_ = l_Lean_Syntax_node3(v___x_9007_, v___x_9056_, v___x_9030_, v___x_9073_, v___x_9044_);
lean_inc(v___x_9007_);
v___x_9075_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9014_, v___x_9074_);
lean_inc(v___x_9007_);
v___x_9076_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9008_, v___x_9061_, v___x_9075_);
lean_inc(v___x_9007_);
v___x_9077_ = l_Lean_Syntax_node3(v___x_9007_, v___x_9056_, v___x_9030_, v___x_9076_, v___x_9044_);
lean_inc(v___x_9007_);
v___x_9078_ = l_Lean_Syntax_node1(v___x_9007_, v___x_9014_, v___x_9077_);
lean_inc(v___x_9007_);
v___x_9079_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9008_, v___x_9055_, v___x_9078_);
lean_inc(v___x_9007_);
v___x_9080_ = l_Lean_Syntax_node4(v___x_9007_, v___x_9018_, v___x_9046_, v___x_9048_, v___x_9050_, v___x_9079_);
lean_inc(v___x_9007_);
v___x_9081_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9016_, v___x_9017_, v___x_9080_);
lean_inc(v___x_9007_);
v___x_9082_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9014_, v_action_8854_, v___x_9081_);
v___x_9083_ = l_Lean_Syntax_node2(v___x_9007_, v___x_9008_, v___x_9013_, v___x_9082_);
v___x_9084_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9084_, 0, v___x_9083_);
lean_ctor_set(v___x_9084_, 1, v_a_9005_);
return v___x_9084_;
}
case 3:
{
lean_object* v_a_9085_; lean_object* v___x_9086_; lean_object* v___x_9087_; 
lean_dec(v_ref_8866_);
lean_dec(v_macroScope_8863_);
lean_dec(v_quotContext_8859_);
lean_dec(v_action_8854_);
v_a_9085_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_9085_);
lean_dec_ref(v___x_8871_);
v___x_9086_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__12);
v___x_9087_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_returnToTerm_spec__0(v___x_9086_, v_a_8855_, v___x_8870_, v_a_9085_);
return v___x_9087_;
}
case 4:
{
lean_object* v_a_9088_; lean_object* v_a_9089_; uint8_t v___x_9090_; lean_object* v___x_9091_; lean_object* v___x_9092_; lean_object* v___x_9093_; lean_object* v___x_9094_; lean_object* v___x_9095_; lean_object* v___x_9096_; lean_object* v___x_9097_; lean_object* v___x_9098_; lean_object* v___x_9099_; lean_object* v___x_9100_; lean_object* v___x_9101_; lean_object* v___x_9102_; lean_object* v___x_9103_; lean_object* v___x_9104_; lean_object* v___x_9105_; lean_object* v___x_9106_; lean_object* v___x_9107_; lean_object* v___x_9108_; lean_object* v___x_9109_; lean_object* v___x_9110_; lean_object* v___x_9111_; lean_object* v___x_9112_; lean_object* v___x_9113_; lean_object* v___x_9114_; lean_object* v___x_9115_; lean_object* v___x_9116_; lean_object* v___x_9117_; lean_object* v___x_9118_; lean_object* v___x_9119_; lean_object* v___x_9120_; lean_object* v___x_9121_; lean_object* v___x_9122_; lean_object* v___x_9123_; lean_object* v___x_9124_; lean_object* v___x_9125_; lean_object* v___x_9126_; lean_object* v___x_9127_; lean_object* v___x_9128_; lean_object* v___x_9129_; lean_object* v___x_9130_; lean_object* v___x_9131_; lean_object* v___x_9132_; lean_object* v___x_9133_; lean_object* v___x_9134_; lean_object* v___x_9135_; lean_object* v___x_9136_; lean_object* v___x_9137_; lean_object* v___x_9138_; lean_object* v___x_9139_; lean_object* v___x_9140_; lean_object* v___x_9141_; lean_object* v___x_9142_; lean_object* v___x_9143_; lean_object* v___x_9144_; lean_object* v___x_9145_; lean_object* v___x_9146_; lean_object* v___x_9147_; 
lean_dec_ref(v___x_8870_);
lean_dec_ref(v_a_8855_);
v_a_9088_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_9088_);
v_a_9089_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_9089_);
lean_dec_ref(v___x_8871_);
v___x_9090_ = 0;
v___x_9091_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_9090_);
lean_dec(v_ref_8866_);
v___x_9092_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9093_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9094_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9095_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9094_, v_macroScope_8863_);
v___x_9096_ = lean_box(0);
v___x_9097_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_9091_);
v___x_9098_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9098_, 0, v___x_9091_);
lean_ctor_set(v___x_9098_, 1, v___x_9093_);
lean_ctor_set(v___x_9098_, 2, v___x_9095_);
lean_ctor_set(v___x_9098_, 3, v___x_9097_);
v___x_9099_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9100_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9101_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9091_);
v___x_9102_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9102_, 0, v___x_9091_);
lean_ctor_set(v___x_9102_, 1, v___x_9100_);
v___x_9103_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_9104_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_9105_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9106_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9105_, v_macroScope_8863_);
lean_inc(v___x_9091_);
v___x_9107_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9107_, 0, v___x_9091_);
lean_ctor_set(v___x_9107_, 1, v___x_9104_);
lean_ctor_set(v___x_9107_, 2, v___x_9106_);
lean_ctor_set(v___x_9107_, 3, v___x_9096_);
lean_inc_ref(v___x_9107_);
lean_inc(v___x_9091_);
v___x_9108_ = l_Lean_Syntax_node1(v___x_9091_, v___x_9099_, v___x_9107_);
v___x_9109_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9091_);
v___x_9110_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9110_, 0, v___x_9091_);
lean_ctor_set(v___x_9110_, 1, v___x_9099_);
lean_ctor_set(v___x_9110_, 2, v___x_9109_);
v___x_9111_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9091_);
v___x_9112_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9112_, 0, v___x_9091_);
lean_ctor_set(v___x_9112_, 1, v___x_9111_);
v___x_9113_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_9114_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9115_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9091_);
v___x_9116_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9116_, 0, v___x_9091_);
lean_ctor_set(v___x_9116_, 1, v___x_9115_);
v___x_9117_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9118_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9119_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9120_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9119_, v_macroScope_8863_);
v___x_9121_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_9091_);
v___x_9122_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9122_, 0, v___x_9091_);
lean_ctor_set(v___x_9122_, 1, v___x_9118_);
lean_ctor_set(v___x_9122_, 2, v___x_9120_);
lean_ctor_set(v___x_9122_, 3, v___x_9121_);
lean_inc(v___x_9091_);
v___x_9123_ = l_Lean_Syntax_node1(v___x_9091_, v___x_9117_, v___x_9122_);
lean_inc(v___x_9091_);
v___x_9124_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9114_, v___x_9116_, v___x_9123_);
v___x_9125_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_9126_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9127_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9126_, v_macroScope_8863_);
v___x_9128_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_9091_);
v___x_9129_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9129_, 0, v___x_9091_);
lean_ctor_set(v___x_9129_, 1, v___x_9125_);
lean_ctor_set(v___x_9129_, 2, v___x_9127_);
lean_ctor_set(v___x_9129_, 3, v___x_9128_);
v___x_9130_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__14);
v___x_9131_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__15));
v___x_9132_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9131_, v_macroScope_8863_);
v___x_9133_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__19));
lean_inc(v___x_9091_);
v___x_9134_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9134_, 0, v___x_9091_);
lean_ctor_set(v___x_9134_, 1, v___x_9130_);
lean_ctor_set(v___x_9134_, 2, v___x_9132_);
lean_ctor_set(v___x_9134_, 3, v___x_9133_);
lean_inc(v___x_9091_);
v___x_9135_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9099_, v___x_9107_, v_a_9088_);
lean_inc(v___x_9091_);
v___x_9136_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9092_, v___x_9134_, v___x_9135_);
v___x_9137_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9091_);
v___x_9138_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9138_, 0, v___x_9091_);
lean_ctor_set(v___x_9138_, 1, v___x_9137_);
lean_inc_ref(v___x_9138_);
lean_inc(v___x_9124_);
lean_inc(v___x_9091_);
v___x_9139_ = l_Lean_Syntax_node3(v___x_9091_, v___x_9113_, v___x_9124_, v___x_9136_, v___x_9138_);
lean_inc(v___x_9091_);
v___x_9140_ = l_Lean_Syntax_node1(v___x_9091_, v___x_9099_, v___x_9139_);
lean_inc(v___x_9091_);
v___x_9141_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9092_, v___x_9129_, v___x_9140_);
lean_inc(v___x_9091_);
v___x_9142_ = l_Lean_Syntax_node3(v___x_9091_, v___x_9113_, v___x_9124_, v___x_9141_, v___x_9138_);
lean_inc(v___x_9091_);
v___x_9143_ = l_Lean_Syntax_node4(v___x_9091_, v___x_9103_, v___x_9108_, v___x_9110_, v___x_9112_, v___x_9142_);
lean_inc(v___x_9091_);
v___x_9144_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9101_, v___x_9102_, v___x_9143_);
lean_inc(v___x_9091_);
v___x_9145_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9099_, v_action_8854_, v___x_9144_);
v___x_9146_ = l_Lean_Syntax_node2(v___x_9091_, v___x_9092_, v___x_9098_, v___x_9145_);
v___x_9147_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9147_, 0, v___x_9146_);
lean_ctor_set(v___x_9147_, 1, v_a_9089_);
return v___x_9147_;
}
case 5:
{
lean_object* v_a_9148_; lean_object* v_a_9149_; uint8_t v___x_9150_; lean_object* v___x_9151_; lean_object* v___x_9152_; lean_object* v___x_9153_; lean_object* v___x_9154_; lean_object* v___x_9155_; lean_object* v___x_9156_; lean_object* v___x_9157_; lean_object* v___x_9158_; lean_object* v___x_9159_; lean_object* v___x_9160_; lean_object* v___x_9161_; lean_object* v___x_9162_; lean_object* v___x_9163_; lean_object* v___x_9164_; lean_object* v___x_9165_; lean_object* v___x_9166_; lean_object* v___x_9167_; lean_object* v___x_9168_; lean_object* v___x_9169_; lean_object* v___x_9170_; lean_object* v___x_9171_; lean_object* v___x_9172_; lean_object* v___x_9173_; lean_object* v___x_9174_; lean_object* v___x_9175_; lean_object* v___x_9176_; lean_object* v___x_9177_; lean_object* v___x_9178_; lean_object* v___x_9179_; lean_object* v___x_9180_; lean_object* v___x_9181_; lean_object* v___x_9182_; lean_object* v___x_9183_; lean_object* v___x_9184_; lean_object* v___x_9185_; lean_object* v___x_9186_; lean_object* v___x_9187_; lean_object* v___x_9188_; lean_object* v___x_9189_; lean_object* v___x_9190_; lean_object* v___x_9191_; lean_object* v___x_9192_; lean_object* v___x_9193_; lean_object* v___x_9194_; lean_object* v___x_9195_; lean_object* v___x_9196_; lean_object* v___x_9197_; lean_object* v___x_9198_; lean_object* v___x_9199_; lean_object* v___x_9200_; lean_object* v___x_9201_; lean_object* v___x_9202_; lean_object* v___x_9203_; lean_object* v___x_9204_; lean_object* v___x_9205_; lean_object* v___x_9206_; lean_object* v___x_9207_; 
lean_dec_ref(v___x_8870_);
lean_dec_ref(v_a_8855_);
v_a_9148_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_9148_);
v_a_9149_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_9149_);
lean_dec_ref(v___x_8871_);
v___x_9150_ = 0;
v___x_9151_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_9150_);
lean_dec(v_ref_8866_);
v___x_9152_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9153_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9154_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9155_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9154_, v_macroScope_8863_);
v___x_9156_ = lean_box(0);
v___x_9157_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_9151_);
v___x_9158_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9158_, 0, v___x_9151_);
lean_ctor_set(v___x_9158_, 1, v___x_9153_);
lean_ctor_set(v___x_9158_, 2, v___x_9155_);
lean_ctor_set(v___x_9158_, 3, v___x_9157_);
v___x_9159_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9160_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9161_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9151_);
v___x_9162_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9162_, 0, v___x_9151_);
lean_ctor_set(v___x_9162_, 1, v___x_9160_);
v___x_9163_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_9164_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_9165_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9166_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9165_, v_macroScope_8863_);
lean_inc(v___x_9151_);
v___x_9167_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9167_, 0, v___x_9151_);
lean_ctor_set(v___x_9167_, 1, v___x_9164_);
lean_ctor_set(v___x_9167_, 2, v___x_9166_);
lean_ctor_set(v___x_9167_, 3, v___x_9156_);
lean_inc_ref(v___x_9167_);
lean_inc(v___x_9151_);
v___x_9168_ = l_Lean_Syntax_node1(v___x_9151_, v___x_9159_, v___x_9167_);
v___x_9169_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9151_);
v___x_9170_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9170_, 0, v___x_9151_);
lean_ctor_set(v___x_9170_, 1, v___x_9159_);
lean_ctor_set(v___x_9170_, 2, v___x_9169_);
v___x_9171_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9151_);
v___x_9172_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9172_, 0, v___x_9151_);
lean_ctor_set(v___x_9172_, 1, v___x_9171_);
v___x_9173_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_9174_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9175_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9151_);
v___x_9176_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9176_, 0, v___x_9151_);
lean_ctor_set(v___x_9176_, 1, v___x_9175_);
v___x_9177_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9178_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9179_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9180_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9179_, v_macroScope_8863_);
v___x_9181_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_9151_);
v___x_9182_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9182_, 0, v___x_9151_);
lean_ctor_set(v___x_9182_, 1, v___x_9178_);
lean_ctor_set(v___x_9182_, 2, v___x_9180_);
lean_ctor_set(v___x_9182_, 3, v___x_9181_);
lean_inc(v___x_9151_);
v___x_9183_ = l_Lean_Syntax_node1(v___x_9151_, v___x_9177_, v___x_9182_);
lean_inc(v___x_9151_);
v___x_9184_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9174_, v___x_9176_, v___x_9183_);
v___x_9185_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_9186_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9187_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9186_, v_macroScope_8863_);
v___x_9188_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_9151_);
v___x_9189_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9189_, 0, v___x_9151_);
lean_ctor_set(v___x_9189_, 1, v___x_9185_);
lean_ctor_set(v___x_9189_, 2, v___x_9187_);
lean_ctor_set(v___x_9189_, 3, v___x_9188_);
v___x_9190_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__37);
v___x_9191_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__40));
v___x_9192_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9191_, v_macroScope_8863_);
v___x_9193_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__44));
lean_inc(v___x_9151_);
v___x_9194_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9194_, 0, v___x_9151_);
lean_ctor_set(v___x_9194_, 1, v___x_9190_);
lean_ctor_set(v___x_9194_, 2, v___x_9192_);
lean_ctor_set(v___x_9194_, 3, v___x_9193_);
lean_inc(v___x_9151_);
v___x_9195_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9159_, v___x_9167_, v_a_9148_);
lean_inc(v___x_9151_);
v___x_9196_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9152_, v___x_9194_, v___x_9195_);
v___x_9197_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9151_);
v___x_9198_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9198_, 0, v___x_9151_);
lean_ctor_set(v___x_9198_, 1, v___x_9197_);
lean_inc_ref(v___x_9198_);
lean_inc(v___x_9184_);
lean_inc(v___x_9151_);
v___x_9199_ = l_Lean_Syntax_node3(v___x_9151_, v___x_9173_, v___x_9184_, v___x_9196_, v___x_9198_);
lean_inc(v___x_9151_);
v___x_9200_ = l_Lean_Syntax_node1(v___x_9151_, v___x_9159_, v___x_9199_);
lean_inc(v___x_9151_);
v___x_9201_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9152_, v___x_9189_, v___x_9200_);
lean_inc(v___x_9151_);
v___x_9202_ = l_Lean_Syntax_node3(v___x_9151_, v___x_9173_, v___x_9184_, v___x_9201_, v___x_9198_);
lean_inc(v___x_9151_);
v___x_9203_ = l_Lean_Syntax_node4(v___x_9151_, v___x_9163_, v___x_9168_, v___x_9170_, v___x_9172_, v___x_9202_);
lean_inc(v___x_9151_);
v___x_9204_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9161_, v___x_9162_, v___x_9203_);
lean_inc(v___x_9151_);
v___x_9205_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9159_, v_action_8854_, v___x_9204_);
v___x_9206_ = l_Lean_Syntax_node2(v___x_9151_, v___x_9152_, v___x_9158_, v___x_9205_);
v___x_9207_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9207_, 0, v___x_9206_);
lean_ctor_set(v___x_9207_, 1, v_a_9149_);
return v___x_9207_;
}
default: 
{
lean_object* v_a_9208_; lean_object* v_a_9209_; uint8_t v___x_9210_; lean_object* v___x_9211_; lean_object* v___x_9212_; lean_object* v___x_9213_; lean_object* v___x_9214_; lean_object* v___x_9215_; lean_object* v___x_9216_; lean_object* v___x_9217_; lean_object* v___x_9218_; lean_object* v___x_9219_; lean_object* v___x_9220_; lean_object* v___x_9221_; lean_object* v___x_9222_; lean_object* v___x_9223_; lean_object* v___x_9224_; lean_object* v___x_9225_; lean_object* v___x_9226_; lean_object* v___x_9227_; lean_object* v___x_9228_; lean_object* v___x_9229_; lean_object* v___x_9230_; lean_object* v___x_9231_; lean_object* v___x_9232_; lean_object* v___x_9233_; lean_object* v___x_9234_; lean_object* v___x_9235_; lean_object* v___x_9236_; lean_object* v___x_9237_; lean_object* v___x_9238_; lean_object* v___x_9239_; lean_object* v___x_9240_; lean_object* v___x_9241_; lean_object* v___x_9242_; lean_object* v___x_9243_; lean_object* v___x_9244_; lean_object* v___x_9245_; lean_object* v___x_9246_; lean_object* v___x_9247_; lean_object* v___x_9248_; lean_object* v___x_9249_; lean_object* v___x_9250_; lean_object* v___x_9251_; lean_object* v___x_9252_; lean_object* v___x_9253_; lean_object* v___x_9254_; lean_object* v___x_9255_; lean_object* v___x_9256_; lean_object* v___x_9257_; lean_object* v___x_9258_; lean_object* v___x_9259_; lean_object* v___x_9260_; lean_object* v___x_9261_; lean_object* v___x_9262_; lean_object* v___x_9263_; lean_object* v___x_9264_; lean_object* v___x_9265_; lean_object* v___x_9266_; lean_object* v___x_9267_; 
lean_dec_ref(v___x_8870_);
lean_dec_ref(v_a_8855_);
v_a_9208_ = lean_ctor_get(v___x_8871_, 0);
lean_inc(v_a_9208_);
v_a_9209_ = lean_ctor_get(v___x_8871_, 1);
lean_inc(v_a_9209_);
lean_dec_ref(v___x_8871_);
v___x_9210_ = 0;
v___x_9211_ = l_Lean_SourceInfo_fromRef(v_ref_8866_, v___x_9210_);
lean_dec(v_ref_8866_);
v___x_9212_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9213_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9214_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9215_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9214_, v_macroScope_8863_);
v___x_9216_ = lean_box(0);
v___x_9217_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__5));
lean_inc(v___x_9211_);
v___x_9218_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9218_, 0, v___x_9211_);
lean_ctor_set(v___x_9218_, 1, v___x_9213_);
lean_ctor_set(v___x_9218_, 2, v___x_9215_);
lean_ctor_set(v___x_9218_, 3, v___x_9217_);
v___x_9219_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9220_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9221_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9211_);
v___x_9222_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9222_, 0, v___x_9211_);
lean_ctor_set(v___x_9222_, 1, v___x_9220_);
v___x_9223_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_9224_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__6);
v___x_9225_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__7));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9226_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9225_, v_macroScope_8863_);
lean_inc(v___x_9211_);
v___x_9227_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9227_, 0, v___x_9211_);
lean_ctor_set(v___x_9227_, 1, v___x_9224_);
lean_ctor_set(v___x_9227_, 2, v___x_9226_);
lean_ctor_set(v___x_9227_, 3, v___x_9216_);
lean_inc_ref(v___x_9227_);
lean_inc(v___x_9211_);
v___x_9228_ = l_Lean_Syntax_node1(v___x_9211_, v___x_9219_, v___x_9227_);
v___x_9229_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9211_);
v___x_9230_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9230_, 0, v___x_9211_);
lean_ctor_set(v___x_9230_, 1, v___x_9219_);
lean_ctor_set(v___x_9230_, 2, v___x_9229_);
v___x_9231_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9211_);
v___x_9232_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9232_, 0, v___x_9211_);
lean_ctor_set(v___x_9232_, 1, v___x_9231_);
v___x_9233_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_9234_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9235_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9211_);
v___x_9236_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9236_, 0, v___x_9211_);
lean_ctor_set(v___x_9236_, 1, v___x_9235_);
v___x_9237_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9238_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9239_ = lean_box(0);
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9240_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9239_, v_macroScope_8863_);
v___x_9241_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__8));
lean_inc(v___x_9211_);
v___x_9242_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9242_, 0, v___x_9211_);
lean_ctor_set(v___x_9242_, 1, v___x_9238_);
lean_ctor_set(v___x_9242_, 2, v___x_9240_);
lean_ctor_set(v___x_9242_, 3, v___x_9241_);
lean_inc(v___x_9211_);
v___x_9243_ = l_Lean_Syntax_node1(v___x_9211_, v___x_9237_, v___x_9242_);
lean_inc(v___x_9211_);
v___x_9244_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9234_, v___x_9236_, v___x_9243_);
v___x_9245_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_9246_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_macroScope_8863_);
lean_inc(v_quotContext_8859_);
v___x_9247_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9246_, v_macroScope_8863_);
v___x_9248_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__8));
lean_inc(v___x_9211_);
v___x_9249_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9249_, 0, v___x_9211_);
lean_ctor_set(v___x_9249_, 1, v___x_9245_);
lean_ctor_set(v___x_9249_, 2, v___x_9247_);
lean_ctor_set(v___x_9249_, 3, v___x_9248_);
v___x_9250_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__21);
v___x_9251_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__22));
v___x_9252_ = l_Lean_addMacroScope(v_quotContext_8859_, v___x_9251_, v_macroScope_8863_);
v___x_9253_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__26));
lean_inc(v___x_9211_);
v___x_9254_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9254_, 0, v___x_9211_);
lean_ctor_set(v___x_9254_, 1, v___x_9250_);
lean_ctor_set(v___x_9254_, 2, v___x_9252_);
lean_ctor_set(v___x_9254_, 3, v___x_9253_);
lean_inc(v___x_9211_);
v___x_9255_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9219_, v___x_9227_, v_a_9208_);
lean_inc(v___x_9211_);
v___x_9256_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9212_, v___x_9254_, v___x_9255_);
v___x_9257_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9211_);
v___x_9258_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9258_, 0, v___x_9211_);
lean_ctor_set(v___x_9258_, 1, v___x_9257_);
lean_inc_ref(v___x_9258_);
lean_inc(v___x_9244_);
lean_inc(v___x_9211_);
v___x_9259_ = l_Lean_Syntax_node3(v___x_9211_, v___x_9233_, v___x_9244_, v___x_9256_, v___x_9258_);
lean_inc(v___x_9211_);
v___x_9260_ = l_Lean_Syntax_node1(v___x_9211_, v___x_9219_, v___x_9259_);
lean_inc(v___x_9211_);
v___x_9261_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9212_, v___x_9249_, v___x_9260_);
lean_inc(v___x_9211_);
v___x_9262_ = l_Lean_Syntax_node3(v___x_9211_, v___x_9233_, v___x_9244_, v___x_9261_, v___x_9258_);
lean_inc(v___x_9211_);
v___x_9263_ = l_Lean_Syntax_node4(v___x_9211_, v___x_9223_, v___x_9228_, v___x_9230_, v___x_9232_, v___x_9262_);
lean_inc(v___x_9211_);
v___x_9264_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9221_, v___x_9222_, v___x_9263_);
lean_inc(v___x_9211_);
v___x_9265_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9219_, v_action_8854_, v___x_9264_);
v___x_9266_ = l_Lean_Syntax_node2(v___x_9211_, v___x_9212_, v___x_9218_, v___x_9265_);
v___x_9267_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9267_, 0, v___x_9266_);
lean_ctor_set(v___x_9267_, 1, v_a_9209_);
return v___x_9267_;
}
}
}
else
{
lean_dec_ref(v___x_8870_);
lean_dec(v_ref_8866_);
lean_dec(v_macroScope_8863_);
lean_dec(v_quotContext_8859_);
lean_dec_ref(v_a_8855_);
lean_dec(v_action_8854_);
return v___x_8871_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_seqToTerm(lean_object* v_action_9316_, lean_object* v_k_9317_, lean_object* v_a_9318_, lean_object* v_a_9319_, lean_object* v_a_9320_){
_start:
{
lean_object* v_quotContext_9321_; lean_object* v_ref_9322_; lean_object* v_macroScope_9323_; lean_object* v_traceMsgs_9324_; lean_object* v_expandedMacroDecls_9325_; lean_object* v___x_9326_; lean_object* v___x_9327_; uint8_t v___x_9328_; lean_object* v_ref_9329_; lean_object* v___x_9330_; lean_object* v___x_9331_; lean_object* v___x_9332_; 
v_quotContext_9321_ = lean_ctor_get(v_a_9319_, 1);
lean_inc(v_quotContext_9321_);
v_ref_9322_ = lean_ctor_get(v_a_9319_, 5);
lean_inc(v_ref_9322_);
lean_dec_ref(v_a_9319_);
v_macroScope_9323_ = lean_ctor_get(v_a_9320_, 0);
lean_inc(v_macroScope_9323_);
v_traceMsgs_9324_ = lean_ctor_get(v_a_9320_, 1);
lean_inc(v_traceMsgs_9324_);
v_expandedMacroDecls_9325_ = lean_ctor_get(v_a_9320_, 2);
lean_inc(v_expandedMacroDecls_9325_);
lean_dec_ref(v_a_9320_);
lean_inc(v_action_9316_);
v___x_9326_ = l_Lean_Syntax_getKind(v_action_9316_);
v___x_9327_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1));
v___x_9328_ = lean_name_eq(v___x_9326_, v___x_9327_);
v_ref_9329_ = l_Lean_replaceRef(v_action_9316_, v_ref_9322_);
lean_dec(v_ref_9322_);
v___x_9330_ = lean_unsigned_to_nat(1u);
v___x_9331_ = lean_nat_add(v_macroScope_9323_, v___x_9330_);
v___x_9332_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_9332_, 0, v___x_9331_);
lean_ctor_set(v___x_9332_, 1, v_traceMsgs_9324_);
lean_ctor_set(v___x_9332_, 2, v_expandedMacroDecls_9325_);
if (v___x_9328_ == 0)
{
lean_object* v___x_9333_; uint8_t v___x_9334_; 
v___x_9333_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3));
v___x_9334_ = lean_name_eq(v___x_9326_, v___x_9333_);
if (v___x_9334_ == 0)
{
lean_object* v___x_9335_; uint8_t v___x_9336_; 
v___x_9335_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5));
v___x_9336_ = lean_name_eq(v___x_9326_, v___x_9335_);
lean_dec(v___x_9326_);
if (v___x_9336_ == 0)
{
lean_object* v_ref_9337_; lean_object* v___x_9338_; lean_object* v___x_9339_; lean_object* v___x_9340_; lean_object* v___x_9341_; lean_object* v___x_9342_; lean_object* v___x_9343_; lean_object* v___x_9344_; lean_object* v___x_9345_; lean_object* v___x_9346_; lean_object* v___x_9347_; lean_object* v___x_9348_; lean_object* v___x_9349_; lean_object* v_m_9350_; lean_object* v___x_9351_; lean_object* v___x_9352_; lean_object* v___x_9353_; lean_object* v___x_9354_; lean_object* v___x_9355_; lean_object* v___x_9356_; lean_object* v___x_9357_; lean_object* v___x_9358_; lean_object* v___x_9359_; lean_object* v___x_9360_; lean_object* v___x_9361_; lean_object* v___x_9362_; lean_object* v___x_9363_; lean_object* v___x_9364_; lean_object* v___x_9365_; lean_object* v___x_9366_; lean_object* v___x_9367_; lean_object* v___x_9368_; lean_object* v___x_9369_; lean_object* v___x_9370_; lean_object* v___x_9371_; lean_object* v___x_9372_; lean_object* v___x_9373_; lean_object* v___x_9374_; lean_object* v___x_9375_; lean_object* v___x_9376_; lean_object* v___x_9377_; lean_object* v___x_9378_; lean_object* v___x_9379_; lean_object* v___x_9380_; lean_object* v___x_9381_; lean_object* v___x_9382_; lean_object* v___x_9383_; lean_object* v___x_9384_; lean_object* v___x_9385_; lean_object* v___x_9386_; lean_object* v___x_9387_; lean_object* v___x_9388_; lean_object* v___x_9389_; lean_object* v___x_9390_; lean_object* v___x_9391_; lean_object* v___x_9392_; lean_object* v___x_9393_; lean_object* v___x_9394_; lean_object* v___x_9395_; lean_object* v___x_9396_; lean_object* v___x_9397_; lean_object* v___x_9398_; lean_object* v___x_9399_; lean_object* v___x_9400_; lean_object* v___x_9401_; 
v_ref_9337_ = l_Lean_replaceRef(v_action_9316_, v_ref_9329_);
v___x_9338_ = l_Lean_SourceInfo_fromRef(v_ref_9337_, v___x_9336_);
lean_dec(v_ref_9337_);
v___x_9339_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_9340_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9341_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9338_);
v___x_9342_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9342_, 0, v___x_9338_);
lean_ctor_set(v___x_9342_, 1, v___x_9341_);
v___x_9343_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9344_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9345_ = lean_box(0);
lean_inc(v_macroScope_9323_);
lean_inc(v_quotContext_9321_);
v___x_9346_ = l_Lean_addMacroScope(v_quotContext_9321_, v___x_9345_, v_macroScope_9323_);
v___x_9347_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6));
lean_inc(v___x_9346_);
lean_inc(v___x_9338_);
v___x_9348_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9348_, 0, v___x_9338_);
lean_ctor_set(v___x_9348_, 1, v___x_9344_);
lean_ctor_set(v___x_9348_, 2, v___x_9346_);
lean_ctor_set(v___x_9348_, 3, v___x_9347_);
lean_inc(v___x_9338_);
v___x_9349_ = l_Lean_Syntax_node1(v___x_9338_, v___x_9343_, v___x_9348_);
v_m_9350_ = lean_ctor_get(v_a_9318_, 0);
lean_inc(v_m_9350_);
lean_dec_ref(v_a_9318_);
lean_inc(v___x_9338_);
v___x_9351_ = l_Lean_Syntax_node2(v___x_9338_, v___x_9340_, v___x_9342_, v___x_9349_);
v___x_9352_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9338_);
v___x_9353_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9353_, 0, v___x_9338_);
lean_ctor_set(v___x_9353_, 1, v___x_9352_);
v___x_9354_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9355_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9356_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__31);
v___x_9357_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__32));
lean_inc(v_macroScope_9323_);
lean_inc(v_quotContext_9321_);
v___x_9358_ = l_Lean_addMacroScope(v_quotContext_9321_, v___x_9357_, v_macroScope_9323_);
v___x_9359_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__36));
lean_inc(v___x_9358_);
lean_inc(v___x_9338_);
v___x_9360_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9360_, 0, v___x_9338_);
lean_ctor_set(v___x_9360_, 1, v___x_9356_);
lean_ctor_set(v___x_9360_, 2, v___x_9358_);
lean_ctor_set(v___x_9360_, 3, v___x_9359_);
lean_inc(v___x_9338_);
v___x_9361_ = l_Lean_Syntax_node1(v___x_9338_, v___x_9354_, v___x_9360_);
lean_inc(v___x_9338_);
v___x_9362_ = l_Lean_Syntax_node2(v___x_9338_, v___x_9355_, v_m_9350_, v___x_9361_);
lean_inc(v___x_9338_);
v___x_9363_ = l_Lean_Syntax_node1(v___x_9338_, v___x_9354_, v___x_9362_);
v___x_9364_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9338_);
v___x_9365_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9365_, 0, v___x_9338_);
lean_ctor_set(v___x_9365_, 1, v___x_9364_);
v___x_9366_ = l_Lean_Syntax_node5(v___x_9338_, v___x_9339_, v___x_9351_, v_action_9316_, v___x_9353_, v___x_9363_, v___x_9365_);
v___x_9367_ = l_Lean_SourceInfo_fromRef(v_ref_9329_, v___x_9336_);
lean_dec(v_ref_9329_);
v___x_9368_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9369_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
v___x_9370_ = l_Lean_addMacroScope(v_quotContext_9321_, v___x_9369_, v_macroScope_9323_);
v___x_9371_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8));
lean_inc(v___x_9367_);
v___x_9372_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9372_, 0, v___x_9367_);
lean_ctor_set(v___x_9372_, 1, v___x_9368_);
lean_ctor_set(v___x_9372_, 2, v___x_9370_);
lean_ctor_set(v___x_9372_, 3, v___x_9371_);
v___x_9373_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
lean_inc(v___x_9367_);
v___x_9374_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9374_, 0, v___x_9367_);
lean_ctor_set(v___x_9374_, 1, v___x_9341_);
lean_inc(v___x_9367_);
v___x_9375_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9375_, 0, v___x_9367_);
lean_ctor_set(v___x_9375_, 1, v___x_9344_);
lean_ctor_set(v___x_9375_, 2, v___x_9346_);
lean_ctor_set(v___x_9375_, 3, v___x_9347_);
lean_inc(v___x_9367_);
v___x_9376_ = l_Lean_Syntax_node1(v___x_9367_, v___x_9343_, v___x_9375_);
lean_inc(v___x_9367_);
v___x_9377_ = l_Lean_Syntax_node2(v___x_9367_, v___x_9340_, v___x_9374_, v___x_9376_);
v___x_9378_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9379_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9367_);
v___x_9380_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9380_, 0, v___x_9367_);
lean_ctor_set(v___x_9380_, 1, v___x_9378_);
v___x_9381_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_9382_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_9383_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_9367_);
v___x_9384_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9384_, 0, v___x_9367_);
lean_ctor_set(v___x_9384_, 1, v___x_9383_);
lean_inc(v___x_9367_);
v___x_9385_ = l_Lean_Syntax_node1(v___x_9367_, v___x_9382_, v___x_9384_);
lean_inc(v___x_9367_);
v___x_9386_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9386_, 0, v___x_9367_);
lean_ctor_set(v___x_9386_, 1, v___x_9352_);
lean_inc(v___x_9367_);
v___x_9387_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9387_, 0, v___x_9367_);
lean_ctor_set(v___x_9387_, 1, v___x_9356_);
lean_ctor_set(v___x_9387_, 2, v___x_9358_);
lean_ctor_set(v___x_9387_, 3, v___x_9359_);
lean_inc(v___x_9367_);
v___x_9388_ = l_Lean_Syntax_node1(v___x_9367_, v___x_9354_, v___x_9387_);
lean_inc(v___x_9367_);
v___x_9389_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9389_, 0, v___x_9367_);
lean_ctor_set(v___x_9389_, 1, v___x_9364_);
lean_inc_ref(v___x_9389_);
lean_inc(v___x_9377_);
lean_inc(v___x_9367_);
v___x_9390_ = l_Lean_Syntax_node5(v___x_9367_, v___x_9339_, v___x_9377_, v___x_9385_, v___x_9386_, v___x_9388_, v___x_9389_);
lean_inc(v___x_9367_);
v___x_9391_ = l_Lean_Syntax_node1(v___x_9367_, v___x_9354_, v___x_9390_);
v___x_9392_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9367_);
v___x_9393_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9393_, 0, v___x_9367_);
lean_ctor_set(v___x_9393_, 1, v___x_9354_);
lean_ctor_set(v___x_9393_, 2, v___x_9392_);
v___x_9394_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9367_);
v___x_9395_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9395_, 0, v___x_9367_);
lean_ctor_set(v___x_9395_, 1, v___x_9394_);
lean_inc(v___x_9367_);
v___x_9396_ = l_Lean_Syntax_node4(v___x_9367_, v___x_9381_, v___x_9391_, v___x_9393_, v___x_9395_, v_k_9317_);
lean_inc(v___x_9367_);
v___x_9397_ = l_Lean_Syntax_node2(v___x_9367_, v___x_9379_, v___x_9380_, v___x_9396_);
lean_inc(v___x_9367_);
v___x_9398_ = l_Lean_Syntax_node3(v___x_9367_, v___x_9373_, v___x_9377_, v___x_9397_, v___x_9389_);
lean_inc(v___x_9367_);
v___x_9399_ = l_Lean_Syntax_node2(v___x_9367_, v___x_9354_, v___x_9366_, v___x_9398_);
v___x_9400_ = l_Lean_Syntax_node2(v___x_9367_, v___x_9355_, v___x_9372_, v___x_9399_);
v___x_9401_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9401_, 0, v___x_9400_);
lean_ctor_set(v___x_9401_, 1, v___x_9332_);
return v___x_9401_;
}
else
{
lean_object* v___x_9402_; lean_object* v___x_9403_; lean_object* v___x_9404_; lean_object* v___x_9405_; lean_object* v___x_9406_; lean_object* v___x_9407_; lean_object* v___x_9408_; lean_object* v___x_9409_; lean_object* v___x_9410_; 
lean_dec(v_macroScope_9323_);
lean_dec(v_quotContext_9321_);
lean_dec_ref(v_a_9318_);
v___x_9402_ = l_Lean_Syntax_getArg(v_action_9316_, v___x_9330_);
lean_dec(v_action_9316_);
v___x_9403_ = l_Lean_SourceInfo_fromRef(v_ref_9329_, v___x_9334_);
lean_dec(v_ref_9329_);
v___x_9404_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__10));
v___x_9405_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__11));
lean_inc(v___x_9403_);
v___x_9406_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9406_, 0, v___x_9403_);
lean_ctor_set(v___x_9406_, 1, v___x_9405_);
v___x_9407_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9403_);
v___x_9408_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9408_, 0, v___x_9403_);
lean_ctor_set(v___x_9408_, 1, v___x_9407_);
v___x_9409_ = l_Lean_Syntax_node4(v___x_9403_, v___x_9404_, v___x_9406_, v___x_9402_, v___x_9408_, v_k_9317_);
v___x_9410_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9410_, 0, v___x_9409_);
lean_ctor_set(v___x_9410_, 1, v___x_9332_);
return v___x_9410_;
}
}
else
{
lean_object* v___x_9411_; lean_object* v___x_9412_; lean_object* v___x_9413_; lean_object* v___x_9414_; lean_object* v___x_9415_; lean_object* v___x_9416_; lean_object* v___x_9417_; lean_object* v___x_9418_; lean_object* v___x_9419_; 
lean_dec(v___x_9326_);
lean_dec(v_macroScope_9323_);
lean_dec(v_quotContext_9321_);
lean_dec_ref(v_a_9318_);
v___x_9411_ = l_Lean_Syntax_getArg(v_action_9316_, v___x_9330_);
lean_dec(v_action_9316_);
v___x_9412_ = l_Lean_SourceInfo_fromRef(v_ref_9329_, v___x_9328_);
lean_dec(v_ref_9329_);
v___x_9413_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__13));
v___x_9414_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__14));
lean_inc(v___x_9412_);
v___x_9415_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9415_, 0, v___x_9412_);
lean_ctor_set(v___x_9415_, 1, v___x_9414_);
v___x_9416_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9412_);
v___x_9417_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9417_, 0, v___x_9412_);
lean_ctor_set(v___x_9417_, 1, v___x_9416_);
v___x_9418_ = l_Lean_Syntax_node4(v___x_9412_, v___x_9413_, v___x_9415_, v___x_9411_, v___x_9417_, v_k_9317_);
v___x_9419_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9419_, 0, v___x_9418_);
lean_ctor_set(v___x_9419_, 1, v___x_9332_);
return v___x_9419_;
}
}
else
{
lean_object* v___x_9420_; uint8_t v___x_9421_; lean_object* v___x_9422_; lean_object* v___x_9423_; lean_object* v___x_9424_; lean_object* v___x_9425_; lean_object* v___x_9426_; lean_object* v___x_9427_; lean_object* v___x_9428_; lean_object* v___x_9429_; 
lean_dec(v___x_9326_);
lean_dec(v_macroScope_9323_);
lean_dec(v_quotContext_9321_);
lean_dec_ref(v_a_9318_);
v___x_9420_ = l_Lean_Syntax_getArg(v_action_9316_, v___x_9330_);
lean_dec(v_action_9316_);
v___x_9421_ = 0;
v___x_9422_ = l_Lean_SourceInfo_fromRef(v_ref_9329_, v___x_9421_);
lean_dec(v_ref_9329_);
v___x_9423_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__16));
v___x_9424_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__17));
lean_inc(v___x_9422_);
v___x_9425_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9425_, 0, v___x_9422_);
lean_ctor_set(v___x_9425_, 1, v___x_9424_);
v___x_9426_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9422_);
v___x_9427_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9427_, 0, v___x_9422_);
lean_ctor_set(v___x_9427_, 1, v___x_9426_);
v___x_9428_ = l_Lean_Syntax_node4(v___x_9422_, v___x_9423_, v___x_9425_, v___x_9420_, v___x_9427_, v_k_9317_);
v___x_9429_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9429_, 0, v___x_9428_);
lean_ctor_set(v___x_9429_, 1, v___x_9332_);
return v___x_9429_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2(void){
_start:
{
lean_object* v___x_9436_; lean_object* v___x_9437_; lean_object* v___x_9438_; lean_object* v___x_9439_; 
v___x_9436_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkUnless___closed__0));
v___x_9437_ = lean_unsigned_to_nat(2u);
v___x_9438_ = lean_mk_empty_array_with_capacity(v___x_9437_);
v___x_9439_ = lean_array_push(v___x_9438_, v___x_9436_);
return v___x_9439_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_declToTerm(lean_object* v_decl_9446_, lean_object* v_k_9447_, lean_object* v_a_9448_, lean_object* v_a_9449_, lean_object* v_a_9450_){
_start:
{
lean_object* v_methods_9451_; lean_object* v_quotContext_9452_; lean_object* v_currRecDepth_9453_; lean_object* v_maxRecDepth_9454_; lean_object* v_ref_9455_; lean_object* v_macroScope_9456_; lean_object* v_traceMsgs_9457_; lean_object* v_expandedMacroDecls_9458_; lean_object* v_kind_9459_; lean_object* v___x_9460_; uint8_t v___x_9461_; lean_object* v_ref_9462_; lean_object* v___x_9463_; lean_object* v___x_9464_; lean_object* v___x_9465_; 
v_methods_9451_ = lean_ctor_get(v_a_9449_, 0);
lean_inc(v_methods_9451_);
v_quotContext_9452_ = lean_ctor_get(v_a_9449_, 1);
lean_inc(v_quotContext_9452_);
v_currRecDepth_9453_ = lean_ctor_get(v_a_9449_, 3);
lean_inc(v_currRecDepth_9453_);
v_maxRecDepth_9454_ = lean_ctor_get(v_a_9449_, 4);
lean_inc(v_maxRecDepth_9454_);
v_ref_9455_ = lean_ctor_get(v_a_9449_, 5);
lean_inc(v_ref_9455_);
lean_dec_ref(v_a_9449_);
v_macroScope_9456_ = lean_ctor_get(v_a_9450_, 0);
lean_inc(v_macroScope_9456_);
v_traceMsgs_9457_ = lean_ctor_get(v_a_9450_, 1);
lean_inc(v_traceMsgs_9457_);
v_expandedMacroDecls_9458_ = lean_ctor_get(v_a_9450_, 2);
lean_inc(v_expandedMacroDecls_9458_);
lean_dec_ref(v_a_9450_);
lean_inc(v_decl_9446_);
v_kind_9459_ = l_Lean_Syntax_getKind(v_decl_9446_);
v___x_9460_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_9461_ = lean_name_eq(v_kind_9459_, v___x_9460_);
v_ref_9462_ = l_Lean_replaceRef(v_decl_9446_, v_ref_9455_);
lean_dec(v_ref_9455_);
v___x_9463_ = lean_unsigned_to_nat(1u);
v___x_9464_ = lean_nat_add(v_macroScope_9456_, v___x_9463_);
v___x_9465_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_9465_, 0, v___x_9464_);
lean_ctor_set(v___x_9465_, 1, v_traceMsgs_9457_);
lean_ctor_set(v___x_9465_, 2, v_expandedMacroDecls_9458_);
if (v___x_9461_ == 0)
{
lean_object* v___x_9466_; uint8_t v___x_9467_; 
v___x_9466_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1));
v___x_9467_ = lean_name_eq(v_kind_9459_, v___x_9466_);
if (v___x_9467_ == 0)
{
lean_object* v___x_9468_; lean_object* v___x_9469_; uint8_t v___x_9470_; 
lean_inc(v_ref_9462_);
lean_inc(v_macroScope_9456_);
lean_inc(v_quotContext_9452_);
v___x_9468_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_9468_, 0, v_methods_9451_);
lean_ctor_set(v___x_9468_, 1, v_quotContext_9452_);
lean_ctor_set(v___x_9468_, 2, v_macroScope_9456_);
lean_ctor_set(v___x_9468_, 3, v_currRecDepth_9453_);
lean_ctor_set(v___x_9468_, 4, v_maxRecDepth_9454_);
lean_ctor_set(v___x_9468_, 5, v_ref_9462_);
v___x_9469_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_9470_ = lean_name_eq(v_kind_9459_, v___x_9469_);
if (v___x_9470_ == 0)
{
lean_object* v___x_9471_; uint8_t v___x_9472_; 
lean_dec(v_ref_9462_);
lean_dec(v_macroScope_9456_);
lean_dec(v_quotContext_9452_);
lean_dec_ref(v_a_9448_);
v___x_9471_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1));
v___x_9472_ = lean_name_eq(v_kind_9459_, v___x_9471_);
lean_dec(v_kind_9459_);
if (v___x_9472_ == 0)
{
lean_object* v___x_9473_; lean_object* v___x_9474_; 
lean_dec(v_k_9447_);
v___x_9473_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2));
v___x_9474_ = l_Lean_Macro_throwErrorAt___redArg(v_decl_9446_, v___x_9473_, v___x_9468_, v___x_9465_);
lean_dec(v_decl_9446_);
return v___x_9474_;
}
else
{
lean_object* v___x_9475_; lean_object* v___x_9476_; lean_object* v___x_9477_; lean_object* v___x_9478_; lean_object* v___x_9479_; lean_object* v___x_9480_; lean_object* v___x_9481_; lean_object* v___x_9482_; 
lean_dec_ref(v___x_9468_);
v___x_9475_ = l_Lean_Syntax_getArgs(v_decl_9446_);
lean_dec(v_decl_9446_);
v___x_9476_ = lean_box(2);
v___x_9477_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2, &l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2_once, _init_l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__2);
v___x_9478_ = lean_array_push(v___x_9477_, v_k_9447_);
v___x_9479_ = l_Array_append___redArg(v___x_9475_, v___x_9478_);
lean_dec_ref(v___x_9478_);
v___x_9480_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__4));
v___x_9481_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9481_, 0, v___x_9476_);
lean_ctor_set(v___x_9481_, 1, v___x_9480_);
lean_ctor_set(v___x_9481_, 2, v___x_9479_);
v___x_9482_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9482_, 0, v___x_9481_);
lean_ctor_set(v___x_9482_, 1, v___x_9465_);
return v___x_9482_;
}
}
else
{
lean_object* v___x_9483_; lean_object* v___x_9484_; lean_object* v___x_9485_; lean_object* v___x_9486_; uint8_t v___x_9487_; 
lean_dec(v_kind_9459_);
v___x_9483_ = lean_unsigned_to_nat(2u);
v___x_9484_ = l_Lean_Syntax_getArg(v_decl_9446_, v___x_9483_);
lean_inc(v___x_9484_);
v___x_9485_ = l_Lean_Syntax_getKind(v___x_9484_);
v___x_9486_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_9487_ = lean_name_eq(v___x_9485_, v___x_9486_);
lean_dec(v___x_9485_);
if (v___x_9487_ == 0)
{
lean_object* v___x_9488_; lean_object* v___x_9489_; 
lean_dec(v___x_9484_);
lean_dec(v_ref_9462_);
lean_dec(v_macroScope_9456_);
lean_dec(v_quotContext_9452_);
lean_dec_ref(v_a_9448_);
lean_dec(v_k_9447_);
v___x_9488_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2));
v___x_9489_ = l_Lean_Macro_throwErrorAt___redArg(v_decl_9446_, v___x_9488_, v___x_9468_, v___x_9465_);
lean_dec(v_decl_9446_);
return v___x_9489_;
}
else
{
lean_object* v___x_9490_; lean_object* v___x_9491_; lean_object* v___x_9492_; 
v___x_9490_ = lean_unsigned_to_nat(3u);
v___x_9491_ = l_Lean_Syntax_getArg(v___x_9484_, v___x_9490_);
v___x_9492_ = l_Lean_Elab_Term_Do_isDoExpr_x3f(v___x_9491_);
if (lean_obj_tag(v___x_9492_) == 0)
{
lean_object* v___x_9493_; lean_object* v___x_9494_; 
lean_dec(v___x_9484_);
lean_dec(v_ref_9462_);
lean_dec(v_macroScope_9456_);
lean_dec(v_quotContext_9452_);
lean_dec_ref(v_a_9448_);
lean_dec(v_k_9447_);
v___x_9493_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__2));
v___x_9494_ = l_Lean_Macro_throwErrorAt___redArg(v_decl_9446_, v___x_9493_, v___x_9468_, v___x_9465_);
lean_dec(v_decl_9446_);
return v___x_9494_;
}
else
{
lean_object* v_val_9495_; lean_object* v_ref_9496_; lean_object* v___x_9497_; lean_object* v___x_9498_; lean_object* v___x_9499_; lean_object* v___x_9500_; lean_object* v___x_9501_; lean_object* v___x_9502_; lean_object* v___x_9503_; lean_object* v___x_9504_; lean_object* v___x_9505_; lean_object* v___x_9506_; lean_object* v___x_9507_; lean_object* v___x_9508_; lean_object* v_m_9509_; lean_object* v___x_9510_; lean_object* v___x_9511_; lean_object* v___x_9512_; lean_object* v___x_9513_; lean_object* v___x_9514_; lean_object* v___x_9515_; lean_object* v___x_9516_; lean_object* v___x_9517_; lean_object* v___x_9518_; lean_object* v___x_9519_; lean_object* v___x_9520_; lean_object* v___x_9521_; lean_object* v___x_9522_; lean_object* v___x_9523_; lean_object* v___x_9524_; lean_object* v___x_9525_; lean_object* v___x_9526_; lean_object* v___x_9527_; lean_object* v___x_9528_; lean_object* v___x_9529_; lean_object* v___x_9530_; lean_object* v___x_9531_; lean_object* v___x_9532_; lean_object* v___x_9533_; lean_object* v___x_9534_; lean_object* v___x_9535_; lean_object* v___x_9536_; lean_object* v___x_9537_; lean_object* v___x_9538_; lean_object* v___x_9539_; lean_object* v___x_9540_; lean_object* v___x_9541_; lean_object* v___x_9542_; lean_object* v___x_9543_; lean_object* v___x_9544_; lean_object* v___x_9545_; lean_object* v___x_9546_; lean_object* v___x_9547_; lean_object* v___x_9548_; lean_object* v___x_9549_; lean_object* v___x_9550_; lean_object* v___x_9551_; lean_object* v___x_9552_; lean_object* v___x_9553_; lean_object* v___x_9554_; 
lean_dec_ref(v___x_9468_);
lean_dec(v_decl_9446_);
v_val_9495_ = lean_ctor_get(v___x_9492_, 0);
lean_inc(v_val_9495_);
lean_dec_ref(v___x_9492_);
v_ref_9496_ = l_Lean_replaceRef(v_val_9495_, v_ref_9462_);
v___x_9497_ = l_Lean_SourceInfo_fromRef(v_ref_9496_, v___x_9467_);
lean_dec(v_ref_9496_);
v___x_9498_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_9499_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_9500_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9497_);
v___x_9501_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9501_, 0, v___x_9497_);
lean_ctor_set(v___x_9501_, 1, v___x_9500_);
v___x_9502_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_9503_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_9504_ = lean_box(0);
lean_inc(v_macroScope_9456_);
lean_inc(v_quotContext_9452_);
v___x_9505_ = l_Lean_addMacroScope(v_quotContext_9452_, v___x_9504_, v_macroScope_9456_);
v___x_9506_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6));
lean_inc(v___x_9505_);
lean_inc(v___x_9497_);
v___x_9507_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9507_, 0, v___x_9497_);
lean_ctor_set(v___x_9507_, 1, v___x_9503_);
lean_ctor_set(v___x_9507_, 2, v___x_9505_);
lean_ctor_set(v___x_9507_, 3, v___x_9506_);
lean_inc(v___x_9497_);
v___x_9508_ = l_Lean_Syntax_node1(v___x_9497_, v___x_9502_, v___x_9507_);
v_m_9509_ = lean_ctor_get(v_a_9448_, 0);
lean_inc(v_m_9509_);
lean_dec_ref(v_a_9448_);
lean_inc(v___x_9497_);
v___x_9510_ = l_Lean_Syntax_node2(v___x_9497_, v___x_9499_, v___x_9501_, v___x_9508_);
v___x_9511_ = lean_unsigned_to_nat(0u);
v___x_9512_ = l_Lean_Syntax_getArg(v___x_9484_, v___x_9511_);
v___x_9513_ = l_Lean_Syntax_getArg(v___x_9484_, v___x_9463_);
lean_dec(v___x_9484_);
v___x_9514_ = l_Lean_Elab_Term_expandOptType(v___x_9512_, v___x_9513_);
lean_dec(v___x_9513_);
v___x_9515_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9497_);
v___x_9516_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9516_, 0, v___x_9497_);
lean_ctor_set(v___x_9516_, 1, v___x_9515_);
v___x_9517_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9518_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
lean_inc(v___x_9514_);
lean_inc(v___x_9497_);
v___x_9519_ = l_Lean_Syntax_node1(v___x_9497_, v___x_9517_, v___x_9514_);
lean_inc(v___x_9497_);
v___x_9520_ = l_Lean_Syntax_node2(v___x_9497_, v___x_9518_, v_m_9509_, v___x_9519_);
lean_inc(v___x_9497_);
v___x_9521_ = l_Lean_Syntax_node1(v___x_9497_, v___x_9517_, v___x_9520_);
v___x_9522_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9497_);
v___x_9523_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9523_, 0, v___x_9497_);
lean_ctor_set(v___x_9523_, 1, v___x_9522_);
v___x_9524_ = l_Lean_Syntax_node5(v___x_9497_, v___x_9498_, v___x_9510_, v_val_9495_, v___x_9516_, v___x_9521_, v___x_9523_);
v___x_9525_ = l_Lean_SourceInfo_fromRef(v_ref_9462_, v___x_9467_);
lean_dec(v_ref_9462_);
v___x_9526_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_9527_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
v___x_9528_ = l_Lean_addMacroScope(v_quotContext_9452_, v___x_9527_, v_macroScope_9456_);
v___x_9529_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8));
lean_inc(v___x_9525_);
v___x_9530_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9530_, 0, v___x_9525_);
lean_ctor_set(v___x_9530_, 1, v___x_9526_);
lean_ctor_set(v___x_9530_, 2, v___x_9528_);
lean_ctor_set(v___x_9530_, 3, v___x_9529_);
v___x_9531_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
lean_inc(v___x_9525_);
v___x_9532_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9532_, 0, v___x_9525_);
lean_ctor_set(v___x_9532_, 1, v___x_9500_);
lean_inc(v___x_9525_);
v___x_9533_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_9533_, 0, v___x_9525_);
lean_ctor_set(v___x_9533_, 1, v___x_9503_);
lean_ctor_set(v___x_9533_, 2, v___x_9505_);
lean_ctor_set(v___x_9533_, 3, v___x_9506_);
lean_inc(v___x_9525_);
v___x_9534_ = l_Lean_Syntax_node1(v___x_9525_, v___x_9502_, v___x_9533_);
lean_inc(v___x_9525_);
v___x_9535_ = l_Lean_Syntax_node2(v___x_9525_, v___x_9499_, v___x_9532_, v___x_9534_);
v___x_9536_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_9537_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_9525_);
v___x_9538_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9538_, 0, v___x_9525_);
lean_ctor_set(v___x_9538_, 1, v___x_9536_);
v___x_9539_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v___x_9525_);
v___x_9540_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9540_, 0, v___x_9525_);
lean_ctor_set(v___x_9540_, 1, v___x_9515_);
lean_inc(v___x_9525_);
v___x_9541_ = l_Lean_Syntax_node1(v___x_9525_, v___x_9517_, v___x_9514_);
lean_inc(v___x_9525_);
v___x_9542_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9542_, 0, v___x_9525_);
lean_ctor_set(v___x_9542_, 1, v___x_9522_);
lean_inc_ref(v___x_9542_);
lean_inc(v___x_9535_);
lean_inc(v___x_9525_);
v___x_9543_ = l_Lean_Syntax_node5(v___x_9525_, v___x_9498_, v___x_9535_, v___x_9512_, v___x_9540_, v___x_9541_, v___x_9542_);
lean_inc(v___x_9525_);
v___x_9544_ = l_Lean_Syntax_node1(v___x_9525_, v___x_9517_, v___x_9543_);
v___x_9545_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9525_);
v___x_9546_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9546_, 0, v___x_9525_);
lean_ctor_set(v___x_9546_, 1, v___x_9517_);
lean_ctor_set(v___x_9546_, 2, v___x_9545_);
v___x_9547_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_9525_);
v___x_9548_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9548_, 0, v___x_9525_);
lean_ctor_set(v___x_9548_, 1, v___x_9547_);
lean_inc(v___x_9525_);
v___x_9549_ = l_Lean_Syntax_node4(v___x_9525_, v___x_9539_, v___x_9544_, v___x_9546_, v___x_9548_, v_k_9447_);
lean_inc(v___x_9525_);
v___x_9550_ = l_Lean_Syntax_node2(v___x_9525_, v___x_9537_, v___x_9538_, v___x_9549_);
lean_inc(v___x_9525_);
v___x_9551_ = l_Lean_Syntax_node3(v___x_9525_, v___x_9531_, v___x_9535_, v___x_9550_, v___x_9542_);
lean_inc(v___x_9525_);
v___x_9552_ = l_Lean_Syntax_node2(v___x_9525_, v___x_9517_, v___x_9524_, v___x_9551_);
v___x_9553_ = l_Lean_Syntax_node2(v___x_9525_, v___x_9518_, v___x_9530_, v___x_9552_);
v___x_9554_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9554_, 0, v___x_9553_);
lean_ctor_set(v___x_9554_, 1, v___x_9465_);
return v___x_9554_;
}
}
}
}
else
{
lean_object* v___x_9555_; lean_object* v___x_9556_; lean_object* v___x_9557_; lean_object* v___x_9558_; lean_object* v___x_9559_; lean_object* v___x_9560_; lean_object* v___x_9561_; lean_object* v___x_9562_; lean_object* v___x_9563_; lean_object* v___x_9564_; lean_object* v___x_9565_; lean_object* v___x_9566_; lean_object* v___x_9567_; lean_object* v___x_9568_; 
lean_dec(v_ref_9462_);
lean_dec(v_kind_9459_);
lean_dec(v_macroScope_9456_);
lean_dec(v_maxRecDepth_9454_);
lean_dec(v_currRecDepth_9453_);
lean_dec(v_quotContext_9452_);
lean_dec(v_methods_9451_);
lean_dec_ref(v_a_9448_);
v___x_9555_ = lean_unsigned_to_nat(0u);
v___x_9556_ = l_Lean_Syntax_getArg(v_decl_9446_, v___x_9555_);
v___x_9557_ = l_Lean_Syntax_getArg(v_decl_9446_, v___x_9463_);
lean_dec(v_decl_9446_);
v___x_9558_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__3));
v___x_9559_ = lean_box(2);
v___x_9560_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkUnless___closed__0));
v___x_9561_ = lean_unsigned_to_nat(4u);
v___x_9562_ = lean_mk_empty_array_with_capacity(v___x_9561_);
v___x_9563_ = lean_array_push(v___x_9562_, v___x_9556_);
v___x_9564_ = lean_array_push(v___x_9563_, v___x_9557_);
v___x_9565_ = lean_array_push(v___x_9564_, v___x_9560_);
v___x_9566_ = lean_array_push(v___x_9565_, v_k_9447_);
v___x_9567_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9567_, 0, v___x_9559_);
lean_ctor_set(v___x_9567_, 1, v___x_9558_);
lean_ctor_set(v___x_9567_, 2, v___x_9566_);
v___x_9568_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9568_, 0, v___x_9567_);
lean_ctor_set(v___x_9568_, 1, v___x_9465_);
return v___x_9568_;
}
}
else
{
lean_object* v___x_9569_; lean_object* v___x_9570_; uint8_t v___x_9571_; lean_object* v___x_9572_; lean_object* v___x_9573_; lean_object* v___x_9574_; lean_object* v___x_9575_; lean_object* v___x_9576_; lean_object* v___x_9577_; lean_object* v___x_9578_; lean_object* v___x_9579_; lean_object* v___x_9580_; lean_object* v___x_9581_; lean_object* v___x_9582_; lean_object* v___x_9583_; lean_object* v___x_9584_; 
lean_dec(v_kind_9459_);
lean_dec(v_macroScope_9456_);
lean_dec(v_maxRecDepth_9454_);
lean_dec(v_currRecDepth_9453_);
lean_dec(v_quotContext_9452_);
lean_dec(v_methods_9451_);
lean_dec_ref(v_a_9448_);
v___x_9569_ = lean_unsigned_to_nat(2u);
v___x_9570_ = l_Lean_Syntax_getArg(v_decl_9446_, v___x_9569_);
lean_dec(v_decl_9446_);
v___x_9571_ = 0;
v___x_9572_ = l_Lean_SourceInfo_fromRef(v_ref_9462_, v___x_9571_);
lean_dec(v_ref_9462_);
v___x_9573_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_9574_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_9572_);
v___x_9575_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9575_, 0, v___x_9572_);
lean_ctor_set(v___x_9575_, 1, v___x_9573_);
v___x_9576_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_9577_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9578_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9572_);
v___x_9579_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9579_, 0, v___x_9572_);
lean_ctor_set(v___x_9579_, 1, v___x_9577_);
lean_ctor_set(v___x_9579_, 2, v___x_9578_);
lean_inc(v___x_9572_);
v___x_9580_ = l_Lean_Syntax_node1(v___x_9572_, v___x_9576_, v___x_9579_);
v___x_9581_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9572_);
v___x_9582_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9582_, 0, v___x_9572_);
lean_ctor_set(v___x_9582_, 1, v___x_9581_);
v___x_9583_ = l_Lean_Syntax_node5(v___x_9572_, v___x_9574_, v___x_9575_, v___x_9580_, v___x_9570_, v___x_9582_, v_k_9447_);
v___x_9584_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9584_, 0, v___x_9583_);
lean_ctor_set(v___x_9584_, 1, v___x_9465_);
return v___x_9584_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7(void){
_start:
{
lean_object* v___x_9600_; lean_object* v___x_9601_; lean_object* v___x_9602_; 
v___x_9600_ = lean_box(2);
v___x_9601_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__6));
v___x_9602_ = l_Lean_Syntax_mkStrLit(v___x_9601_, v___x_9600_);
return v___x_9602_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm(lean_object* v_reassign_9606_, lean_object* v_k_9607_, lean_object* v_a_9608_, lean_object* v_a_9609_){
_start:
{
lean_object* v_methods_9610_; lean_object* v_quotContext_9611_; lean_object* v_currRecDepth_9612_; lean_object* v_maxRecDepth_9613_; lean_object* v_ref_9614_; lean_object* v_macroScope_9615_; lean_object* v_traceMsgs_9616_; lean_object* v_expandedMacroDecls_9617_; lean_object* v___x_9618_; uint8_t v___x_9619_; lean_object* v_ref_9620_; lean_object* v___x_9621_; lean_object* v___x_9622_; lean_object* v___x_9623_; lean_object* v___x_9624_; 
v_methods_9610_ = lean_ctor_get(v_a_9608_, 0);
v_quotContext_9611_ = lean_ctor_get(v_a_9608_, 1);
v_currRecDepth_9612_ = lean_ctor_get(v_a_9608_, 3);
v_maxRecDepth_9613_ = lean_ctor_get(v_a_9608_, 4);
v_ref_9614_ = lean_ctor_get(v_a_9608_, 5);
v_macroScope_9615_ = lean_ctor_get(v_a_9609_, 0);
v_traceMsgs_9616_ = lean_ctor_get(v_a_9609_, 1);
v_expandedMacroDecls_9617_ = lean_ctor_get(v_a_9609_, 2);
v___x_9618_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
lean_inc(v_reassign_9606_);
v___x_9619_ = l_Lean_Syntax_isOfKind(v_reassign_9606_, v___x_9618_);
v_ref_9620_ = l_Lean_replaceRef(v_reassign_9606_, v_ref_9614_);
v___x_9621_ = lean_unsigned_to_nat(1u);
v___x_9622_ = lean_nat_add(v_macroScope_9615_, v___x_9621_);
lean_inc(v_expandedMacroDecls_9617_);
lean_inc(v_traceMsgs_9616_);
v___x_9623_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_9623_, 0, v___x_9622_);
lean_ctor_set(v___x_9623_, 1, v_traceMsgs_9616_);
lean_ctor_set(v___x_9623_, 2, v_expandedMacroDecls_9617_);
lean_inc(v_ref_9620_);
lean_inc(v_maxRecDepth_9613_);
lean_inc(v_currRecDepth_9612_);
lean_inc(v_macroScope_9615_);
lean_inc(v_quotContext_9611_);
lean_inc(v_methods_9610_);
v___x_9624_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_9624_, 0, v_methods_9610_);
lean_ctor_set(v___x_9624_, 1, v_quotContext_9611_);
lean_ctor_set(v___x_9624_, 2, v_macroScope_9615_);
lean_ctor_set(v___x_9624_, 3, v_currRecDepth_9612_);
lean_ctor_set(v___x_9624_, 4, v_maxRecDepth_9613_);
lean_ctor_set(v___x_9624_, 5, v_ref_9620_);
if (v___x_9619_ == 0)
{
lean_object* v___x_9625_; lean_object* v___x_9626_; 
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9625_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9626_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9625_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9626_;
}
else
{
lean_object* v___x_9627_; lean_object* v___x_9628_; lean_object* v___x_9629_; uint8_t v___x_9630_; 
v___x_9627_ = lean_unsigned_to_nat(0u);
v___x_9628_ = l_Lean_Syntax_getArg(v_reassign_9606_, v___x_9627_);
v___x_9629_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
lean_inc(v___x_9628_);
v___x_9630_ = l_Lean_Syntax_isOfKind(v___x_9628_, v___x_9629_);
if (v___x_9630_ == 0)
{
lean_object* v___x_9631_; uint8_t v___x_9632_; 
v___x_9631_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
lean_inc(v___x_9628_);
v___x_9632_ = l_Lean_Syntax_isOfKind(v___x_9628_, v___x_9631_);
if (v___x_9632_ == 0)
{
lean_object* v___x_9633_; lean_object* v___x_9634_; 
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9633_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9634_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9633_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9634_;
}
else
{
lean_object* v___x_9635_; uint8_t v___x_9636_; 
v___x_9635_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9621_);
v___x_9636_ = l_Lean_Syntax_matchesNull(v___x_9635_, v___x_9627_);
if (v___x_9636_ == 0)
{
lean_object* v___x_9637_; lean_object* v___x_9638_; 
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9637_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9638_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9637_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9638_;
}
else
{
lean_object* v___x_9639_; lean_object* v___x_9640_; uint8_t v___x_9641_; 
v___x_9639_ = lean_unsigned_to_nat(2u);
v___x_9640_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9639_);
v___x_9641_ = l_Lean_Syntax_matchesNull(v___x_9640_, v___x_9627_);
if (v___x_9641_ == 0)
{
lean_object* v___x_9642_; lean_object* v___x_9643_; 
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9642_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9643_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9642_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9643_;
}
else
{
lean_object* v___x_9644_; lean_object* v___x_9645_; lean_object* v___x_9646_; lean_object* v___x_9647_; lean_object* v___x_9648_; lean_object* v___x_9649_; lean_object* v___x_9650_; lean_object* v___x_9651_; lean_object* v___x_9652_; lean_object* v___x_9653_; lean_object* v___x_9654_; lean_object* v___x_9655_; lean_object* v___x_9656_; lean_object* v___x_9657_; lean_object* v___x_9658_; lean_object* v___x_9659_; lean_object* v___x_9660_; lean_object* v___x_9661_; lean_object* v___x_9662_; lean_object* v___x_9663_; lean_object* v___x_9664_; lean_object* v___x_9665_; lean_object* v___x_9666_; lean_object* v___x_9667_; lean_object* v___x_9668_; lean_object* v___x_9669_; 
lean_dec_ref(v___x_9624_);
lean_dec(v_reassign_9606_);
v___x_9644_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9627_);
v___x_9645_ = lean_unsigned_to_nat(4u);
v___x_9646_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9645_);
lean_dec(v___x_9628_);
v___x_9647_ = l_Lean_SourceInfo_fromRef(v_ref_9620_, v___x_9630_);
lean_dec(v_ref_9620_);
v___x_9648_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_9649_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_9647_);
v___x_9650_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9650_, 0, v___x_9647_);
lean_ctor_set(v___x_9650_, 1, v___x_9648_);
v___x_9651_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_9652_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9653_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9647_);
v___x_9654_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9654_, 0, v___x_9647_);
lean_ctor_set(v___x_9654_, 1, v___x_9652_);
lean_ctor_set(v___x_9654_, 2, v___x_9653_);
lean_inc_ref(v___x_9654_);
lean_inc(v___x_9647_);
v___x_9655_ = l_Lean_Syntax_node1(v___x_9647_, v___x_9651_, v___x_9654_);
v___x_9656_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_9657_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_9647_);
v___x_9658_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9658_, 0, v___x_9647_);
lean_ctor_set(v___x_9658_, 1, v___x_9657_);
v___x_9659_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4));
v___x_9660_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__5));
lean_inc(v___x_9647_);
v___x_9661_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9661_, 0, v___x_9647_);
lean_ctor_set(v___x_9661_, 1, v___x_9660_);
v___x_9662_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7, &l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7);
lean_inc(v___x_9644_);
lean_inc(v___x_9647_);
v___x_9663_ = l_Lean_Syntax_node4(v___x_9647_, v___x_9659_, v___x_9661_, v___x_9644_, v___x_9662_, v___x_9646_);
lean_inc_ref(v___x_9654_);
lean_inc(v___x_9647_);
v___x_9664_ = l_Lean_Syntax_node5(v___x_9647_, v___x_9631_, v___x_9644_, v___x_9654_, v___x_9654_, v___x_9658_, v___x_9663_);
lean_inc(v___x_9647_);
v___x_9665_ = l_Lean_Syntax_node1(v___x_9647_, v___x_9656_, v___x_9664_);
v___x_9666_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9647_);
v___x_9667_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9667_, 0, v___x_9647_);
lean_ctor_set(v___x_9667_, 1, v___x_9666_);
v___x_9668_ = l_Lean_Syntax_node5(v___x_9647_, v___x_9649_, v___x_9650_, v___x_9655_, v___x_9665_, v___x_9667_, v_k_9607_);
v___x_9669_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9669_, 0, v___x_9668_);
lean_ctor_set(v___x_9669_, 1, v___x_9623_);
return v___x_9669_;
}
}
}
}
else
{
lean_object* v___x_9670_; lean_object* v___x_9671_; uint8_t v___x_9672_; 
v___x_9670_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9627_);
v___x_9671_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v___x_9670_);
v___x_9672_ = l_Lean_Syntax_isOfKind(v___x_9670_, v___x_9671_);
if (v___x_9672_ == 0)
{
lean_object* v___x_9673_; lean_object* v___x_9674_; 
lean_dec(v___x_9670_);
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9673_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9674_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9673_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9674_;
}
else
{
lean_object* v___x_9675_; lean_object* v___x_9676_; uint8_t v___x_9677_; 
v___x_9675_ = l_Lean_Syntax_getArg(v___x_9670_, v___x_9627_);
lean_dec(v___x_9670_);
v___x_9676_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__9));
lean_inc(v___x_9675_);
v___x_9677_ = l_Lean_Syntax_isOfKind(v___x_9675_, v___x_9676_);
if (v___x_9677_ == 0)
{
lean_object* v___x_9678_; lean_object* v___x_9679_; 
lean_dec(v___x_9675_);
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9678_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9679_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9678_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9679_;
}
else
{
lean_object* v___x_9680_; uint8_t v___x_9681_; 
v___x_9680_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9621_);
v___x_9681_ = l_Lean_Syntax_matchesNull(v___x_9680_, v___x_9627_);
if (v___x_9681_ == 0)
{
lean_object* v___x_9682_; lean_object* v___x_9683_; 
lean_dec(v___x_9675_);
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9682_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9683_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9682_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9683_;
}
else
{
lean_object* v___x_9684_; lean_object* v___x_9685_; uint8_t v___x_9686_; 
v___x_9684_ = lean_unsigned_to_nat(2u);
v___x_9685_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9684_);
v___x_9686_ = l_Lean_Syntax_matchesNull(v___x_9685_, v___x_9627_);
if (v___x_9686_ == 0)
{
lean_object* v___x_9687_; lean_object* v___x_9688_; 
lean_dec(v___x_9675_);
lean_dec(v___x_9628_);
lean_dec(v_ref_9620_);
lean_dec(v_k_9607_);
v___x_9687_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_9688_ = l_Lean_Macro_throwErrorAt___redArg(v_reassign_9606_, v___x_9687_, v___x_9624_, v___x_9623_);
lean_dec(v_reassign_9606_);
return v___x_9688_;
}
else
{
lean_object* v___x_9689_; lean_object* v___x_9690_; uint8_t v___x_9691_; lean_object* v___x_9692_; lean_object* v___x_9693_; lean_object* v___x_9694_; lean_object* v___x_9695_; lean_object* v___x_9696_; lean_object* v___x_9697_; lean_object* v___x_9698_; lean_object* v___x_9699_; lean_object* v___x_9700_; lean_object* v___x_9701_; lean_object* v___x_9702_; lean_object* v___x_9703_; lean_object* v___x_9704_; lean_object* v___x_9705_; lean_object* v___x_9706_; lean_object* v___x_9707_; lean_object* v___x_9708_; lean_object* v___x_9709_; lean_object* v___x_9710_; lean_object* v___x_9711_; lean_object* v___x_9712_; lean_object* v___x_9713_; lean_object* v___x_9714_; lean_object* v___x_9715_; lean_object* v___x_9716_; 
lean_dec_ref(v___x_9624_);
lean_dec(v_reassign_9606_);
v___x_9689_ = lean_unsigned_to_nat(4u);
v___x_9690_ = l_Lean_Syntax_getArg(v___x_9628_, v___x_9689_);
lean_dec(v___x_9628_);
v___x_9691_ = 0;
v___x_9692_ = l_Lean_SourceInfo_fromRef(v_ref_9620_, v___x_9691_);
lean_dec(v_ref_9620_);
v___x_9693_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_9694_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v___x_9692_);
v___x_9695_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9695_, 0, v___x_9692_);
lean_ctor_set(v___x_9695_, 1, v___x_9693_);
v___x_9696_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_9697_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9698_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_9692_);
v___x_9699_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9699_, 0, v___x_9692_);
lean_ctor_set(v___x_9699_, 1, v___x_9697_);
lean_ctor_set(v___x_9699_, 2, v___x_9698_);
lean_inc_ref(v___x_9699_);
lean_inc(v___x_9692_);
v___x_9700_ = l_Lean_Syntax_node1(v___x_9692_, v___x_9696_, v___x_9699_);
v___x_9701_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_9702_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
lean_inc(v___x_9675_);
lean_inc(v___x_9692_);
v___x_9703_ = l_Lean_Syntax_node1(v___x_9692_, v___x_9671_, v___x_9675_);
v___x_9704_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_9692_);
v___x_9705_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9705_, 0, v___x_9692_);
lean_ctor_set(v___x_9705_, 1, v___x_9704_);
v___x_9706_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__4));
v___x_9707_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__5));
lean_inc(v___x_9692_);
v___x_9708_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9708_, 0, v___x_9692_);
lean_ctor_set(v___x_9708_, 1, v___x_9707_);
v___x_9709_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7, &l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__7);
lean_inc(v___x_9692_);
v___x_9710_ = l_Lean_Syntax_node4(v___x_9692_, v___x_9706_, v___x_9708_, v___x_9675_, v___x_9709_, v___x_9690_);
lean_inc_ref(v___x_9699_);
lean_inc(v___x_9692_);
v___x_9711_ = l_Lean_Syntax_node5(v___x_9692_, v___x_9702_, v___x_9703_, v___x_9699_, v___x_9699_, v___x_9705_, v___x_9710_);
lean_inc(v___x_9692_);
v___x_9712_ = l_Lean_Syntax_node1(v___x_9692_, v___x_9701_, v___x_9711_);
v___x_9713_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9692_);
v___x_9714_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9714_, 0, v___x_9692_);
lean_ctor_set(v___x_9714_, 1, v___x_9713_);
v___x_9715_ = l_Lean_Syntax_node5(v___x_9692_, v___x_9694_, v___x_9695_, v___x_9700_, v___x_9712_, v___x_9714_, v_k_9607_);
v___x_9716_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9716_, 0, v___x_9715_);
lean_ctor_set(v___x_9716_, 1, v___x_9623_);
return v___x_9716_;
}
}
}
}
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___boxed(lean_object* v_reassign_9717_, lean_object* v_k_9718_, lean_object* v_a_9719_, lean_object* v_a_9720_){
_start:
{
lean_object* v_res_9721_; 
v_res_9721_ = l_Lean_Elab_Term_Do_ToTerm_reassignToTerm(v_reassign_9717_, v_k_9718_, v_a_9719_, v_a_9720_);
lean_dec_ref(v_a_9720_);
lean_dec_ref(v_a_9719_);
return v_res_9721_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte(lean_object* v_optIdent_9726_, lean_object* v_cond_9727_, lean_object* v_thenBranch_9728_, lean_object* v_elseBranch_9729_, lean_object* v_a_9730_, lean_object* v_a_9731_){
_start:
{
uint8_t v___x_9732_; 
v___x_9732_ = l_Lean_Syntax_isNone(v_optIdent_9726_);
if (v___x_9732_ == 0)
{
lean_object* v_ref_9733_; lean_object* v___x_9734_; lean_object* v_h_9735_; lean_object* v___x_9736_; lean_object* v___x_9737_; lean_object* v___x_9738_; lean_object* v___x_9739_; lean_object* v___x_9740_; lean_object* v___x_9741_; lean_object* v___x_9742_; lean_object* v___x_9743_; lean_object* v___x_9744_; lean_object* v___x_9745_; lean_object* v___x_9746_; lean_object* v___x_9747_; lean_object* v___x_9748_; lean_object* v___x_9749_; 
v_ref_9733_ = lean_ctor_get(v_a_9730_, 5);
v___x_9734_ = lean_unsigned_to_nat(0u);
v_h_9735_ = l_Lean_Syntax_getArg(v_optIdent_9726_, v___x_9734_);
v___x_9736_ = l_Lean_SourceInfo_fromRef(v_ref_9733_, v___x_9732_);
v___x_9737_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3));
v___x_9738_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v___x_9736_);
v___x_9739_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9739_, 0, v___x_9736_);
lean_ctor_set(v___x_9739_, 1, v___x_9738_);
v___x_9740_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkIte___closed__1));
lean_inc(v___x_9736_);
v___x_9741_ = l_Lean_Syntax_node1(v___x_9736_, v___x_9740_, v_h_9735_);
v___x_9742_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9736_);
v___x_9743_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9743_, 0, v___x_9736_);
lean_ctor_set(v___x_9743_, 1, v___x_9742_);
v___x_9744_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v___x_9736_);
v___x_9745_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9745_, 0, v___x_9736_);
lean_ctor_set(v___x_9745_, 1, v___x_9744_);
v___x_9746_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v___x_9736_);
v___x_9747_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9747_, 0, v___x_9736_);
lean_ctor_set(v___x_9747_, 1, v___x_9746_);
v___x_9748_ = l_Lean_Syntax_node8(v___x_9736_, v___x_9737_, v___x_9739_, v___x_9741_, v___x_9743_, v_cond_9727_, v___x_9745_, v_thenBranch_9728_, v___x_9747_, v_elseBranch_9729_);
v___x_9749_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9749_, 0, v___x_9748_);
lean_ctor_set(v___x_9749_, 1, v_a_9731_);
return v___x_9749_;
}
else
{
lean_object* v_ref_9750_; uint8_t v___x_9751_; lean_object* v___x_9752_; lean_object* v___x_9753_; lean_object* v___x_9754_; lean_object* v___x_9755_; lean_object* v___x_9756_; lean_object* v___x_9757_; lean_object* v___x_9758_; lean_object* v___x_9759_; lean_object* v___x_9760_; lean_object* v___x_9761_; 
v_ref_9750_ = lean_ctor_get(v_a_9730_, 5);
v___x_9751_ = 0;
v___x_9752_ = l_Lean_SourceInfo_fromRef(v_ref_9750_, v___x_9751_);
v___x_9753_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5));
v___x_9754_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__6));
lean_inc(v___x_9752_);
v___x_9755_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9755_, 0, v___x_9752_);
lean_ctor_set(v___x_9755_, 1, v___x_9754_);
v___x_9756_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__7));
lean_inc(v___x_9752_);
v___x_9757_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9757_, 0, v___x_9752_);
lean_ctor_set(v___x_9757_, 1, v___x_9756_);
v___x_9758_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__8));
lean_inc(v___x_9752_);
v___x_9759_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9759_, 0, v___x_9752_);
lean_ctor_set(v___x_9759_, 1, v___x_9758_);
v___x_9760_ = l_Lean_Syntax_node6(v___x_9752_, v___x_9753_, v___x_9755_, v_cond_9727_, v___x_9757_, v_thenBranch_9728_, v___x_9759_, v_elseBranch_9729_);
v___x_9761_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9761_, 0, v___x_9760_);
lean_ctor_set(v___x_9761_, 1, v_a_9731_);
return v___x_9761_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkIte___boxed(lean_object* v_optIdent_9762_, lean_object* v_cond_9763_, lean_object* v_thenBranch_9764_, lean_object* v_elseBranch_9765_, lean_object* v_a_9766_, lean_object* v_a_9767_){
_start:
{
lean_object* v_res_9768_; 
v_res_9768_ = l_Lean_Elab_Term_Do_ToTerm_mkIte(v_optIdent_9762_, v_cond_9763_, v_thenBranch_9764_, v_elseBranch_9765_, v_a_9766_, v_a_9767_);
lean_dec_ref(v_a_9766_);
lean_dec(v_optIdent_9762_);
return v_res_9768_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg(lean_object* v_val_9769_, uint8_t v_canonical_9770_, lean_object* v___y_9771_, lean_object* v___y_9772_){
_start:
{
lean_object* v_ref_9773_; lean_object* v___x_9774_; lean_object* v___x_9775_; 
v_ref_9773_ = lean_ctor_get(v___y_9771_, 5);
v___x_9774_ = l_Lean_mkIdentFrom(v_ref_9773_, v_val_9769_, v_canonical_9770_);
v___x_9775_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9775_, 0, v___x_9774_);
lean_ctor_set(v___x_9775_, 1, v___y_9772_);
return v___x_9775_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg___boxed(lean_object* v_val_9776_, lean_object* v_canonical_9777_, lean_object* v___y_9778_, lean_object* v___y_9779_){
_start:
{
uint8_t v_canonical_boxed_9780_; lean_object* v_res_9781_; 
v_canonical_boxed_9780_ = lean_unbox(v_canonical_9777_);
v_res_9781_ = l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg(v_val_9776_, v_canonical_boxed_9780_, v___y_9778_, v___y_9779_);
lean_dec_ref(v___y_9778_);
return v_res_9781_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1(lean_object* v_val_9782_, uint8_t v_canonical_9783_, lean_object* v___y_9784_, lean_object* v___y_9785_, lean_object* v___y_9786_){
_start:
{
lean_object* v___x_9787_; 
v___x_9787_ = l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg(v_val_9782_, v_canonical_9783_, v___y_9785_, v___y_9786_);
return v___x_9787_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___boxed(lean_object* v_val_9788_, lean_object* v_canonical_9789_, lean_object* v___y_9790_, lean_object* v___y_9791_, lean_object* v___y_9792_){
_start:
{
uint8_t v_canonical_boxed_9793_; lean_object* v_res_9794_; 
v_canonical_boxed_9793_ = lean_unbox(v_canonical_9789_);
v_res_9794_ = l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1(v_val_9788_, v_canonical_boxed_9793_, v___y_9790_, v___y_9791_, v___y_9792_);
lean_dec_ref(v___y_9791_);
lean_dec_ref(v___y_9790_);
return v_res_9794_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2(lean_object* v___x_9801_, size_t v_sz_9802_, size_t v_i_9803_, lean_object* v_bs_9804_){
_start:
{
uint8_t v___x_9805_; 
v___x_9805_ = lean_usize_dec_lt(v_i_9803_, v_sz_9802_);
if (v___x_9805_ == 0)
{
lean_dec(v___x_9801_);
return v_bs_9804_;
}
else
{
lean_object* v_v_9806_; lean_object* v_fst_9807_; lean_object* v_snd_9808_; lean_object* v___x_9809_; lean_object* v___x_9810_; lean_object* v___x_9811_; lean_object* v_bs_x27_9812_; lean_object* v___x_9813_; lean_object* v___x_9814_; lean_object* v___x_9815_; lean_object* v___x_9816_; lean_object* v___x_9817_; lean_object* v___x_9818_; lean_object* v___x_9819_; lean_object* v___x_9820_; lean_object* v___x_9821_; lean_object* v___x_9822_; lean_object* v___x_9823_; size_t v___x_9824_; size_t v___x_9825_; lean_object* v___x_9826_; 
v_v_9806_ = lean_array_uget_borrowed(v_bs_9804_, v_i_9803_);
v_fst_9807_ = lean_ctor_get(v_v_9806_, 0);
lean_inc(v_fst_9807_);
v_snd_9808_ = lean_ctor_get(v_v_9806_, 1);
lean_inc(v_snd_9808_);
v___x_9809_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9810_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
v___x_9811_ = lean_unsigned_to_nat(0u);
v_bs_x27_9812_ = lean_array_uset(v_bs_9804_, v_i_9803_, v___x_9811_);
v___x_9813_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___closed__1));
v___x_9814_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_9801_);
v___x_9815_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9815_, 0, v___x_9801_);
lean_ctor_set(v___x_9815_, 1, v___x_9814_);
lean_inc(v___x_9801_);
v___x_9816_ = l_Lean_Syntax_node1(v___x_9801_, v___x_9809_, v_fst_9807_);
v___x_9817_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9801_);
v___x_9818_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9818_, 0, v___x_9801_);
lean_ctor_set(v___x_9818_, 1, v___x_9817_);
lean_inc(v___x_9801_);
v___x_9819_ = l_Lean_Syntax_node2(v___x_9801_, v___x_9809_, v___x_9818_, v_snd_9808_);
lean_inc(v___x_9801_);
v___x_9820_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9820_, 0, v___x_9801_);
lean_ctor_set(v___x_9820_, 1, v___x_9809_);
lean_ctor_set(v___x_9820_, 2, v___x_9810_);
v___x_9821_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_9801_);
v___x_9822_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9822_, 0, v___x_9801_);
lean_ctor_set(v___x_9822_, 1, v___x_9821_);
lean_inc(v___x_9801_);
v___x_9823_ = l_Lean_Syntax_node5(v___x_9801_, v___x_9813_, v___x_9815_, v___x_9816_, v___x_9819_, v___x_9820_, v___x_9822_);
v___x_9824_ = ((size_t)1ULL);
v___x_9825_ = lean_usize_add(v_i_9803_, v___x_9824_);
v___x_9826_ = lean_array_uset(v_bs_x27_9812_, v_i_9803_, v___x_9823_);
v_i_9803_ = v___x_9825_;
v_bs_9804_ = v___x_9826_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2___boxed(lean_object* v___x_9828_, lean_object* v_sz_9829_, lean_object* v_i_9830_, lean_object* v_bs_9831_){
_start:
{
size_t v_sz_boxed_9832_; size_t v_i_boxed_9833_; lean_object* v_res_9834_; 
v_sz_boxed_9832_ = lean_unbox_usize(v_sz_9829_);
lean_dec(v_sz_9829_);
v_i_boxed_9833_ = lean_unbox_usize(v_i_9830_);
lean_dec(v_i_9830_);
v_res_9834_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2(v___x_9828_, v_sz_boxed_9832_, v_i_boxed_9833_, v_bs_9831_);
return v_res_9834_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg(size_t v_sz_9842_, size_t v_i_9843_, lean_object* v_bs_9844_, lean_object* v___y_9845_, lean_object* v___y_9846_){
_start:
{
uint8_t v___x_9847_; 
v___x_9847_ = lean_usize_dec_lt(v_i_9843_, v_sz_9842_);
if (v___x_9847_ == 0)
{
lean_object* v___x_9848_; 
v___x_9848_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9848_, 0, v_bs_9844_);
lean_ctor_set(v___x_9848_, 1, v___y_9846_);
return v___x_9848_;
}
else
{
lean_object* v_v_9849_; lean_object* v_fst_9850_; lean_object* v_snd_9851_; lean_object* v___x_9852_; lean_object* v_bs_x27_9853_; lean_object* v_a_9855_; lean_object* v_a_9856_; uint8_t v___x_9861_; 
v_v_9849_ = lean_array_uget_borrowed(v_bs_9844_, v_i_9843_);
v_fst_9850_ = lean_ctor_get(v_v_9849_, 0);
lean_inc(v_fst_9850_);
v_snd_9851_ = lean_ctor_get(v_v_9849_, 1);
lean_inc(v_snd_9851_);
v___x_9852_ = lean_unsigned_to_nat(0u);
v_bs_x27_9853_ = lean_array_uset(v_bs_9844_, v_i_9843_, v___x_9852_);
v___x_9861_ = lean_unbox(v_snd_9851_);
if (v___x_9861_ == 0)
{
lean_object* v_ref_9862_; uint8_t v___x_9863_; lean_object* v___x_9864_; lean_object* v___x_9865_; lean_object* v___x_9866_; lean_object* v___x_9867_; lean_object* v___x_9868_; 
lean_dec(v_fst_9850_);
v_ref_9862_ = lean_ctor_get(v___y_9845_, 5);
v___x_9863_ = lean_unbox(v_snd_9851_);
lean_dec(v_snd_9851_);
v___x_9864_ = l_Lean_SourceInfo_fromRef(v_ref_9862_, v___x_9863_);
v___x_9865_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_9866_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_9864_);
v___x_9867_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9867_, 0, v___x_9864_);
lean_ctor_set(v___x_9867_, 1, v___x_9866_);
v___x_9868_ = l_Lean_Syntax_node1(v___x_9864_, v___x_9865_, v___x_9867_);
v_a_9855_ = v___x_9868_;
v_a_9856_ = v___y_9846_;
goto v___jp_9854_;
}
else
{
lean_object* v_ref_9869_; uint8_t v___x_9870_; lean_object* v___x_9871_; lean_object* v___x_9872_; lean_object* v___x_9873_; lean_object* v___x_9874_; lean_object* v___x_9875_; 
lean_dec(v_snd_9851_);
v_ref_9869_ = lean_ctor_get(v___y_9845_, 5);
v___x_9870_ = 0;
v___x_9871_ = l_Lean_SourceInfo_fromRef(v_ref_9869_, v___x_9870_);
v___x_9872_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__1));
v___x_9873_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___closed__2));
lean_inc(v___x_9871_);
v___x_9874_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9874_, 0, v___x_9871_);
lean_ctor_set(v___x_9874_, 1, v___x_9873_);
v___x_9875_ = l_Lean_Syntax_node2(v___x_9871_, v___x_9872_, v___x_9874_, v_fst_9850_);
v_a_9855_ = v___x_9875_;
v_a_9856_ = v___y_9846_;
goto v___jp_9854_;
}
v___jp_9854_:
{
size_t v___x_9857_; size_t v___x_9858_; lean_object* v___x_9859_; 
v___x_9857_ = ((size_t)1ULL);
v___x_9858_ = lean_usize_add(v_i_9843_, v___x_9857_);
v___x_9859_ = lean_array_uset(v_bs_x27_9853_, v_i_9843_, v_a_9855_);
v_i_9843_ = v___x_9858_;
v_bs_9844_ = v___x_9859_;
v___y_9846_ = v_a_9856_;
goto _start;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg___boxed(lean_object* v_sz_9876_, lean_object* v_i_9877_, lean_object* v_bs_9878_, lean_object* v___y_9879_, lean_object* v___y_9880_){
_start:
{
size_t v_sz_boxed_9881_; size_t v_i_boxed_9882_; lean_object* v_res_9883_; 
v_sz_boxed_9881_ = lean_unbox_usize(v_sz_9876_);
lean_dec(v_sz_9876_);
v_i_boxed_9882_ = lean_unbox_usize(v_i_9877_);
lean_dec(v_i_9877_);
v_res_9883_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg(v_sz_boxed_9881_, v_i_boxed_9882_, v_bs_9878_, v___y_9879_, v___y_9880_);
lean_dec_ref(v___y_9879_);
return v_res_9883_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint(lean_object* v_j_9896_, lean_object* v_ps_9897_, lean_object* v_body_9898_, lean_object* v_k_9899_, lean_object* v_a_9900_, lean_object* v_a_9901_, lean_object* v_a_9902_){
_start:
{
lean_object* v_methods_9903_; lean_object* v_quotContext_9904_; lean_object* v_currRecDepth_9905_; lean_object* v_maxRecDepth_9906_; lean_object* v_ref_9907_; lean_object* v_macroScope_9908_; lean_object* v_traceMsgs_9909_; lean_object* v_expandedMacroDecls_9910_; lean_object* v_ref_9911_; lean_object* v___x_9912_; lean_object* v___x_9913_; lean_object* v___x_9914_; lean_object* v___x_9915_; size_t v_sz_9916_; size_t v___x_9917_; lean_object* v___x_9918_; 
v_methods_9903_ = lean_ctor_get(v_a_9901_, 0);
v_quotContext_9904_ = lean_ctor_get(v_a_9901_, 1);
v_currRecDepth_9905_ = lean_ctor_get(v_a_9901_, 3);
v_maxRecDepth_9906_ = lean_ctor_get(v_a_9901_, 4);
v_ref_9907_ = lean_ctor_get(v_a_9901_, 5);
v_macroScope_9908_ = lean_ctor_get(v_a_9902_, 0);
v_traceMsgs_9909_ = lean_ctor_get(v_a_9902_, 1);
v_expandedMacroDecls_9910_ = lean_ctor_get(v_a_9902_, 2);
v_ref_9911_ = l_Lean_replaceRef(v_body_9898_, v_ref_9907_);
v___x_9912_ = lean_unsigned_to_nat(1u);
v___x_9913_ = lean_nat_add(v_macroScope_9908_, v___x_9912_);
lean_inc(v_expandedMacroDecls_9910_);
lean_inc(v_traceMsgs_9909_);
v___x_9914_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_9914_, 0, v___x_9913_);
lean_ctor_set(v___x_9914_, 1, v_traceMsgs_9909_);
lean_ctor_set(v___x_9914_, 2, v_expandedMacroDecls_9910_);
lean_inc(v_ref_9911_);
lean_inc(v_maxRecDepth_9906_);
lean_inc(v_currRecDepth_9905_);
lean_inc(v_macroScope_9908_);
lean_inc(v_quotContext_9904_);
lean_inc(v_methods_9903_);
v___x_9915_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_9915_, 0, v_methods_9903_);
lean_ctor_set(v___x_9915_, 1, v_quotContext_9904_);
lean_ctor_set(v___x_9915_, 2, v_macroScope_9908_);
lean_ctor_set(v___x_9915_, 3, v_currRecDepth_9905_);
lean_ctor_set(v___x_9915_, 4, v_maxRecDepth_9906_);
lean_ctor_set(v___x_9915_, 5, v_ref_9911_);
v_sz_9916_ = lean_array_size(v_ps_9897_);
v___x_9917_ = ((size_t)0ULL);
lean_inc_ref(v_ps_9897_);
v___x_9918_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg(v_sz_9916_, v___x_9917_, v_ps_9897_, v___x_9915_, v___x_9914_);
if (lean_obj_tag(v___x_9918_) == 0)
{
lean_object* v_a_9919_; lean_object* v_a_9920_; uint8_t v___x_9921_; lean_object* v___x_9922_; lean_object* v_a_9923_; lean_object* v_a_9924_; lean_object* v___x_9925_; lean_object* v___x_9926_; lean_object* v___x_9927_; lean_object* v___x_9928_; lean_object* v___x_9929_; lean_object* v___x_9930_; lean_object* v___x_9931_; lean_object* v___x_9932_; lean_object* v___x_9933_; lean_object* v___x_9934_; size_t v_sz_9935_; lean_object* v___x_9936_; lean_object* v_m_9937_; lean_object* v___x_9938_; lean_object* v___x_9939_; lean_object* v___x_9940_; lean_object* v___x_9941_; lean_object* v___x_9942_; lean_object* v___x_9943_; lean_object* v___x_9944_; lean_object* v___x_9945_; lean_object* v___x_9946_; lean_object* v___x_9947_; lean_object* v___x_9948_; lean_object* v___x_9949_; lean_object* v___x_9950_; lean_object* v___x_9951_; lean_object* v___x_9952_; lean_object* v___x_9953_; lean_object* v___x_9954_; lean_object* v___x_9955_; lean_object* v___x_9956_; lean_object* v___x_9957_; lean_object* v___x_9958_; lean_object* v___x_9959_; lean_object* v___x_9960_; lean_object* v___x_9961_; 
v_a_9919_ = lean_ctor_get(v___x_9918_, 0);
lean_inc(v_a_9919_);
v_a_9920_ = lean_ctor_get(v___x_9918_, 1);
lean_inc(v_a_9920_);
lean_dec_ref(v___x_9918_);
v___x_9921_ = 0;
v___x_9922_ = l_Lean_mkIdentFromRef___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__1___redArg(v_j_9896_, v___x_9921_, v___x_9915_, v_a_9920_);
lean_dec_ref(v___x_9915_);
v_a_9923_ = lean_ctor_get(v___x_9922_, 0);
lean_inc(v_a_9923_);
v_a_9924_ = lean_ctor_get(v___x_9922_, 1);
lean_inc(v_a_9924_);
lean_dec_ref(v___x_9922_);
v___x_9925_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__0(v_sz_9916_, v___x_9917_, v_ps_9897_);
v___x_9926_ = l_Lean_SourceInfo_fromRef(v_ref_9911_, v___x_9921_);
lean_dec(v_ref_9911_);
v___x_9927_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__0));
v___x_9928_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__1));
lean_inc(v___x_9926_);
v___x_9929_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9929_, 0, v___x_9926_);
lean_ctor_set(v___x_9929_, 1, v___x_9927_);
v___x_9930_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_9931_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_9932_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v___x_9926_);
v___x_9933_ = l_Lean_Syntax_node1(v___x_9926_, v___x_9932_, v_a_9923_);
v___x_9934_ = l_Array_zip___redArg(v___x_9925_, v_a_9919_);
lean_dec(v_a_9919_);
lean_dec_ref(v___x_9925_);
v_sz_9935_ = lean_array_size(v___x_9934_);
lean_inc(v___x_9926_);
v___x_9936_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__2(v___x_9926_, v_sz_9935_, v___x_9917_, v___x_9934_);
v_m_9937_ = lean_ctor_get(v_a_9900_, 0);
lean_inc(v_m_9937_);
lean_dec_ref(v_a_9900_);
v___x_9938_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_9939_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
v___x_9940_ = l_Array_append___redArg(v___x_9939_, v___x_9936_);
lean_dec_ref(v___x_9936_);
lean_inc(v___x_9926_);
v___x_9941_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_9941_, 0, v___x_9926_);
lean_ctor_set(v___x_9941_, 1, v___x_9938_);
lean_ctor_set(v___x_9941_, 2, v___x_9940_);
v___x_9942_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3));
v___x_9943_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_9926_);
v___x_9944_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9944_, 0, v___x_9926_);
lean_ctor_set(v___x_9944_, 1, v___x_9943_);
v___x_9945_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_9946_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_9947_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_9926_);
v___x_9948_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9948_, 0, v___x_9926_);
lean_ctor_set(v___x_9948_, 1, v___x_9947_);
lean_inc(v___x_9926_);
v___x_9949_ = l_Lean_Syntax_node1(v___x_9926_, v___x_9946_, v___x_9948_);
lean_inc(v___x_9926_);
v___x_9950_ = l_Lean_Syntax_node1(v___x_9926_, v___x_9938_, v___x_9949_);
lean_inc(v___x_9926_);
v___x_9951_ = l_Lean_Syntax_node2(v___x_9926_, v___x_9945_, v_m_9937_, v___x_9950_);
lean_inc(v___x_9926_);
v___x_9952_ = l_Lean_Syntax_node2(v___x_9926_, v___x_9942_, v___x_9944_, v___x_9951_);
lean_inc(v___x_9926_);
v___x_9953_ = l_Lean_Syntax_node1(v___x_9926_, v___x_9938_, v___x_9952_);
v___x_9954_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_9926_);
v___x_9955_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9955_, 0, v___x_9926_);
lean_ctor_set(v___x_9955_, 1, v___x_9954_);
lean_inc(v___x_9926_);
v___x_9956_ = l_Lean_Syntax_node5(v___x_9926_, v___x_9931_, v___x_9933_, v___x_9941_, v___x_9953_, v___x_9955_, v_body_9898_);
lean_inc(v___x_9926_);
v___x_9957_ = l_Lean_Syntax_node1(v___x_9926_, v___x_9930_, v___x_9956_);
v___x_9958_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_9926_);
v___x_9959_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_9959_, 0, v___x_9926_);
lean_ctor_set(v___x_9959_, 1, v___x_9958_);
v___x_9960_ = l_Lean_Syntax_node4(v___x_9926_, v___x_9928_, v___x_9929_, v___x_9957_, v___x_9959_, v_k_9899_);
v___x_9961_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_9961_, 0, v___x_9960_);
lean_ctor_set(v___x_9961_, 1, v_a_9924_);
return v___x_9961_;
}
else
{
lean_object* v_a_9962_; lean_object* v_a_9963_; lean_object* v___x_9964_; 
lean_dec_ref(v___x_9915_);
lean_dec(v_ref_9911_);
lean_dec_ref(v_a_9900_);
lean_dec(v_k_9899_);
lean_dec(v_body_9898_);
lean_dec_ref(v_ps_9897_);
lean_dec(v_j_9896_);
v_a_9962_ = lean_ctor_get(v___x_9918_, 0);
lean_inc(v_a_9962_);
v_a_9963_ = lean_ctor_get(v___x_9918_, 1);
lean_inc(v_a_9963_);
lean_dec_ref(v___x_9918_);
v___x_9964_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_9964_, 0, v_a_9962_);
lean_ctor_set(v___x_9964_, 1, v_a_9963_);
return v___x_9964_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___boxed(lean_object* v_j_9965_, lean_object* v_ps_9966_, lean_object* v_body_9967_, lean_object* v_k_9968_, lean_object* v_a_9969_, lean_object* v_a_9970_, lean_object* v_a_9971_){
_start:
{
lean_object* v_res_9972_; 
v_res_9972_ = l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint(v_j_9965_, v_ps_9966_, v_body_9967_, v_k_9968_, v_a_9969_, v_a_9970_, v_a_9971_);
lean_dec_ref(v_a_9971_);
lean_dec_ref(v_a_9970_);
return v_res_9972_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0(size_t v_sz_9973_, size_t v_i_9974_, lean_object* v_bs_9975_, lean_object* v___y_9976_, lean_object* v___y_9977_, lean_object* v___y_9978_){
_start:
{
lean_object* v___x_9979_; 
v___x_9979_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___redArg(v_sz_9973_, v_i_9974_, v_bs_9975_, v___y_9977_, v___y_9978_);
return v___x_9979_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0___boxed(lean_object* v_sz_9980_, lean_object* v_i_9981_, lean_object* v_bs_9982_, lean_object* v___y_9983_, lean_object* v___y_9984_, lean_object* v___y_9985_){
_start:
{
size_t v_sz_boxed_9986_; size_t v_i_boxed_9987_; lean_object* v_res_9988_; 
v_sz_boxed_9986_ = lean_unbox_usize(v_sz_9980_);
lean_dec(v_sz_9980_);
v_i_boxed_9987_ = lean_unbox_usize(v_i_9981_);
lean_dec(v_i_9981_);
v_res_9988_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToTerm_mkJoinPoint_spec__0(v_sz_boxed_9986_, v_i_boxed_9987_, v_bs_9982_, v___y_9983_, v___y_9984_, v___y_9985_);
lean_dec_ref(v___y_9984_);
lean_dec_ref(v___y_9983_);
return v_res_9988_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJmp(lean_object* v_ref_9989_, lean_object* v_j_9990_, lean_object* v_args_9991_){
_start:
{
uint8_t v___x_9992_; lean_object* v___x_9993_; lean_object* v___x_9994_; 
v___x_9992_ = 0;
v___x_9993_ = l_Lean_mkIdentFrom(v_ref_9989_, v_j_9990_, v___x_9992_);
v___x_9994_ = l_Lean_Syntax_mkApp(v___x_9993_, v_args_9991_);
return v___x_9994_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkJmp___boxed(lean_object* v_ref_9995_, lean_object* v_j_9996_, lean_object* v_args_9997_){
_start:
{
lean_object* v_res_9998_; 
v_res_9998_ = l_Lean_Elab_Term_Do_ToTerm_mkJmp(v_ref_9995_, v_j_9996_, v_args_9997_);
lean_dec(v_ref_9995_);
return v_res_9998_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(lean_object* v_____do__lift_9999_, lean_object* v___y_10000_, lean_object* v___y_10001_, lean_object* v___y_10002_){
_start:
{
uint8_t v___x_10003_; lean_object* v___x_10004_; lean_object* v___x_10005_; 
v___x_10003_ = 0;
v___x_10004_ = l_Lean_SourceInfo_fromRef(v_____do__lift_9999_, v___x_10003_);
v___x_10005_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10005_, 0, v___x_10004_);
lean_ctor_set(v___x_10005_, 1, v___y_10002_);
return v___x_10005_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0___boxed(lean_object* v_____do__lift_10006_, lean_object* v___y_10007_, lean_object* v___y_10008_, lean_object* v___y_10009_){
_start:
{
lean_object* v_res_10010_; 
v_res_10010_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(v_____do__lift_10006_, v___y_10007_, v___y_10008_, v___y_10009_);
lean_dec_ref(v___y_10008_);
lean_dec_ref(v___y_10007_);
lean_dec(v_____do__lift_10006_);
return v_res_10010_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg(lean_object* v_ref_10011_, lean_object* v_term_10012_, lean_object* v___y_10013_, lean_object* v___y_10014_){
_start:
{
lean_object* v_ref_10015_; lean_object* v_ref_10016_; uint8_t v___x_10017_; lean_object* v___x_10018_; lean_object* v___x_10019_; lean_object* v___x_10020_; lean_object* v___x_10021_; lean_object* v___x_10022_; lean_object* v___x_10023_; 
v_ref_10015_ = lean_ctor_get(v___y_10013_, 5);
v_ref_10016_ = l_Lean_replaceRef(v_term_10012_, v_ref_10015_);
v___x_10017_ = 0;
v___x_10018_ = l_Lean_SourceInfo_fromRef(v_ref_10016_, v___x_10017_);
lean_dec(v_ref_10016_);
v___x_10019_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1));
v___x_10020_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2));
lean_inc(v___x_10018_);
v___x_10021_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10021_, 0, v___x_10018_);
lean_ctor_set(v___x_10021_, 1, v___x_10020_);
v___x_10022_ = l_Lean_Syntax_node3(v___x_10018_, v___x_10019_, v___x_10021_, v_ref_10011_, v_term_10012_);
v___x_10023_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10023_, 0, v___x_10022_);
lean_ctor_set(v___x_10023_, 1, v___y_10014_);
return v___x_10023_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg___boxed(lean_object* v_ref_10024_, lean_object* v_term_10025_, lean_object* v___y_10026_, lean_object* v___y_10027_){
_start:
{
lean_object* v_res_10028_; 
v_res_10028_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg(v_ref_10024_, v_term_10025_, v___y_10026_, v___y_10027_);
lean_dec_ref(v___y_10026_);
return v_res_10028_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0(lean_object* v_as_10029_, size_t v_sz_10030_, size_t v_i_10031_, lean_object* v_b_10032_, lean_object* v___y_10033_, lean_object* v___y_10034_, lean_object* v___y_10035_){
_start:
{
uint8_t v___x_10036_; 
v___x_10036_ = lean_usize_dec_lt(v_i_10031_, v_sz_10030_);
if (v___x_10036_ == 0)
{
lean_object* v___x_10037_; 
lean_dec_ref(v___y_10034_);
lean_dec_ref(v___y_10033_);
v___x_10037_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10037_, 0, v_b_10032_);
lean_ctor_set(v___x_10037_, 1, v___y_10035_);
return v___x_10037_;
}
else
{
lean_object* v_a_10038_; lean_object* v_ref_10039_; lean_object* v_patterns_10040_; lean_object* v_rhs_10041_; lean_object* v___x_10042_; 
v_a_10038_ = lean_array_uget_borrowed(v_as_10029_, v_i_10031_);
v_ref_10039_ = lean_ctor_get(v_a_10038_, 0);
v_patterns_10040_ = lean_ctor_get(v_a_10038_, 2);
v_rhs_10041_ = lean_ctor_get(v_a_10038_, 3);
lean_inc_ref(v___y_10034_);
lean_inc_ref(v___y_10033_);
lean_inc(v_rhs_10041_);
v___x_10042_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_rhs_10041_, v___y_10033_, v___y_10034_, v___y_10035_);
if (lean_obj_tag(v___x_10042_) == 0)
{
lean_object* v_a_10043_; lean_object* v_a_10044_; lean_object* v___x_10045_; lean_object* v___x_10046_; uint8_t v___x_10047_; lean_object* v___x_10048_; lean_object* v___x_10049_; lean_object* v___x_10050_; lean_object* v___x_10051_; lean_object* v___x_10052_; lean_object* v___x_10053_; lean_object* v___x_10054_; lean_object* v___x_10055_; lean_object* v___x_10056_; lean_object* v___x_10057_; lean_object* v___x_10058_; lean_object* v___x_10059_; lean_object* v___x_10060_; lean_object* v___x_10061_; lean_object* v___x_10062_; lean_object* v___x_10063_; lean_object* v___x_10064_; size_t v___x_10065_; size_t v___x_10066_; 
v_a_10043_ = lean_ctor_get(v___x_10042_, 0);
lean_inc(v_a_10043_);
v_a_10044_ = lean_ctor_get(v___x_10042_, 1);
lean_inc(v_a_10044_);
lean_dec_ref(v___x_10042_);
v___x_10045_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_10046_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
v___x_10047_ = 0;
v___x_10048_ = l_Lean_mkAtomFrom(v_ref_10039_, v___x_10046_, v___x_10047_);
v___x_10049_ = lean_unsigned_to_nat(1u);
v___x_10050_ = lean_mk_empty_array_with_capacity(v___x_10049_);
lean_inc(v_patterns_10040_);
v___x_10051_ = lean_array_push(v___x_10050_, v_patterns_10040_);
v___x_10052_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10053_ = lean_box(2);
v___x_10054_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10054_, 0, v___x_10053_);
lean_ctor_set(v___x_10054_, 1, v___x_10052_);
lean_ctor_set(v___x_10054_, 2, v___x_10051_);
v___x_10055_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
v___x_10056_ = l_Lean_mkAtomFrom(v_ref_10039_, v___x_10055_, v___x_10047_);
v___x_10057_ = lean_unsigned_to_nat(4u);
v___x_10058_ = lean_mk_empty_array_with_capacity(v___x_10057_);
v___x_10059_ = lean_array_push(v___x_10058_, v___x_10048_);
v___x_10060_ = lean_array_push(v___x_10059_, v___x_10054_);
v___x_10061_ = lean_array_push(v___x_10060_, v___x_10056_);
v___x_10062_ = lean_array_push(v___x_10061_, v_a_10043_);
v___x_10063_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10063_, 0, v___x_10053_);
lean_ctor_set(v___x_10063_, 1, v___x_10045_);
lean_ctor_set(v___x_10063_, 2, v___x_10062_);
v___x_10064_ = lean_array_push(v_b_10032_, v___x_10063_);
v___x_10065_ = ((size_t)1ULL);
v___x_10066_ = lean_usize_add(v_i_10031_, v___x_10065_);
v_i_10031_ = v___x_10066_;
v_b_10032_ = v___x_10064_;
v___y_10035_ = v_a_10044_;
goto _start;
}
else
{
lean_object* v_a_10068_; lean_object* v_a_10069_; lean_object* v___x_10070_; 
lean_dec_ref(v___y_10034_);
lean_dec_ref(v___y_10033_);
lean_dec_ref(v_b_10032_);
v_a_10068_ = lean_ctor_get(v___x_10042_, 0);
lean_inc(v_a_10068_);
v_a_10069_ = lean_ctor_get(v___x_10042_, 1);
lean_inc(v_a_10069_);
lean_dec_ref(v___x_10042_);
v___x_10070_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10070_, 0, v_a_10068_);
lean_ctor_set(v___x_10070_, 1, v_a_10069_);
return v___x_10070_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1(lean_object* v_as_10080_, size_t v_sz_10081_, size_t v_i_10082_, lean_object* v_b_10083_, lean_object* v___y_10084_, lean_object* v___y_10085_, lean_object* v___y_10086_){
_start:
{
uint8_t v___x_10087_; 
v___x_10087_ = lean_usize_dec_lt(v_i_10082_, v_sz_10081_);
if (v___x_10087_ == 0)
{
lean_object* v___x_10088_; 
lean_dec_ref(v___y_10085_);
lean_dec_ref(v___y_10084_);
v___x_10088_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10088_, 0, v_b_10083_);
lean_ctor_set(v___x_10088_, 1, v___y_10086_);
return v___x_10088_;
}
else
{
lean_object* v_a_10089_; lean_object* v_ref_10090_; lean_object* v_var_x3f_10091_; lean_object* v_funName_10092_; lean_object* v_pvars_10093_; lean_object* v_rhs_10094_; lean_object* v___x_10095_; 
v_a_10089_ = lean_array_uget_borrowed(v_as_10080_, v_i_10082_);
v_ref_10090_ = lean_ctor_get(v_a_10089_, 0);
v_var_x3f_10091_ = lean_ctor_get(v_a_10089_, 1);
v_funName_10092_ = lean_ctor_get(v_a_10089_, 2);
v_pvars_10093_ = lean_ctor_get(v_a_10089_, 3);
v_rhs_10094_ = lean_ctor_get(v_a_10089_, 4);
lean_inc_ref(v___y_10085_);
lean_inc_ref(v___y_10084_);
lean_inc(v_rhs_10094_);
v___x_10095_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_rhs_10094_, v___y_10084_, v___y_10085_, v___y_10086_);
if (lean_obj_tag(v___x_10095_) == 0)
{
lean_object* v_a_10096_; lean_object* v_a_10097_; lean_object* v_quotContext_10098_; lean_object* v_currMacroScope_10099_; lean_object* v_ref_10100_; uint8_t v___x_10101_; lean_object* v___x_10102_; lean_object* v___x_10103_; lean_object* v___x_10104_; lean_object* v___x_10105_; lean_object* v___x_10106_; lean_object* v___x_10107_; lean_object* v___x_10108_; lean_object* v___x_10109_; lean_object* v___x_10110_; lean_object* v___x_10111_; lean_object* v___x_10112_; lean_object* v___x_10113_; lean_object* v_m_10114_; lean_object* v___x_10115_; lean_object* v___x_10116_; lean_object* v___x_10117_; lean_object* v___x_10118_; lean_object* v___x_10119_; lean_object* v___x_10120_; lean_object* v___x_10121_; lean_object* v___x_10122_; lean_object* v___x_10123_; lean_object* v___x_10124_; lean_object* v___x_10125_; lean_object* v___x_10126_; lean_object* v___x_10127_; lean_object* v___x_10128_; lean_object* v___x_10129_; lean_object* v___y_10131_; 
v_a_10096_ = lean_ctor_get(v___x_10095_, 0);
lean_inc(v_a_10096_);
v_a_10097_ = lean_ctor_get(v___x_10095_, 1);
lean_inc(v_a_10097_);
lean_dec_ref(v___x_10095_);
v_quotContext_10098_ = lean_ctor_get(v___y_10085_, 1);
v_currMacroScope_10099_ = lean_ctor_get(v___y_10085_, 2);
v_ref_10100_ = lean_ctor_get(v___y_10085_, 5);
v___x_10101_ = 0;
v___x_10102_ = l_Lean_SourceInfo_fromRef(v_ref_10100_, v___x_10101_);
v___x_10103_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_10104_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_10105_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_10102_);
v___x_10106_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10106_, 0, v___x_10102_);
lean_ctor_set(v___x_10106_, 1, v___x_10105_);
v___x_10107_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_10108_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_10109_ = lean_box(0);
lean_inc(v_currMacroScope_10099_);
lean_inc(v_quotContext_10098_);
v___x_10110_ = l_Lean_addMacroScope(v_quotContext_10098_, v___x_10109_, v_currMacroScope_10099_);
v___x_10111_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6));
lean_inc(v___x_10102_);
v___x_10112_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10112_, 0, v___x_10102_);
lean_ctor_set(v___x_10112_, 1, v___x_10108_);
lean_ctor_set(v___x_10112_, 2, v___x_10110_);
lean_ctor_set(v___x_10112_, 3, v___x_10111_);
lean_inc(v___x_10102_);
v___x_10113_ = l_Lean_Syntax_node1(v___x_10102_, v___x_10107_, v___x_10112_);
v_m_10114_ = lean_ctor_get(v___y_10084_, 0);
lean_inc(v___x_10102_);
v___x_10115_ = l_Lean_Syntax_node2(v___x_10102_, v___x_10104_, v___x_10106_, v___x_10113_);
v___x_10116_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_10102_);
v___x_10117_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10117_, 0, v___x_10102_);
lean_ctor_set(v___x_10117_, 1, v___x_10116_);
v___x_10118_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10119_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_10120_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_10121_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_10102_);
v___x_10122_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10122_, 0, v___x_10102_);
lean_ctor_set(v___x_10122_, 1, v___x_10121_);
lean_inc(v___x_10102_);
v___x_10123_ = l_Lean_Syntax_node1(v___x_10102_, v___x_10120_, v___x_10122_);
lean_inc(v___x_10102_);
v___x_10124_ = l_Lean_Syntax_node1(v___x_10102_, v___x_10118_, v___x_10123_);
lean_inc(v_m_10114_);
lean_inc(v___x_10102_);
v___x_10125_ = l_Lean_Syntax_node2(v___x_10102_, v___x_10119_, v_m_10114_, v___x_10124_);
lean_inc(v___x_10102_);
v___x_10126_ = l_Lean_Syntax_node1(v___x_10102_, v___x_10118_, v___x_10125_);
v___x_10127_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_10102_);
v___x_10128_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10128_, 0, v___x_10102_);
lean_ctor_set(v___x_10128_, 1, v___x_10127_);
v___x_10129_ = l_Lean_Syntax_node5(v___x_10102_, v___x_10103_, v___x_10115_, v_a_10096_, v___x_10117_, v___x_10126_, v___x_10128_);
if (lean_obj_tag(v_var_x3f_10091_) == 1)
{
lean_object* v_val_10157_; lean_object* v___x_10158_; lean_object* v___x_10159_; lean_object* v___x_10160_; lean_object* v___x_10161_; lean_object* v___x_10162_; lean_object* v___x_10163_; lean_object* v___x_10164_; lean_object* v___x_10165_; 
v_val_10157_ = lean_ctor_get(v_var_x3f_10091_, 0);
v___x_10158_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2));
v___x_10159_ = l_Lean_mkAtomFrom(v_val_10157_, v___x_10158_, v___x_10101_);
v___x_10160_ = lean_unsigned_to_nat(2u);
v___x_10161_ = lean_mk_empty_array_with_capacity(v___x_10160_);
lean_inc(v_val_10157_);
v___x_10162_ = lean_array_push(v___x_10161_, v_val_10157_);
v___x_10163_ = lean_array_push(v___x_10162_, v___x_10159_);
v___x_10164_ = lean_box(2);
v___x_10165_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10165_, 0, v___x_10164_);
lean_ctor_set(v___x_10165_, 1, v___x_10118_);
lean_ctor_set(v___x_10165_, 2, v___x_10163_);
v___y_10131_ = v___x_10165_;
goto v___jp_10130_;
}
else
{
lean_object* v___x_10166_; 
v___x_10166_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___closed__0));
v___y_10131_ = v___x_10166_;
goto v___jp_10130_;
}
v___jp_10130_:
{
lean_object* v___x_10132_; lean_object* v___x_10133_; lean_object* v___x_10134_; lean_object* v___x_10135_; lean_object* v___x_10136_; lean_object* v___x_10137_; lean_object* v___x_10138_; lean_object* v___x_10139_; lean_object* v___x_10140_; lean_object* v___x_10141_; lean_object* v___x_10142_; lean_object* v___x_10143_; lean_object* v___x_10144_; lean_object* v___x_10145_; lean_object* v___x_10146_; lean_object* v___x_10147_; lean_object* v___x_10148_; lean_object* v___x_10149_; lean_object* v___x_10150_; lean_object* v___x_10151_; lean_object* v___x_10152_; lean_object* v___x_10153_; size_t v___x_10154_; size_t v___x_10155_; 
v___x_10132_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__5));
v___x_10133_ = lean_box(2);
lean_inc_ref(v_pvars_10093_);
v___x_10134_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10134_, 0, v___x_10133_);
lean_ctor_set(v___x_10134_, 1, v___x_10118_);
lean_ctor_set(v___x_10134_, 2, v_pvars_10093_);
v___x_10135_ = lean_unsigned_to_nat(3u);
v___x_10136_ = lean_mk_empty_array_with_capacity(v___x_10135_);
v___x_10137_ = lean_array_push(v___x_10136_, v___y_10131_);
lean_inc(v_funName_10092_);
v___x_10138_ = lean_array_push(v___x_10137_, v_funName_10092_);
v___x_10139_ = lean_array_push(v___x_10138_, v___x_10134_);
v___x_10140_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10140_, 0, v___x_10133_);
lean_ctor_set(v___x_10140_, 1, v___x_10132_);
lean_ctor_set(v___x_10140_, 2, v___x_10139_);
v___x_10141_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__12));
v___x_10142_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
v___x_10143_ = l_Lean_mkAtomFrom(v_ref_10090_, v___x_10142_, v___x_10101_);
v___x_10144_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
v___x_10145_ = l_Lean_mkAtomFrom(v_ref_10090_, v___x_10144_, v___x_10101_);
v___x_10146_ = lean_unsigned_to_nat(4u);
v___x_10147_ = lean_mk_empty_array_with_capacity(v___x_10146_);
v___x_10148_ = lean_array_push(v___x_10147_, v___x_10143_);
v___x_10149_ = lean_array_push(v___x_10148_, v___x_10140_);
v___x_10150_ = lean_array_push(v___x_10149_, v___x_10145_);
v___x_10151_ = lean_array_push(v___x_10150_, v___x_10129_);
v___x_10152_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10152_, 0, v___x_10133_);
lean_ctor_set(v___x_10152_, 1, v___x_10141_);
lean_ctor_set(v___x_10152_, 2, v___x_10151_);
v___x_10153_ = lean_array_push(v_b_10083_, v___x_10152_);
v___x_10154_ = ((size_t)1ULL);
v___x_10155_ = lean_usize_add(v_i_10082_, v___x_10154_);
v_i_10082_ = v___x_10155_;
v_b_10083_ = v___x_10153_;
v___y_10086_ = v_a_10097_;
goto _start;
}
}
else
{
lean_object* v_a_10167_; lean_object* v_a_10168_; lean_object* v___x_10169_; 
lean_dec_ref(v___y_10085_);
lean_dec_ref(v___y_10084_);
lean_dec_ref(v_b_10083_);
v_a_10167_ = lean_ctor_get(v___x_10095_, 0);
lean_inc(v_a_10167_);
v_a_10168_ = lean_ctor_get(v___x_10095_, 1);
lean_inc(v_a_10168_);
lean_dec_ref(v___x_10095_);
v___x_10169_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10169_, 0, v_a_10167_);
lean_ctor_set(v___x_10169_, 1, v_a_10168_);
return v___x_10169_;
}
}
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2(void){
_start:
{
lean_object* v___x_10171_; lean_object* v___x_10172_; 
v___x_10171_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__1));
v___x_10172_ = l_String_toRawSubstring_x27(v___x_10171_);
return v___x_10172_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7(void){
_start:
{
lean_object* v___x_10182_; lean_object* v___x_10183_; 
v___x_10182_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__6));
v___x_10183_ = l_String_toRawSubstring_x27(v___x_10182_);
return v___x_10183_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go(lean_object* v_c_10196_, lean_object* v_a_10197_, lean_object* v_a_10198_, lean_object* v_a_10199_){
_start:
{
switch(lean_obj_tag(v_c_10196_))
{
case 0:
{
lean_object* v_doElem_10200_; lean_object* v_k_10201_; lean_object* v___x_10202_; 
v_doElem_10200_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_doElem_10200_);
v_k_10201_ = lean_ctor_get(v_c_10196_, 2);
lean_inc_ref(v_k_10201_);
lean_dec_ref(v_c_10196_);
lean_inc_ref(v_a_10198_);
lean_inc_ref(v_a_10197_);
v___x_10202_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_k_10201_, v_a_10197_, v_a_10198_, v_a_10199_);
if (lean_obj_tag(v___x_10202_) == 0)
{
lean_object* v_a_10203_; lean_object* v_a_10204_; lean_object* v___x_10205_; 
v_a_10203_ = lean_ctor_get(v___x_10202_, 0);
lean_inc(v_a_10203_);
v_a_10204_ = lean_ctor_get(v___x_10202_, 1);
lean_inc(v_a_10204_);
lean_dec_ref(v___x_10202_);
v___x_10205_ = l_Lean_Elab_Term_Do_ToTerm_declToTerm(v_doElem_10200_, v_a_10203_, v_a_10197_, v_a_10198_, v_a_10204_);
return v___x_10205_;
}
else
{
lean_dec(v_doElem_10200_);
lean_dec_ref(v_a_10198_);
lean_dec_ref(v_a_10197_);
return v___x_10202_;
}
}
case 1:
{
lean_object* v_doElem_10206_; lean_object* v_k_10207_; lean_object* v___x_10208_; 
v_doElem_10206_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_doElem_10206_);
v_k_10207_ = lean_ctor_get(v_c_10196_, 2);
lean_inc_ref(v_k_10207_);
lean_dec_ref(v_c_10196_);
lean_inc_ref(v_a_10198_);
v___x_10208_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_k_10207_, v_a_10197_, v_a_10198_, v_a_10199_);
if (lean_obj_tag(v___x_10208_) == 0)
{
lean_object* v_a_10209_; lean_object* v_a_10210_; lean_object* v___x_10211_; 
v_a_10209_ = lean_ctor_get(v___x_10208_, 0);
lean_inc(v_a_10209_);
v_a_10210_ = lean_ctor_get(v___x_10208_, 1);
lean_inc(v_a_10210_);
lean_dec_ref(v___x_10208_);
v___x_10211_ = l_Lean_Elab_Term_Do_ToTerm_reassignToTerm(v_doElem_10206_, v_a_10209_, v_a_10198_, v_a_10210_);
lean_dec(v_a_10210_);
lean_dec_ref(v_a_10198_);
return v___x_10211_;
}
else
{
lean_dec(v_doElem_10206_);
lean_dec_ref(v_a_10198_);
return v___x_10208_;
}
}
case 2:
{
lean_object* v_name_10212_; lean_object* v_params_10213_; lean_object* v_body_10214_; lean_object* v_k_10215_; lean_object* v___x_10216_; 
v_name_10212_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_name_10212_);
v_params_10213_ = lean_ctor_get(v_c_10196_, 1);
lean_inc_ref(v_params_10213_);
v_body_10214_ = lean_ctor_get(v_c_10196_, 2);
lean_inc_ref(v_body_10214_);
v_k_10215_ = lean_ctor_get(v_c_10196_, 3);
lean_inc_ref(v_k_10215_);
lean_dec_ref(v_c_10196_);
lean_inc_ref(v_a_10198_);
lean_inc_ref(v_a_10197_);
v___x_10216_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_body_10214_, v_a_10197_, v_a_10198_, v_a_10199_);
if (lean_obj_tag(v___x_10216_) == 0)
{
lean_object* v_a_10217_; lean_object* v_a_10218_; lean_object* v___x_10219_; 
v_a_10217_ = lean_ctor_get(v___x_10216_, 0);
lean_inc(v_a_10217_);
v_a_10218_ = lean_ctor_get(v___x_10216_, 1);
lean_inc(v_a_10218_);
lean_dec_ref(v___x_10216_);
lean_inc_ref(v_a_10198_);
lean_inc_ref(v_a_10197_);
v___x_10219_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_k_10215_, v_a_10197_, v_a_10198_, v_a_10218_);
if (lean_obj_tag(v___x_10219_) == 0)
{
lean_object* v_a_10220_; lean_object* v_a_10221_; lean_object* v___x_10222_; 
v_a_10220_ = lean_ctor_get(v___x_10219_, 0);
lean_inc(v_a_10220_);
v_a_10221_ = lean_ctor_get(v___x_10219_, 1);
lean_inc(v_a_10221_);
lean_dec_ref(v___x_10219_);
v___x_10222_ = l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint(v_name_10212_, v_params_10213_, v_a_10217_, v_a_10220_, v_a_10197_, v_a_10198_, v_a_10221_);
lean_dec(v_a_10221_);
lean_dec_ref(v_a_10198_);
return v___x_10222_;
}
else
{
lean_dec(v_a_10217_);
lean_dec_ref(v_params_10213_);
lean_dec(v_name_10212_);
lean_dec_ref(v_a_10198_);
lean_dec_ref(v_a_10197_);
return v___x_10219_;
}
}
else
{
lean_dec_ref(v_k_10215_);
lean_dec_ref(v_params_10213_);
lean_dec(v_name_10212_);
lean_dec_ref(v_a_10198_);
lean_dec_ref(v_a_10197_);
return v___x_10216_;
}
}
case 3:
{
lean_object* v_action_10223_; lean_object* v_k_10224_; lean_object* v___x_10225_; 
v_action_10223_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_action_10223_);
v_k_10224_ = lean_ctor_get(v_c_10196_, 1);
lean_inc_ref(v_k_10224_);
lean_dec_ref(v_c_10196_);
lean_inc_ref(v_a_10198_);
lean_inc_ref(v_a_10197_);
v___x_10225_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_k_10224_, v_a_10197_, v_a_10198_, v_a_10199_);
if (lean_obj_tag(v___x_10225_) == 0)
{
lean_object* v_a_10226_; lean_object* v_a_10227_; lean_object* v___x_10228_; 
v_a_10226_ = lean_ctor_get(v___x_10225_, 0);
lean_inc(v_a_10226_);
v_a_10227_ = lean_ctor_get(v___x_10225_, 1);
lean_inc(v_a_10227_);
lean_dec_ref(v___x_10225_);
v___x_10228_ = l_Lean_Elab_Term_Do_ToTerm_seqToTerm(v_action_10223_, v_a_10226_, v_a_10197_, v_a_10198_, v_a_10227_);
return v___x_10228_;
}
else
{
lean_dec(v_action_10223_);
lean_dec_ref(v_a_10198_);
lean_dec_ref(v_a_10197_);
return v___x_10225_;
}
}
case 4:
{
lean_object* v_action_10229_; lean_object* v___x_10230_; 
v_action_10229_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_action_10229_);
lean_dec_ref(v_c_10196_);
v___x_10230_ = l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm(v_action_10229_, v_a_10197_, v_a_10198_, v_a_10199_);
return v___x_10230_;
}
case 5:
{
lean_object* v_ref_10231_; lean_object* v_methods_10232_; lean_object* v_quotContext_10233_; lean_object* v_currMacroScope_10234_; lean_object* v_currRecDepth_10235_; lean_object* v_maxRecDepth_10236_; lean_object* v_ref_10237_; lean_object* v_ref_10238_; lean_object* v___x_10239_; lean_object* v___x_10240_; 
v_ref_10231_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10231_);
lean_dec_ref(v_c_10196_);
v_methods_10232_ = lean_ctor_get(v_a_10198_, 0);
lean_inc(v_methods_10232_);
v_quotContext_10233_ = lean_ctor_get(v_a_10198_, 1);
lean_inc(v_quotContext_10233_);
v_currMacroScope_10234_ = lean_ctor_get(v_a_10198_, 2);
lean_inc(v_currMacroScope_10234_);
v_currRecDepth_10235_ = lean_ctor_get(v_a_10198_, 3);
lean_inc(v_currRecDepth_10235_);
v_maxRecDepth_10236_ = lean_ctor_get(v_a_10198_, 4);
lean_inc(v_maxRecDepth_10236_);
v_ref_10237_ = lean_ctor_get(v_a_10198_, 5);
lean_inc(v_ref_10237_);
lean_dec_ref(v_a_10198_);
v_ref_10238_ = l_Lean_replaceRef(v_ref_10231_, v_ref_10237_);
lean_dec(v_ref_10237_);
lean_dec(v_ref_10231_);
v___x_10239_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_10239_, 0, v_methods_10232_);
lean_ctor_set(v___x_10239_, 1, v_quotContext_10233_);
lean_ctor_set(v___x_10239_, 2, v_currMacroScope_10234_);
lean_ctor_set(v___x_10239_, 3, v_currRecDepth_10235_);
lean_ctor_set(v___x_10239_, 4, v_maxRecDepth_10236_);
lean_ctor_set(v___x_10239_, 5, v_ref_10238_);
v___x_10240_ = l_Lean_Elab_Term_Do_ToTerm_breakToTerm(v_a_10197_, v___x_10239_, v_a_10199_);
return v___x_10240_;
}
case 6:
{
lean_object* v_ref_10241_; lean_object* v_methods_10242_; lean_object* v_quotContext_10243_; lean_object* v_currMacroScope_10244_; lean_object* v_currRecDepth_10245_; lean_object* v_maxRecDepth_10246_; lean_object* v_ref_10247_; lean_object* v_ref_10248_; lean_object* v___x_10249_; lean_object* v___x_10250_; 
v_ref_10241_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10241_);
lean_dec_ref(v_c_10196_);
v_methods_10242_ = lean_ctor_get(v_a_10198_, 0);
lean_inc(v_methods_10242_);
v_quotContext_10243_ = lean_ctor_get(v_a_10198_, 1);
lean_inc(v_quotContext_10243_);
v_currMacroScope_10244_ = lean_ctor_get(v_a_10198_, 2);
lean_inc(v_currMacroScope_10244_);
v_currRecDepth_10245_ = lean_ctor_get(v_a_10198_, 3);
lean_inc(v_currRecDepth_10245_);
v_maxRecDepth_10246_ = lean_ctor_get(v_a_10198_, 4);
lean_inc(v_maxRecDepth_10246_);
v_ref_10247_ = lean_ctor_get(v_a_10198_, 5);
lean_inc(v_ref_10247_);
lean_dec_ref(v_a_10198_);
v_ref_10248_ = l_Lean_replaceRef(v_ref_10241_, v_ref_10247_);
lean_dec(v_ref_10247_);
lean_dec(v_ref_10241_);
v___x_10249_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_10249_, 0, v_methods_10242_);
lean_ctor_set(v___x_10249_, 1, v_quotContext_10243_);
lean_ctor_set(v___x_10249_, 2, v_currMacroScope_10244_);
lean_ctor_set(v___x_10249_, 3, v_currRecDepth_10245_);
lean_ctor_set(v___x_10249_, 4, v_maxRecDepth_10246_);
lean_ctor_set(v___x_10249_, 5, v_ref_10248_);
v___x_10250_ = l_Lean_Elab_Term_Do_ToTerm_continueToTerm(v_a_10197_, v___x_10249_, v_a_10199_);
return v___x_10250_;
}
case 7:
{
lean_object* v_ref_10251_; lean_object* v_val_10252_; lean_object* v_methods_10253_; lean_object* v_quotContext_10254_; lean_object* v_currMacroScope_10255_; lean_object* v_currRecDepth_10256_; lean_object* v_maxRecDepth_10257_; lean_object* v_ref_10258_; lean_object* v_ref_10259_; lean_object* v___x_10260_; lean_object* v___x_10261_; 
v_ref_10251_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10251_);
v_val_10252_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_val_10252_);
lean_dec_ref(v_c_10196_);
v_methods_10253_ = lean_ctor_get(v_a_10198_, 0);
lean_inc(v_methods_10253_);
v_quotContext_10254_ = lean_ctor_get(v_a_10198_, 1);
lean_inc(v_quotContext_10254_);
v_currMacroScope_10255_ = lean_ctor_get(v_a_10198_, 2);
lean_inc(v_currMacroScope_10255_);
v_currRecDepth_10256_ = lean_ctor_get(v_a_10198_, 3);
lean_inc(v_currRecDepth_10256_);
v_maxRecDepth_10257_ = lean_ctor_get(v_a_10198_, 4);
lean_inc(v_maxRecDepth_10257_);
v_ref_10258_ = lean_ctor_get(v_a_10198_, 5);
lean_inc(v_ref_10258_);
lean_dec_ref(v_a_10198_);
v_ref_10259_ = l_Lean_replaceRef(v_ref_10251_, v_ref_10258_);
lean_dec(v_ref_10258_);
lean_dec(v_ref_10251_);
v___x_10260_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_10260_, 0, v_methods_10253_);
lean_ctor_set(v___x_10260_, 1, v_quotContext_10254_);
lean_ctor_set(v___x_10260_, 2, v_currMacroScope_10255_);
lean_ctor_set(v___x_10260_, 3, v_currRecDepth_10256_);
lean_ctor_set(v___x_10260_, 4, v_maxRecDepth_10257_);
lean_ctor_set(v___x_10260_, 5, v_ref_10259_);
v___x_10261_ = l_Lean_Elab_Term_Do_ToTerm_returnToTerm(v_val_10252_, v_a_10197_, v___x_10260_, v_a_10199_);
return v___x_10261_;
}
case 8:
{
lean_object* v_ref_10262_; lean_object* v_optIdent_10263_; lean_object* v_cond_10264_; lean_object* v_thenBranch_10265_; lean_object* v_elseBranch_10266_; lean_object* v_methods_10267_; lean_object* v_quotContext_10268_; lean_object* v_currMacroScope_10269_; lean_object* v_currRecDepth_10270_; lean_object* v_maxRecDepth_10271_; lean_object* v_ref_10272_; lean_object* v_ref_10273_; lean_object* v___x_10274_; lean_object* v___x_10275_; 
v_ref_10262_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10262_);
v_optIdent_10263_ = lean_ctor_get(v_c_10196_, 2);
lean_inc(v_optIdent_10263_);
v_cond_10264_ = lean_ctor_get(v_c_10196_, 3);
lean_inc(v_cond_10264_);
v_thenBranch_10265_ = lean_ctor_get(v_c_10196_, 4);
lean_inc_ref(v_thenBranch_10265_);
v_elseBranch_10266_ = lean_ctor_get(v_c_10196_, 5);
lean_inc_ref(v_elseBranch_10266_);
lean_dec_ref(v_c_10196_);
v_methods_10267_ = lean_ctor_get(v_a_10198_, 0);
lean_inc(v_methods_10267_);
v_quotContext_10268_ = lean_ctor_get(v_a_10198_, 1);
lean_inc(v_quotContext_10268_);
v_currMacroScope_10269_ = lean_ctor_get(v_a_10198_, 2);
lean_inc(v_currMacroScope_10269_);
v_currRecDepth_10270_ = lean_ctor_get(v_a_10198_, 3);
lean_inc(v_currRecDepth_10270_);
v_maxRecDepth_10271_ = lean_ctor_get(v_a_10198_, 4);
lean_inc(v_maxRecDepth_10271_);
v_ref_10272_ = lean_ctor_get(v_a_10198_, 5);
lean_inc(v_ref_10272_);
lean_dec_ref(v_a_10198_);
v_ref_10273_ = l_Lean_replaceRef(v_ref_10262_, v_ref_10272_);
lean_dec(v_ref_10272_);
lean_dec(v_ref_10262_);
v___x_10274_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_10274_, 0, v_methods_10267_);
lean_ctor_set(v___x_10274_, 1, v_quotContext_10268_);
lean_ctor_set(v___x_10274_, 2, v_currMacroScope_10269_);
lean_ctor_set(v___x_10274_, 3, v_currRecDepth_10270_);
lean_ctor_set(v___x_10274_, 4, v_maxRecDepth_10271_);
lean_ctor_set(v___x_10274_, 5, v_ref_10273_);
lean_inc_ref(v___x_10274_);
lean_inc_ref(v_a_10197_);
v___x_10275_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_thenBranch_10265_, v_a_10197_, v___x_10274_, v_a_10199_);
if (lean_obj_tag(v___x_10275_) == 0)
{
lean_object* v_a_10276_; lean_object* v_a_10277_; lean_object* v___x_10278_; 
v_a_10276_ = lean_ctor_get(v___x_10275_, 0);
lean_inc(v_a_10276_);
v_a_10277_ = lean_ctor_get(v___x_10275_, 1);
lean_inc(v_a_10277_);
lean_dec_ref(v___x_10275_);
lean_inc_ref(v___x_10274_);
v___x_10278_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_elseBranch_10266_, v_a_10197_, v___x_10274_, v_a_10277_);
if (lean_obj_tag(v___x_10278_) == 0)
{
lean_object* v_a_10279_; lean_object* v_a_10280_; lean_object* v___x_10281_; 
v_a_10279_ = lean_ctor_get(v___x_10278_, 0);
lean_inc(v_a_10279_);
v_a_10280_ = lean_ctor_get(v___x_10278_, 1);
lean_inc(v_a_10280_);
lean_dec_ref(v___x_10278_);
v___x_10281_ = l_Lean_Elab_Term_Do_ToTerm_mkIte(v_optIdent_10263_, v_cond_10264_, v_a_10276_, v_a_10279_, v___x_10274_, v_a_10280_);
lean_dec_ref(v___x_10274_);
lean_dec(v_optIdent_10263_);
return v___x_10281_;
}
else
{
lean_dec(v_a_10276_);
lean_dec_ref(v___x_10274_);
lean_dec(v_cond_10264_);
lean_dec(v_optIdent_10263_);
return v___x_10278_;
}
}
else
{
lean_dec_ref(v___x_10274_);
lean_dec_ref(v_elseBranch_10266_);
lean_dec(v_cond_10264_);
lean_dec(v_optIdent_10263_);
lean_dec_ref(v_a_10197_);
return v___x_10275_;
}
}
case 9:
{
lean_object* v_ref_10282_; lean_object* v_gen_10283_; lean_object* v_discrs_10284_; lean_object* v_optMotive_10285_; lean_object* v_alts_10286_; lean_object* v_termAlts_10287_; size_t v_sz_10288_; size_t v___x_10289_; lean_object* v___x_10290_; 
v_ref_10282_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10282_);
v_gen_10283_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_gen_10283_);
v_discrs_10284_ = lean_ctor_get(v_c_10196_, 2);
lean_inc(v_discrs_10284_);
v_optMotive_10285_ = lean_ctor_get(v_c_10196_, 3);
lean_inc(v_optMotive_10285_);
v_alts_10286_ = lean_ctor_get(v_c_10196_, 4);
lean_inc_ref(v_alts_10286_);
lean_dec_ref(v_c_10196_);
v_termAlts_10287_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v_sz_10288_ = lean_array_size(v_alts_10286_);
v___x_10289_ = ((size_t)0ULL);
v___x_10290_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0(v_alts_10286_, v_sz_10288_, v___x_10289_, v_termAlts_10287_, v_a_10197_, v_a_10198_, v_a_10199_);
lean_dec_ref(v_alts_10286_);
if (lean_obj_tag(v___x_10290_) == 0)
{
lean_object* v_a_10291_; lean_object* v_a_10292_; lean_object* v___x_10293_; lean_object* v___x_10294_; lean_object* v___x_10295_; lean_object* v___x_10296_; lean_object* v___x_10297_; lean_object* v___x_10298_; lean_object* v___x_10299_; lean_object* v___x_10300_; lean_object* v___x_10301_; lean_object* v___x_10302_; uint8_t v___x_10303_; lean_object* v___x_10304_; lean_object* v___x_10305_; lean_object* v___x_10306_; lean_object* v___x_10307_; lean_object* v___x_10308_; lean_object* v___x_10309_; lean_object* v___x_10310_; lean_object* v___x_10311_; lean_object* v___x_10312_; lean_object* v___x_10313_; lean_object* v___x_10314_; lean_object* v___x_10315_; lean_object* v___x_10316_; 
v_a_10291_ = lean_ctor_get(v___x_10290_, 0);
lean_inc(v_a_10291_);
v_a_10292_ = lean_ctor_get(v___x_10290_, 1);
lean_inc(v_a_10292_);
lean_dec_ref(v___x_10290_);
v___x_10293_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_10294_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10295_ = lean_box(2);
v___x_10296_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10296_, 0, v___x_10295_);
lean_ctor_set(v___x_10296_, 1, v___x_10294_);
lean_ctor_set(v___x_10296_, 2, v_a_10291_);
v___x_10297_ = lean_unsigned_to_nat(1u);
v___x_10298_ = lean_mk_empty_array_with_capacity(v___x_10297_);
v___x_10299_ = lean_array_push(v___x_10298_, v___x_10296_);
v___x_10300_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10300_, 0, v___x_10295_);
lean_ctor_set(v___x_10300_, 1, v___x_10293_);
lean_ctor_set(v___x_10300_, 2, v___x_10299_);
v___x_10301_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
v___x_10302_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__0));
v___x_10303_ = 0;
v___x_10304_ = l_Lean_mkAtomFrom(v_ref_10282_, v___x_10301_, v___x_10303_);
v___x_10305_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
v___x_10306_ = l_Lean_mkAtomFrom(v_ref_10282_, v___x_10305_, v___x_10303_);
lean_dec(v_ref_10282_);
v___x_10307_ = lean_unsigned_to_nat(6u);
v___x_10308_ = lean_mk_empty_array_with_capacity(v___x_10307_);
v___x_10309_ = lean_array_push(v___x_10308_, v___x_10304_);
v___x_10310_ = lean_array_push(v___x_10309_, v_gen_10283_);
v___x_10311_ = lean_array_push(v___x_10310_, v_optMotive_10285_);
v___x_10312_ = lean_array_push(v___x_10311_, v_discrs_10284_);
v___x_10313_ = lean_array_push(v___x_10312_, v___x_10306_);
v___x_10314_ = lean_array_push(v___x_10313_, v___x_10300_);
v___x_10315_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10315_, 0, v___x_10295_);
lean_ctor_set(v___x_10315_, 1, v___x_10302_);
lean_ctor_set(v___x_10315_, 2, v___x_10314_);
v___x_10316_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10316_, 0, v___x_10315_);
lean_ctor_set(v___x_10316_, 1, v_a_10292_);
return v___x_10316_;
}
else
{
lean_object* v_a_10317_; lean_object* v_a_10318_; lean_object* v___x_10319_; 
lean_dec(v_optMotive_10285_);
lean_dec(v_discrs_10284_);
lean_dec(v_gen_10283_);
lean_dec(v_ref_10282_);
v_a_10317_ = lean_ctor_get(v___x_10290_, 0);
lean_inc(v_a_10317_);
v_a_10318_ = lean_ctor_get(v___x_10290_, 1);
lean_inc(v_a_10318_);
lean_dec_ref(v___x_10290_);
v___x_10319_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10319_, 0, v_a_10317_);
lean_ctor_set(v___x_10319_, 1, v_a_10318_);
return v___x_10319_;
}
}
case 10:
{
lean_object* v_ref_10320_; uint8_t v_meta_10321_; lean_object* v_discr_10322_; lean_object* v_alts_10323_; lean_object* v_elseBranch_10324_; lean_object* v_macroScope_10325_; lean_object* v_traceMsgs_10326_; lean_object* v_expandedMacroDecls_10327_; lean_object* v_methods_10328_; lean_object* v_quotContext_10329_; lean_object* v_currRecDepth_10330_; lean_object* v_maxRecDepth_10331_; lean_object* v_ref_10332_; lean_object* v___x_10333_; lean_object* v___x_10334_; lean_object* v___x_10335_; lean_object* v___x_10336_; lean_object* v___x_10337_; 
v_ref_10320_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10320_);
v_meta_10321_ = lean_ctor_get_uint8(v_c_10196_, sizeof(void*)*4);
v_discr_10322_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_discr_10322_);
v_alts_10323_ = lean_ctor_get(v_c_10196_, 2);
lean_inc_ref(v_alts_10323_);
v_elseBranch_10324_ = lean_ctor_get(v_c_10196_, 3);
lean_inc_ref(v_elseBranch_10324_);
lean_dec_ref(v_c_10196_);
v_macroScope_10325_ = lean_ctor_get(v_a_10199_, 0);
lean_inc(v_macroScope_10325_);
v_traceMsgs_10326_ = lean_ctor_get(v_a_10199_, 1);
lean_inc(v_traceMsgs_10326_);
v_expandedMacroDecls_10327_ = lean_ctor_get(v_a_10199_, 2);
lean_inc(v_expandedMacroDecls_10327_);
lean_dec_ref(v_a_10199_);
v_methods_10328_ = lean_ctor_get(v_a_10198_, 0);
lean_inc(v_methods_10328_);
v_quotContext_10329_ = lean_ctor_get(v_a_10198_, 1);
lean_inc(v_quotContext_10329_);
v_currRecDepth_10330_ = lean_ctor_get(v_a_10198_, 3);
lean_inc(v_currRecDepth_10330_);
v_maxRecDepth_10331_ = lean_ctor_get(v_a_10198_, 4);
lean_inc(v_maxRecDepth_10331_);
v_ref_10332_ = lean_ctor_get(v_a_10198_, 5);
lean_inc(v_ref_10332_);
lean_dec_ref(v_a_10198_);
v___x_10333_ = lean_unsigned_to_nat(1u);
v___x_10334_ = lean_nat_add(v_macroScope_10325_, v___x_10333_);
v___x_10335_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_10335_, 0, v___x_10334_);
lean_ctor_set(v___x_10335_, 1, v_traceMsgs_10326_);
lean_ctor_set(v___x_10335_, 2, v_expandedMacroDecls_10327_);
lean_inc(v_ref_10332_);
lean_inc(v_macroScope_10325_);
lean_inc(v_quotContext_10329_);
v___x_10336_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_10336_, 0, v_methods_10328_);
lean_ctor_set(v___x_10336_, 1, v_quotContext_10329_);
lean_ctor_set(v___x_10336_, 2, v_macroScope_10325_);
lean_ctor_set(v___x_10336_, 3, v_currRecDepth_10330_);
lean_ctor_set(v___x_10336_, 4, v_maxRecDepth_10331_);
lean_ctor_set(v___x_10336_, 5, v_ref_10332_);
v___x_10337_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(v_ref_10332_, v_a_10197_, v___x_10336_, v___x_10335_);
if (lean_obj_tag(v___x_10337_) == 0)
{
lean_object* v_a_10338_; lean_object* v_a_10339_; lean_object* v___x_10340_; size_t v_sz_10341_; size_t v___x_10342_; lean_object* v___x_10343_; 
v_a_10338_ = lean_ctor_get(v___x_10337_, 0);
lean_inc(v_a_10338_);
v_a_10339_ = lean_ctor_get(v___x_10337_, 1);
lean_inc(v_a_10339_);
lean_dec_ref(v___x_10337_);
v___x_10340_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v_sz_10341_ = lean_array_size(v_alts_10323_);
v___x_10342_ = ((size_t)0ULL);
lean_inc_ref(v___x_10336_);
lean_inc_ref(v_a_10197_);
v___x_10343_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1(v_alts_10323_, v_sz_10341_, v___x_10342_, v___x_10340_, v_a_10197_, v___x_10336_, v_a_10339_);
lean_dec_ref(v_alts_10323_);
if (lean_obj_tag(v___x_10343_) == 0)
{
lean_object* v_a_10344_; lean_object* v_a_10345_; lean_object* v___x_10346_; 
v_a_10344_ = lean_ctor_get(v___x_10343_, 0);
lean_inc(v_a_10344_);
v_a_10345_ = lean_ctor_get(v___x_10343_, 1);
lean_inc(v_a_10345_);
lean_dec_ref(v___x_10343_);
lean_inc_ref(v___x_10336_);
lean_inc_ref(v_a_10197_);
v___x_10346_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_elseBranch_10324_, v_a_10197_, v___x_10336_, v_a_10345_);
if (lean_obj_tag(v___x_10346_) == 0)
{
lean_object* v_a_10347_; lean_object* v_a_10348_; lean_object* v___x_10349_; lean_object* v___x_10350_; lean_object* v___x_10351_; lean_object* v___x_10352_; lean_object* v___x_10353_; lean_object* v___x_10354_; lean_object* v___x_10355_; uint8_t v___x_10356_; lean_object* v___x_10357_; lean_object* v___x_10358_; lean_object* v___x_10359_; lean_object* v___x_10360_; lean_object* v___x_10361_; lean_object* v___x_10362_; lean_object* v___x_10363_; lean_object* v___x_10364_; lean_object* v___x_10365_; lean_object* v___x_10366_; lean_object* v___x_10367_; lean_object* v___x_10368_; lean_object* v___x_10369_; lean_object* v___x_10370_; lean_object* v___x_10371_; lean_object* v___x_10372_; lean_object* v___x_10373_; lean_object* v___x_10374_; lean_object* v___x_10375_; lean_object* v___x_10376_; lean_object* v___x_10377_; lean_object* v___x_10378_; lean_object* v___x_10379_; lean_object* v___x_10380_; lean_object* v___x_10381_; lean_object* v___x_10382_; lean_object* v___x_10383_; lean_object* v___x_10384_; lean_object* v___x_10385_; lean_object* v___x_10386_; 
v_a_10347_ = lean_ctor_get(v___x_10346_, 0);
lean_inc(v_a_10347_);
v_a_10348_ = lean_ctor_get(v___x_10346_, 1);
lean_inc(v_a_10348_);
lean_dec_ref(v___x_10346_);
v___x_10349_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__2);
v___x_10350_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__3));
lean_inc(v_macroScope_10325_);
lean_inc(v_quotContext_10329_);
v___x_10351_ = l_Lean_addMacroScope(v_quotContext_10329_, v___x_10350_, v_macroScope_10325_);
v___x_10352_ = lean_box(0);
lean_inc(v___x_10351_);
v___x_10353_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10353_, 0, v_a_10338_);
lean_ctor_set(v___x_10353_, 1, v___x_10349_);
lean_ctor_set(v___x_10353_, 2, v___x_10351_);
lean_ctor_set(v___x_10353_, 3, v___x_10352_);
v___x_10354_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__14));
v___x_10355_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
v___x_10356_ = 0;
v___x_10357_ = l_Lean_mkAtomFrom(v_ref_10320_, v___x_10355_, v___x_10356_);
v___x_10358_ = l_Lean_mkHole(v_ref_10320_, v___x_10356_);
v___x_10359_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
v___x_10360_ = l_Lean_mkAtomFrom(v_ref_10320_, v___x_10359_, v___x_10356_);
v___x_10361_ = lean_unsigned_to_nat(4u);
v___x_10362_ = lean_mk_empty_array_with_capacity(v___x_10361_);
lean_inc_ref(v___x_10362_);
v___x_10363_ = lean_array_push(v___x_10362_, v___x_10357_);
v___x_10364_ = lean_array_push(v___x_10363_, v___x_10358_);
v___x_10365_ = lean_array_push(v___x_10364_, v___x_10360_);
v___x_10366_ = lean_array_push(v___x_10365_, v_a_10347_);
v___x_10367_ = lean_box(2);
v___x_10368_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10368_, 0, v___x_10367_);
lean_ctor_set(v___x_10368_, 1, v___x_10354_);
lean_ctor_set(v___x_10368_, 2, v___x_10366_);
v___x_10369_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__10));
v___x_10370_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10371_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10371_, 0, v___x_10367_);
lean_ctor_set(v___x_10371_, 1, v___x_10370_);
lean_ctor_set(v___x_10371_, 2, v_a_10344_);
v___x_10372_ = lean_unsigned_to_nat(2u);
v___x_10373_ = lean_mk_empty_array_with_capacity(v___x_10372_);
v___x_10374_ = lean_array_push(v___x_10373_, v___x_10371_);
v___x_10375_ = lean_array_push(v___x_10374_, v___x_10368_);
v___x_10376_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10376_, 0, v___x_10367_);
lean_ctor_set(v___x_10376_, 1, v___x_10369_);
lean_ctor_set(v___x_10376_, 2, v___x_10375_);
v___x_10377_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__5));
v___x_10378_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__8));
v___x_10379_ = l_Lean_mkAtomFrom(v_ref_10320_, v___x_10378_, v___x_10356_);
v___x_10380_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
v___x_10381_ = l_Lean_mkAtomFrom(v_ref_10320_, v___x_10380_, v___x_10356_);
lean_dec(v_ref_10320_);
v___x_10382_ = lean_array_push(v___x_10362_, v___x_10379_);
v___x_10383_ = lean_array_push(v___x_10382_, v___x_10353_);
v___x_10384_ = lean_array_push(v___x_10383_, v___x_10381_);
v___x_10385_ = lean_array_push(v___x_10384_, v___x_10376_);
v___x_10386_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10386_, 0, v___x_10367_);
lean_ctor_set(v___x_10386_, 1, v___x_10377_);
lean_ctor_set(v___x_10386_, 2, v___x_10385_);
if (v_meta_10321_ == 0)
{
lean_object* v___x_10387_; 
lean_dec(v_quotContext_10329_);
lean_dec(v_macroScope_10325_);
v___x_10387_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(v_ref_10332_, v_a_10197_, v___x_10336_, v_a_10348_);
lean_dec_ref(v___x_10336_);
lean_dec_ref(v_a_10197_);
lean_dec(v_ref_10332_);
if (lean_obj_tag(v___x_10387_) == 0)
{
lean_object* v_a_10388_; lean_object* v_a_10389_; lean_object* v___x_10390_; lean_object* v___x_10391_; lean_object* v___x_10392_; lean_object* v___x_10393_; lean_object* v___x_10394_; lean_object* v___x_10395_; lean_object* v___x_10396_; lean_object* v___x_10397_; lean_object* v___x_10398_; lean_object* v___x_10399_; lean_object* v___x_10400_; lean_object* v___x_10401_; lean_object* v___x_10402_; lean_object* v___x_10403_; lean_object* v___x_10404_; lean_object* v___x_10405_; lean_object* v___x_10406_; lean_object* v___x_10407_; lean_object* v___x_10408_; lean_object* v___x_10409_; 
v_a_10388_ = lean_ctor_get(v___x_10387_, 0);
lean_inc(v_a_10388_);
v_a_10389_ = lean_ctor_get(v___x_10387_, 1);
lean_inc(v_a_10389_);
lean_dec_ref(v___x_10387_);
v___x_10390_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_10391_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v_a_10388_);
v___x_10392_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10392_, 0, v_a_10388_);
lean_ctor_set(v___x_10392_, 1, v___x_10390_);
v___x_10393_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
v___x_10394_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_10388_);
v___x_10395_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10395_, 0, v_a_10388_);
lean_ctor_set(v___x_10395_, 1, v___x_10370_);
lean_ctor_set(v___x_10395_, 2, v___x_10394_);
lean_inc_ref(v___x_10395_);
lean_inc(v_a_10388_);
v___x_10396_ = l_Lean_Syntax_node1(v_a_10388_, v___x_10393_, v___x_10395_);
v___x_10397_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_10398_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_10399_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v_a_10388_);
v___x_10400_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10400_, 0, v_a_10388_);
lean_ctor_set(v___x_10400_, 1, v___x_10349_);
lean_ctor_set(v___x_10400_, 2, v___x_10351_);
lean_ctor_set(v___x_10400_, 3, v___x_10352_);
lean_inc(v_a_10388_);
v___x_10401_ = l_Lean_Syntax_node1(v_a_10388_, v___x_10399_, v___x_10400_);
v___x_10402_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v_a_10388_);
v___x_10403_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10403_, 0, v_a_10388_);
lean_ctor_set(v___x_10403_, 1, v___x_10402_);
lean_inc_ref(v___x_10395_);
lean_inc(v_a_10388_);
v___x_10404_ = l_Lean_Syntax_node5(v_a_10388_, v___x_10398_, v___x_10401_, v___x_10395_, v___x_10395_, v___x_10403_, v_discr_10322_);
lean_inc(v_a_10388_);
v___x_10405_ = l_Lean_Syntax_node1(v_a_10388_, v___x_10397_, v___x_10404_);
v___x_10406_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v_a_10388_);
v___x_10407_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10407_, 0, v_a_10388_);
lean_ctor_set(v___x_10407_, 1, v___x_10406_);
v___x_10408_ = l_Lean_Syntax_node5(v_a_10388_, v___x_10391_, v___x_10392_, v___x_10396_, v___x_10405_, v___x_10407_, v___x_10386_);
v___x_10409_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10409_, 0, v___x_10408_);
lean_ctor_set(v___x_10409_, 1, v_a_10389_);
return v___x_10409_;
}
else
{
lean_object* v_a_10410_; lean_object* v_a_10411_; lean_object* v___x_10412_; 
lean_dec_ref(v___x_10386_);
lean_dec(v___x_10351_);
lean_dec(v_discr_10322_);
v_a_10410_ = lean_ctor_get(v___x_10387_, 0);
lean_inc(v_a_10410_);
v_a_10411_ = lean_ctor_get(v___x_10387_, 1);
lean_inc(v_a_10411_);
lean_dec_ref(v___x_10387_);
v___x_10412_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10412_, 0, v_a_10410_);
lean_ctor_set(v___x_10412_, 1, v_a_10411_);
return v___x_10412_;
}
}
else
{
lean_object* v___x_10413_; 
v___x_10413_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___lam__0(v_ref_10332_, v_a_10197_, v___x_10336_, v_a_10348_);
lean_dec_ref(v___x_10336_);
lean_dec_ref(v_a_10197_);
lean_dec(v_ref_10332_);
if (lean_obj_tag(v___x_10413_) == 0)
{
lean_object* v_a_10414_; lean_object* v_a_10415_; lean_object* v___x_10416_; lean_object* v___x_10417_; lean_object* v___x_10418_; lean_object* v___x_10419_; lean_object* v___x_10420_; lean_object* v___x_10421_; lean_object* v___x_10422_; lean_object* v___x_10423_; lean_object* v___x_10424_; lean_object* v___x_10425_; lean_object* v___x_10426_; lean_object* v___x_10427_; lean_object* v___x_10428_; lean_object* v___x_10429_; lean_object* v___x_10430_; lean_object* v___x_10431_; lean_object* v___x_10432_; lean_object* v___x_10433_; lean_object* v___x_10434_; lean_object* v___x_10435_; lean_object* v___x_10436_; lean_object* v___x_10437_; lean_object* v___x_10438_; lean_object* v___x_10439_; lean_object* v___x_10440_; lean_object* v___x_10441_; lean_object* v___x_10442_; lean_object* v___x_10443_; lean_object* v___x_10444_; lean_object* v___x_10445_; lean_object* v___x_10446_; lean_object* v___x_10447_; lean_object* v___x_10448_; lean_object* v___x_10449_; lean_object* v___x_10450_; lean_object* v___x_10451_; lean_object* v___x_10452_; lean_object* v___x_10453_; lean_object* v___x_10454_; lean_object* v___x_10455_; lean_object* v___x_10456_; lean_object* v___x_10457_; 
v_a_10414_ = lean_ctor_get(v___x_10413_, 0);
lean_inc(v_a_10414_);
v_a_10415_ = lean_ctor_get(v___x_10413_, 1);
lean_inc(v_a_10415_);
lean_dec_ref(v___x_10413_);
v___x_10416_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_10417_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1, &l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__1);
v___x_10418_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__3));
lean_inc(v_macroScope_10325_);
lean_inc(v_quotContext_10329_);
v___x_10419_ = l_Lean_addMacroScope(v_quotContext_10329_, v___x_10418_, v_macroScope_10325_);
v___x_10420_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__8));
lean_inc(v_a_10414_);
v___x_10421_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10421_, 0, v_a_10414_);
lean_ctor_set(v___x_10421_, 1, v___x_10417_);
lean_ctor_set(v___x_10421_, 2, v___x_10419_);
lean_ctor_set(v___x_10421_, 3, v___x_10420_);
v___x_10422_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_10423_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_10424_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v_a_10414_);
v___x_10425_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10425_, 0, v_a_10414_);
lean_ctor_set(v___x_10425_, 1, v___x_10424_);
v___x_10426_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_10427_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_10428_ = lean_box(0);
lean_inc(v_macroScope_10325_);
lean_inc(v_quotContext_10329_);
v___x_10429_ = l_Lean_addMacroScope(v_quotContext_10329_, v___x_10428_, v_macroScope_10325_);
v___x_10430_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__6));
lean_inc(v_a_10414_);
v___x_10431_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10431_, 0, v_a_10414_);
lean_ctor_set(v___x_10431_, 1, v___x_10427_);
lean_ctor_set(v___x_10431_, 2, v___x_10429_);
lean_ctor_set(v___x_10431_, 3, v___x_10430_);
lean_inc(v_a_10414_);
v___x_10432_ = l_Lean_Syntax_node1(v_a_10414_, v___x_10426_, v___x_10431_);
lean_inc(v_a_10414_);
v___x_10433_ = l_Lean_Syntax_node2(v_a_10414_, v___x_10423_, v___x_10425_, v___x_10432_);
v___x_10434_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__7);
v___x_10435_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__8));
v___x_10436_ = l_Lean_addMacroScope(v_quotContext_10329_, v___x_10435_, v_macroScope_10325_);
v___x_10437_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go___closed__11));
lean_inc(v_a_10414_);
v___x_10438_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10438_, 0, v_a_10414_);
lean_ctor_set(v___x_10438_, 1, v___x_10434_);
lean_ctor_set(v___x_10438_, 2, v___x_10436_);
lean_ctor_set(v___x_10438_, 3, v___x_10437_);
lean_inc(v_a_10414_);
v___x_10439_ = l_Lean_Syntax_node1(v_a_10414_, v___x_10370_, v_discr_10322_);
lean_inc(v_a_10414_);
v___x_10440_ = l_Lean_Syntax_node2(v_a_10414_, v___x_10416_, v___x_10438_, v___x_10439_);
v___x_10441_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v_a_10414_);
v___x_10442_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10442_, 0, v_a_10414_);
lean_ctor_set(v___x_10442_, 1, v___x_10441_);
lean_inc(v_a_10414_);
v___x_10443_ = l_Lean_Syntax_node3(v_a_10414_, v___x_10422_, v___x_10433_, v___x_10440_, v___x_10442_);
v___x_10444_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_10445_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v_a_10414_);
v___x_10446_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10446_, 0, v_a_10414_);
lean_ctor_set(v___x_10446_, 1, v___x_10444_);
v___x_10447_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_a_10414_);
v___x_10448_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10448_, 0, v_a_10414_);
lean_ctor_set(v___x_10448_, 1, v___x_10349_);
lean_ctor_set(v___x_10448_, 2, v___x_10351_);
lean_ctor_set(v___x_10448_, 3, v___x_10352_);
lean_inc(v_a_10414_);
v___x_10449_ = l_Lean_Syntax_node1(v_a_10414_, v___x_10370_, v___x_10448_);
v___x_10450_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_10414_);
v___x_10451_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10451_, 0, v_a_10414_);
lean_ctor_set(v___x_10451_, 1, v___x_10370_);
lean_ctor_set(v___x_10451_, 2, v___x_10450_);
lean_inc(v_a_10414_);
v___x_10452_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10452_, 0, v_a_10414_);
lean_ctor_set(v___x_10452_, 1, v___x_10359_);
lean_inc(v_a_10414_);
v___x_10453_ = l_Lean_Syntax_node4(v_a_10414_, v___x_10447_, v___x_10449_, v___x_10451_, v___x_10452_, v___x_10386_);
lean_inc(v_a_10414_);
v___x_10454_ = l_Lean_Syntax_node2(v_a_10414_, v___x_10445_, v___x_10446_, v___x_10453_);
lean_inc(v_a_10414_);
v___x_10455_ = l_Lean_Syntax_node2(v_a_10414_, v___x_10370_, v___x_10443_, v___x_10454_);
v___x_10456_ = l_Lean_Syntax_node2(v_a_10414_, v___x_10416_, v___x_10421_, v___x_10455_);
v___x_10457_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10457_, 0, v___x_10456_);
lean_ctor_set(v___x_10457_, 1, v_a_10415_);
return v___x_10457_;
}
else
{
lean_object* v_a_10458_; lean_object* v_a_10459_; lean_object* v___x_10460_; 
lean_dec_ref(v___x_10386_);
lean_dec(v___x_10351_);
lean_dec(v_quotContext_10329_);
lean_dec(v_macroScope_10325_);
lean_dec(v_discr_10322_);
v_a_10458_ = lean_ctor_get(v___x_10413_, 0);
lean_inc(v_a_10458_);
v_a_10459_ = lean_ctor_get(v___x_10413_, 1);
lean_inc(v_a_10459_);
lean_dec_ref(v___x_10413_);
v___x_10460_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10460_, 0, v_a_10458_);
lean_ctor_set(v___x_10460_, 1, v_a_10459_);
return v___x_10460_;
}
}
}
else
{
lean_dec(v_a_10344_);
lean_dec(v_a_10338_);
lean_dec_ref(v___x_10336_);
lean_dec(v_ref_10332_);
lean_dec(v_quotContext_10329_);
lean_dec(v_macroScope_10325_);
lean_dec(v_discr_10322_);
lean_dec(v_ref_10320_);
lean_dec_ref(v_a_10197_);
return v___x_10346_;
}
}
else
{
lean_object* v_a_10461_; lean_object* v_a_10462_; lean_object* v___x_10463_; 
lean_dec(v_a_10338_);
lean_dec_ref(v___x_10336_);
lean_dec(v_ref_10332_);
lean_dec(v_quotContext_10329_);
lean_dec(v_macroScope_10325_);
lean_dec_ref(v_elseBranch_10324_);
lean_dec(v_discr_10322_);
lean_dec(v_ref_10320_);
lean_dec_ref(v_a_10197_);
v_a_10461_ = lean_ctor_get(v___x_10343_, 0);
lean_inc(v_a_10461_);
v_a_10462_ = lean_ctor_get(v___x_10343_, 1);
lean_inc(v_a_10462_);
lean_dec_ref(v___x_10343_);
v___x_10463_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10463_, 0, v_a_10461_);
lean_ctor_set(v___x_10463_, 1, v_a_10462_);
return v___x_10463_;
}
}
else
{
lean_object* v_a_10464_; lean_object* v_a_10465_; lean_object* v___x_10466_; 
lean_dec_ref(v___x_10336_);
lean_dec(v_ref_10332_);
lean_dec(v_quotContext_10329_);
lean_dec(v_macroScope_10325_);
lean_dec_ref(v_elseBranch_10324_);
lean_dec_ref(v_alts_10323_);
lean_dec(v_discr_10322_);
lean_dec(v_ref_10320_);
lean_dec_ref(v_a_10197_);
v_a_10464_ = lean_ctor_get(v___x_10337_, 0);
lean_inc(v_a_10464_);
v_a_10465_ = lean_ctor_get(v___x_10337_, 1);
lean_inc(v_a_10465_);
lean_dec_ref(v___x_10337_);
v___x_10466_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_10466_, 0, v_a_10464_);
lean_ctor_set(v___x_10466_, 1, v_a_10465_);
return v___x_10466_;
}
}
default: 
{
lean_object* v_ref_10467_; lean_object* v_jpName_10468_; lean_object* v_args_10469_; lean_object* v___x_10470_; lean_object* v___x_10471_; 
lean_dec_ref(v_a_10198_);
lean_dec_ref(v_a_10197_);
v_ref_10467_ = lean_ctor_get(v_c_10196_, 0);
lean_inc(v_ref_10467_);
v_jpName_10468_ = lean_ctor_get(v_c_10196_, 1);
lean_inc(v_jpName_10468_);
v_args_10469_ = lean_ctor_get(v_c_10196_, 2);
lean_inc_ref(v_args_10469_);
lean_dec_ref(v_c_10196_);
v___x_10470_ = l_Lean_Elab_Term_Do_ToTerm_mkJmp(v_ref_10467_, v_jpName_10468_, v_args_10469_);
lean_dec(v_ref_10467_);
v___x_10471_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10471_, 0, v___x_10470_);
lean_ctor_set(v___x_10471_, 1, v_a_10199_);
return v___x_10471_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_toTerm(lean_object* v_c_10472_, lean_object* v_a_10473_, lean_object* v_a_10474_, lean_object* v_a_10475_){
_start:
{
lean_object* v___x_10476_; 
lean_inc_ref(v_a_10474_);
lean_inc_ref(v_c_10472_);
v___x_10476_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go(v_c_10472_, v_a_10473_, v_a_10474_, v_a_10475_);
if (lean_obj_tag(v___x_10476_) == 0)
{
lean_object* v_a_10477_; lean_object* v_a_10478_; lean_object* v___x_10479_; 
v_a_10477_ = lean_ctor_get(v___x_10476_, 0);
lean_inc(v_a_10477_);
v_a_10478_ = lean_ctor_get(v___x_10476_, 1);
lean_inc(v_a_10478_);
v___x_10479_ = l_Lean_Elab_Term_Do_Code_getRef_x3f(v_c_10472_);
lean_dec_ref(v_c_10472_);
if (lean_obj_tag(v___x_10479_) == 1)
{
lean_object* v_val_10480_; lean_object* v___x_10481_; 
lean_dec_ref(v___x_10476_);
v_val_10480_ = lean_ctor_get(v___x_10479_, 0);
lean_inc(v_val_10480_);
lean_dec_ref(v___x_10479_);
v___x_10481_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg(v_val_10480_, v_a_10477_, v_a_10474_, v_a_10478_);
lean_dec_ref(v_a_10474_);
return v___x_10481_;
}
else
{
lean_dec(v___x_10479_);
lean_dec(v_a_10478_);
lean_dec(v_a_10477_);
lean_dec_ref(v_a_10474_);
return v___x_10476_;
}
}
else
{
lean_dec_ref(v_a_10474_);
lean_dec_ref(v_c_10472_);
return v___x_10476_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0___boxed(lean_object* v_as_10482_, lean_object* v_sz_10483_, lean_object* v_i_10484_, lean_object* v_b_10485_, lean_object* v___y_10486_, lean_object* v___y_10487_, lean_object* v___y_10488_){
_start:
{
size_t v_sz_boxed_10489_; size_t v_i_boxed_10490_; lean_object* v_res_10491_; 
v_sz_boxed_10489_ = lean_unbox_usize(v_sz_10483_);
lean_dec(v_sz_10483_);
v_i_boxed_10490_ = lean_unbox_usize(v_i_10484_);
lean_dec(v_i_10484_);
v_res_10491_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__0(v_as_10482_, v_sz_boxed_10489_, v_i_boxed_10490_, v_b_10485_, v___y_10486_, v___y_10487_, v___y_10488_);
lean_dec_ref(v_as_10482_);
return v_res_10491_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1___boxed(lean_object* v_as_10492_, lean_object* v_sz_10493_, lean_object* v_i_10494_, lean_object* v_b_10495_, lean_object* v___y_10496_, lean_object* v___y_10497_, lean_object* v___y_10498_){
_start:
{
size_t v_sz_boxed_10499_; size_t v_i_boxed_10500_; lean_object* v_res_10501_; 
v_sz_boxed_10499_ = lean_unbox_usize(v_sz_10493_);
lean_dec(v_sz_10493_);
v_i_boxed_10500_ = lean_unbox_usize(v_i_10494_);
lean_dec(v_i_10494_);
v_res_10501_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToTerm_toTerm_go_spec__1(v_as_10492_, v_sz_boxed_10499_, v_i_boxed_10500_, v_b_10495_, v___y_10496_, v___y_10497_, v___y_10498_);
lean_dec_ref(v_as_10492_);
return v_res_10501_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3(lean_object* v_ref_10502_, lean_object* v_term_10503_, lean_object* v___y_10504_, lean_object* v___y_10505_, lean_object* v___y_10506_){
_start:
{
lean_object* v___x_10507_; 
v___x_10507_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___redArg(v_ref_10502_, v_term_10503_, v___y_10505_, v___y_10506_);
return v___x_10507_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3___boxed(lean_object* v_ref_10508_, lean_object* v_term_10509_, lean_object* v___y_10510_, lean_object* v___y_10511_, lean_object* v___y_10512_){
_start:
{
lean_object* v_res_10513_; 
v_res_10513_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToTerm_toTerm_spec__3(v_ref_10508_, v_term_10509_, v___y_10510_, v___y_10511_, v___y_10512_);
lean_dec_ref(v___y_10511_);
lean_dec_ref(v___y_10510_);
return v_res_10513_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_run(lean_object* v_code_10514_, lean_object* v_m_10515_, lean_object* v_returnType_10516_, lean_object* v_uvars_10517_, uint8_t v_kind_10518_, lean_object* v_a_10519_, lean_object* v_a_10520_){
_start:
{
lean_object* v___x_10521_; lean_object* v___x_10522_; 
v___x_10521_ = lean_alloc_ctor(0, 3, 1);
lean_ctor_set(v___x_10521_, 0, v_m_10515_);
lean_ctor_set(v___x_10521_, 1, v_returnType_10516_);
lean_ctor_set(v___x_10521_, 2, v_uvars_10517_);
lean_ctor_set_uint8(v___x_10521_, sizeof(void*)*3, v_kind_10518_);
v___x_10522_ = l_Lean_Elab_Term_Do_ToTerm_toTerm(v_code_10514_, v___x_10521_, v_a_10519_, v_a_10520_);
return v___x_10522_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_run___boxed(lean_object* v_code_10523_, lean_object* v_m_10524_, lean_object* v_returnType_10525_, lean_object* v_uvars_10526_, lean_object* v_kind_10527_, lean_object* v_a_10528_, lean_object* v_a_10529_){
_start:
{
uint8_t v_kind_boxed_10530_; lean_object* v_res_10531_; 
v_kind_boxed_10530_ = lean_unbox(v_kind_10527_);
v_res_10531_ = l_Lean_Elab_Term_Do_ToTerm_run(v_code_10523_, v_m_10524_, v_returnType_10525_, v_uvars_10526_, v_kind_boxed_10530_, v_a_10528_, v_a_10529_);
return v_res_10531_;
}
}
LEAN_EXPORT uint8_t l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0(lean_object* v_msg_10532_){
_start:
{
uint8_t v___x_10533_; lean_object* v___x_10534_; lean_object* v___x_10535_; uint8_t v___x_10536_; 
v___x_10533_ = 0;
v___x_10534_ = lean_box(v___x_10533_);
v___x_10535_ = lean_panic_fn(v___x_10534_, v_msg_10532_);
v___x_10536_ = lean_unbox(v___x_10535_);
lean_dec(v___x_10535_);
return v___x_10536_;
}
}
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0___boxed(lean_object* v_msg_10537_){
_start:
{
uint8_t v_res_10538_; lean_object* v_r_10539_; 
v_res_10538_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0(v_msg_10537_);
v_r_10539_ = lean_box(v_res_10538_);
return v_r_10539_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1(void){
_start:
{
lean_object* v___x_10541_; lean_object* v___x_10542_; lean_object* v___x_10543_; lean_object* v___x_10544_; lean_object* v___x_10545_; lean_object* v___x_10546_; 
v___x_10541_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_10542_ = lean_unsigned_to_nat(27u);
v___x_10543_ = lean_unsigned_to_nat(1200u);
v___x_10544_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__0));
v___x_10545_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_10546_ = l_mkPanicMessageWithDecl(v___x_10545_, v___x_10544_, v___x_10543_, v___x_10542_, v___x_10541_);
return v___x_10546_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToTerm_mkNestedKind(uint8_t v_a_10547_, uint8_t v_r_10548_, uint8_t v_bc_10549_){
_start:
{
if (v_a_10547_ == 0)
{
if (v_r_10548_ == 0)
{
if (v_bc_10549_ == 0)
{
lean_object* v___x_10550_; uint8_t v___x_10551_; 
v___x_10550_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1, &l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___closed__1);
v___x_10551_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_mkNestedKind_spec__0(v___x_10550_);
return v___x_10551_;
}
else
{
uint8_t v___x_10552_; 
v___x_10552_ = 3;
return v___x_10552_;
}
}
else
{
if (v_bc_10549_ == 0)
{
uint8_t v___x_10553_; 
v___x_10553_ = 0;
return v___x_10553_;
}
else
{
uint8_t v___x_10554_; 
v___x_10554_ = 5;
return v___x_10554_;
}
}
}
else
{
if (v_r_10548_ == 0)
{
if (v_bc_10549_ == 0)
{
uint8_t v___x_10555_; 
v___x_10555_ = 0;
return v___x_10555_;
}
else
{
uint8_t v___x_10556_; 
v___x_10556_ = 5;
return v___x_10556_;
}
}
else
{
if (v_bc_10549_ == 0)
{
uint8_t v___x_10557_; 
v___x_10557_ = 4;
return v___x_10557_;
}
else
{
uint8_t v___x_10558_; 
v___x_10558_ = 6;
return v___x_10558_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedKind___boxed(lean_object* v_a_10559_, lean_object* v_r_10560_, lean_object* v_bc_10561_){
_start:
{
uint8_t v_a_boxed_10562_; uint8_t v_r_boxed_10563_; uint8_t v_bc_boxed_10564_; uint8_t v_res_10565_; lean_object* v_r_10566_; 
v_a_boxed_10562_ = lean_unbox(v_a_10559_);
v_r_boxed_10563_ = lean_unbox(v_r_10560_);
v_bc_boxed_10564_ = lean_unbox(v_bc_10561_);
v_res_10565_ = l_Lean_Elab_Term_Do_ToTerm_mkNestedKind(v_a_boxed_10562_, v_r_boxed_10563_, v_bc_boxed_10564_);
v_r_10566_ = lean_box(v_res_10565_);
return v_r_10566_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm(lean_object* v_code_10567_, lean_object* v_m_10568_, lean_object* v_returnType_10569_, lean_object* v_uvars_10570_, uint8_t v_a_10571_, uint8_t v_r_10572_, uint8_t v_bc_10573_, lean_object* v_a_10574_, lean_object* v_a_10575_){
_start:
{
uint8_t v___x_10576_; lean_object* v___x_10577_; 
v___x_10576_ = l_Lean_Elab_Term_Do_ToTerm_mkNestedKind(v_a_10571_, v_r_10572_, v_bc_10573_);
v___x_10577_ = l_Lean_Elab_Term_Do_ToTerm_run(v_code_10567_, v_m_10568_, v_returnType_10569_, v_uvars_10570_, v___x_10576_, v_a_10574_, v_a_10575_);
return v___x_10577_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm___boxed(lean_object* v_code_10578_, lean_object* v_m_10579_, lean_object* v_returnType_10580_, lean_object* v_uvars_10581_, lean_object* v_a_10582_, lean_object* v_r_10583_, lean_object* v_bc_10584_, lean_object* v_a_10585_, lean_object* v_a_10586_){
_start:
{
uint8_t v_a_boxed_10587_; uint8_t v_r_boxed_10588_; uint8_t v_bc_boxed_10589_; lean_object* v_res_10590_; 
v_a_boxed_10587_ = lean_unbox(v_a_10582_);
v_r_boxed_10588_ = lean_unbox(v_r_10583_);
v_bc_boxed_10589_ = lean_unbox(v_bc_10584_);
v_res_10590_ = l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm(v_code_10578_, v_m_10579_, v_returnType_10580_, v_uvars_10581_, v_a_boxed_10587_, v_r_boxed_10588_, v_bc_boxed_10589_, v_a_10585_, v_a_10586_);
return v_res_10590_;
}
}
LEAN_EXPORT lean_object* l_panic___at___00Lean_Elab_Term_Do_ToTerm_matchNestedTermResult_spec__0(lean_object* v_msg_10591_, lean_object* v___y_10592_, lean_object* v___y_10593_){
_start:
{
lean_object* v___f_10594_; lean_object* v___f_10595_; lean_object* v___f_10596_; lean_object* v___x_10597_; lean_object* v___x_10598_; lean_object* v___x_10599_; lean_object* v___x_10600_; lean_object* v___x_10601_; lean_object* v___x_10602_; lean_object* v___x_10603_; lean_object* v___x_10604_; lean_object* v___x_10605_; lean_object* v___f_10606_; lean_object* v___x_33760__overap_10607_; lean_object* v___x_10608_; 
v___f_10594_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__0));
v___f_10595_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__1));
v___f_10596_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__2));
v___x_10597_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__3));
v___x_10598_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10598_, 0, v___x_10597_);
lean_ctor_set(v___x_10598_, 1, v___f_10594_);
v___x_10599_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__4));
v___x_10600_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__5));
v___x_10601_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_10601_, 0, v___x_10598_);
lean_ctor_set(v___x_10601_, 1, v___x_10599_);
lean_ctor_set(v___x_10601_, 2, v___f_10595_);
lean_ctor_set(v___x_10601_, 3, v___f_10596_);
lean_ctor_set(v___x_10601_, 4, v___x_10600_);
v___x_10602_ = ((lean_object*)(l_panic___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct_spec__0___closed__6));
v___x_10603_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10603_, 0, v___x_10601_);
lean_ctor_set(v___x_10603_, 1, v___x_10602_);
v___x_10604_ = lean_box(0);
v___x_10605_ = l_instInhabitedOfMonad___redArg(v___x_10603_, v___x_10604_);
v___f_10606_ = lean_alloc_closure((void*)(l_instInhabitedForall___redArg___lam__0___boxed), 2, 1);
lean_closure_set(v___f_10606_, 0, v___x_10605_);
v___x_33760__overap_10607_ = lean_panic_fn(v___f_10606_, v_msg_10591_);
v___x_10608_ = lean_apply_2(v___x_33760__overap_10607_, v___y_10592_, v___y_10593_);
return v___x_10608_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(lean_object* v_auxDo_10609_){
_start:
{
lean_object* v___x_10610_; lean_object* v___x_10611_; 
v___x_10610_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v_auxDo_10609_);
v___x_10611_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_10610_);
return v___x_10611_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0___boxed(lean_object* v_auxDo_10612_){
_start:
{
lean_object* v_res_10613_; 
v_res_10613_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v_auxDo_10612_);
lean_dec(v_auxDo_10612_);
return v_res_10613_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1(void){
_start:
{
lean_object* v___x_10615_; lean_object* v___x_10616_; lean_object* v___x_10617_; lean_object* v___x_10618_; lean_object* v___x_10619_; lean_object* v___x_10620_; 
v___x_10615_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__16));
v___x_10616_ = lean_unsigned_to_nat(27u);
v___x_10617_ = lean_unsigned_to_nat(1256u);
v___x_10618_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__0));
v___x_10619_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__2));
v___x_10620_ = l_mkPanicMessageWithDecl(v___x_10619_, v___x_10618_, v___x_10617_, v___x_10616_, v___x_10615_);
return v___x_10620_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3(void){
_start:
{
lean_object* v___x_10622_; lean_object* v___x_10623_; 
v___x_10622_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__2));
v___x_10623_ = l_String_toRawSubstring_x27(v___x_10622_);
return v___x_10623_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7(void){
_start:
{
lean_object* v___x_10632_; lean_object* v___x_10633_; 
v___x_10632_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
v___x_10633_ = l_String_toRawSubstring_x27(v___x_10632_);
return v___x_10633_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10(void){
_start:
{
lean_object* v___x_10637_; lean_object* v___x_10638_; 
v___x_10637_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__9));
v___x_10638_ = l_String_toRawSubstring_x27(v___x_10637_);
return v___x_10638_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14(void){
_start:
{
lean_object* v___x_10647_; lean_object* v___x_10648_; 
v___x_10647_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19));
v___x_10648_ = l_String_toRawSubstring_x27(v___x_10647_);
return v___x_10648_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20(void){
_start:
{
lean_object* v___x_10663_; lean_object* v___x_10664_; 
v___x_10663_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__39));
v___x_10664_ = l_String_toRawSubstring_x27(v___x_10663_);
return v___x_10664_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23(void){
_start:
{
lean_object* v___x_10668_; lean_object* v___x_10669_; 
v___x_10668_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__22));
v___x_10669_ = l_String_toRawSubstring_x27(v___x_10668_);
return v___x_10669_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27(void){
_start:
{
lean_object* v___x_10678_; lean_object* v___x_10679_; 
v___x_10678_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
v___x_10679_ = l_String_toRawSubstring_x27(v___x_10678_);
return v___x_10679_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30(void){
_start:
{
lean_object* v___x_10683_; lean_object* v___x_10684_; 
v___x_10683_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__29));
v___x_10684_ = l_String_toRawSubstring_x27(v___x_10683_);
return v___x_10684_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult(lean_object* v_term_10687_, lean_object* v_uvars_10688_, uint8_t v_a_10689_, uint8_t v_r_10690_, uint8_t v_bc_10691_, lean_object* v_a_10692_, lean_object* v_a_10693_){
_start:
{
lean_object* v___x_10694_; 
lean_inc_ref(v_a_10692_);
v___x_10694_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple(v_uvars_10688_, v_a_10692_, v_a_10693_);
if (lean_obj_tag(v___x_10694_) == 0)
{
if (v_a_10689_ == 0)
{
if (v_r_10690_ == 0)
{
if (v_bc_10691_ == 0)
{
lean_object* v_a_10695_; lean_object* v___x_10696_; lean_object* v___x_10697_; 
lean_dec(v_term_10687_);
v_a_10695_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_10695_);
lean_dec_ref(v___x_10694_);
v___x_10696_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__1);
v___x_10697_ = l_panic___at___00Lean_Elab_Term_Do_ToTerm_matchNestedTermResult_spec__0(v___x_10696_, v_a_10692_, v_a_10695_);
return v___x_10697_;
}
else
{
lean_object* v_a_10698_; lean_object* v_a_10699_; lean_object* v_quotContext_10700_; lean_object* v_currMacroScope_10701_; lean_object* v_ref_10702_; lean_object* v___x_10703_; lean_object* v___x_10704_; lean_object* v___x_10705_; lean_object* v___x_10706_; lean_object* v___x_10707_; lean_object* v___x_10708_; lean_object* v___x_10709_; lean_object* v___x_10710_; lean_object* v___x_10711_; lean_object* v___x_10712_; lean_object* v___x_10713_; lean_object* v___x_10714_; lean_object* v___x_10715_; lean_object* v___x_10716_; lean_object* v___x_10717_; lean_object* v___x_10718_; lean_object* v___x_10719_; lean_object* v___x_10720_; lean_object* v___x_10721_; lean_object* v___x_10722_; lean_object* v___x_10723_; lean_object* v___x_10724_; lean_object* v___x_10725_; lean_object* v___x_10726_; lean_object* v___x_10727_; lean_object* v___x_10728_; lean_object* v___x_10729_; lean_object* v___x_10730_; lean_object* v___x_10731_; lean_object* v___x_10732_; lean_object* v___x_10733_; lean_object* v___x_10734_; lean_object* v___x_10735_; lean_object* v___x_10736_; lean_object* v___x_10737_; lean_object* v___x_10738_; lean_object* v___x_10739_; lean_object* v___x_10740_; lean_object* v___x_10741_; lean_object* v___x_10742_; lean_object* v___x_10743_; lean_object* v___x_10744_; lean_object* v___x_10745_; lean_object* v___x_10746_; lean_object* v___x_10747_; lean_object* v___x_10748_; lean_object* v___x_10749_; lean_object* v___x_10750_; lean_object* v___x_10751_; lean_object* v___x_10752_; lean_object* v___x_10753_; lean_object* v___x_10754_; lean_object* v___x_10755_; lean_object* v___x_10756_; lean_object* v___x_10757_; lean_object* v___x_10758_; lean_object* v___x_10759_; lean_object* v___x_10760_; lean_object* v___x_10761_; lean_object* v___x_10762_; lean_object* v___x_10763_; lean_object* v___x_10764_; lean_object* v___x_10765_; lean_object* v___x_10766_; lean_object* v___x_10767_; lean_object* v___x_10768_; lean_object* v___x_10769_; lean_object* v___x_10770_; lean_object* v___x_10771_; lean_object* v___x_10772_; lean_object* v___x_10773_; lean_object* v___x_10774_; lean_object* v___x_10775_; lean_object* v___x_10776_; lean_object* v___x_10777_; lean_object* v___x_10778_; lean_object* v___x_10779_; lean_object* v___x_10780_; lean_object* v___x_10781_; lean_object* v___x_10782_; lean_object* v___x_10783_; lean_object* v___x_10784_; lean_object* v___x_10785_; lean_object* v___x_10786_; lean_object* v___x_10787_; lean_object* v___x_10788_; lean_object* v___x_10789_; lean_object* v___x_10790_; lean_object* v___x_10791_; lean_object* v___x_10792_; lean_object* v___x_10793_; lean_object* v___x_10794_; lean_object* v___x_10795_; lean_object* v___x_10796_; lean_object* v___x_10797_; lean_object* v___x_10798_; lean_object* v___x_10799_; lean_object* v___x_10800_; lean_object* v___x_10801_; 
v_a_10698_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_10698_);
v_a_10699_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_10699_);
lean_dec_ref(v___x_10694_);
v_quotContext_10700_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_10700_);
v_currMacroScope_10701_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_10701_);
v_ref_10702_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_10702_);
lean_dec_ref(v_a_10692_);
v___x_10703_ = l_Lean_SourceInfo_fromRef(v_ref_10702_, v_r_10690_);
lean_dec(v_ref_10702_);
v___x_10704_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_10705_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_10703_);
v___x_10706_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10706_, 0, v___x_10703_);
lean_ctor_set(v___x_10706_, 1, v___x_10704_);
v___x_10707_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_10708_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10709_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_10710_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_10711_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_10703_);
v___x_10712_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10712_, 0, v___x_10703_);
lean_ctor_set(v___x_10712_, 1, v___x_10711_);
v___x_10713_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_10703_);
v___x_10714_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10714_, 0, v___x_10703_);
lean_ctor_set(v___x_10714_, 1, v___x_10708_);
lean_ctor_set(v___x_10714_, 2, v___x_10713_);
v___x_10715_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_10716_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_10717_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_10701_);
lean_inc(v_quotContext_10700_);
v___x_10718_ = l_Lean_addMacroScope(v_quotContext_10700_, v___x_10717_, v_currMacroScope_10701_);
v___x_10719_ = lean_box(0);
lean_inc(v___x_10703_);
v___x_10720_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10720_, 0, v___x_10703_);
lean_ctor_set(v___x_10720_, 1, v___x_10716_);
lean_ctor_set(v___x_10720_, 2, v___x_10718_);
lean_ctor_set(v___x_10720_, 3, v___x_10719_);
v___x_10721_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_10703_);
v___x_10722_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10722_, 0, v___x_10703_);
lean_ctor_set(v___x_10722_, 1, v___x_10721_);
v___x_10723_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_10703_);
v___x_10724_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10723_, v_term_10687_);
lean_inc_ref(v___x_10714_);
lean_inc_ref(v___x_10720_);
lean_inc(v___x_10703_);
v___x_10725_ = l_Lean_Syntax_node4(v___x_10703_, v___x_10715_, v___x_10720_, v___x_10714_, v___x_10722_, v___x_10724_);
lean_inc_ref(v___x_10714_);
lean_inc(v___x_10703_);
v___x_10726_ = l_Lean_Syntax_node3(v___x_10703_, v___x_10710_, v___x_10712_, v___x_10714_, v___x_10725_);
v___x_10727_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_10703_);
v___x_10728_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10728_, 0, v___x_10703_);
lean_ctor_set(v___x_10728_, 1, v___x_10727_);
lean_inc(v___x_10703_);
v___x_10729_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10728_);
lean_inc(v___x_10729_);
lean_inc(v___x_10703_);
v___x_10730_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10709_, v___x_10726_, v___x_10729_);
v___x_10731_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_10732_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_10703_);
v___x_10733_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10733_, 0, v___x_10703_);
lean_ctor_set(v___x_10733_, 1, v___x_10732_);
v___x_10734_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_10714_);
lean_inc(v___x_10703_);
v___x_10735_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10734_, v___x_10714_, v___x_10720_);
lean_inc(v___x_10703_);
v___x_10736_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10735_);
v___x_10737_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_10703_);
v___x_10738_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10738_, 0, v___x_10703_);
lean_ctor_set(v___x_10738_, 1, v___x_10737_);
v___x_10739_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_10740_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_10741_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_10703_);
v___x_10742_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10742_, 0, v___x_10703_);
lean_ctor_set(v___x_10742_, 1, v___x_10741_);
v___x_10743_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_10744_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6));
v___x_10745_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_10703_);
v___x_10746_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10746_, 0, v___x_10703_);
lean_ctor_set(v___x_10746_, 1, v___x_10745_);
v___x_10747_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
v___x_10748_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7);
v___x_10749_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8));
lean_inc(v_currMacroScope_10701_);
lean_inc(v_quotContext_10700_);
v___x_10750_ = l_Lean_addMacroScope(v_quotContext_10700_, v___x_10749_, v_currMacroScope_10701_);
lean_inc(v___x_10703_);
v___x_10751_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10751_, 0, v___x_10703_);
lean_ctor_set(v___x_10751_, 1, v___x_10748_);
lean_ctor_set(v___x_10751_, 2, v___x_10750_);
lean_ctor_set(v___x_10751_, 3, v___x_10719_);
lean_inc_ref(v___x_10746_);
lean_inc(v___x_10703_);
v___x_10752_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10744_, v___x_10746_, v___x_10751_);
v___x_10753_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10);
v___x_10754_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11));
lean_inc(v_currMacroScope_10701_);
lean_inc(v_quotContext_10700_);
v___x_10755_ = l_Lean_addMacroScope(v_quotContext_10700_, v___x_10754_, v_currMacroScope_10701_);
lean_inc(v___x_10703_);
v___x_10756_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10756_, 0, v___x_10703_);
lean_ctor_set(v___x_10756_, 1, v___x_10753_);
lean_ctor_set(v___x_10756_, 2, v___x_10755_);
lean_ctor_set(v___x_10756_, 3, v___x_10719_);
lean_inc_ref(v___x_10756_);
lean_inc(v___x_10703_);
v___x_10757_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10756_);
lean_inc(v___x_10757_);
lean_inc(v___x_10703_);
v___x_10758_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10743_, v___x_10752_, v___x_10757_);
lean_inc(v___x_10703_);
v___x_10759_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10758_);
lean_inc(v___x_10703_);
v___x_10760_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10759_);
v___x_10761_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_10703_);
v___x_10762_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10762_, 0, v___x_10703_);
lean_ctor_set(v___x_10762_, 1, v___x_10761_);
v___x_10763_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_10764_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_10765_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_10703_);
v___x_10766_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10766_, 0, v___x_10703_);
lean_ctor_set(v___x_10766_, 1, v___x_10765_);
lean_inc_ref_n(v___x_10714_, 2);
lean_inc(v___x_10703_);
v___x_10767_ = l_Lean_Syntax_node5(v___x_10703_, v___x_10764_, v_a_10698_, v___x_10714_, v___x_10714_, v___x_10766_, v___x_10756_);
lean_inc(v___x_10703_);
v___x_10768_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10763_, v___x_10767_);
lean_inc(v___x_10703_);
v___x_10769_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10709_, v___x_10768_, v___x_10729_);
v___x_10770_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
lean_inc(v___x_10703_);
v___x_10771_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10771_, 0, v___x_10703_);
lean_ctor_set(v___x_10771_, 1, v___x_10747_);
lean_inc(v___x_10703_);
v___x_10772_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10770_, v___x_10771_);
lean_inc_ref(v___x_10714_);
lean_inc(v___x_10703_);
v___x_10773_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10709_, v___x_10772_, v___x_10714_);
lean_inc(v___x_10769_);
lean_inc(v___x_10703_);
v___x_10774_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10708_, v___x_10769_, v___x_10773_);
lean_inc(v___x_10703_);
v___x_10775_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10707_, v___x_10774_);
lean_inc_ref(v___x_10762_);
lean_inc_ref(v___x_10742_);
lean_inc(v___x_10703_);
v___x_10776_ = l_Lean_Syntax_node4(v___x_10703_, v___x_10740_, v___x_10742_, v___x_10760_, v___x_10762_, v___x_10775_);
v___x_10777_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19));
v___x_10778_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14);
v___x_10779_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15));
v___x_10780_ = l_Lean_addMacroScope(v_quotContext_10700_, v___x_10779_, v_currMacroScope_10701_);
lean_inc(v___x_10703_);
v___x_10781_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10781_, 0, v___x_10703_);
lean_ctor_set(v___x_10781_, 1, v___x_10778_);
lean_ctor_set(v___x_10781_, 2, v___x_10780_);
lean_ctor_set(v___x_10781_, 3, v___x_10719_);
lean_inc(v___x_10703_);
v___x_10782_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10744_, v___x_10746_, v___x_10781_);
lean_inc(v___x_10703_);
v___x_10783_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10743_, v___x_10782_, v___x_10757_);
lean_inc(v___x_10703_);
v___x_10784_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10783_);
lean_inc(v___x_10703_);
v___x_10785_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10708_, v___x_10784_);
v___x_10786_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17));
lean_inc(v___x_10703_);
v___x_10787_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10787_, 0, v___x_10703_);
lean_ctor_set(v___x_10787_, 1, v___x_10777_);
lean_inc(v___x_10703_);
v___x_10788_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10786_, v___x_10787_);
lean_inc_ref(v___x_10714_);
lean_inc(v___x_10703_);
v___x_10789_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10709_, v___x_10788_, v___x_10714_);
lean_inc(v___x_10703_);
v___x_10790_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10708_, v___x_10769_, v___x_10789_);
lean_inc(v___x_10703_);
v___x_10791_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10707_, v___x_10790_);
lean_inc(v___x_10703_);
v___x_10792_ = l_Lean_Syntax_node4(v___x_10703_, v___x_10740_, v___x_10742_, v___x_10785_, v___x_10762_, v___x_10791_);
lean_inc(v___x_10703_);
v___x_10793_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10708_, v___x_10776_, v___x_10792_);
lean_inc(v___x_10703_);
v___x_10794_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10739_, v___x_10793_);
lean_inc_ref_n(v___x_10714_, 3);
lean_inc(v___x_10703_);
v___x_10795_ = l_Lean_Syntax_node7(v___x_10703_, v___x_10731_, v___x_10733_, v___x_10714_, v___x_10714_, v___x_10714_, v___x_10736_, v___x_10738_, v___x_10794_);
lean_inc(v___x_10703_);
v___x_10796_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10709_, v___x_10795_, v___x_10714_);
lean_inc(v___x_10703_);
v___x_10797_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10708_, v___x_10730_, v___x_10796_);
lean_inc(v___x_10703_);
v___x_10798_ = l_Lean_Syntax_node1(v___x_10703_, v___x_10707_, v___x_10797_);
v___x_10799_ = l_Lean_Syntax_node2(v___x_10703_, v___x_10705_, v___x_10706_, v___x_10798_);
v___x_10800_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_10799_);
lean_dec(v___x_10799_);
v___x_10801_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10801_, 0, v___x_10800_);
lean_ctor_set(v___x_10801_, 1, v_a_10699_);
return v___x_10801_;
}
}
else
{
if (v_bc_10691_ == 0)
{
lean_object* v_a_10802_; lean_object* v_a_10803_; lean_object* v___x_10804_; lean_object* v___x_10805_; uint8_t v___x_10806_; 
v_a_10802_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_10802_);
v_a_10803_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_10803_);
lean_dec_ref(v___x_10694_);
v___x_10804_ = lean_array_get_size(v_uvars_10688_);
v___x_10805_ = lean_unsigned_to_nat(0u);
v___x_10806_ = lean_nat_dec_eq(v___x_10804_, v___x_10805_);
if (v___x_10806_ == 0)
{
lean_object* v_quotContext_10807_; lean_object* v_currMacroScope_10808_; lean_object* v_ref_10809_; lean_object* v___x_10810_; lean_object* v___x_10811_; lean_object* v___x_10812_; lean_object* v___x_10813_; lean_object* v___x_10814_; lean_object* v___x_10815_; lean_object* v___x_10816_; lean_object* v___x_10817_; lean_object* v___x_10818_; lean_object* v___x_10819_; lean_object* v___x_10820_; lean_object* v___x_10821_; lean_object* v___x_10822_; lean_object* v___x_10823_; lean_object* v___x_10824_; lean_object* v___x_10825_; lean_object* v___x_10826_; lean_object* v___x_10827_; lean_object* v___x_10828_; lean_object* v___x_10829_; lean_object* v___x_10830_; lean_object* v___x_10831_; lean_object* v___x_10832_; lean_object* v___x_10833_; lean_object* v___x_10834_; lean_object* v___x_10835_; lean_object* v___x_10836_; lean_object* v___x_10837_; lean_object* v___x_10838_; lean_object* v___x_10839_; lean_object* v___x_10840_; lean_object* v___x_10841_; lean_object* v___x_10842_; lean_object* v___x_10843_; lean_object* v___x_10844_; lean_object* v___x_10845_; lean_object* v___x_10846_; lean_object* v___x_10847_; lean_object* v___x_10848_; lean_object* v___x_10849_; lean_object* v___x_10850_; lean_object* v___x_10851_; lean_object* v___x_10852_; lean_object* v___x_10853_; lean_object* v___x_10854_; lean_object* v___x_10855_; lean_object* v___x_10856_; lean_object* v___x_10857_; lean_object* v___x_10858_; lean_object* v___x_10859_; lean_object* v___x_10860_; lean_object* v___x_10861_; lean_object* v___x_10862_; lean_object* v___x_10863_; lean_object* v___x_10864_; lean_object* v___x_10865_; lean_object* v___x_10866_; lean_object* v___x_10867_; 
v_quotContext_10807_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_10807_);
v_currMacroScope_10808_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_10808_);
v_ref_10809_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_10809_);
lean_dec_ref(v_a_10692_);
v___x_10810_ = l_Lean_SourceInfo_fromRef(v_ref_10809_, v_bc_10691_);
lean_dec(v_ref_10809_);
v___x_10811_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_10812_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_10810_);
v___x_10813_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10813_, 0, v___x_10810_);
lean_ctor_set(v___x_10813_, 1, v___x_10811_);
v___x_10814_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_10815_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10816_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_10817_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_10818_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_10810_);
v___x_10819_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10819_, 0, v___x_10810_);
lean_ctor_set(v___x_10819_, 1, v___x_10818_);
v___x_10820_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_10810_);
v___x_10821_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10821_, 0, v___x_10810_);
lean_ctor_set(v___x_10821_, 1, v___x_10815_);
lean_ctor_set(v___x_10821_, 2, v___x_10820_);
v___x_10822_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_10823_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_10824_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
v___x_10825_ = l_Lean_addMacroScope(v_quotContext_10807_, v___x_10824_, v_currMacroScope_10808_);
v___x_10826_ = lean_box(0);
lean_inc(v___x_10810_);
v___x_10827_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10827_, 0, v___x_10810_);
lean_ctor_set(v___x_10827_, 1, v___x_10823_);
lean_ctor_set(v___x_10827_, 2, v___x_10825_);
lean_ctor_set(v___x_10827_, 3, v___x_10826_);
v___x_10828_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_10810_);
v___x_10829_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10829_, 0, v___x_10810_);
lean_ctor_set(v___x_10829_, 1, v___x_10828_);
v___x_10830_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_10810_);
v___x_10831_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10830_, v_term_10687_);
lean_inc_ref(v___x_10821_);
lean_inc_ref(v___x_10827_);
lean_inc(v___x_10810_);
v___x_10832_ = l_Lean_Syntax_node4(v___x_10810_, v___x_10822_, v___x_10827_, v___x_10821_, v___x_10829_, v___x_10831_);
lean_inc_ref(v___x_10821_);
lean_inc(v___x_10810_);
v___x_10833_ = l_Lean_Syntax_node3(v___x_10810_, v___x_10817_, v___x_10819_, v___x_10821_, v___x_10832_);
v___x_10834_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_10810_);
v___x_10835_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10835_, 0, v___x_10810_);
lean_ctor_set(v___x_10835_, 1, v___x_10834_);
lean_inc(v___x_10810_);
v___x_10836_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10815_, v___x_10835_);
lean_inc(v___x_10836_);
lean_inc(v___x_10810_);
v___x_10837_ = l_Lean_Syntax_node2(v___x_10810_, v___x_10816_, v___x_10833_, v___x_10836_);
v___x_10838_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_10839_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_10840_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_10810_);
v___x_10841_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10841_, 0, v___x_10810_);
lean_ctor_set(v___x_10841_, 1, v___x_10840_);
v___x_10842_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_10843_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_10810_);
v___x_10844_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10844_, 0, v___x_10810_);
lean_ctor_set(v___x_10844_, 1, v___x_10843_);
v___x_10845_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_10846_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v___x_10810_);
v___x_10847_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10847_, 0, v___x_10810_);
lean_ctor_set(v___x_10847_, 1, v___x_10846_);
lean_inc(v___x_10810_);
v___x_10848_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10845_, v___x_10847_);
lean_inc_ref(v___x_10844_);
lean_inc_ref(v___x_10827_);
lean_inc(v___x_10810_);
v___x_10849_ = l_Lean_Syntax_node3(v___x_10810_, v___x_10842_, v___x_10827_, v___x_10844_, v___x_10848_);
lean_inc_ref_n(v___x_10821_, 2);
lean_inc(v___x_10810_);
v___x_10850_ = l_Lean_Syntax_node5(v___x_10810_, v___x_10839_, v_a_10802_, v___x_10821_, v___x_10821_, v___x_10841_, v___x_10849_);
lean_inc(v___x_10810_);
v___x_10851_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10838_, v___x_10850_);
lean_inc(v___x_10810_);
v___x_10852_ = l_Lean_Syntax_node2(v___x_10810_, v___x_10816_, v___x_10851_, v___x_10836_);
v___x_10853_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
v___x_10854_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
lean_inc(v___x_10810_);
v___x_10855_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10855_, 0, v___x_10810_);
lean_ctor_set(v___x_10855_, 1, v___x_10854_);
v___x_10856_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12));
lean_inc(v___x_10810_);
v___x_10857_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10857_, 0, v___x_10810_);
lean_ctor_set(v___x_10857_, 1, v___x_10856_);
lean_inc(v___x_10810_);
v___x_10858_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10845_, v___x_10857_);
lean_inc(v___x_10810_);
v___x_10859_ = l_Lean_Syntax_node3(v___x_10810_, v___x_10842_, v___x_10827_, v___x_10844_, v___x_10858_);
lean_inc(v___x_10810_);
v___x_10860_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10815_, v___x_10859_);
lean_inc(v___x_10810_);
v___x_10861_ = l_Lean_Syntax_node2(v___x_10810_, v___x_10853_, v___x_10855_, v___x_10860_);
lean_inc(v___x_10810_);
v___x_10862_ = l_Lean_Syntax_node2(v___x_10810_, v___x_10816_, v___x_10861_, v___x_10821_);
lean_inc(v___x_10810_);
v___x_10863_ = l_Lean_Syntax_node3(v___x_10810_, v___x_10815_, v___x_10837_, v___x_10852_, v___x_10862_);
lean_inc(v___x_10810_);
v___x_10864_ = l_Lean_Syntax_node1(v___x_10810_, v___x_10814_, v___x_10863_);
v___x_10865_ = l_Lean_Syntax_node2(v___x_10810_, v___x_10812_, v___x_10813_, v___x_10864_);
v___x_10866_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_10865_);
lean_dec(v___x_10865_);
v___x_10867_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10867_, 0, v___x_10866_);
lean_ctor_set(v___x_10867_, 1, v_a_10803_);
return v___x_10867_;
}
else
{
lean_object* v_quotContext_10868_; lean_object* v_currMacroScope_10869_; lean_object* v_ref_10870_; lean_object* v___x_10871_; lean_object* v___x_10872_; lean_object* v___x_10873_; lean_object* v___x_10874_; lean_object* v___x_10875_; lean_object* v___x_10876_; lean_object* v___x_10877_; lean_object* v___x_10878_; lean_object* v___x_10879_; lean_object* v___x_10880_; lean_object* v___x_10881_; lean_object* v___x_10882_; lean_object* v___x_10883_; lean_object* v___x_10884_; lean_object* v___x_10885_; lean_object* v___x_10886_; lean_object* v___x_10887_; lean_object* v___x_10888_; lean_object* v___x_10889_; lean_object* v___x_10890_; lean_object* v___x_10891_; lean_object* v___x_10892_; lean_object* v___x_10893_; lean_object* v___x_10894_; lean_object* v___x_10895_; lean_object* v___x_10896_; lean_object* v___x_10897_; lean_object* v___x_10898_; lean_object* v___x_10899_; lean_object* v___x_10900_; lean_object* v___x_10901_; lean_object* v___x_10902_; lean_object* v___x_10903_; lean_object* v___x_10904_; lean_object* v___x_10905_; lean_object* v___x_10906_; lean_object* v___x_10907_; lean_object* v___x_10908_; lean_object* v___x_10909_; 
lean_dec(v_a_10802_);
v_quotContext_10868_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_10868_);
v_currMacroScope_10869_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_10869_);
v_ref_10870_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_10870_);
lean_dec_ref(v_a_10692_);
v___x_10871_ = l_Lean_SourceInfo_fromRef(v_ref_10870_, v_bc_10691_);
lean_dec(v_ref_10870_);
v___x_10872_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_10873_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_10871_);
v___x_10874_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10874_, 0, v___x_10871_);
lean_ctor_set(v___x_10874_, 1, v___x_10872_);
v___x_10875_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_10876_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10877_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_10878_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_10879_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_10871_);
v___x_10880_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10880_, 0, v___x_10871_);
lean_ctor_set(v___x_10880_, 1, v___x_10879_);
v___x_10881_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_10871_);
v___x_10882_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10882_, 0, v___x_10871_);
lean_ctor_set(v___x_10882_, 1, v___x_10876_);
lean_ctor_set(v___x_10882_, 2, v___x_10881_);
v___x_10883_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_10884_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_10885_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
v___x_10886_ = l_Lean_addMacroScope(v_quotContext_10868_, v___x_10885_, v_currMacroScope_10869_);
v___x_10887_ = lean_box(0);
lean_inc(v___x_10871_);
v___x_10888_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10888_, 0, v___x_10871_);
lean_ctor_set(v___x_10888_, 1, v___x_10884_);
lean_ctor_set(v___x_10888_, 2, v___x_10886_);
lean_ctor_set(v___x_10888_, 3, v___x_10887_);
v___x_10889_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_10871_);
v___x_10890_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10890_, 0, v___x_10871_);
lean_ctor_set(v___x_10890_, 1, v___x_10889_);
v___x_10891_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_10871_);
v___x_10892_ = l_Lean_Syntax_node1(v___x_10871_, v___x_10891_, v_term_10687_);
lean_inc_ref(v___x_10882_);
lean_inc_ref(v___x_10888_);
lean_inc(v___x_10871_);
v___x_10893_ = l_Lean_Syntax_node4(v___x_10871_, v___x_10883_, v___x_10888_, v___x_10882_, v___x_10890_, v___x_10892_);
lean_inc_ref(v___x_10882_);
lean_inc(v___x_10871_);
v___x_10894_ = l_Lean_Syntax_node3(v___x_10871_, v___x_10878_, v___x_10880_, v___x_10882_, v___x_10893_);
v___x_10895_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_10871_);
v___x_10896_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10896_, 0, v___x_10871_);
lean_ctor_set(v___x_10896_, 1, v___x_10895_);
lean_inc(v___x_10871_);
v___x_10897_ = l_Lean_Syntax_node1(v___x_10871_, v___x_10876_, v___x_10896_);
lean_inc(v___x_10871_);
v___x_10898_ = l_Lean_Syntax_node2(v___x_10871_, v___x_10877_, v___x_10894_, v___x_10897_);
v___x_10899_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
v___x_10900_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
lean_inc(v___x_10871_);
v___x_10901_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10901_, 0, v___x_10871_);
lean_ctor_set(v___x_10901_, 1, v___x_10900_);
lean_inc(v___x_10871_);
v___x_10902_ = l_Lean_Syntax_node1(v___x_10871_, v___x_10876_, v___x_10888_);
lean_inc(v___x_10871_);
v___x_10903_ = l_Lean_Syntax_node2(v___x_10871_, v___x_10899_, v___x_10901_, v___x_10902_);
lean_inc(v___x_10871_);
v___x_10904_ = l_Lean_Syntax_node2(v___x_10871_, v___x_10877_, v___x_10903_, v___x_10882_);
lean_inc(v___x_10871_);
v___x_10905_ = l_Lean_Syntax_node2(v___x_10871_, v___x_10876_, v___x_10898_, v___x_10904_);
lean_inc(v___x_10871_);
v___x_10906_ = l_Lean_Syntax_node1(v___x_10871_, v___x_10875_, v___x_10905_);
v___x_10907_ = l_Lean_Syntax_node2(v___x_10871_, v___x_10873_, v___x_10874_, v___x_10906_);
v___x_10908_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_10907_);
lean_dec(v___x_10907_);
v___x_10909_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_10909_, 0, v___x_10908_);
lean_ctor_set(v___x_10909_, 1, v_a_10803_);
return v___x_10909_;
}
}
else
{
lean_object* v_a_10910_; lean_object* v_a_10911_; lean_object* v_quotContext_10912_; lean_object* v_currMacroScope_10913_; lean_object* v_ref_10914_; lean_object* v___x_10915_; lean_object* v___x_10916_; lean_object* v___x_10917_; lean_object* v___x_10918_; lean_object* v___x_10919_; lean_object* v___x_10920_; lean_object* v___x_10921_; lean_object* v___x_10922_; lean_object* v___x_10923_; lean_object* v___x_10924_; lean_object* v___x_10925_; lean_object* v___x_10926_; lean_object* v___x_10927_; lean_object* v___x_10928_; lean_object* v___x_10929_; lean_object* v___x_10930_; lean_object* v___x_10931_; lean_object* v___x_10932_; lean_object* v___x_10933_; lean_object* v___x_10934_; lean_object* v___x_10935_; lean_object* v___x_10936_; lean_object* v___x_10937_; lean_object* v___x_10938_; lean_object* v___x_10939_; lean_object* v___x_10940_; lean_object* v___x_10941_; lean_object* v___x_10942_; lean_object* v___x_10943_; lean_object* v___x_10944_; lean_object* v___x_10945_; lean_object* v___x_10946_; lean_object* v___x_10947_; lean_object* v___x_10948_; lean_object* v___x_10949_; lean_object* v___x_10950_; lean_object* v___x_10951_; lean_object* v___x_10952_; lean_object* v___x_10953_; lean_object* v___x_10954_; lean_object* v___x_10955_; lean_object* v___x_10956_; lean_object* v___x_10957_; lean_object* v___x_10958_; lean_object* v___x_10959_; lean_object* v___x_10960_; lean_object* v___x_10961_; lean_object* v___x_10962_; lean_object* v___x_10963_; lean_object* v___x_10964_; lean_object* v___x_10965_; lean_object* v___x_10966_; lean_object* v___x_10967_; lean_object* v___x_10968_; lean_object* v___x_10969_; lean_object* v___x_10970_; lean_object* v___x_10971_; lean_object* v___x_10972_; lean_object* v___x_10973_; lean_object* v___x_10974_; lean_object* v___x_10975_; lean_object* v___x_10976_; lean_object* v___x_10977_; lean_object* v___x_10978_; lean_object* v___x_10979_; lean_object* v___x_10980_; lean_object* v___x_10981_; lean_object* v___x_10982_; lean_object* v___x_10983_; lean_object* v___x_10984_; lean_object* v___x_10985_; lean_object* v___x_10986_; lean_object* v___x_10987_; lean_object* v___x_10988_; lean_object* v___x_10989_; lean_object* v___x_10990_; lean_object* v___x_10991_; lean_object* v___x_10992_; lean_object* v___x_10993_; lean_object* v___x_10994_; lean_object* v___x_10995_; lean_object* v___x_10996_; lean_object* v___x_10997_; lean_object* v___x_10998_; lean_object* v___x_10999_; lean_object* v___x_11000_; lean_object* v___x_11001_; lean_object* v___x_11002_; lean_object* v___x_11003_; lean_object* v___x_11004_; lean_object* v___x_11005_; lean_object* v___x_11006_; lean_object* v___x_11007_; lean_object* v___x_11008_; lean_object* v___x_11009_; lean_object* v___x_11010_; lean_object* v___x_11011_; lean_object* v___x_11012_; lean_object* v___x_11013_; lean_object* v___x_11014_; lean_object* v___x_11015_; lean_object* v___x_11016_; lean_object* v___x_11017_; lean_object* v___x_11018_; lean_object* v___x_11019_; lean_object* v___x_11020_; lean_object* v___x_11021_; lean_object* v___x_11022_; lean_object* v___x_11023_; lean_object* v___x_11024_; lean_object* v___x_11025_; lean_object* v___x_11026_; lean_object* v___x_11027_; lean_object* v___x_11028_; lean_object* v___x_11029_; lean_object* v___x_11030_; lean_object* v___x_11031_; lean_object* v___x_11032_; lean_object* v___x_11033_; lean_object* v___x_11034_; lean_object* v___x_11035_; 
v_a_10910_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_10910_);
v_a_10911_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_10911_);
lean_dec_ref(v___x_10694_);
v_quotContext_10912_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_10912_);
v_currMacroScope_10913_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_10913_);
v_ref_10914_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_10914_);
lean_dec_ref(v_a_10692_);
v___x_10915_ = l_Lean_SourceInfo_fromRef(v_ref_10914_, v_a_10689_);
lean_dec(v_ref_10914_);
v___x_10916_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_10917_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_10915_);
v___x_10918_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10918_, 0, v___x_10915_);
lean_ctor_set(v___x_10918_, 1, v___x_10916_);
v___x_10919_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_10920_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_10921_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_10922_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_10923_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_10915_);
v___x_10924_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10924_, 0, v___x_10915_);
lean_ctor_set(v___x_10924_, 1, v___x_10923_);
v___x_10925_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_10915_);
v___x_10926_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_10926_, 0, v___x_10915_);
lean_ctor_set(v___x_10926_, 1, v___x_10920_);
lean_ctor_set(v___x_10926_, 2, v___x_10925_);
v___x_10927_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_10928_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_10929_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_10913_);
lean_inc(v_quotContext_10912_);
v___x_10930_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_10929_, v_currMacroScope_10913_);
v___x_10931_ = lean_box(0);
lean_inc(v___x_10915_);
v___x_10932_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10932_, 0, v___x_10915_);
lean_ctor_set(v___x_10932_, 1, v___x_10928_);
lean_ctor_set(v___x_10932_, 2, v___x_10930_);
lean_ctor_set(v___x_10932_, 3, v___x_10931_);
v___x_10933_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_10915_);
v___x_10934_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10934_, 0, v___x_10915_);
lean_ctor_set(v___x_10934_, 1, v___x_10933_);
v___x_10935_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_10915_);
v___x_10936_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10935_, v_term_10687_);
lean_inc_ref(v___x_10926_);
lean_inc_ref(v___x_10932_);
lean_inc(v___x_10915_);
v___x_10937_ = l_Lean_Syntax_node4(v___x_10915_, v___x_10927_, v___x_10932_, v___x_10926_, v___x_10934_, v___x_10936_);
lean_inc_ref(v___x_10926_);
lean_inc(v___x_10915_);
v___x_10938_ = l_Lean_Syntax_node3(v___x_10915_, v___x_10922_, v___x_10924_, v___x_10926_, v___x_10937_);
v___x_10939_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_10915_);
v___x_10940_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10940_, 0, v___x_10915_);
lean_ctor_set(v___x_10940_, 1, v___x_10939_);
lean_inc(v___x_10915_);
v___x_10941_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10940_);
lean_inc(v___x_10941_);
lean_inc(v___x_10915_);
v___x_10942_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_10938_, v___x_10941_);
v___x_10943_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_10944_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_10915_);
v___x_10945_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10945_, 0, v___x_10915_);
lean_ctor_set(v___x_10945_, 1, v___x_10944_);
v___x_10946_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_10926_);
lean_inc(v___x_10915_);
v___x_10947_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10946_, v___x_10926_, v___x_10932_);
lean_inc(v___x_10915_);
v___x_10948_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10947_);
v___x_10949_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_10915_);
v___x_10950_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10950_, 0, v___x_10915_);
lean_ctor_set(v___x_10950_, 1, v___x_10949_);
v___x_10951_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_10952_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_10953_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_10915_);
v___x_10954_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10954_, 0, v___x_10915_);
lean_ctor_set(v___x_10954_, 1, v___x_10953_);
v___x_10955_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_10956_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6));
v___x_10957_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_10915_);
v___x_10958_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10958_, 0, v___x_10915_);
lean_ctor_set(v___x_10958_, 1, v___x_10957_);
v___x_10959_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20);
v___x_10960_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__21));
lean_inc(v_currMacroScope_10913_);
lean_inc(v_quotContext_10912_);
v___x_10961_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_10960_, v_currMacroScope_10913_);
lean_inc(v___x_10915_);
v___x_10962_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10962_, 0, v___x_10915_);
lean_ctor_set(v___x_10962_, 1, v___x_10959_);
lean_ctor_set(v___x_10962_, 2, v___x_10961_);
lean_ctor_set(v___x_10962_, 3, v___x_10931_);
lean_inc_ref(v___x_10958_);
lean_inc(v___x_10915_);
v___x_10963_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10956_, v___x_10958_, v___x_10962_);
v___x_10964_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23);
v___x_10965_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24));
lean_inc(v_currMacroScope_10913_);
lean_inc(v_quotContext_10912_);
v___x_10966_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_10965_, v_currMacroScope_10913_);
lean_inc(v___x_10915_);
v___x_10967_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10967_, 0, v___x_10915_);
lean_ctor_set(v___x_10967_, 1, v___x_10964_);
lean_ctor_set(v___x_10967_, 2, v___x_10966_);
lean_ctor_set(v___x_10967_, 3, v___x_10931_);
v___x_10968_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10);
v___x_10969_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11));
lean_inc(v_currMacroScope_10913_);
lean_inc(v_quotContext_10912_);
v___x_10970_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_10969_, v_currMacroScope_10913_);
lean_inc(v___x_10915_);
v___x_10971_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10971_, 0, v___x_10915_);
lean_ctor_set(v___x_10971_, 1, v___x_10968_);
lean_ctor_set(v___x_10971_, 2, v___x_10970_);
lean_ctor_set(v___x_10971_, 3, v___x_10931_);
lean_inc_ref(v___x_10971_);
lean_inc_ref(v___x_10967_);
lean_inc(v___x_10915_);
v___x_10972_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10920_, v___x_10967_, v___x_10971_);
lean_inc(v___x_10915_);
v___x_10973_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10955_, v___x_10963_, v___x_10972_);
lean_inc(v___x_10915_);
v___x_10974_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10973_);
lean_inc(v___x_10915_);
v___x_10975_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10974_);
v___x_10976_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_10915_);
v___x_10977_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10977_, 0, v___x_10915_);
lean_ctor_set(v___x_10977_, 1, v___x_10976_);
v___x_10978_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_10979_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_10980_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_10915_);
v___x_10981_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10981_, 0, v___x_10915_);
lean_ctor_set(v___x_10981_, 1, v___x_10980_);
lean_inc_ref(v___x_10971_);
lean_inc_ref_n(v___x_10926_, 2);
lean_inc(v___x_10915_);
v___x_10982_ = l_Lean_Syntax_node5(v___x_10915_, v___x_10979_, v_a_10910_, v___x_10926_, v___x_10926_, v___x_10981_, v___x_10971_);
lean_inc(v___x_10915_);
v___x_10983_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10978_, v___x_10982_);
lean_inc(v___x_10915_);
v___x_10984_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_10983_, v___x_10941_);
v___x_10985_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
v___x_10986_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
lean_inc(v___x_10915_);
v___x_10987_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_10987_, 0, v___x_10915_);
lean_ctor_set(v___x_10987_, 1, v___x_10986_);
lean_inc(v___x_10915_);
v___x_10988_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10967_);
lean_inc(v___x_10915_);
v___x_10989_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10985_, v___x_10987_, v___x_10988_);
lean_inc_ref(v___x_10926_);
lean_inc(v___x_10915_);
v___x_10990_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_10989_, v___x_10926_);
lean_inc(v___x_10984_);
lean_inc(v___x_10915_);
v___x_10991_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10920_, v___x_10984_, v___x_10990_);
lean_inc(v___x_10915_);
v___x_10992_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10919_, v___x_10991_);
lean_inc_ref(v___x_10977_);
lean_inc_ref(v___x_10954_);
lean_inc(v___x_10915_);
v___x_10993_ = l_Lean_Syntax_node4(v___x_10915_, v___x_10952_, v___x_10954_, v___x_10975_, v___x_10977_, v___x_10992_);
v___x_10994_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
v___x_10995_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7);
v___x_10996_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8));
lean_inc(v_currMacroScope_10913_);
lean_inc(v_quotContext_10912_);
v___x_10997_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_10996_, v_currMacroScope_10913_);
lean_inc(v___x_10915_);
v___x_10998_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_10998_, 0, v___x_10915_);
lean_ctor_set(v___x_10998_, 1, v___x_10995_);
lean_ctor_set(v___x_10998_, 2, v___x_10997_);
lean_ctor_set(v___x_10998_, 3, v___x_10931_);
lean_inc_ref(v___x_10958_);
lean_inc(v___x_10915_);
v___x_10999_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10956_, v___x_10958_, v___x_10998_);
lean_inc(v___x_10915_);
v___x_11000_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_10971_);
lean_inc(v___x_11000_);
lean_inc(v___x_10915_);
v___x_11001_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10955_, v___x_10999_, v___x_11000_);
lean_inc(v___x_10915_);
v___x_11002_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_11001_);
lean_inc(v___x_10915_);
v___x_11003_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_11002_);
v___x_11004_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
lean_inc(v___x_10915_);
v___x_11005_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11005_, 0, v___x_10915_);
lean_ctor_set(v___x_11005_, 1, v___x_10994_);
lean_inc(v___x_10915_);
v___x_11006_ = l_Lean_Syntax_node1(v___x_10915_, v___x_11004_, v___x_11005_);
lean_inc_ref(v___x_10926_);
lean_inc(v___x_10915_);
v___x_11007_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_11006_, v___x_10926_);
lean_inc(v___x_10984_);
lean_inc(v___x_10915_);
v___x_11008_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10920_, v___x_10984_, v___x_11007_);
lean_inc(v___x_10915_);
v___x_11009_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10919_, v___x_11008_);
lean_inc_ref(v___x_10977_);
lean_inc_ref(v___x_10954_);
lean_inc(v___x_10915_);
v___x_11010_ = l_Lean_Syntax_node4(v___x_10915_, v___x_10952_, v___x_10954_, v___x_11003_, v___x_10977_, v___x_11009_);
v___x_11011_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19));
v___x_11012_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14);
v___x_11013_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15));
v___x_11014_ = l_Lean_addMacroScope(v_quotContext_10912_, v___x_11013_, v_currMacroScope_10913_);
lean_inc(v___x_10915_);
v___x_11015_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11015_, 0, v___x_10915_);
lean_ctor_set(v___x_11015_, 1, v___x_11012_);
lean_ctor_set(v___x_11015_, 2, v___x_11014_);
lean_ctor_set(v___x_11015_, 3, v___x_10931_);
lean_inc(v___x_10915_);
v___x_11016_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10956_, v___x_10958_, v___x_11015_);
lean_inc(v___x_10915_);
v___x_11017_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10955_, v___x_11016_, v___x_11000_);
lean_inc(v___x_10915_);
v___x_11018_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_11017_);
lean_inc(v___x_10915_);
v___x_11019_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10920_, v___x_11018_);
v___x_11020_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17));
lean_inc(v___x_10915_);
v___x_11021_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11021_, 0, v___x_10915_);
lean_ctor_set(v___x_11021_, 1, v___x_11011_);
lean_inc(v___x_10915_);
v___x_11022_ = l_Lean_Syntax_node1(v___x_10915_, v___x_11020_, v___x_11021_);
lean_inc_ref(v___x_10926_);
lean_inc(v___x_10915_);
v___x_11023_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_11022_, v___x_10926_);
lean_inc(v___x_10915_);
v___x_11024_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10920_, v___x_10984_, v___x_11023_);
lean_inc(v___x_10915_);
v___x_11025_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10919_, v___x_11024_);
lean_inc(v___x_10915_);
v___x_11026_ = l_Lean_Syntax_node4(v___x_10915_, v___x_10952_, v___x_10954_, v___x_11019_, v___x_10977_, v___x_11025_);
lean_inc(v___x_10915_);
v___x_11027_ = l_Lean_Syntax_node3(v___x_10915_, v___x_10920_, v___x_10993_, v___x_11010_, v___x_11026_);
lean_inc(v___x_10915_);
v___x_11028_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10951_, v___x_11027_);
lean_inc_ref_n(v___x_10926_, 3);
lean_inc(v___x_10915_);
v___x_11029_ = l_Lean_Syntax_node7(v___x_10915_, v___x_10943_, v___x_10945_, v___x_10926_, v___x_10926_, v___x_10926_, v___x_10948_, v___x_10950_, v___x_11028_);
lean_inc(v___x_10915_);
v___x_11030_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10921_, v___x_11029_, v___x_10926_);
lean_inc(v___x_10915_);
v___x_11031_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10920_, v___x_10942_, v___x_11030_);
lean_inc(v___x_10915_);
v___x_11032_ = l_Lean_Syntax_node1(v___x_10915_, v___x_10919_, v___x_11031_);
v___x_11033_ = l_Lean_Syntax_node2(v___x_10915_, v___x_10917_, v___x_10918_, v___x_11032_);
v___x_11034_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11033_);
lean_dec(v___x_11033_);
v___x_11035_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11035_, 0, v___x_11034_);
lean_ctor_set(v___x_11035_, 1, v_a_10911_);
return v___x_11035_;
}
}
}
else
{
if (v_r_10690_ == 0)
{
if (v_bc_10691_ == 0)
{
lean_object* v_a_11036_; lean_object* v_a_11037_; lean_object* v___x_11038_; lean_object* v___x_11039_; uint8_t v___x_11040_; 
v_a_11036_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_11036_);
v_a_11037_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_11037_);
lean_dec_ref(v___x_10694_);
v___x_11038_ = lean_array_get_size(v_uvars_10688_);
v___x_11039_ = lean_unsigned_to_nat(0u);
v___x_11040_ = lean_nat_dec_eq(v___x_11038_, v___x_11039_);
if (v___x_11040_ == 0)
{
lean_object* v_quotContext_11041_; lean_object* v_currMacroScope_11042_; lean_object* v_ref_11043_; lean_object* v___x_11044_; lean_object* v___x_11045_; lean_object* v___x_11046_; lean_object* v___x_11047_; lean_object* v___x_11048_; lean_object* v___x_11049_; lean_object* v___x_11050_; lean_object* v___x_11051_; lean_object* v___x_11052_; lean_object* v___x_11053_; lean_object* v___x_11054_; lean_object* v___x_11055_; lean_object* v___x_11056_; lean_object* v___x_11057_; lean_object* v___x_11058_; lean_object* v___x_11059_; lean_object* v___x_11060_; lean_object* v___x_11061_; lean_object* v___x_11062_; lean_object* v___x_11063_; lean_object* v___x_11064_; lean_object* v___x_11065_; lean_object* v___x_11066_; lean_object* v___x_11067_; lean_object* v___x_11068_; lean_object* v___x_11069_; lean_object* v___x_11070_; lean_object* v___x_11071_; lean_object* v___x_11072_; lean_object* v___x_11073_; lean_object* v___x_11074_; lean_object* v___x_11075_; lean_object* v___x_11076_; lean_object* v___x_11077_; lean_object* v___x_11078_; lean_object* v___x_11079_; lean_object* v___x_11080_; lean_object* v___x_11081_; lean_object* v___x_11082_; lean_object* v___x_11083_; lean_object* v___x_11084_; lean_object* v___x_11085_; lean_object* v___x_11086_; lean_object* v___x_11087_; lean_object* v___x_11088_; lean_object* v___x_11089_; lean_object* v___x_11090_; lean_object* v___x_11091_; lean_object* v___x_11092_; lean_object* v___x_11093_; lean_object* v___x_11094_; lean_object* v___x_11095_; lean_object* v___x_11096_; lean_object* v___x_11097_; lean_object* v___x_11098_; lean_object* v___x_11099_; lean_object* v___x_11100_; lean_object* v___x_11101_; lean_object* v___x_11102_; lean_object* v___x_11103_; lean_object* v___x_11104_; lean_object* v___x_11105_; 
v_quotContext_11041_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_11041_);
v_currMacroScope_11042_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_11042_);
v_ref_11043_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_11043_);
lean_dec_ref(v_a_10692_);
v___x_11044_ = l_Lean_SourceInfo_fromRef(v_ref_11043_, v_bc_10691_);
lean_dec(v_ref_11043_);
v___x_11045_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_11046_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_11044_);
v___x_11047_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11047_, 0, v___x_11044_);
lean_ctor_set(v___x_11047_, 1, v___x_11045_);
v___x_11048_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_11049_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_11050_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_11051_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_11052_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_11044_);
v___x_11053_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11053_, 0, v___x_11044_);
lean_ctor_set(v___x_11053_, 1, v___x_11052_);
v___x_11054_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_11044_);
v___x_11055_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_11055_, 0, v___x_11044_);
lean_ctor_set(v___x_11055_, 1, v___x_11049_);
lean_ctor_set(v___x_11055_, 2, v___x_11054_);
v___x_11056_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_11057_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_11058_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_11042_);
lean_inc(v_quotContext_11041_);
v___x_11059_ = l_Lean_addMacroScope(v_quotContext_11041_, v___x_11058_, v_currMacroScope_11042_);
v___x_11060_ = lean_box(0);
lean_inc(v___x_11044_);
v___x_11061_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11061_, 0, v___x_11044_);
lean_ctor_set(v___x_11061_, 1, v___x_11057_);
lean_ctor_set(v___x_11061_, 2, v___x_11059_);
lean_ctor_set(v___x_11061_, 3, v___x_11060_);
v___x_11062_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_11044_);
v___x_11063_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11063_, 0, v___x_11044_);
lean_ctor_set(v___x_11063_, 1, v___x_11062_);
v___x_11064_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_11044_);
v___x_11065_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11064_, v_term_10687_);
lean_inc_ref(v___x_11055_);
lean_inc_ref(v___x_11061_);
lean_inc(v___x_11044_);
v___x_11066_ = l_Lean_Syntax_node4(v___x_11044_, v___x_11056_, v___x_11061_, v___x_11055_, v___x_11063_, v___x_11065_);
lean_inc_ref(v___x_11055_);
lean_inc(v___x_11044_);
v___x_11067_ = l_Lean_Syntax_node3(v___x_11044_, v___x_11051_, v___x_11053_, v___x_11055_, v___x_11066_);
v___x_11068_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_11044_);
v___x_11069_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11069_, 0, v___x_11044_);
lean_ctor_set(v___x_11069_, 1, v___x_11068_);
lean_inc(v___x_11044_);
v___x_11070_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11049_, v___x_11069_);
lean_inc(v___x_11070_);
lean_inc(v___x_11044_);
v___x_11071_ = l_Lean_Syntax_node2(v___x_11044_, v___x_11050_, v___x_11067_, v___x_11070_);
v___x_11072_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_11073_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_11074_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_11044_);
v___x_11075_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11075_, 0, v___x_11044_);
lean_ctor_set(v___x_11075_, 1, v___x_11074_);
v___x_11076_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_11077_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_11044_);
v___x_11078_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11078_, 0, v___x_11044_);
lean_ctor_set(v___x_11078_, 1, v___x_11077_);
v___x_11079_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_11080_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v___x_11044_);
v___x_11081_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11081_, 0, v___x_11044_);
lean_ctor_set(v___x_11081_, 1, v___x_11080_);
lean_inc(v___x_11044_);
v___x_11082_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11079_, v___x_11081_);
lean_inc_ref(v___x_11078_);
lean_inc_ref(v___x_11061_);
lean_inc(v___x_11044_);
v___x_11083_ = l_Lean_Syntax_node3(v___x_11044_, v___x_11076_, v___x_11061_, v___x_11078_, v___x_11082_);
lean_inc_ref_n(v___x_11055_, 2);
lean_inc(v___x_11044_);
v___x_11084_ = l_Lean_Syntax_node5(v___x_11044_, v___x_11073_, v_a_11036_, v___x_11055_, v___x_11055_, v___x_11075_, v___x_11083_);
lean_inc(v___x_11044_);
v___x_11085_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11072_, v___x_11084_);
lean_inc(v___x_11044_);
v___x_11086_ = l_Lean_Syntax_node2(v___x_11044_, v___x_11050_, v___x_11085_, v___x_11070_);
v___x_11087_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_11088_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_11089_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
v___x_11090_ = l_Lean_addMacroScope(v_quotContext_11041_, v___x_11089_, v_currMacroScope_11042_);
v___x_11091_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v___x_11044_);
v___x_11092_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11092_, 0, v___x_11044_);
lean_ctor_set(v___x_11092_, 1, v___x_11088_);
lean_ctor_set(v___x_11092_, 2, v___x_11090_);
lean_ctor_set(v___x_11092_, 3, v___x_11091_);
v___x_11093_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12));
lean_inc(v___x_11044_);
v___x_11094_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11094_, 0, v___x_11044_);
lean_ctor_set(v___x_11094_, 1, v___x_11093_);
lean_inc(v___x_11044_);
v___x_11095_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11079_, v___x_11094_);
lean_inc(v___x_11044_);
v___x_11096_ = l_Lean_Syntax_node3(v___x_11044_, v___x_11076_, v___x_11061_, v___x_11078_, v___x_11095_);
lean_inc(v___x_11044_);
v___x_11097_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11049_, v___x_11096_);
lean_inc(v___x_11044_);
v___x_11098_ = l_Lean_Syntax_node2(v___x_11044_, v___x_11087_, v___x_11092_, v___x_11097_);
lean_inc(v___x_11044_);
v___x_11099_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11064_, v___x_11098_);
lean_inc(v___x_11044_);
v___x_11100_ = l_Lean_Syntax_node2(v___x_11044_, v___x_11050_, v___x_11099_, v___x_11055_);
lean_inc(v___x_11044_);
v___x_11101_ = l_Lean_Syntax_node3(v___x_11044_, v___x_11049_, v___x_11071_, v___x_11086_, v___x_11100_);
lean_inc(v___x_11044_);
v___x_11102_ = l_Lean_Syntax_node1(v___x_11044_, v___x_11048_, v___x_11101_);
v___x_11103_ = l_Lean_Syntax_node2(v___x_11044_, v___x_11046_, v___x_11047_, v___x_11102_);
v___x_11104_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11103_);
lean_dec(v___x_11103_);
v___x_11105_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11105_, 0, v___x_11104_);
lean_ctor_set(v___x_11105_, 1, v_a_11037_);
return v___x_11105_;
}
else
{
lean_object* v_ref_11106_; lean_object* v___x_11107_; lean_object* v___x_11108_; lean_object* v___x_11109_; lean_object* v___x_11110_; lean_object* v___x_11111_; lean_object* v___x_11112_; lean_object* v___x_11113_; lean_object* v___x_11114_; lean_object* v___x_11115_; lean_object* v___x_11116_; lean_object* v___x_11117_; lean_object* v___x_11118_; lean_object* v___x_11119_; lean_object* v___x_11120_; lean_object* v___x_11121_; lean_object* v___x_11122_; lean_object* v___x_11123_; 
lean_dec(v_a_11036_);
v_ref_11106_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_11106_);
lean_dec_ref(v_a_10692_);
v___x_11107_ = l_Lean_SourceInfo_fromRef(v_ref_11106_, v_bc_10691_);
lean_dec(v_ref_11106_);
v___x_11108_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_11109_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_11107_);
v___x_11110_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11110_, 0, v___x_11107_);
lean_ctor_set(v___x_11110_, 1, v___x_11108_);
v___x_11111_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_11112_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_11113_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_11114_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_11107_);
v___x_11115_ = l_Lean_Syntax_node1(v___x_11107_, v___x_11114_, v_term_10687_);
v___x_11116_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_11107_);
v___x_11117_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_11117_, 0, v___x_11107_);
lean_ctor_set(v___x_11117_, 1, v___x_11112_);
lean_ctor_set(v___x_11117_, 2, v___x_11116_);
lean_inc(v___x_11107_);
v___x_11118_ = l_Lean_Syntax_node2(v___x_11107_, v___x_11113_, v___x_11115_, v___x_11117_);
lean_inc(v___x_11107_);
v___x_11119_ = l_Lean_Syntax_node1(v___x_11107_, v___x_11112_, v___x_11118_);
lean_inc(v___x_11107_);
v___x_11120_ = l_Lean_Syntax_node1(v___x_11107_, v___x_11111_, v___x_11119_);
v___x_11121_ = l_Lean_Syntax_node2(v___x_11107_, v___x_11109_, v___x_11110_, v___x_11120_);
v___x_11122_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11121_);
lean_dec(v___x_11121_);
v___x_11123_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11123_, 0, v___x_11122_);
lean_ctor_set(v___x_11123_, 1, v_a_11037_);
return v___x_11123_;
}
}
else
{
lean_object* v_a_11124_; lean_object* v_a_11125_; lean_object* v_quotContext_11126_; lean_object* v_currMacroScope_11127_; lean_object* v_ref_11128_; lean_object* v___x_11129_; lean_object* v___x_11130_; lean_object* v___x_11131_; lean_object* v___x_11132_; lean_object* v___x_11133_; lean_object* v___x_11134_; lean_object* v___x_11135_; lean_object* v___x_11136_; lean_object* v___x_11137_; lean_object* v___x_11138_; lean_object* v___x_11139_; lean_object* v___x_11140_; lean_object* v___x_11141_; lean_object* v___x_11142_; lean_object* v___x_11143_; lean_object* v___x_11144_; lean_object* v___x_11145_; lean_object* v___x_11146_; lean_object* v___x_11147_; lean_object* v___x_11148_; lean_object* v___x_11149_; lean_object* v___x_11150_; lean_object* v___x_11151_; lean_object* v___x_11152_; lean_object* v___x_11153_; lean_object* v___x_11154_; lean_object* v___x_11155_; lean_object* v___x_11156_; lean_object* v___x_11157_; lean_object* v___x_11158_; lean_object* v___x_11159_; lean_object* v___x_11160_; lean_object* v___x_11161_; lean_object* v___x_11162_; lean_object* v___x_11163_; lean_object* v___x_11164_; lean_object* v___x_11165_; lean_object* v___x_11166_; lean_object* v___x_11167_; lean_object* v___x_11168_; lean_object* v___x_11169_; lean_object* v___x_11170_; lean_object* v___x_11171_; lean_object* v___x_11172_; lean_object* v___x_11173_; lean_object* v___x_11174_; lean_object* v___x_11175_; lean_object* v___x_11176_; lean_object* v___x_11177_; lean_object* v___x_11178_; lean_object* v___x_11179_; lean_object* v___x_11180_; lean_object* v___x_11181_; lean_object* v___x_11182_; lean_object* v___x_11183_; lean_object* v___x_11184_; lean_object* v___x_11185_; lean_object* v___x_11186_; lean_object* v___x_11187_; lean_object* v___x_11188_; lean_object* v___x_11189_; lean_object* v___x_11190_; lean_object* v___x_11191_; lean_object* v___x_11192_; lean_object* v___x_11193_; lean_object* v___x_11194_; lean_object* v___x_11195_; lean_object* v___x_11196_; lean_object* v___x_11197_; lean_object* v___x_11198_; lean_object* v___x_11199_; lean_object* v___x_11200_; lean_object* v___x_11201_; lean_object* v___x_11202_; lean_object* v___x_11203_; lean_object* v___x_11204_; lean_object* v___x_11205_; lean_object* v___x_11206_; lean_object* v___x_11207_; lean_object* v___x_11208_; lean_object* v___x_11209_; lean_object* v___x_11210_; lean_object* v___x_11211_; lean_object* v___x_11212_; lean_object* v___x_11213_; lean_object* v___x_11214_; lean_object* v___x_11215_; lean_object* v___x_11216_; lean_object* v___x_11217_; lean_object* v___x_11218_; lean_object* v___x_11219_; lean_object* v___x_11220_; lean_object* v___x_11221_; lean_object* v___x_11222_; lean_object* v___x_11223_; lean_object* v___x_11224_; lean_object* v___x_11225_; lean_object* v___x_11226_; lean_object* v___x_11227_; lean_object* v___x_11228_; lean_object* v___x_11229_; lean_object* v___x_11230_; lean_object* v___x_11231_; lean_object* v___x_11232_; lean_object* v___x_11233_; lean_object* v___x_11234_; lean_object* v___x_11235_; lean_object* v___x_11236_; lean_object* v___x_11237_; lean_object* v___x_11238_; lean_object* v___x_11239_; lean_object* v___x_11240_; lean_object* v___x_11241_; lean_object* v___x_11242_; lean_object* v___x_11243_; lean_object* v___x_11244_; lean_object* v___x_11245_; lean_object* v___x_11246_; lean_object* v___x_11247_; lean_object* v___x_11248_; lean_object* v___x_11249_; lean_object* v___x_11250_; lean_object* v___x_11251_; lean_object* v___x_11252_; 
v_a_11124_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_11124_);
v_a_11125_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_11125_);
lean_dec_ref(v___x_10694_);
v_quotContext_11126_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_11126_);
v_currMacroScope_11127_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_11127_);
v_ref_11128_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_11128_);
lean_dec_ref(v_a_10692_);
v___x_11129_ = l_Lean_SourceInfo_fromRef(v_ref_11128_, v_r_10690_);
lean_dec(v_ref_11128_);
v___x_11130_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_11131_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_11129_);
v___x_11132_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11132_, 0, v___x_11129_);
lean_ctor_set(v___x_11132_, 1, v___x_11130_);
v___x_11133_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_11134_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_11135_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_11136_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_11137_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_11129_);
v___x_11138_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11138_, 0, v___x_11129_);
lean_ctor_set(v___x_11138_, 1, v___x_11137_);
v___x_11139_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_11129_);
v___x_11140_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_11140_, 0, v___x_11129_);
lean_ctor_set(v___x_11140_, 1, v___x_11134_);
lean_ctor_set(v___x_11140_, 2, v___x_11139_);
v___x_11141_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_11142_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_11143_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11144_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11143_, v_currMacroScope_11127_);
v___x_11145_ = lean_box(0);
lean_inc(v___x_11129_);
v___x_11146_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11146_, 0, v___x_11129_);
lean_ctor_set(v___x_11146_, 1, v___x_11142_);
lean_ctor_set(v___x_11146_, 2, v___x_11144_);
lean_ctor_set(v___x_11146_, 3, v___x_11145_);
v___x_11147_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_11129_);
v___x_11148_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11148_, 0, v___x_11129_);
lean_ctor_set(v___x_11148_, 1, v___x_11147_);
v___x_11149_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_11129_);
v___x_11150_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11149_, v_term_10687_);
lean_inc_ref(v___x_11140_);
lean_inc_ref(v___x_11146_);
lean_inc(v___x_11129_);
v___x_11151_ = l_Lean_Syntax_node4(v___x_11129_, v___x_11141_, v___x_11146_, v___x_11140_, v___x_11148_, v___x_11150_);
lean_inc_ref(v___x_11140_);
lean_inc(v___x_11129_);
v___x_11152_ = l_Lean_Syntax_node3(v___x_11129_, v___x_11136_, v___x_11138_, v___x_11140_, v___x_11151_);
v___x_11153_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_11129_);
v___x_11154_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11154_, 0, v___x_11129_);
lean_ctor_set(v___x_11154_, 1, v___x_11153_);
lean_inc(v___x_11129_);
v___x_11155_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11154_);
lean_inc(v___x_11155_);
lean_inc(v___x_11129_);
v___x_11156_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11152_, v___x_11155_);
v___x_11157_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_11158_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_11129_);
v___x_11159_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11159_, 0, v___x_11129_);
lean_ctor_set(v___x_11159_, 1, v___x_11158_);
v___x_11160_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_11140_);
lean_inc(v___x_11129_);
v___x_11161_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11160_, v___x_11140_, v___x_11146_);
lean_inc(v___x_11129_);
v___x_11162_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11161_);
v___x_11163_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_11129_);
v___x_11164_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11164_, 0, v___x_11129_);
lean_ctor_set(v___x_11164_, 1, v___x_11163_);
v___x_11165_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_11166_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_11167_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_11129_);
v___x_11168_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11168_, 0, v___x_11129_);
lean_ctor_set(v___x_11168_, 1, v___x_11167_);
v___x_11169_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_11170_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6));
v___x_11171_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_11129_);
v___x_11172_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11172_, 0, v___x_11129_);
lean_ctor_set(v___x_11172_, 1, v___x_11171_);
v___x_11173_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__20);
v___x_11174_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__21));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11175_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11174_, v_currMacroScope_11127_);
lean_inc(v___x_11129_);
v___x_11176_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11176_, 0, v___x_11129_);
lean_ctor_set(v___x_11176_, 1, v___x_11173_);
lean_ctor_set(v___x_11176_, 2, v___x_11175_);
lean_ctor_set(v___x_11176_, 3, v___x_11145_);
lean_inc_ref(v___x_11172_);
lean_inc(v___x_11129_);
v___x_11177_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11170_, v___x_11172_, v___x_11176_);
v___x_11178_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23);
v___x_11179_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11180_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11179_, v_currMacroScope_11127_);
lean_inc(v___x_11129_);
v___x_11181_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11181_, 0, v___x_11129_);
lean_ctor_set(v___x_11181_, 1, v___x_11178_);
lean_ctor_set(v___x_11181_, 2, v___x_11180_);
lean_ctor_set(v___x_11181_, 3, v___x_11145_);
v___x_11182_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10);
v___x_11183_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11184_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11183_, v_currMacroScope_11127_);
lean_inc(v___x_11129_);
v___x_11185_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11185_, 0, v___x_11129_);
lean_ctor_set(v___x_11185_, 1, v___x_11182_);
lean_ctor_set(v___x_11185_, 2, v___x_11184_);
lean_ctor_set(v___x_11185_, 3, v___x_11145_);
lean_inc_ref(v___x_11185_);
lean_inc_ref(v___x_11181_);
lean_inc(v___x_11129_);
v___x_11186_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11134_, v___x_11181_, v___x_11185_);
lean_inc(v___x_11129_);
v___x_11187_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11169_, v___x_11177_, v___x_11186_);
lean_inc(v___x_11129_);
v___x_11188_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11187_);
lean_inc(v___x_11129_);
v___x_11189_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11188_);
v___x_11190_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_11129_);
v___x_11191_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11191_, 0, v___x_11129_);
lean_ctor_set(v___x_11191_, 1, v___x_11190_);
v___x_11192_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_11193_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_11194_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_11129_);
v___x_11195_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11195_, 0, v___x_11129_);
lean_ctor_set(v___x_11195_, 1, v___x_11194_);
lean_inc_ref(v___x_11185_);
lean_inc_ref_n(v___x_11140_, 2);
lean_inc(v___x_11129_);
v___x_11196_ = l_Lean_Syntax_node5(v___x_11129_, v___x_11193_, v_a_11124_, v___x_11140_, v___x_11140_, v___x_11195_, v___x_11185_);
lean_inc(v___x_11129_);
v___x_11197_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11192_, v___x_11196_);
lean_inc(v___x_11129_);
v___x_11198_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11197_, v___x_11155_);
v___x_11199_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_11200_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11201_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11200_, v_currMacroScope_11127_);
v___x_11202_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v___x_11129_);
v___x_11203_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11203_, 0, v___x_11129_);
lean_ctor_set(v___x_11203_, 1, v___x_11199_);
lean_ctor_set(v___x_11203_, 2, v___x_11201_);
lean_ctor_set(v___x_11203_, 3, v___x_11202_);
lean_inc(v___x_11129_);
v___x_11204_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11181_);
lean_inc(v___x_11129_);
v___x_11205_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11169_, v___x_11203_, v___x_11204_);
lean_inc(v___x_11129_);
v___x_11206_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11149_, v___x_11205_);
lean_inc_ref(v___x_11140_);
lean_inc(v___x_11129_);
v___x_11207_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11206_, v___x_11140_);
lean_inc(v___x_11198_);
lean_inc(v___x_11129_);
v___x_11208_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11134_, v___x_11198_, v___x_11207_);
lean_inc(v___x_11129_);
v___x_11209_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11133_, v___x_11208_);
lean_inc_ref(v___x_11191_);
lean_inc_ref(v___x_11168_);
lean_inc(v___x_11129_);
v___x_11210_ = l_Lean_Syntax_node4(v___x_11129_, v___x_11166_, v___x_11168_, v___x_11189_, v___x_11191_, v___x_11209_);
v___x_11211_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
v___x_11212_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7);
v___x_11213_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8));
lean_inc(v_currMacroScope_11127_);
lean_inc(v_quotContext_11126_);
v___x_11214_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11213_, v_currMacroScope_11127_);
lean_inc(v___x_11129_);
v___x_11215_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11215_, 0, v___x_11129_);
lean_ctor_set(v___x_11215_, 1, v___x_11212_);
lean_ctor_set(v___x_11215_, 2, v___x_11214_);
lean_ctor_set(v___x_11215_, 3, v___x_11145_);
lean_inc_ref(v___x_11172_);
lean_inc(v___x_11129_);
v___x_11216_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11170_, v___x_11172_, v___x_11215_);
lean_inc(v___x_11129_);
v___x_11217_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11185_);
lean_inc(v___x_11217_);
lean_inc(v___x_11129_);
v___x_11218_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11169_, v___x_11216_, v___x_11217_);
lean_inc(v___x_11129_);
v___x_11219_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11218_);
lean_inc(v___x_11129_);
v___x_11220_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11219_);
v___x_11221_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
lean_inc(v___x_11129_);
v___x_11222_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11222_, 0, v___x_11129_);
lean_ctor_set(v___x_11222_, 1, v___x_11211_);
lean_inc(v___x_11129_);
v___x_11223_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11221_, v___x_11222_);
lean_inc_ref(v___x_11140_);
lean_inc(v___x_11129_);
v___x_11224_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11223_, v___x_11140_);
lean_inc(v___x_11198_);
lean_inc(v___x_11129_);
v___x_11225_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11134_, v___x_11198_, v___x_11224_);
lean_inc(v___x_11129_);
v___x_11226_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11133_, v___x_11225_);
lean_inc_ref(v___x_11191_);
lean_inc_ref(v___x_11168_);
lean_inc(v___x_11129_);
v___x_11227_ = l_Lean_Syntax_node4(v___x_11129_, v___x_11166_, v___x_11168_, v___x_11220_, v___x_11191_, v___x_11226_);
v___x_11228_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19));
v___x_11229_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14);
v___x_11230_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15));
v___x_11231_ = l_Lean_addMacroScope(v_quotContext_11126_, v___x_11230_, v_currMacroScope_11127_);
lean_inc(v___x_11129_);
v___x_11232_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11232_, 0, v___x_11129_);
lean_ctor_set(v___x_11232_, 1, v___x_11229_);
lean_ctor_set(v___x_11232_, 2, v___x_11231_);
lean_ctor_set(v___x_11232_, 3, v___x_11145_);
lean_inc(v___x_11129_);
v___x_11233_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11170_, v___x_11172_, v___x_11232_);
lean_inc(v___x_11129_);
v___x_11234_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11169_, v___x_11233_, v___x_11217_);
lean_inc(v___x_11129_);
v___x_11235_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11234_);
lean_inc(v___x_11129_);
v___x_11236_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11134_, v___x_11235_);
v___x_11237_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17));
lean_inc(v___x_11129_);
v___x_11238_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11238_, 0, v___x_11129_);
lean_ctor_set(v___x_11238_, 1, v___x_11228_);
lean_inc(v___x_11129_);
v___x_11239_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11237_, v___x_11238_);
lean_inc_ref(v___x_11140_);
lean_inc(v___x_11129_);
v___x_11240_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11239_, v___x_11140_);
lean_inc(v___x_11129_);
v___x_11241_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11134_, v___x_11198_, v___x_11240_);
lean_inc(v___x_11129_);
v___x_11242_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11133_, v___x_11241_);
lean_inc(v___x_11129_);
v___x_11243_ = l_Lean_Syntax_node4(v___x_11129_, v___x_11166_, v___x_11168_, v___x_11236_, v___x_11191_, v___x_11242_);
lean_inc(v___x_11129_);
v___x_11244_ = l_Lean_Syntax_node3(v___x_11129_, v___x_11134_, v___x_11210_, v___x_11227_, v___x_11243_);
lean_inc(v___x_11129_);
v___x_11245_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11165_, v___x_11244_);
lean_inc_ref_n(v___x_11140_, 3);
lean_inc(v___x_11129_);
v___x_11246_ = l_Lean_Syntax_node7(v___x_11129_, v___x_11157_, v___x_11159_, v___x_11140_, v___x_11140_, v___x_11140_, v___x_11162_, v___x_11164_, v___x_11245_);
lean_inc(v___x_11129_);
v___x_11247_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11135_, v___x_11246_, v___x_11140_);
lean_inc(v___x_11129_);
v___x_11248_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11134_, v___x_11156_, v___x_11247_);
lean_inc(v___x_11129_);
v___x_11249_ = l_Lean_Syntax_node1(v___x_11129_, v___x_11133_, v___x_11248_);
v___x_11250_ = l_Lean_Syntax_node2(v___x_11129_, v___x_11131_, v___x_11132_, v___x_11249_);
v___x_11251_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11250_);
lean_dec(v___x_11250_);
v___x_11252_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11252_, 0, v___x_11251_);
lean_ctor_set(v___x_11252_, 1, v_a_11125_);
return v___x_11252_;
}
}
else
{
if (v_bc_10691_ == 0)
{
lean_object* v_a_11253_; lean_object* v_a_11254_; lean_object* v_quotContext_11255_; lean_object* v_currMacroScope_11256_; lean_object* v_ref_11257_; lean_object* v___x_11258_; lean_object* v___x_11259_; lean_object* v___x_11260_; lean_object* v___x_11261_; lean_object* v___x_11262_; lean_object* v___x_11263_; lean_object* v___x_11264_; lean_object* v___x_11265_; lean_object* v___x_11266_; lean_object* v___x_11267_; lean_object* v___x_11268_; lean_object* v___x_11269_; lean_object* v___x_11270_; lean_object* v___x_11271_; lean_object* v___x_11272_; lean_object* v___x_11273_; lean_object* v___x_11274_; lean_object* v___x_11275_; lean_object* v___x_11276_; lean_object* v___x_11277_; lean_object* v___x_11278_; lean_object* v___x_11279_; lean_object* v___x_11280_; lean_object* v___x_11281_; lean_object* v___x_11282_; lean_object* v___x_11283_; lean_object* v___x_11284_; lean_object* v___x_11285_; lean_object* v___x_11286_; lean_object* v___x_11287_; lean_object* v___x_11288_; lean_object* v___x_11289_; lean_object* v___x_11290_; lean_object* v___x_11291_; lean_object* v___x_11292_; lean_object* v___x_11293_; lean_object* v___x_11294_; lean_object* v___x_11295_; lean_object* v___x_11296_; lean_object* v___x_11297_; lean_object* v___x_11298_; lean_object* v___x_11299_; lean_object* v___x_11300_; lean_object* v___x_11301_; lean_object* v___x_11302_; lean_object* v___x_11303_; lean_object* v___x_11304_; lean_object* v___x_11305_; lean_object* v___x_11306_; lean_object* v___x_11307_; lean_object* v___x_11308_; lean_object* v___x_11309_; lean_object* v___x_11310_; lean_object* v___x_11311_; lean_object* v___x_11312_; lean_object* v___x_11313_; lean_object* v___x_11314_; lean_object* v___x_11315_; lean_object* v___x_11316_; lean_object* v___x_11317_; lean_object* v___x_11318_; lean_object* v___x_11319_; lean_object* v___x_11320_; lean_object* v___x_11321_; lean_object* v___x_11322_; lean_object* v___x_11323_; lean_object* v___x_11324_; lean_object* v___x_11325_; lean_object* v___x_11326_; lean_object* v___x_11327_; lean_object* v___x_11328_; lean_object* v___x_11329_; lean_object* v___x_11330_; lean_object* v___x_11331_; lean_object* v___x_11332_; lean_object* v___x_11333_; lean_object* v___x_11334_; lean_object* v___x_11335_; lean_object* v___x_11336_; lean_object* v___x_11337_; lean_object* v___x_11338_; lean_object* v___x_11339_; lean_object* v___x_11340_; lean_object* v___x_11341_; lean_object* v___x_11342_; lean_object* v___x_11343_; lean_object* v___x_11344_; lean_object* v___x_11345_; lean_object* v___x_11346_; lean_object* v___x_11347_; lean_object* v___x_11348_; lean_object* v___x_11349_; lean_object* v___x_11350_; lean_object* v___x_11351_; lean_object* v___x_11352_; lean_object* v___x_11353_; lean_object* v___x_11354_; lean_object* v___x_11355_; lean_object* v___x_11356_; lean_object* v___x_11357_; lean_object* v___x_11358_; lean_object* v___x_11359_; lean_object* v___x_11360_; lean_object* v___x_11361_; lean_object* v___x_11362_; lean_object* v___x_11363_; lean_object* v___x_11364_; lean_object* v___x_11365_; lean_object* v___x_11366_; 
v_a_11253_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_11253_);
v_a_11254_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_11254_);
lean_dec_ref(v___x_10694_);
v_quotContext_11255_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_11255_);
v_currMacroScope_11256_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_11256_);
v_ref_11257_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_11257_);
lean_dec_ref(v_a_10692_);
v___x_11258_ = l_Lean_SourceInfo_fromRef(v_ref_11257_, v_bc_10691_);
lean_dec(v_ref_11257_);
v___x_11259_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_11260_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_11258_);
v___x_11261_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11261_, 0, v___x_11258_);
lean_ctor_set(v___x_11261_, 1, v___x_11259_);
v___x_11262_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_11263_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_11264_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_11265_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_11266_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_11258_);
v___x_11267_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11267_, 0, v___x_11258_);
lean_ctor_set(v___x_11267_, 1, v___x_11266_);
v___x_11268_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_11258_);
v___x_11269_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_11269_, 0, v___x_11258_);
lean_ctor_set(v___x_11269_, 1, v___x_11263_);
lean_ctor_set(v___x_11269_, 2, v___x_11268_);
v___x_11270_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_11271_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_11272_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_11256_);
lean_inc(v_quotContext_11255_);
v___x_11273_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11272_, v_currMacroScope_11256_);
v___x_11274_ = lean_box(0);
lean_inc(v___x_11258_);
v___x_11275_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11275_, 0, v___x_11258_);
lean_ctor_set(v___x_11275_, 1, v___x_11271_);
lean_ctor_set(v___x_11275_, 2, v___x_11273_);
lean_ctor_set(v___x_11275_, 3, v___x_11274_);
v___x_11276_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_11258_);
v___x_11277_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11277_, 0, v___x_11258_);
lean_ctor_set(v___x_11277_, 1, v___x_11276_);
v___x_11278_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_11258_);
v___x_11279_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11278_, v_term_10687_);
lean_inc_ref(v___x_11269_);
lean_inc_ref(v___x_11275_);
lean_inc(v___x_11258_);
v___x_11280_ = l_Lean_Syntax_node4(v___x_11258_, v___x_11270_, v___x_11275_, v___x_11269_, v___x_11277_, v___x_11279_);
lean_inc_ref(v___x_11269_);
lean_inc(v___x_11258_);
v___x_11281_ = l_Lean_Syntax_node3(v___x_11258_, v___x_11265_, v___x_11267_, v___x_11269_, v___x_11280_);
v___x_11282_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_11258_);
v___x_11283_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11283_, 0, v___x_11258_);
lean_ctor_set(v___x_11283_, 1, v___x_11282_);
lean_inc(v___x_11258_);
v___x_11284_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11283_);
lean_inc(v___x_11284_);
lean_inc(v___x_11258_);
v___x_11285_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11264_, v___x_11281_, v___x_11284_);
v___x_11286_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_11287_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_11258_);
v___x_11288_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11288_, 0, v___x_11258_);
lean_ctor_set(v___x_11288_, 1, v___x_11287_);
v___x_11289_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_11269_);
lean_inc(v___x_11258_);
v___x_11290_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11289_, v___x_11269_, v___x_11275_);
lean_inc(v___x_11258_);
v___x_11291_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11290_);
v___x_11292_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_11258_);
v___x_11293_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11293_, 0, v___x_11258_);
lean_ctor_set(v___x_11293_, 1, v___x_11292_);
v___x_11294_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_11295_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_11296_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_11258_);
v___x_11297_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11297_, 0, v___x_11258_);
lean_ctor_set(v___x_11297_, 1, v___x_11296_);
v___x_11298_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_11299_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6));
v___x_11300_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_11258_);
v___x_11301_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11301_, 0, v___x_11258_);
lean_ctor_set(v___x_11301_, 1, v___x_11300_);
v___x_11302_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_11303_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_11256_);
lean_inc(v_quotContext_11255_);
v___x_11304_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11303_, v_currMacroScope_11256_);
v___x_11305_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v___x_11258_);
v___x_11306_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11306_, 0, v___x_11258_);
lean_ctor_set(v___x_11306_, 1, v___x_11302_);
lean_ctor_set(v___x_11306_, 2, v___x_11304_);
lean_ctor_set(v___x_11306_, 3, v___x_11305_);
lean_inc_ref(v___x_11306_);
lean_inc_ref(v___x_11301_);
lean_inc(v___x_11258_);
v___x_11307_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11299_, v___x_11301_, v___x_11306_);
v___x_11308_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23);
v___x_11309_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24));
lean_inc(v_currMacroScope_11256_);
lean_inc(v_quotContext_11255_);
v___x_11310_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11309_, v_currMacroScope_11256_);
lean_inc(v___x_11258_);
v___x_11311_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11311_, 0, v___x_11258_);
lean_ctor_set(v___x_11311_, 1, v___x_11308_);
lean_ctor_set(v___x_11311_, 2, v___x_11310_);
lean_ctor_set(v___x_11311_, 3, v___x_11274_);
v___x_11312_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10);
v___x_11313_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11));
lean_inc(v_currMacroScope_11256_);
lean_inc(v_quotContext_11255_);
v___x_11314_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11313_, v_currMacroScope_11256_);
lean_inc(v___x_11258_);
v___x_11315_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11315_, 0, v___x_11258_);
lean_ctor_set(v___x_11315_, 1, v___x_11312_);
lean_ctor_set(v___x_11315_, 2, v___x_11314_);
lean_ctor_set(v___x_11315_, 3, v___x_11274_);
lean_inc_ref(v___x_11315_);
lean_inc_ref(v___x_11311_);
lean_inc(v___x_11258_);
v___x_11316_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11311_, v___x_11315_);
lean_inc(v___x_11258_);
v___x_11317_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11298_, v___x_11307_, v___x_11316_);
lean_inc(v___x_11258_);
v___x_11318_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11317_);
lean_inc(v___x_11258_);
v___x_11319_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11318_);
v___x_11320_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_11258_);
v___x_11321_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11321_, 0, v___x_11258_);
lean_ctor_set(v___x_11321_, 1, v___x_11320_);
v___x_11322_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_11323_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_11324_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_11258_);
v___x_11325_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11325_, 0, v___x_11258_);
lean_ctor_set(v___x_11325_, 1, v___x_11324_);
lean_inc_ref(v___x_11315_);
lean_inc_ref_n(v___x_11269_, 2);
lean_inc(v___x_11258_);
v___x_11326_ = l_Lean_Syntax_node5(v___x_11258_, v___x_11323_, v_a_11253_, v___x_11269_, v___x_11269_, v___x_11325_, v___x_11315_);
lean_inc(v___x_11258_);
v___x_11327_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11322_, v___x_11326_);
lean_inc(v___x_11258_);
v___x_11328_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11264_, v___x_11327_, v___x_11284_);
lean_inc(v___x_11258_);
v___x_11329_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11311_);
lean_inc(v___x_11258_);
v___x_11330_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11298_, v___x_11306_, v___x_11329_);
lean_inc(v___x_11258_);
v___x_11331_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11278_, v___x_11330_);
lean_inc_ref(v___x_11269_);
lean_inc(v___x_11258_);
v___x_11332_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11264_, v___x_11331_, v___x_11269_);
lean_inc(v___x_11328_);
lean_inc(v___x_11258_);
v___x_11333_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11328_, v___x_11332_);
lean_inc(v___x_11258_);
v___x_11334_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11262_, v___x_11333_);
lean_inc_ref(v___x_11321_);
lean_inc_ref(v___x_11297_);
lean_inc(v___x_11258_);
v___x_11335_ = l_Lean_Syntax_node4(v___x_11258_, v___x_11295_, v___x_11297_, v___x_11319_, v___x_11321_, v___x_11334_);
v___x_11336_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
v___x_11337_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27);
v___x_11338_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__28));
lean_inc(v_currMacroScope_11256_);
lean_inc(v_quotContext_11255_);
v___x_11339_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11338_, v_currMacroScope_11256_);
lean_inc(v___x_11258_);
v___x_11340_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11340_, 0, v___x_11258_);
lean_ctor_set(v___x_11340_, 1, v___x_11337_);
lean_ctor_set(v___x_11340_, 2, v___x_11339_);
lean_ctor_set(v___x_11340_, 3, v___x_11274_);
lean_inc(v___x_11258_);
v___x_11341_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11299_, v___x_11301_, v___x_11340_);
v___x_11342_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__30);
v___x_11343_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__31));
v___x_11344_ = l_Lean_addMacroScope(v_quotContext_11255_, v___x_11343_, v_currMacroScope_11256_);
lean_inc(v___x_11258_);
v___x_11345_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11345_, 0, v___x_11258_);
lean_ctor_set(v___x_11345_, 1, v___x_11342_);
lean_ctor_set(v___x_11345_, 2, v___x_11344_);
lean_ctor_set(v___x_11345_, 3, v___x_11274_);
lean_inc_ref(v___x_11345_);
lean_inc(v___x_11258_);
v___x_11346_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11345_, v___x_11315_);
lean_inc(v___x_11258_);
v___x_11347_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11298_, v___x_11341_, v___x_11346_);
lean_inc(v___x_11258_);
v___x_11348_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11347_);
lean_inc(v___x_11258_);
v___x_11349_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11348_);
v___x_11350_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
lean_inc(v___x_11258_);
v___x_11351_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11351_, 0, v___x_11258_);
lean_ctor_set(v___x_11351_, 1, v___x_11336_);
lean_inc(v___x_11258_);
v___x_11352_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11263_, v___x_11345_);
lean_inc(v___x_11258_);
v___x_11353_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11350_, v___x_11351_, v___x_11352_);
lean_inc_ref(v___x_11269_);
lean_inc(v___x_11258_);
v___x_11354_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11264_, v___x_11353_, v___x_11269_);
lean_inc(v___x_11258_);
v___x_11355_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11328_, v___x_11354_);
lean_inc(v___x_11258_);
v___x_11356_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11262_, v___x_11355_);
lean_inc(v___x_11258_);
v___x_11357_ = l_Lean_Syntax_node4(v___x_11258_, v___x_11295_, v___x_11297_, v___x_11349_, v___x_11321_, v___x_11356_);
lean_inc(v___x_11258_);
v___x_11358_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11335_, v___x_11357_);
lean_inc(v___x_11258_);
v___x_11359_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11294_, v___x_11358_);
lean_inc_ref_n(v___x_11269_, 3);
lean_inc(v___x_11258_);
v___x_11360_ = l_Lean_Syntax_node7(v___x_11258_, v___x_11286_, v___x_11288_, v___x_11269_, v___x_11269_, v___x_11269_, v___x_11291_, v___x_11293_, v___x_11359_);
lean_inc(v___x_11258_);
v___x_11361_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11264_, v___x_11360_, v___x_11269_);
lean_inc(v___x_11258_);
v___x_11362_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11263_, v___x_11285_, v___x_11361_);
lean_inc(v___x_11258_);
v___x_11363_ = l_Lean_Syntax_node1(v___x_11258_, v___x_11262_, v___x_11362_);
v___x_11364_ = l_Lean_Syntax_node2(v___x_11258_, v___x_11260_, v___x_11261_, v___x_11363_);
v___x_11365_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11364_);
lean_dec(v___x_11364_);
v___x_11366_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11366_, 0, v___x_11365_);
lean_ctor_set(v___x_11366_, 1, v_a_11254_);
return v___x_11366_;
}
else
{
lean_object* v_a_11367_; lean_object* v_a_11368_; lean_object* v_quotContext_11369_; lean_object* v_currMacroScope_11370_; lean_object* v_ref_11371_; uint8_t v___x_11372_; lean_object* v___x_11373_; lean_object* v___x_11374_; lean_object* v___x_11375_; lean_object* v___x_11376_; lean_object* v___x_11377_; lean_object* v___x_11378_; lean_object* v___x_11379_; lean_object* v___x_11380_; lean_object* v___x_11381_; lean_object* v___x_11382_; lean_object* v___x_11383_; lean_object* v___x_11384_; lean_object* v___x_11385_; lean_object* v___x_11386_; lean_object* v___x_11387_; lean_object* v___x_11388_; lean_object* v___x_11389_; lean_object* v___x_11390_; lean_object* v___x_11391_; lean_object* v___x_11392_; lean_object* v___x_11393_; lean_object* v___x_11394_; lean_object* v___x_11395_; lean_object* v___x_11396_; lean_object* v___x_11397_; lean_object* v___x_11398_; lean_object* v___x_11399_; lean_object* v___x_11400_; lean_object* v___x_11401_; lean_object* v___x_11402_; lean_object* v___x_11403_; lean_object* v___x_11404_; lean_object* v___x_11405_; lean_object* v___x_11406_; lean_object* v___x_11407_; lean_object* v___x_11408_; lean_object* v___x_11409_; lean_object* v___x_11410_; lean_object* v___x_11411_; lean_object* v___x_11412_; lean_object* v___x_11413_; lean_object* v___x_11414_; lean_object* v___x_11415_; lean_object* v___x_11416_; lean_object* v___x_11417_; lean_object* v___x_11418_; lean_object* v___x_11419_; lean_object* v___x_11420_; lean_object* v___x_11421_; lean_object* v___x_11422_; lean_object* v___x_11423_; lean_object* v___x_11424_; lean_object* v___x_11425_; lean_object* v___x_11426_; lean_object* v___x_11427_; lean_object* v___x_11428_; lean_object* v___x_11429_; lean_object* v___x_11430_; lean_object* v___x_11431_; lean_object* v___x_11432_; lean_object* v___x_11433_; lean_object* v___x_11434_; lean_object* v___x_11435_; lean_object* v___x_11436_; lean_object* v___x_11437_; lean_object* v___x_11438_; lean_object* v___x_11439_; lean_object* v___x_11440_; lean_object* v___x_11441_; lean_object* v___x_11442_; lean_object* v___x_11443_; lean_object* v___x_11444_; lean_object* v___x_11445_; lean_object* v___x_11446_; lean_object* v___x_11447_; lean_object* v___x_11448_; lean_object* v___x_11449_; lean_object* v___x_11450_; lean_object* v___x_11451_; lean_object* v___x_11452_; lean_object* v___x_11453_; lean_object* v___x_11454_; lean_object* v___x_11455_; lean_object* v___x_11456_; lean_object* v___x_11457_; lean_object* v___x_11458_; lean_object* v___x_11459_; lean_object* v___x_11460_; lean_object* v___x_11461_; lean_object* v___x_11462_; lean_object* v___x_11463_; lean_object* v___x_11464_; lean_object* v___x_11465_; lean_object* v___x_11466_; lean_object* v___x_11467_; lean_object* v___x_11468_; lean_object* v___x_11469_; lean_object* v___x_11470_; lean_object* v___x_11471_; lean_object* v___x_11472_; lean_object* v___x_11473_; lean_object* v___x_11474_; lean_object* v___x_11475_; lean_object* v___x_11476_; lean_object* v___x_11477_; lean_object* v___x_11478_; lean_object* v___x_11479_; lean_object* v___x_11480_; lean_object* v___x_11481_; lean_object* v___x_11482_; lean_object* v___x_11483_; lean_object* v___x_11484_; lean_object* v___x_11485_; lean_object* v___x_11486_; lean_object* v___x_11487_; lean_object* v___x_11488_; lean_object* v___x_11489_; lean_object* v___x_11490_; lean_object* v___x_11491_; lean_object* v___x_11492_; lean_object* v___x_11493_; lean_object* v___x_11494_; lean_object* v___x_11495_; lean_object* v___x_11496_; lean_object* v___x_11497_; lean_object* v___x_11498_; lean_object* v___x_11499_; lean_object* v___x_11500_; lean_object* v___x_11501_; lean_object* v___x_11502_; lean_object* v___x_11503_; lean_object* v___x_11504_; lean_object* v___x_11505_; lean_object* v___x_11506_; lean_object* v___x_11507_; lean_object* v___x_11508_; 
v_a_11367_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_11367_);
v_a_11368_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_11368_);
lean_dec_ref(v___x_10694_);
v_quotContext_11369_ = lean_ctor_get(v_a_10692_, 1);
lean_inc(v_quotContext_11369_);
v_currMacroScope_11370_ = lean_ctor_get(v_a_10692_, 2);
lean_inc(v_currMacroScope_11370_);
v_ref_11371_ = lean_ctor_get(v_a_10692_, 5);
lean_inc(v_ref_11371_);
lean_dec_ref(v_a_10692_);
v___x_11372_ = 0;
v___x_11373_ = l_Lean_SourceInfo_fromRef(v_ref_11371_, v___x_11372_);
lean_dec(v_ref_11371_);
v___x_11374_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_11375_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_11373_);
v___x_11376_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11376_, 0, v___x_11373_);
lean_ctor_set(v___x_11376_, 1, v___x_11374_);
v___x_11377_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_11378_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_11379_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_11380_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_11381_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_11373_);
v___x_11382_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11382_, 0, v___x_11373_);
lean_ctor_set(v___x_11382_, 1, v___x_11381_);
v___x_11383_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_11373_);
v___x_11384_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_11384_, 0, v___x_11373_);
lean_ctor_set(v___x_11384_, 1, v___x_11378_);
lean_ctor_set(v___x_11384_, 2, v___x_11383_);
v___x_11385_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_11386_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_11387_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11388_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11387_, v_currMacroScope_11370_);
v___x_11389_ = lean_box(0);
lean_inc(v___x_11373_);
v___x_11390_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11390_, 0, v___x_11373_);
lean_ctor_set(v___x_11390_, 1, v___x_11386_);
lean_ctor_set(v___x_11390_, 2, v___x_11388_);
lean_ctor_set(v___x_11390_, 3, v___x_11389_);
v___x_11391_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_11373_);
v___x_11392_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11392_, 0, v___x_11373_);
lean_ctor_set(v___x_11392_, 1, v___x_11391_);
v___x_11393_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_11373_);
v___x_11394_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11393_, v_term_10687_);
lean_inc_ref(v___x_11384_);
lean_inc_ref(v___x_11390_);
lean_inc(v___x_11373_);
v___x_11395_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11385_, v___x_11390_, v___x_11384_, v___x_11392_, v___x_11394_);
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11396_ = l_Lean_Syntax_node3(v___x_11373_, v___x_11380_, v___x_11382_, v___x_11384_, v___x_11395_);
v___x_11397_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_11373_);
v___x_11398_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11398_, 0, v___x_11373_);
lean_ctor_set(v___x_11398_, 1, v___x_11397_);
lean_inc(v___x_11373_);
v___x_11399_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11398_);
lean_inc(v___x_11399_);
lean_inc(v___x_11373_);
v___x_11400_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11396_, v___x_11399_);
v___x_11401_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_11402_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_11373_);
v___x_11403_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11403_, 0, v___x_11373_);
lean_ctor_set(v___x_11403_, 1, v___x_11402_);
v___x_11404_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11405_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11404_, v___x_11384_, v___x_11390_);
lean_inc(v___x_11373_);
v___x_11406_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11405_);
v___x_11407_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_11373_);
v___x_11408_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11408_, 0, v___x_11373_);
lean_ctor_set(v___x_11408_, 1, v___x_11407_);
v___x_11409_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_11410_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_11411_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_11373_);
v___x_11412_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11412_, 0, v___x_11373_);
lean_ctor_set(v___x_11412_, 1, v___x_11411_);
v___x_11413_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_11414_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__6));
v___x_11415_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_11373_);
v___x_11416_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11416_, 0, v___x_11373_);
lean_ctor_set(v___x_11416_, 1, v___x_11415_);
v___x_11417_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__0);
v___x_11418_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__1));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11419_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11418_, v_currMacroScope_11370_);
v___x_11420_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v___x_11373_);
v___x_11421_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11421_, 0, v___x_11373_);
lean_ctor_set(v___x_11421_, 1, v___x_11417_);
lean_ctor_set(v___x_11421_, 2, v___x_11419_);
lean_ctor_set(v___x_11421_, 3, v___x_11420_);
lean_inc_ref(v___x_11421_);
lean_inc_ref(v___x_11416_);
lean_inc(v___x_11373_);
v___x_11422_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11414_, v___x_11416_, v___x_11421_);
v___x_11423_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23);
v___x_11424_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11425_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11424_, v_currMacroScope_11370_);
lean_inc(v___x_11373_);
v___x_11426_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11426_, 0, v___x_11373_);
lean_ctor_set(v___x_11426_, 1, v___x_11423_);
lean_ctor_set(v___x_11426_, 2, v___x_11425_);
lean_ctor_set(v___x_11426_, 3, v___x_11389_);
v___x_11427_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__10);
v___x_11428_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__11));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11429_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11428_, v_currMacroScope_11370_);
lean_inc(v___x_11373_);
v___x_11430_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11430_, 0, v___x_11373_);
lean_ctor_set(v___x_11430_, 1, v___x_11427_);
lean_ctor_set(v___x_11430_, 2, v___x_11429_);
lean_ctor_set(v___x_11430_, 3, v___x_11389_);
lean_inc_ref(v___x_11430_);
lean_inc_ref(v___x_11426_);
lean_inc(v___x_11373_);
v___x_11431_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11426_, v___x_11430_);
lean_inc(v___x_11431_);
lean_inc(v___x_11373_);
v___x_11432_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11413_, v___x_11422_, v___x_11431_);
lean_inc(v___x_11373_);
v___x_11433_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11432_);
lean_inc(v___x_11373_);
v___x_11434_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11433_);
v___x_11435_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_11373_);
v___x_11436_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11436_, 0, v___x_11373_);
lean_ctor_set(v___x_11436_, 1, v___x_11435_);
v___x_11437_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_11438_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_11439_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_11373_);
v___x_11440_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11440_, 0, v___x_11373_);
lean_ctor_set(v___x_11440_, 1, v___x_11439_);
lean_inc_ref(v___x_11430_);
lean_inc_ref_n(v___x_11384_, 2);
lean_inc(v___x_11373_);
v___x_11441_ = l_Lean_Syntax_node5(v___x_11373_, v___x_11438_, v_a_11367_, v___x_11384_, v___x_11384_, v___x_11440_, v___x_11430_);
lean_inc(v___x_11373_);
v___x_11442_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11437_, v___x_11441_);
lean_inc(v___x_11373_);
v___x_11443_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11442_, v___x_11399_);
lean_inc(v___x_11373_);
v___x_11444_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11426_);
lean_inc(v___x_11444_);
lean_inc(v___x_11373_);
v___x_11445_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11413_, v___x_11421_, v___x_11444_);
lean_inc(v___x_11373_);
v___x_11446_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11393_, v___x_11445_);
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11447_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11446_, v___x_11384_);
lean_inc(v___x_11443_);
lean_inc(v___x_11373_);
v___x_11448_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11443_, v___x_11447_);
lean_inc(v___x_11373_);
v___x_11449_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11377_, v___x_11448_);
lean_inc_ref(v___x_11436_);
lean_inc_ref(v___x_11412_);
lean_inc(v___x_11373_);
v___x_11450_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11410_, v___x_11412_, v___x_11434_, v___x_11436_, v___x_11449_);
v___x_11451_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
v___x_11452_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__27);
v___x_11453_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__28));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11454_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11453_, v_currMacroScope_11370_);
lean_inc(v___x_11373_);
v___x_11455_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11455_, 0, v___x_11373_);
lean_ctor_set(v___x_11455_, 1, v___x_11452_);
lean_ctor_set(v___x_11455_, 2, v___x_11454_);
lean_ctor_set(v___x_11455_, 3, v___x_11389_);
lean_inc_ref(v___x_11416_);
lean_inc(v___x_11373_);
v___x_11456_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11414_, v___x_11416_, v___x_11455_);
lean_inc(v___x_11373_);
v___x_11457_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11413_, v___x_11456_, v___x_11431_);
lean_inc(v___x_11373_);
v___x_11458_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11457_);
lean_inc(v___x_11373_);
v___x_11459_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11458_);
v___x_11460_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
lean_inc(v___x_11373_);
v___x_11461_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11461_, 0, v___x_11373_);
lean_ctor_set(v___x_11461_, 1, v___x_11451_);
lean_inc(v___x_11373_);
v___x_11462_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11460_, v___x_11461_, v___x_11444_);
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11463_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11462_, v___x_11384_);
lean_inc(v___x_11443_);
lean_inc(v___x_11373_);
v___x_11464_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11443_, v___x_11463_);
lean_inc(v___x_11373_);
v___x_11465_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11377_, v___x_11464_);
lean_inc_ref(v___x_11436_);
lean_inc_ref(v___x_11412_);
lean_inc(v___x_11373_);
v___x_11466_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11410_, v___x_11412_, v___x_11459_, v___x_11436_, v___x_11465_);
v___x_11467_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
v___x_11468_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__7);
v___x_11469_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__8));
lean_inc(v_currMacroScope_11370_);
lean_inc(v_quotContext_11369_);
v___x_11470_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11469_, v_currMacroScope_11370_);
lean_inc(v___x_11373_);
v___x_11471_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11471_, 0, v___x_11373_);
lean_ctor_set(v___x_11471_, 1, v___x_11468_);
lean_ctor_set(v___x_11471_, 2, v___x_11470_);
lean_ctor_set(v___x_11471_, 3, v___x_11389_);
lean_inc_ref(v___x_11416_);
lean_inc(v___x_11373_);
v___x_11472_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11414_, v___x_11416_, v___x_11471_);
lean_inc(v___x_11373_);
v___x_11473_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11430_);
lean_inc(v___x_11473_);
lean_inc(v___x_11373_);
v___x_11474_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11413_, v___x_11472_, v___x_11473_);
lean_inc(v___x_11373_);
v___x_11475_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11474_);
lean_inc(v___x_11373_);
v___x_11476_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11475_);
v___x_11477_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
lean_inc(v___x_11373_);
v___x_11478_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11478_, 0, v___x_11373_);
lean_ctor_set(v___x_11478_, 1, v___x_11467_);
lean_inc(v___x_11373_);
v___x_11479_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11477_, v___x_11478_);
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11480_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11479_, v___x_11384_);
lean_inc(v___x_11443_);
lean_inc(v___x_11373_);
v___x_11481_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11443_, v___x_11480_);
lean_inc(v___x_11373_);
v___x_11482_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11377_, v___x_11481_);
lean_inc_ref(v___x_11436_);
lean_inc_ref(v___x_11412_);
lean_inc(v___x_11373_);
v___x_11483_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11410_, v___x_11412_, v___x_11476_, v___x_11436_, v___x_11482_);
v___x_11484_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__19));
v___x_11485_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__14);
v___x_11486_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__15));
v___x_11487_ = l_Lean_addMacroScope(v_quotContext_11369_, v___x_11486_, v_currMacroScope_11370_);
lean_inc(v___x_11373_);
v___x_11488_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_11488_, 0, v___x_11373_);
lean_ctor_set(v___x_11488_, 1, v___x_11485_);
lean_ctor_set(v___x_11488_, 2, v___x_11487_);
lean_ctor_set(v___x_11488_, 3, v___x_11389_);
lean_inc(v___x_11373_);
v___x_11489_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11414_, v___x_11416_, v___x_11488_);
lean_inc(v___x_11373_);
v___x_11490_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11413_, v___x_11489_, v___x_11473_);
lean_inc(v___x_11373_);
v___x_11491_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11490_);
lean_inc(v___x_11373_);
v___x_11492_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11378_, v___x_11491_);
v___x_11493_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17));
lean_inc(v___x_11373_);
v___x_11494_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_11494_, 0, v___x_11373_);
lean_ctor_set(v___x_11494_, 1, v___x_11484_);
lean_inc(v___x_11373_);
v___x_11495_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11493_, v___x_11494_);
lean_inc_ref(v___x_11384_);
lean_inc(v___x_11373_);
v___x_11496_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11495_, v___x_11384_);
lean_inc(v___x_11373_);
v___x_11497_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11443_, v___x_11496_);
lean_inc(v___x_11373_);
v___x_11498_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11377_, v___x_11497_);
lean_inc(v___x_11373_);
v___x_11499_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11410_, v___x_11412_, v___x_11492_, v___x_11436_, v___x_11498_);
lean_inc(v___x_11373_);
v___x_11500_ = l_Lean_Syntax_node4(v___x_11373_, v___x_11378_, v___x_11450_, v___x_11466_, v___x_11483_, v___x_11499_);
lean_inc(v___x_11373_);
v___x_11501_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11409_, v___x_11500_);
lean_inc_ref_n(v___x_11384_, 3);
lean_inc(v___x_11373_);
v___x_11502_ = l_Lean_Syntax_node7(v___x_11373_, v___x_11401_, v___x_11403_, v___x_11384_, v___x_11384_, v___x_11384_, v___x_11406_, v___x_11408_, v___x_11501_);
lean_inc(v___x_11373_);
v___x_11503_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11379_, v___x_11502_, v___x_11384_);
lean_inc(v___x_11373_);
v___x_11504_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11378_, v___x_11400_, v___x_11503_);
lean_inc(v___x_11373_);
v___x_11505_ = l_Lean_Syntax_node1(v___x_11373_, v___x_11377_, v___x_11504_);
v___x_11506_ = l_Lean_Syntax_node2(v___x_11373_, v___x_11375_, v___x_11376_, v___x_11505_);
v___x_11507_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___lam__0(v___x_11506_);
lean_dec(v___x_11506_);
v___x_11508_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11508_, 0, v___x_11507_);
lean_ctor_set(v___x_11508_, 1, v_a_11368_);
return v___x_11508_;
}
}
}
}
else
{
lean_object* v_a_11509_; lean_object* v_a_11510_; lean_object* v___x_11511_; 
lean_dec_ref(v_a_10692_);
lean_dec(v_term_10687_);
v_a_11509_ = lean_ctor_get(v___x_10694_, 0);
lean_inc(v_a_11509_);
v_a_11510_ = lean_ctor_get(v___x_10694_, 1);
lean_inc(v_a_11510_);
lean_dec_ref(v___x_10694_);
v___x_11511_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_11511_, 0, v_a_11509_);
lean_ctor_set(v___x_11511_, 1, v_a_11510_);
return v___x_11511_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___boxed(lean_object* v_term_11512_, lean_object* v_uvars_11513_, lean_object* v_a_11514_, lean_object* v_r_11515_, lean_object* v_bc_11516_, lean_object* v_a_11517_, lean_object* v_a_11518_){
_start:
{
uint8_t v_a_boxed_11519_; uint8_t v_r_boxed_11520_; uint8_t v_bc_boxed_11521_; lean_object* v_res_11522_; 
v_a_boxed_11519_ = lean_unbox(v_a_11514_);
v_r_boxed_11520_ = lean_unbox(v_r_11515_);
v_bc_boxed_11521_ = lean_unbox(v_bc_11516_);
v_res_11522_ = l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult(v_term_11512_, v_uvars_11513_, v_a_boxed_11519_, v_r_boxed_11520_, v_bc_boxed_11521_, v_a_11517_, v_a_11518_);
lean_dec_ref(v_uvars_11513_);
return v_res_11522_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_isMutableLet(lean_object* v_doElem_11529_){
_start:
{
lean_object* v_kind_11536_; uint8_t v___y_11538_; lean_object* v___x_11541_; uint8_t v___x_11542_; 
lean_inc(v_doElem_11529_);
v_kind_11536_ = l_Lean_Syntax_getKind(v_doElem_11529_);
v___x_11541_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_11542_ = lean_name_eq(v_kind_11536_, v___x_11541_);
if (v___x_11542_ == 0)
{
lean_object* v___x_11543_; uint8_t v___x_11544_; 
v___x_11543_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_11544_ = lean_name_eq(v_kind_11536_, v___x_11543_);
v___y_11538_ = v___x_11544_;
goto v___jp_11537_;
}
else
{
v___y_11538_ = v___x_11542_;
goto v___jp_11537_;
}
v___jp_11530_:
{
lean_object* v___x_11531_; lean_object* v___x_11532_; uint8_t v___x_11533_; 
v___x_11531_ = lean_unsigned_to_nat(1u);
v___x_11532_ = l_Lean_Syntax_getArg(v_doElem_11529_, v___x_11531_);
lean_dec(v_doElem_11529_);
v___x_11533_ = l_Lean_Syntax_isNone(v___x_11532_);
lean_dec(v___x_11532_);
if (v___x_11533_ == 0)
{
uint8_t v___x_11534_; 
v___x_11534_ = 1;
return v___x_11534_;
}
else
{
uint8_t v___x_11535_; 
v___x_11535_ = 0;
return v___x_11535_;
}
}
v___jp_11537_:
{
if (v___y_11538_ == 0)
{
lean_object* v___x_11539_; uint8_t v___x_11540_; 
v___x_11539_ = ((lean_object*)(l_Lean_Elab_Term_Do_isMutableLet___closed__1));
v___x_11540_ = lean_name_eq(v_kind_11536_, v___x_11539_);
lean_dec(v_kind_11536_);
if (v___x_11540_ == 0)
{
lean_dec(v_doElem_11529_);
return v___x_11540_;
}
else
{
goto v___jp_11530_;
}
}
else
{
lean_dec(v_kind_11536_);
goto v___jp_11530_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_isMutableLet___boxed(lean_object* v_doElem_11545_){
_start:
{
uint8_t v_res_11546_; lean_object* v_r_11547_; 
v_res_11546_ = l_Lean_Elab_Term_Do_isMutableLet(v_doElem_11545_);
v_r_11547_ = lean_box(v_res_11546_);
return v_r_11547_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(lean_object* v_newVars_11548_, uint8_t v_mutable_11549_, lean_object* v_x_11550_, lean_object* v_a_11551_, lean_object* v_a_11552_, lean_object* v_a_11553_, lean_object* v_a_11554_, lean_object* v_a_11555_, lean_object* v_a_11556_, lean_object* v_a_11557_){
_start:
{
if (v_mutable_11549_ == 0)
{
lean_object* v___x_11559_; 
v___x_11559_ = lean_apply_8(v_x_11550_, v_a_11551_, v_a_11552_, v_a_11553_, v_a_11554_, v_a_11555_, v_a_11556_, v_a_11557_, lean_box(0));
return v___x_11559_;
}
else
{
lean_object* v_ref_11560_; lean_object* v_m_11561_; lean_object* v_returnType_11562_; lean_object* v_mutableVars_11563_; uint8_t v_insideFor_11564_; lean_object* v___x_11565_; lean_object* v___x_11566_; lean_object* v___x_11567_; 
v_ref_11560_ = lean_ctor_get(v_a_11551_, 0);
lean_inc(v_ref_11560_);
v_m_11561_ = lean_ctor_get(v_a_11551_, 1);
lean_inc(v_m_11561_);
v_returnType_11562_ = lean_ctor_get(v_a_11551_, 2);
lean_inc(v_returnType_11562_);
v_mutableVars_11563_ = lean_ctor_get(v_a_11551_, 3);
lean_inc(v_mutableVars_11563_);
v_insideFor_11564_ = lean_ctor_get_uint8(v_a_11551_, sizeof(void*)*4);
lean_dec_ref(v_a_11551_);
v___x_11565_ = l_Lean_Elab_Term_Do_insertVars(v_mutableVars_11563_, v_newVars_11548_);
v___x_11566_ = lean_alloc_ctor(0, 4, 1);
lean_ctor_set(v___x_11566_, 0, v_ref_11560_);
lean_ctor_set(v___x_11566_, 1, v_m_11561_);
lean_ctor_set(v___x_11566_, 2, v_returnType_11562_);
lean_ctor_set(v___x_11566_, 3, v___x_11565_);
lean_ctor_set_uint8(v___x_11566_, sizeof(void*)*4, v_insideFor_11564_);
v___x_11567_ = lean_apply_8(v_x_11550_, v___x_11566_, v_a_11552_, v_a_11553_, v_a_11554_, v_a_11555_, v_a_11556_, v_a_11557_, lean_box(0));
return v___x_11567_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg___boxed(lean_object* v_newVars_11568_, lean_object* v_mutable_11569_, lean_object* v_x_11570_, lean_object* v_a_11571_, lean_object* v_a_11572_, lean_object* v_a_11573_, lean_object* v_a_11574_, lean_object* v_a_11575_, lean_object* v_a_11576_, lean_object* v_a_11577_, lean_object* v_a_11578_){
_start:
{
uint8_t v_mutable_boxed_11579_; lean_object* v_res_11580_; 
v_mutable_boxed_11579_ = lean_unbox(v_mutable_11569_);
v_res_11580_ = l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(v_newVars_11568_, v_mutable_boxed_11579_, v_x_11570_, v_a_11571_, v_a_11572_, v_a_11573_, v_a_11574_, v_a_11575_, v_a_11576_, v_a_11577_);
lean_dec_ref(v_newVars_11568_);
return v_res_11580_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars(lean_object* v_00_u03b1_11581_, lean_object* v_newVars_11582_, uint8_t v_mutable_11583_, lean_object* v_x_11584_, lean_object* v_a_11585_, lean_object* v_a_11586_, lean_object* v_a_11587_, lean_object* v_a_11588_, lean_object* v_a_11589_, lean_object* v_a_11590_, lean_object* v_a_11591_){
_start:
{
lean_object* v___x_11593_; 
v___x_11593_ = l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(v_newVars_11582_, v_mutable_11583_, v_x_11584_, v_a_11585_, v_a_11586_, v_a_11587_, v_a_11588_, v_a_11589_, v_a_11590_, v_a_11591_);
return v___x_11593_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___boxed(lean_object* v_00_u03b1_11594_, lean_object* v_newVars_11595_, lean_object* v_mutable_11596_, lean_object* v_x_11597_, lean_object* v_a_11598_, lean_object* v_a_11599_, lean_object* v_a_11600_, lean_object* v_a_11601_, lean_object* v_a_11602_, lean_object* v_a_11603_, lean_object* v_a_11604_, lean_object* v_a_11605_){
_start:
{
uint8_t v_mutable_boxed_11606_; lean_object* v_res_11607_; 
v_mutable_boxed_11606_ = lean_unbox(v_mutable_11596_);
v_res_11607_ = l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars(v_00_u03b1_11594_, v_newVars_11595_, v_mutable_boxed_11606_, v_x_11597_, v_a_11598_, v_a_11599_, v_a_11600_, v_a_11601_, v_a_11602_, v_a_11603_, v_a_11604_);
lean_dec_ref(v_newVars_11595_);
return v_res_11607_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(lean_object* v_msg_11608_, lean_object* v___y_11609_, lean_object* v___y_11610_, lean_object* v___y_11611_, lean_object* v___y_11612_){
_start:
{
lean_object* v_ref_11614_; lean_object* v___x_11615_; lean_object* v_a_11616_; lean_object* v___x_11617_; lean_object* v___x_11618_; 
v_ref_11614_ = lean_ctor_get(v___y_11611_, 5);
v___x_11615_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_11608_, v___y_11609_, v___y_11610_, v___y_11611_, v___y_11612_);
v_a_11616_ = lean_ctor_get(v___x_11615_, 0);
lean_inc(v_a_11616_);
lean_dec_ref(v___x_11615_);
lean_inc(v_ref_11614_);
v___x_11617_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11617_, 0, v_ref_11614_);
lean_ctor_set(v___x_11617_, 1, v_a_11616_);
v___x_11618_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_11618_, 0, v___x_11617_);
return v___x_11618_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg___boxed(lean_object* v_msg_11619_, lean_object* v___y_11620_, lean_object* v___y_11621_, lean_object* v___y_11622_, lean_object* v___y_11623_, lean_object* v___y_11624_){
_start:
{
lean_object* v_res_11625_; 
v_res_11625_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v_msg_11619_, v___y_11620_, v___y_11621_, v___y_11622_, v___y_11623_);
lean_dec(v___y_11623_);
lean_dec_ref(v___y_11622_);
lean_dec(v___y_11621_);
lean_dec_ref(v___y_11620_);
return v_res_11625_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1(void){
_start:
{
lean_object* v___x_11627_; lean_object* v___x_11628_; 
v___x_11627_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__0));
v___x_11628_ = l_Lean_stringToMessageData(v___x_11627_);
return v___x_11628_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3(void){
_start:
{
lean_object* v___x_11630_; lean_object* v___x_11631_; 
v___x_11630_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__2));
v___x_11631_ = l_Lean_stringToMessageData(v___x_11630_);
return v___x_11631_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5(void){
_start:
{
lean_object* v___x_11633_; lean_object* v___x_11634_; 
v___x_11633_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__4));
v___x_11634_ = l_Lean_stringToMessageData(v___x_11633_);
return v___x_11634_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7(void){
_start:
{
lean_object* v___x_11636_; lean_object* v___x_11637_; 
v___x_11636_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__6));
v___x_11637_ = l_Lean_stringToMessageData(v___x_11636_);
return v___x_11637_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1(lean_object* v_a_11638_, lean_object* v_as_11639_, size_t v_sz_11640_, size_t v_i_11641_, lean_object* v_b_11642_, lean_object* v___y_11643_, lean_object* v___y_11644_, lean_object* v___y_11645_, lean_object* v___y_11646_, lean_object* v___y_11647_, lean_object* v___y_11648_, lean_object* v___y_11649_){
_start:
{
lean_object* v_a_11652_; uint8_t v___x_11656_; 
v___x_11656_ = lean_usize_dec_lt(v_i_11641_, v_sz_11640_);
if (v___x_11656_ == 0)
{
lean_object* v___x_11657_; 
v___x_11657_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11657_, 0, v_b_11642_);
return v___x_11657_;
}
else
{
lean_object* v_mutableVars_11658_; lean_object* v___x_11659_; lean_object* v_a_11660_; lean_object* v___x_11661_; uint8_t v___x_11662_; 
v_mutableVars_11658_ = lean_ctor_get(v_a_11638_, 3);
v___x_11659_ = lean_box(0);
v_a_11660_ = lean_array_uget_borrowed(v_as_11639_, v_i_11641_);
v___x_11661_ = l_Lean_Syntax_getId(v_a_11660_);
v___x_11662_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v___x_11661_, v_mutableVars_11658_);
if (v___x_11662_ == 0)
{
lean_object* v___x_11663_; lean_object* v___x_11664_; lean_object* v___x_11665_; lean_object* v___x_11666_; lean_object* v___x_11667_; lean_object* v___x_11668_; lean_object* v___x_11669_; lean_object* v___x_11670_; lean_object* v___x_11671_; lean_object* v___x_11672_; lean_object* v___x_11673_; lean_object* v___x_11674_; lean_object* v___x_11675_; 
v___x_11663_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__1);
v___x_11664_ = lean_simp_macro_scopes(v___x_11661_);
v___x_11665_ = l_Lean_MessageData_ofName(v___x_11664_);
lean_inc_ref(v___x_11665_);
v___x_11666_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11666_, 0, v___x_11663_);
lean_ctor_set(v___x_11666_, 1, v___x_11665_);
v___x_11667_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__3);
v___x_11668_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11668_, 0, v___x_11666_);
lean_ctor_set(v___x_11668_, 1, v___x_11667_);
lean_inc_ref(v___x_11665_);
v___x_11669_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11669_, 0, v___x_11668_);
lean_ctor_set(v___x_11669_, 1, v___x_11665_);
v___x_11670_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__5);
v___x_11671_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11671_, 0, v___x_11669_);
lean_ctor_set(v___x_11671_, 1, v___x_11670_);
v___x_11672_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11672_, 0, v___x_11671_);
lean_ctor_set(v___x_11672_, 1, v___x_11665_);
v___x_11673_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___closed__7);
v___x_11674_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11674_, 0, v___x_11672_);
lean_ctor_set(v___x_11674_, 1, v___x_11673_);
v___x_11675_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_11674_, v___y_11646_, v___y_11647_, v___y_11648_, v___y_11649_);
if (lean_obj_tag(v___x_11675_) == 0)
{
lean_dec_ref(v___x_11675_);
v_a_11652_ = v___x_11659_;
goto v___jp_11651_;
}
else
{
return v___x_11675_;
}
}
else
{
lean_dec(v___x_11661_);
v_a_11652_ = v___x_11659_;
goto v___jp_11651_;
}
}
v___jp_11651_:
{
size_t v___x_11653_; size_t v___x_11654_; 
v___x_11653_ = ((size_t)1ULL);
v___x_11654_ = lean_usize_add(v_i_11641_, v___x_11653_);
v_i_11641_ = v___x_11654_;
v_b_11642_ = v_a_11652_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1___boxed(lean_object* v_a_11676_, lean_object* v_as_11677_, lean_object* v_sz_11678_, lean_object* v_i_11679_, lean_object* v_b_11680_, lean_object* v___y_11681_, lean_object* v___y_11682_, lean_object* v___y_11683_, lean_object* v___y_11684_, lean_object* v___y_11685_, lean_object* v___y_11686_, lean_object* v___y_11687_, lean_object* v___y_11688_){
_start:
{
size_t v_sz_boxed_11689_; size_t v_i_boxed_11690_; lean_object* v_res_11691_; 
v_sz_boxed_11689_ = lean_unbox_usize(v_sz_11678_);
lean_dec(v_sz_11678_);
v_i_boxed_11690_ = lean_unbox_usize(v_i_11679_);
lean_dec(v_i_11679_);
v_res_11691_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1(v_a_11676_, v_as_11677_, v_sz_boxed_11689_, v_i_boxed_11690_, v_b_11680_, v___y_11681_, v___y_11682_, v___y_11683_, v___y_11684_, v___y_11685_, v___y_11686_, v___y_11687_);
lean_dec(v___y_11687_);
lean_dec_ref(v___y_11686_);
lean_dec(v___y_11685_);
lean_dec_ref(v___y_11684_);
lean_dec(v___y_11683_);
lean_dec_ref(v___y_11682_);
lean_dec_ref(v___y_11681_);
lean_dec_ref(v_as_11677_);
lean_dec_ref(v_a_11676_);
return v_res_11691_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable(lean_object* v_xs_11692_, lean_object* v_a_11693_, lean_object* v_a_11694_, lean_object* v_a_11695_, lean_object* v_a_11696_, lean_object* v_a_11697_, lean_object* v_a_11698_, lean_object* v_a_11699_){
_start:
{
lean_object* v___x_11701_; size_t v_sz_11702_; size_t v___x_11703_; lean_object* v___x_11704_; 
v___x_11701_ = lean_box(0);
v_sz_11702_ = lean_array_size(v_xs_11692_);
v___x_11703_ = ((size_t)0ULL);
v___x_11704_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__1(v_a_11693_, v_xs_11692_, v_sz_11702_, v___x_11703_, v___x_11701_, v_a_11693_, v_a_11694_, v_a_11695_, v_a_11696_, v_a_11697_, v_a_11698_, v_a_11699_);
if (lean_obj_tag(v___x_11704_) == 0)
{
lean_object* v___x_11705_; 
lean_dec_ref(v___x_11704_);
v___x_11705_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11705_, 0, v___x_11701_);
return v___x_11705_;
}
else
{
return v___x_11704_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable___boxed(lean_object* v_xs_11706_, lean_object* v_a_11707_, lean_object* v_a_11708_, lean_object* v_a_11709_, lean_object* v_a_11710_, lean_object* v_a_11711_, lean_object* v_a_11712_, lean_object* v_a_11713_, lean_object* v_a_11714_){
_start:
{
lean_object* v_res_11715_; 
v_res_11715_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable(v_xs_11706_, v_a_11707_, v_a_11708_, v_a_11709_, v_a_11710_, v_a_11711_, v_a_11712_, v_a_11713_);
lean_dec(v_a_11713_);
lean_dec_ref(v_a_11712_);
lean_dec(v_a_11711_);
lean_dec_ref(v_a_11710_);
lean_dec(v_a_11709_);
lean_dec_ref(v_a_11708_);
lean_dec_ref(v_a_11707_);
lean_dec_ref(v_xs_11706_);
return v_res_11715_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0(lean_object* v_00_u03b1_11716_, lean_object* v_msg_11717_, lean_object* v___y_11718_, lean_object* v___y_11719_, lean_object* v___y_11720_, lean_object* v___y_11721_, lean_object* v___y_11722_, lean_object* v___y_11723_, lean_object* v___y_11724_){
_start:
{
lean_object* v___x_11726_; 
v___x_11726_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v_msg_11717_, v___y_11721_, v___y_11722_, v___y_11723_, v___y_11724_);
return v___x_11726_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___boxed(lean_object* v_00_u03b1_11727_, lean_object* v_msg_11728_, lean_object* v___y_11729_, lean_object* v___y_11730_, lean_object* v___y_11731_, lean_object* v___y_11732_, lean_object* v___y_11733_, lean_object* v___y_11734_, lean_object* v___y_11735_, lean_object* v___y_11736_){
_start:
{
lean_object* v_res_11737_; 
v_res_11737_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0(v_00_u03b1_11727_, v_msg_11728_, v___y_11729_, v___y_11730_, v___y_11731_, v___y_11732_, v___y_11733_, v___y_11734_, v___y_11735_);
lean_dec(v___y_11735_);
lean_dec_ref(v___y_11734_);
lean_dec(v___y_11733_);
lean_dec_ref(v___y_11732_);
lean_dec(v___y_11731_);
lean_dec_ref(v___y_11730_);
lean_dec_ref(v___y_11729_);
return v_res_11737_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1(void){
_start:
{
lean_object* v___x_11739_; lean_object* v___x_11740_; 
v___x_11739_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__0));
v___x_11740_ = l_Lean_stringToMessageData(v___x_11739_);
return v___x_11740_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3(void){
_start:
{
lean_object* v___x_11742_; lean_object* v___x_11743_; 
v___x_11742_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__2));
v___x_11743_ = l_Lean_stringToMessageData(v___x_11742_);
return v___x_11743_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg(lean_object* v_a_11744_, lean_object* v_as_11745_, size_t v_sz_11746_, size_t v_i_11747_, lean_object* v_b_11748_, lean_object* v___y_11749_, lean_object* v___y_11750_, lean_object* v___y_11751_, lean_object* v___y_11752_){
_start:
{
lean_object* v_a_11755_; uint8_t v___x_11759_; 
v___x_11759_ = lean_usize_dec_lt(v_i_11747_, v_sz_11746_);
if (v___x_11759_ == 0)
{
lean_object* v___x_11760_; 
v___x_11760_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11760_, 0, v_b_11748_);
return v___x_11760_;
}
else
{
lean_object* v_mutableVars_11761_; lean_object* v___x_11762_; lean_object* v_a_11763_; lean_object* v___x_11764_; uint8_t v___x_11765_; 
v_mutableVars_11761_ = lean_ctor_get(v_a_11744_, 3);
v___x_11762_ = lean_box(0);
v_a_11763_ = lean_array_uget_borrowed(v_as_11745_, v_i_11747_);
v___x_11764_ = l_Lean_Syntax_getId(v_a_11763_);
v___x_11765_ = l_Std_DTreeMap_Internal_Impl_contains___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_extendUpdatedVarsAux_update_spec__0___redArg(v___x_11764_, v_mutableVars_11761_);
if (v___x_11765_ == 0)
{
lean_dec(v___x_11764_);
v_a_11755_ = v___x_11762_;
goto v___jp_11754_;
}
else
{
lean_object* v_fileName_11766_; lean_object* v_fileMap_11767_; lean_object* v_options_11768_; lean_object* v_currRecDepth_11769_; lean_object* v_maxRecDepth_11770_; lean_object* v_ref_11771_; lean_object* v_currNamespace_11772_; lean_object* v_openDecls_11773_; lean_object* v_initHeartbeats_11774_; lean_object* v_maxHeartbeats_11775_; lean_object* v_quotContext_11776_; lean_object* v_currMacroScope_11777_; uint8_t v_diag_11778_; lean_object* v_cancelTk_x3f_11779_; uint8_t v_suppressElabErrors_11780_; lean_object* v_inheritedTraceOptions_11781_; lean_object* v_ref_11782_; lean_object* v___x_11783_; lean_object* v___x_11784_; lean_object* v___x_11785_; lean_object* v___x_11786_; lean_object* v___x_11787_; lean_object* v___x_11788_; lean_object* v___x_11789_; lean_object* v___x_11790_; 
v_fileName_11766_ = lean_ctor_get(v___y_11751_, 0);
v_fileMap_11767_ = lean_ctor_get(v___y_11751_, 1);
v_options_11768_ = lean_ctor_get(v___y_11751_, 2);
v_currRecDepth_11769_ = lean_ctor_get(v___y_11751_, 3);
v_maxRecDepth_11770_ = lean_ctor_get(v___y_11751_, 4);
v_ref_11771_ = lean_ctor_get(v___y_11751_, 5);
v_currNamespace_11772_ = lean_ctor_get(v___y_11751_, 6);
v_openDecls_11773_ = lean_ctor_get(v___y_11751_, 7);
v_initHeartbeats_11774_ = lean_ctor_get(v___y_11751_, 8);
v_maxHeartbeats_11775_ = lean_ctor_get(v___y_11751_, 9);
v_quotContext_11776_ = lean_ctor_get(v___y_11751_, 10);
v_currMacroScope_11777_ = lean_ctor_get(v___y_11751_, 11);
v_diag_11778_ = lean_ctor_get_uint8(v___y_11751_, sizeof(void*)*14);
v_cancelTk_x3f_11779_ = lean_ctor_get(v___y_11751_, 12);
v_suppressElabErrors_11780_ = lean_ctor_get_uint8(v___y_11751_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_11781_ = lean_ctor_get(v___y_11751_, 13);
v_ref_11782_ = l_Lean_replaceRef(v_a_11763_, v_ref_11771_);
lean_inc_ref(v_inheritedTraceOptions_11781_);
lean_inc(v_cancelTk_x3f_11779_);
lean_inc(v_currMacroScope_11777_);
lean_inc(v_quotContext_11776_);
lean_inc(v_maxHeartbeats_11775_);
lean_inc(v_initHeartbeats_11774_);
lean_inc(v_openDecls_11773_);
lean_inc(v_currNamespace_11772_);
lean_inc(v_maxRecDepth_11770_);
lean_inc(v_currRecDepth_11769_);
lean_inc_ref(v_options_11768_);
lean_inc_ref(v_fileMap_11767_);
lean_inc_ref(v_fileName_11766_);
v___x_11783_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_11783_, 0, v_fileName_11766_);
lean_ctor_set(v___x_11783_, 1, v_fileMap_11767_);
lean_ctor_set(v___x_11783_, 2, v_options_11768_);
lean_ctor_set(v___x_11783_, 3, v_currRecDepth_11769_);
lean_ctor_set(v___x_11783_, 4, v_maxRecDepth_11770_);
lean_ctor_set(v___x_11783_, 5, v_ref_11782_);
lean_ctor_set(v___x_11783_, 6, v_currNamespace_11772_);
lean_ctor_set(v___x_11783_, 7, v_openDecls_11773_);
lean_ctor_set(v___x_11783_, 8, v_initHeartbeats_11774_);
lean_ctor_set(v___x_11783_, 9, v_maxHeartbeats_11775_);
lean_ctor_set(v___x_11783_, 10, v_quotContext_11776_);
lean_ctor_set(v___x_11783_, 11, v_currMacroScope_11777_);
lean_ctor_set(v___x_11783_, 12, v_cancelTk_x3f_11779_);
lean_ctor_set(v___x_11783_, 13, v_inheritedTraceOptions_11781_);
lean_ctor_set_uint8(v___x_11783_, sizeof(void*)*14, v_diag_11778_);
lean_ctor_set_uint8(v___x_11783_, sizeof(void*)*14 + 1, v_suppressElabErrors_11780_);
v___x_11784_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__1);
v___x_11785_ = lean_simp_macro_scopes(v___x_11764_);
v___x_11786_ = l_Lean_MessageData_ofName(v___x_11785_);
v___x_11787_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11787_, 0, v___x_11784_);
lean_ctor_set(v___x_11787_, 1, v___x_11786_);
v___x_11788_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3, &l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3_once, _init_l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___closed__3);
v___x_11789_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_11789_, 0, v___x_11787_);
lean_ctor_set(v___x_11789_, 1, v___x_11788_);
v___x_11790_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_11789_, v___y_11749_, v___y_11750_, v___x_11783_, v___y_11752_);
lean_dec_ref(v___x_11783_);
if (lean_obj_tag(v___x_11790_) == 0)
{
lean_dec_ref(v___x_11790_);
v_a_11755_ = v___x_11762_;
goto v___jp_11754_;
}
else
{
return v___x_11790_;
}
}
}
v___jp_11754_:
{
size_t v___x_11756_; size_t v___x_11757_; 
v___x_11756_ = ((size_t)1ULL);
v___x_11757_ = lean_usize_add(v_i_11747_, v___x_11756_);
v_i_11747_ = v___x_11757_;
v_b_11748_ = v_a_11755_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg___boxed(lean_object* v_a_11791_, lean_object* v_as_11792_, lean_object* v_sz_11793_, lean_object* v_i_11794_, lean_object* v_b_11795_, lean_object* v___y_11796_, lean_object* v___y_11797_, lean_object* v___y_11798_, lean_object* v___y_11799_, lean_object* v___y_11800_){
_start:
{
size_t v_sz_boxed_11801_; size_t v_i_boxed_11802_; lean_object* v_res_11803_; 
v_sz_boxed_11801_ = lean_unbox_usize(v_sz_11793_);
lean_dec(v_sz_11793_);
v_i_boxed_11802_ = lean_unbox_usize(v_i_11794_);
lean_dec(v_i_11794_);
v_res_11803_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg(v_a_11791_, v_as_11792_, v_sz_boxed_11801_, v_i_boxed_11802_, v_b_11795_, v___y_11796_, v___y_11797_, v___y_11798_, v___y_11799_);
lean_dec(v___y_11799_);
lean_dec_ref(v___y_11798_);
lean_dec(v___y_11797_);
lean_dec_ref(v___y_11796_);
lean_dec_ref(v_as_11792_);
lean_dec_ref(v_a_11791_);
return v_res_11803_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(lean_object* v_xs_11804_, lean_object* v_a_11805_, lean_object* v_a_11806_, lean_object* v_a_11807_, lean_object* v_a_11808_, lean_object* v_a_11809_, lean_object* v_a_11810_, lean_object* v_a_11811_){
_start:
{
lean_object* v___x_11813_; size_t v_sz_11814_; size_t v___x_11815_; lean_object* v___x_11816_; 
v___x_11813_ = lean_box(0);
v_sz_11814_ = lean_array_size(v_xs_11804_);
v___x_11815_ = ((size_t)0ULL);
v___x_11816_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg(v_a_11805_, v_xs_11804_, v_sz_11814_, v___x_11815_, v___x_11813_, v_a_11808_, v_a_11809_, v_a_11810_, v_a_11811_);
if (lean_obj_tag(v___x_11816_) == 0)
{
lean_object* v___x_11817_; 
lean_dec_ref(v___x_11816_);
v___x_11817_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11817_, 0, v___x_11813_);
return v___x_11817_;
}
else
{
return v___x_11816_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable___boxed(lean_object* v_xs_11818_, lean_object* v_a_11819_, lean_object* v_a_11820_, lean_object* v_a_11821_, lean_object* v_a_11822_, lean_object* v_a_11823_, lean_object* v_a_11824_, lean_object* v_a_11825_, lean_object* v_a_11826_){
_start:
{
lean_object* v_res_11827_; 
v_res_11827_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_xs_11818_, v_a_11819_, v_a_11820_, v_a_11821_, v_a_11822_, v_a_11823_, v_a_11824_, v_a_11825_);
lean_dec(v_a_11825_);
lean_dec_ref(v_a_11824_);
lean_dec(v_a_11823_);
lean_dec_ref(v_a_11822_);
lean_dec(v_a_11821_);
lean_dec_ref(v_a_11820_);
lean_dec_ref(v_a_11819_);
lean_dec_ref(v_xs_11818_);
return v_res_11827_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0(lean_object* v_a_11828_, lean_object* v_as_11829_, size_t v_sz_11830_, size_t v_i_11831_, lean_object* v_b_11832_, lean_object* v___y_11833_, lean_object* v___y_11834_, lean_object* v___y_11835_, lean_object* v___y_11836_, lean_object* v___y_11837_, lean_object* v___y_11838_, lean_object* v___y_11839_){
_start:
{
lean_object* v___x_11841_; 
v___x_11841_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___redArg(v_a_11828_, v_as_11829_, v_sz_11830_, v_i_11831_, v_b_11832_, v___y_11836_, v___y_11837_, v___y_11838_, v___y_11839_);
return v___x_11841_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0___boxed(lean_object* v_a_11842_, lean_object* v_as_11843_, lean_object* v_sz_11844_, lean_object* v_i_11845_, lean_object* v_b_11846_, lean_object* v___y_11847_, lean_object* v___y_11848_, lean_object* v___y_11849_, lean_object* v___y_11850_, lean_object* v___y_11851_, lean_object* v___y_11852_, lean_object* v___y_11853_, lean_object* v___y_11854_){
_start:
{
size_t v_sz_boxed_11855_; size_t v_i_boxed_11856_; lean_object* v_res_11857_; 
v_sz_boxed_11855_ = lean_unbox_usize(v_sz_11844_);
lean_dec(v_sz_11844_);
v_i_boxed_11856_ = lean_unbox_usize(v_i_11845_);
lean_dec(v_i_11845_);
v_res_11857_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable_spec__0(v_a_11842_, v_as_11843_, v_sz_boxed_11855_, v_i_boxed_11856_, v_b_11846_, v___y_11847_, v___y_11848_, v___y_11849_, v___y_11850_, v___y_11851_, v___y_11852_, v___y_11853_);
lean_dec(v___y_11853_);
lean_dec_ref(v___y_11852_);
lean_dec(v___y_11851_);
lean_dec_ref(v___y_11850_);
lean_dec(v___y_11849_);
lean_dec_ref(v___y_11848_);
lean_dec_ref(v___y_11847_);
lean_dec_ref(v_as_11843_);
lean_dec_ref(v_a_11842_);
return v_res_11857_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg(lean_object* v_x_11858_, lean_object* v_a_11859_, lean_object* v_a_11860_, lean_object* v_a_11861_, lean_object* v_a_11862_, lean_object* v_a_11863_, lean_object* v_a_11864_, lean_object* v_a_11865_){
_start:
{
lean_object* v_ref_11867_; lean_object* v_m_11868_; lean_object* v_returnType_11869_; lean_object* v_mutableVars_11870_; uint8_t v___x_11871_; lean_object* v___x_11872_; lean_object* v___x_11873_; 
v_ref_11867_ = lean_ctor_get(v_a_11859_, 0);
v_m_11868_ = lean_ctor_get(v_a_11859_, 1);
v_returnType_11869_ = lean_ctor_get(v_a_11859_, 2);
v_mutableVars_11870_ = lean_ctor_get(v_a_11859_, 3);
v___x_11871_ = 1;
lean_inc(v_mutableVars_11870_);
lean_inc(v_returnType_11869_);
lean_inc(v_m_11868_);
lean_inc(v_ref_11867_);
v___x_11872_ = lean_alloc_ctor(0, 4, 1);
lean_ctor_set(v___x_11872_, 0, v_ref_11867_);
lean_ctor_set(v___x_11872_, 1, v_m_11868_);
lean_ctor_set(v___x_11872_, 2, v_returnType_11869_);
lean_ctor_set(v___x_11872_, 3, v_mutableVars_11870_);
lean_ctor_set_uint8(v___x_11872_, sizeof(void*)*4, v___x_11871_);
v___x_11873_ = lean_apply_8(v_x_11858_, v___x_11872_, v_a_11860_, v_a_11861_, v_a_11862_, v_a_11863_, v_a_11864_, v_a_11865_, lean_box(0));
return v___x_11873_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg___boxed(lean_object* v_x_11874_, lean_object* v_a_11875_, lean_object* v_a_11876_, lean_object* v_a_11877_, lean_object* v_a_11878_, lean_object* v_a_11879_, lean_object* v_a_11880_, lean_object* v_a_11881_, lean_object* v_a_11882_){
_start:
{
lean_object* v_res_11883_; 
v_res_11883_ = l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg(v_x_11874_, v_a_11875_, v_a_11876_, v_a_11877_, v_a_11878_, v_a_11879_, v_a_11880_, v_a_11881_);
lean_dec_ref(v_a_11875_);
return v_res_11883_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor(lean_object* v_00_u03b1_11884_, lean_object* v_x_11885_, lean_object* v_a_11886_, lean_object* v_a_11887_, lean_object* v_a_11888_, lean_object* v_a_11889_, lean_object* v_a_11890_, lean_object* v_a_11891_, lean_object* v_a_11892_){
_start:
{
lean_object* v___x_11894_; 
v___x_11894_ = l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg(v_x_11885_, v_a_11886_, v_a_11887_, v_a_11888_, v_a_11889_, v_a_11890_, v_a_11891_, v_a_11892_);
return v___x_11894_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_withFor___boxed(lean_object* v_00_u03b1_11895_, lean_object* v_x_11896_, lean_object* v_a_11897_, lean_object* v_a_11898_, lean_object* v_a_11899_, lean_object* v_a_11900_, lean_object* v_a_11901_, lean_object* v_a_11902_, lean_object* v_a_11903_, lean_object* v_a_11904_){
_start:
{
lean_object* v_res_11905_; 
v_res_11905_ = l_Lean_Elab_Term_Do_ToCodeBlock_withFor(v_00_u03b1_11895_, v_x_11896_, v_a_11897_, v_a_11898_, v_a_11899_, v_a_11900_, v_a_11901_, v_a_11902_, v_a_11903_);
lean_dec_ref(v_a_11897_);
return v_res_11905_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(lean_object* v_cls_11906_, lean_object* v___y_11907_){
_start:
{
lean_object* v_options_11909_; uint8_t v_hasTrace_11910_; 
v_options_11909_ = lean_ctor_get(v___y_11907_, 2);
v_hasTrace_11910_ = lean_ctor_get_uint8(v_options_11909_, sizeof(void*)*1);
if (v_hasTrace_11910_ == 0)
{
lean_object* v___x_11911_; lean_object* v___x_11912_; 
lean_dec(v_cls_11906_);
v___x_11911_ = lean_box(v_hasTrace_11910_);
v___x_11912_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11912_, 0, v___x_11911_);
return v___x_11912_;
}
else
{
lean_object* v_inheritedTraceOptions_11913_; lean_object* v___x_11914_; lean_object* v___x_11915_; uint8_t v___x_11916_; lean_object* v___x_11917_; lean_object* v___x_11918_; 
v_inheritedTraceOptions_11913_ = lean_ctor_get(v___y_11907_, 13);
v___x_11914_ = ((lean_object*)(l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__0___redArg___closed__1));
v___x_11915_ = l_Lean_Name_append(v___x_11914_, v_cls_11906_);
v___x_11916_ = l___private_Lean_Util_Trace_0__Lean_checkTraceOption_go(v_inheritedTraceOptions_11913_, v_options_11909_, v___x_11915_);
lean_dec(v___x_11915_);
v___x_11917_ = lean_box(v___x_11916_);
v___x_11918_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11918_, 0, v___x_11917_);
return v___x_11918_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg___boxed(lean_object* v_cls_11919_, lean_object* v___y_11920_, lean_object* v___y_11921_){
_start:
{
lean_object* v_res_11922_; 
v_res_11922_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(v_cls_11919_, v___y_11920_);
lean_dec_ref(v___y_11920_);
return v_res_11922_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(lean_object* v_cls_11923_, lean_object* v_msg_11924_, lean_object* v___y_11925_, lean_object* v___y_11926_, lean_object* v___y_11927_, lean_object* v___y_11928_){
_start:
{
lean_object* v_ref_11930_; lean_object* v___x_11931_; lean_object* v_a_11932_; lean_object* v___x_11933_; lean_object* v_traceState_11934_; lean_object* v_env_11935_; lean_object* v_nextMacroScope_11936_; lean_object* v_ngen_11937_; lean_object* v_auxDeclNGen_11938_; lean_object* v_cache_11939_; lean_object* v_messages_11940_; lean_object* v_infoState_11941_; lean_object* v_snapshotTasks_11942_; uint64_t v_tid_11943_; lean_object* v_traces_11944_; lean_object* v___x_11945_; double v___x_11946_; uint8_t v___x_11947_; lean_object* v___x_11948_; lean_object* v___x_11949_; lean_object* v___x_11950_; lean_object* v___x_11951_; lean_object* v___x_11952_; lean_object* v___x_11953_; lean_object* v___x_11954_; lean_object* v___x_11955_; lean_object* v___x_11956_; lean_object* v___x_11957_; lean_object* v___x_11958_; 
v_ref_11930_ = lean_ctor_get(v___y_11927_, 5);
v___x_11931_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_11924_, v___y_11925_, v___y_11926_, v___y_11927_, v___y_11928_);
v_a_11932_ = lean_ctor_get(v___x_11931_, 0);
lean_inc(v_a_11932_);
lean_dec_ref(v___x_11931_);
v___x_11933_ = lean_st_ref_take(v___y_11928_);
v_traceState_11934_ = lean_ctor_get(v___x_11933_, 4);
lean_inc_ref(v_traceState_11934_);
v_env_11935_ = lean_ctor_get(v___x_11933_, 0);
lean_inc_ref(v_env_11935_);
v_nextMacroScope_11936_ = lean_ctor_get(v___x_11933_, 1);
lean_inc(v_nextMacroScope_11936_);
v_ngen_11937_ = lean_ctor_get(v___x_11933_, 2);
lean_inc_ref(v_ngen_11937_);
v_auxDeclNGen_11938_ = lean_ctor_get(v___x_11933_, 3);
lean_inc_ref(v_auxDeclNGen_11938_);
v_cache_11939_ = lean_ctor_get(v___x_11933_, 5);
lean_inc_ref(v_cache_11939_);
v_messages_11940_ = lean_ctor_get(v___x_11933_, 6);
lean_inc_ref(v_messages_11940_);
v_infoState_11941_ = lean_ctor_get(v___x_11933_, 7);
lean_inc_ref(v_infoState_11941_);
v_snapshotTasks_11942_ = lean_ctor_get(v___x_11933_, 8);
lean_inc_ref(v_snapshotTasks_11942_);
lean_dec(v___x_11933_);
v_tid_11943_ = lean_ctor_get_uint64(v_traceState_11934_, sizeof(void*)*1);
v_traces_11944_ = lean_ctor_get(v_traceState_11934_, 0);
lean_inc_ref(v_traces_11944_);
lean_dec_ref(v_traceState_11934_);
v___x_11945_ = lean_box(0);
v___x_11946_ = lean_float_once(&l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0, &l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0_once, _init_l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__0);
v___x_11947_ = 0;
v___x_11948_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__0));
v___x_11949_ = lean_alloc_ctor(0, 3, 17);
lean_ctor_set(v___x_11949_, 0, v_cls_11923_);
lean_ctor_set(v___x_11949_, 1, v___x_11945_);
lean_ctor_set(v___x_11949_, 2, v___x_11948_);
lean_ctor_set_float(v___x_11949_, sizeof(void*)*3, v___x_11946_);
lean_ctor_set_float(v___x_11949_, sizeof(void*)*3 + 8, v___x_11946_);
lean_ctor_set_uint8(v___x_11949_, sizeof(void*)*3 + 16, v___x_11947_);
v___x_11950_ = ((lean_object*)(l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__1___redArg___closed__1));
v___x_11951_ = lean_alloc_ctor(9, 3, 0);
lean_ctor_set(v___x_11951_, 0, v___x_11949_);
lean_ctor_set(v___x_11951_, 1, v_a_11932_);
lean_ctor_set(v___x_11951_, 2, v___x_11950_);
lean_inc(v_ref_11930_);
v___x_11952_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_11952_, 0, v_ref_11930_);
lean_ctor_set(v___x_11952_, 1, v___x_11951_);
v___x_11953_ = l_Lean_PersistentArray_push___redArg(v_traces_11944_, v___x_11952_);
v___x_11954_ = lean_alloc_ctor(0, 1, 8);
lean_ctor_set(v___x_11954_, 0, v___x_11953_);
lean_ctor_set_uint64(v___x_11954_, sizeof(void*)*1, v_tid_11943_);
v___x_11955_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_11955_, 0, v_env_11935_);
lean_ctor_set(v___x_11955_, 1, v_nextMacroScope_11936_);
lean_ctor_set(v___x_11955_, 2, v_ngen_11937_);
lean_ctor_set(v___x_11955_, 3, v_auxDeclNGen_11938_);
lean_ctor_set(v___x_11955_, 4, v___x_11954_);
lean_ctor_set(v___x_11955_, 5, v_cache_11939_);
lean_ctor_set(v___x_11955_, 6, v_messages_11940_);
lean_ctor_set(v___x_11955_, 7, v_infoState_11941_);
lean_ctor_set(v___x_11955_, 8, v_snapshotTasks_11942_);
v___x_11956_ = lean_st_ref_set(v___y_11928_, v___x_11955_);
v___x_11957_ = lean_box(0);
v___x_11958_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_11958_, 0, v___x_11957_);
return v___x_11958_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg___boxed(lean_object* v_cls_11959_, lean_object* v_msg_11960_, lean_object* v___y_11961_, lean_object* v___y_11962_, lean_object* v___y_11963_, lean_object* v___y_11964_, lean_object* v___y_11965_){
_start:
{
lean_object* v_res_11966_; 
v_res_11966_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(v_cls_11959_, v_msg_11960_, v___y_11961_, v___y_11962_, v___y_11963_, v___y_11964_);
lean_dec(v___y_11964_);
lean_dec_ref(v___y_11963_);
lean_dec(v___y_11962_);
lean_dec_ref(v___y_11961_);
return v_res_11966_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3(lean_object* v_mod_11967_, uint8_t v_isMeta_11968_, lean_object* v_hint_11969_, lean_object* v___y_11970_, lean_object* v___y_11971_, lean_object* v___y_11972_, lean_object* v___y_11973_, lean_object* v___y_11974_, lean_object* v___y_11975_, lean_object* v___y_11976_){
_start:
{
lean_object* v___x_11978_; lean_object* v_env_11979_; uint8_t v_isExporting_11980_; lean_object* v___x_11981_; lean_object* v_env_11982_; lean_object* v___x_11983_; lean_object* v_entry_11984_; lean_object* v___x_11985_; lean_object* v___x_11986_; lean_object* v___x_11987_; lean_object* v___y_11989_; lean_object* v___y_11990_; lean_object* v___x_12016_; uint8_t v___x_12017_; 
v___x_11978_ = lean_st_ref_get(v___y_11976_);
v_env_11979_ = lean_ctor_get(v___x_11978_, 0);
lean_inc_ref(v_env_11979_);
lean_dec(v___x_11978_);
v_isExporting_11980_ = lean_ctor_get_uint8(v_env_11979_, sizeof(void*)*8);
lean_dec_ref(v_env_11979_);
v___x_11981_ = lean_st_ref_get(v___y_11976_);
v_env_11982_ = lean_ctor_get(v___x_11981_, 0);
lean_inc_ref(v_env_11982_);
lean_dec(v___x_11981_);
v___x_11983_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__2);
lean_inc(v_mod_11967_);
v_entry_11984_ = lean_alloc_ctor(0, 1, 2);
lean_ctor_set(v_entry_11984_, 0, v_mod_11967_);
lean_ctor_set_uint8(v_entry_11984_, sizeof(void*)*1, v_isExporting_11980_);
lean_ctor_set_uint8(v_entry_11984_, sizeof(void*)*1 + 1, v_isMeta_11968_);
v___x_11985_ = l___private_Lean_ExtraModUses_0__Lean_extraModUses;
v___x_11986_ = lean_box(1);
v___x_11987_ = lean_box(0);
v___x_12016_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_11983_, v___x_11985_, v_env_11982_, v___x_11986_, v___x_11987_);
v___x_12017_ = l_Lean_PersistentHashMap_contains___at___00__private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4_spec__7___redArg(v___x_12016_, v_entry_11984_);
if (v___x_12017_ == 0)
{
lean_object* v_cls_12018_; lean_object* v___x_12019_; lean_object* v_a_12020_; lean_object* v___y_12022_; lean_object* v___y_12023_; lean_object* v___y_12027_; lean_object* v___y_12028_; uint8_t v___x_12040_; 
v_cls_12018_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__8));
v___x_12019_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(v_cls_12018_, v___y_11975_);
v_a_12020_ = lean_ctor_get(v___x_12019_, 0);
lean_inc(v_a_12020_);
lean_dec_ref(v___x_12019_);
v___x_12040_ = lean_unbox(v_a_12020_);
lean_dec(v_a_12020_);
if (v___x_12040_ == 0)
{
lean_dec(v_hint_11969_);
lean_dec(v_mod_11967_);
v___y_11989_ = v___y_11974_;
v___y_11990_ = v___y_11976_;
goto v___jp_11988_;
}
else
{
lean_object* v___x_12041_; lean_object* v___y_12043_; 
v___x_12041_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__14);
if (v_isExporting_11980_ == 0)
{
lean_object* v___x_12050_; 
v___x_12050_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__17));
v___y_12043_ = v___x_12050_;
goto v___jp_12042_;
}
else
{
lean_object* v___x_12051_; 
v___x_12051_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__18));
v___y_12043_ = v___x_12051_;
goto v___jp_12042_;
}
v___jp_12042_:
{
lean_object* v___x_12044_; lean_object* v___x_12045_; lean_object* v___x_12046_; lean_object* v___x_12047_; 
v___x_12044_ = l_Lean_stringToMessageData(v___y_12043_);
v___x_12045_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12045_, 0, v___x_12041_);
lean_ctor_set(v___x_12045_, 1, v___x_12044_);
v___x_12046_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__2___closed__0);
v___x_12047_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12047_, 0, v___x_12045_);
lean_ctor_set(v___x_12047_, 1, v___x_12046_);
if (v_isMeta_11968_ == 0)
{
lean_object* v___x_12048_; 
v___x_12048_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__15));
v___y_12027_ = v___x_12047_;
v___y_12028_ = v___x_12048_;
goto v___jp_12026_;
}
else
{
lean_object* v___x_12049_; 
v___x_12049_ = ((lean_object*)(l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__16));
v___y_12027_ = v___x_12047_;
v___y_12028_ = v___x_12049_;
goto v___jp_12026_;
}
}
}
v___jp_12021_:
{
lean_object* v___x_12024_; lean_object* v___x_12025_; 
v___x_12024_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12024_, 0, v___y_12022_);
lean_ctor_set(v___x_12024_, 1, v___y_12023_);
v___x_12025_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(v_cls_12018_, v___x_12024_, v___y_11973_, v___y_11974_, v___y_11975_, v___y_11976_);
if (lean_obj_tag(v___x_12025_) == 0)
{
lean_dec_ref(v___x_12025_);
v___y_11989_ = v___y_11974_;
v___y_11990_ = v___y_11976_;
goto v___jp_11988_;
}
else
{
lean_dec_ref(v_entry_11984_);
return v___x_12025_;
}
}
v___jp_12026_:
{
lean_object* v___x_12029_; lean_object* v___x_12030_; lean_object* v___x_12031_; lean_object* v___x_12032_; lean_object* v___x_12033_; lean_object* v___x_12034_; uint8_t v___x_12035_; 
v___x_12029_ = l_Lean_stringToMessageData(v___y_12028_);
v___x_12030_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12030_, 0, v___y_12027_);
lean_ctor_set(v___x_12030_, 1, v___x_12029_);
v___x_12031_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__10);
v___x_12032_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12032_, 0, v___x_12030_);
lean_ctor_set(v___x_12032_, 1, v___x_12031_);
v___x_12033_ = l_Lean_MessageData_ofName(v_mod_11967_);
v___x_12034_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12034_, 0, v___x_12032_);
lean_ctor_set(v___x_12034_, 1, v___x_12033_);
v___x_12035_ = l_Lean_Name_isAnonymous(v_hint_11969_);
if (v___x_12035_ == 0)
{
lean_object* v___x_12036_; lean_object* v___x_12037_; lean_object* v___x_12038_; 
v___x_12036_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__12);
v___x_12037_ = l_Lean_MessageData_ofName(v_hint_11969_);
v___x_12038_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_12038_, 0, v___x_12036_);
lean_ctor_set(v___x_12038_, 1, v___x_12037_);
v___y_12022_ = v___x_12034_;
v___y_12023_ = v___x_12038_;
goto v___jp_12021_;
}
else
{
lean_object* v___x_12039_; 
lean_dec(v_hint_11969_);
v___x_12039_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__1);
v___y_12022_ = v___x_12034_;
v___y_12023_ = v___x_12039_;
goto v___jp_12021_;
}
}
}
else
{
lean_object* v___x_12052_; lean_object* v___x_12053_; 
lean_dec_ref(v_entry_11984_);
lean_dec(v_hint_11969_);
lean_dec(v_mod_11967_);
v___x_12052_ = lean_box(0);
v___x_12053_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12053_, 0, v___x_12052_);
return v___x_12053_;
}
v___jp_11988_:
{
lean_object* v___x_11991_; lean_object* v_toEnvExtension_11992_; lean_object* v_env_11993_; lean_object* v_nextMacroScope_11994_; lean_object* v_ngen_11995_; lean_object* v_auxDeclNGen_11996_; lean_object* v_traceState_11997_; lean_object* v_messages_11998_; lean_object* v_infoState_11999_; lean_object* v_snapshotTasks_12000_; lean_object* v_asyncMode_12001_; lean_object* v___x_12002_; lean_object* v___x_12003_; lean_object* v___x_12004_; lean_object* v___x_12005_; lean_object* v___x_12006_; lean_object* v_mctx_12007_; lean_object* v_zetaDeltaFVarIds_12008_; lean_object* v_postponed_12009_; lean_object* v_diag_12010_; lean_object* v___x_12011_; lean_object* v___x_12012_; lean_object* v___x_12013_; lean_object* v___x_12014_; lean_object* v___x_12015_; 
v___x_11991_ = lean_st_ref_take(v___y_11990_);
v_toEnvExtension_11992_ = lean_ctor_get(v___x_11985_, 0);
lean_inc_ref(v_toEnvExtension_11992_);
v_env_11993_ = lean_ctor_get(v___x_11991_, 0);
lean_inc_ref(v_env_11993_);
v_nextMacroScope_11994_ = lean_ctor_get(v___x_11991_, 1);
lean_inc(v_nextMacroScope_11994_);
v_ngen_11995_ = lean_ctor_get(v___x_11991_, 2);
lean_inc_ref(v_ngen_11995_);
v_auxDeclNGen_11996_ = lean_ctor_get(v___x_11991_, 3);
lean_inc_ref(v_auxDeclNGen_11996_);
v_traceState_11997_ = lean_ctor_get(v___x_11991_, 4);
lean_inc_ref(v_traceState_11997_);
v_messages_11998_ = lean_ctor_get(v___x_11991_, 6);
lean_inc_ref(v_messages_11998_);
v_infoState_11999_ = lean_ctor_get(v___x_11991_, 7);
lean_inc_ref(v_infoState_11999_);
v_snapshotTasks_12000_ = lean_ctor_get(v___x_11991_, 8);
lean_inc_ref(v_snapshotTasks_12000_);
lean_dec(v___x_11991_);
v_asyncMode_12001_ = lean_ctor_get(v_toEnvExtension_11992_, 2);
lean_inc(v_asyncMode_12001_);
lean_dec_ref(v_toEnvExtension_11992_);
v___x_12002_ = l_Lean_PersistentEnvExtension_addEntry___redArg(v___x_11985_, v_env_11993_, v_entry_11984_, v_asyncMode_12001_, v___x_11987_);
lean_dec(v_asyncMode_12001_);
v___x_12003_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__5);
v___x_12004_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_12004_, 0, v___x_12002_);
lean_ctor_set(v___x_12004_, 1, v_nextMacroScope_11994_);
lean_ctor_set(v___x_12004_, 2, v_ngen_11995_);
lean_ctor_set(v___x_12004_, 3, v_auxDeclNGen_11996_);
lean_ctor_set(v___x_12004_, 4, v_traceState_11997_);
lean_ctor_set(v___x_12004_, 5, v___x_12003_);
lean_ctor_set(v___x_12004_, 6, v_messages_11998_);
lean_ctor_set(v___x_12004_, 7, v_infoState_11999_);
lean_ctor_set(v___x_12004_, 8, v_snapshotTasks_12000_);
v___x_12005_ = lean_st_ref_set(v___y_11990_, v___x_12004_);
v___x_12006_ = lean_st_ref_take(v___y_11989_);
v_mctx_12007_ = lean_ctor_get(v___x_12006_, 0);
lean_inc_ref(v_mctx_12007_);
v_zetaDeltaFVarIds_12008_ = lean_ctor_get(v___x_12006_, 2);
lean_inc(v_zetaDeltaFVarIds_12008_);
v_postponed_12009_ = lean_ctor_get(v___x_12006_, 3);
lean_inc_ref(v_postponed_12009_);
v_diag_12010_ = lean_ctor_get(v___x_12006_, 4);
lean_inc_ref(v_diag_12010_);
lean_dec(v___x_12006_);
v___x_12011_ = lean_obj_once(&l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6, &l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6_once, _init_l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__4___closed__6);
v___x_12012_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_12012_, 0, v_mctx_12007_);
lean_ctor_set(v___x_12012_, 1, v___x_12011_);
lean_ctor_set(v___x_12012_, 2, v_zetaDeltaFVarIds_12008_);
lean_ctor_set(v___x_12012_, 3, v_postponed_12009_);
lean_ctor_set(v___x_12012_, 4, v_diag_12010_);
v___x_12013_ = lean_st_ref_set(v___y_11989_, v___x_12012_);
v___x_12014_ = lean_box(0);
v___x_12015_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12015_, 0, v___x_12014_);
return v___x_12015_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3___boxed(lean_object* v_mod_12054_, lean_object* v_isMeta_12055_, lean_object* v_hint_12056_, lean_object* v___y_12057_, lean_object* v___y_12058_, lean_object* v___y_12059_, lean_object* v___y_12060_, lean_object* v___y_12061_, lean_object* v___y_12062_, lean_object* v___y_12063_, lean_object* v___y_12064_){
_start:
{
uint8_t v_isMeta_boxed_12065_; lean_object* v_res_12066_; 
v_isMeta_boxed_12065_ = lean_unbox(v_isMeta_12055_);
v_res_12066_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3(v_mod_12054_, v_isMeta_boxed_12065_, v_hint_12056_, v___y_12057_, v___y_12058_, v___y_12059_, v___y_12060_, v___y_12061_, v___y_12062_, v___y_12063_);
lean_dec(v___y_12063_);
lean_dec_ref(v___y_12062_);
lean_dec(v___y_12061_);
lean_dec_ref(v___y_12060_);
lean_dec(v___y_12059_);
lean_dec_ref(v___y_12058_);
lean_dec_ref(v___y_12057_);
return v_res_12066_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4(lean_object* v___x_12067_, lean_object* v_declName_12068_, lean_object* v_as_12069_, size_t v_sz_12070_, size_t v_i_12071_, lean_object* v_b_12072_, lean_object* v___y_12073_, lean_object* v___y_12074_, lean_object* v___y_12075_, lean_object* v___y_12076_, lean_object* v___y_12077_, lean_object* v___y_12078_, lean_object* v___y_12079_){
_start:
{
uint8_t v___x_12081_; 
v___x_12081_ = lean_usize_dec_lt(v_i_12071_, v_sz_12070_);
if (v___x_12081_ == 0)
{
lean_object* v___x_12082_; 
lean_dec(v_declName_12068_);
v___x_12082_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12082_, 0, v_b_12072_);
return v___x_12082_;
}
else
{
lean_object* v___x_12083_; lean_object* v_modules_12084_; lean_object* v___x_12085_; lean_object* v_a_12086_; lean_object* v___x_12087_; lean_object* v_toImport_12088_; lean_object* v_module_12089_; uint8_t v___x_12090_; lean_object* v___x_12091_; 
v___x_12083_ = l_Lean_Environment_header(v___x_12067_);
v_modules_12084_ = lean_ctor_get(v___x_12083_, 3);
lean_inc_ref(v_modules_12084_);
lean_dec_ref(v___x_12083_);
v___x_12085_ = l_Lean_instInhabitedEffectiveImport_default;
v_a_12086_ = lean_array_uget_borrowed(v_as_12069_, v_i_12071_);
v___x_12087_ = lean_array_get(v___x_12085_, v_modules_12084_, v_a_12086_);
lean_dec_ref(v_modules_12084_);
v_toImport_12088_ = lean_ctor_get(v___x_12087_, 0);
lean_inc_ref(v_toImport_12088_);
lean_dec(v___x_12087_);
v_module_12089_ = lean_ctor_get(v_toImport_12088_, 0);
lean_inc(v_module_12089_);
lean_dec_ref(v_toImport_12088_);
v___x_12090_ = 0;
lean_inc(v_declName_12068_);
v___x_12091_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3(v_module_12089_, v___x_12090_, v_declName_12068_, v___y_12073_, v___y_12074_, v___y_12075_, v___y_12076_, v___y_12077_, v___y_12078_, v___y_12079_);
if (lean_obj_tag(v___x_12091_) == 0)
{
lean_object* v___x_12092_; size_t v___x_12093_; size_t v___x_12094_; 
lean_dec_ref(v___x_12091_);
v___x_12092_ = lean_box(0);
v___x_12093_ = ((size_t)1ULL);
v___x_12094_ = lean_usize_add(v_i_12071_, v___x_12093_);
v_i_12071_ = v___x_12094_;
v_b_12072_ = v___x_12092_;
goto _start;
}
else
{
lean_dec(v_declName_12068_);
return v___x_12091_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4___boxed(lean_object* v___x_12096_, lean_object* v_declName_12097_, lean_object* v_as_12098_, lean_object* v_sz_12099_, lean_object* v_i_12100_, lean_object* v_b_12101_, lean_object* v___y_12102_, lean_object* v___y_12103_, lean_object* v___y_12104_, lean_object* v___y_12105_, lean_object* v___y_12106_, lean_object* v___y_12107_, lean_object* v___y_12108_, lean_object* v___y_12109_){
_start:
{
size_t v_sz_boxed_12110_; size_t v_i_boxed_12111_; lean_object* v_res_12112_; 
v_sz_boxed_12110_ = lean_unbox_usize(v_sz_12099_);
lean_dec(v_sz_12099_);
v_i_boxed_12111_ = lean_unbox_usize(v_i_12100_);
lean_dec(v_i_12100_);
v_res_12112_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4(v___x_12096_, v_declName_12097_, v_as_12098_, v_sz_boxed_12110_, v_i_boxed_12111_, v_b_12101_, v___y_12102_, v___y_12103_, v___y_12104_, v___y_12105_, v___y_12106_, v___y_12107_, v___y_12108_);
lean_dec(v___y_12108_);
lean_dec_ref(v___y_12107_);
lean_dec(v___y_12106_);
lean_dec_ref(v___y_12105_);
lean_dec(v___y_12104_);
lean_dec_ref(v___y_12103_);
lean_dec_ref(v___y_12102_);
lean_dec_ref(v_as_12098_);
lean_dec_ref(v___x_12096_);
return v_res_12112_;
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2(lean_object* v_declName_12113_, uint8_t v_isMeta_12114_, lean_object* v___y_12115_, lean_object* v___y_12116_, lean_object* v___y_12117_, lean_object* v___y_12118_, lean_object* v___y_12119_, lean_object* v___y_12120_, lean_object* v___y_12121_){
_start:
{
lean_object* v___x_12123_; lean_object* v_env_12127_; lean_object* v___y_12129_; lean_object* v___x_12135_; 
v___x_12123_ = lean_st_ref_get(v___y_12121_);
v_env_12127_ = lean_ctor_get(v___x_12123_, 0);
lean_inc_ref(v_env_12127_);
lean_dec(v___x_12123_);
v___x_12135_ = l_Lean_Environment_getModuleIdxFor_x3f(v_env_12127_, v_declName_12113_);
if (lean_obj_tag(v___x_12135_) == 0)
{
lean_dec_ref(v_env_12127_);
lean_dec(v_declName_12113_);
goto v___jp_12124_;
}
else
{
lean_object* v_val_12136_; lean_object* v___x_12137_; lean_object* v_modules_12138_; lean_object* v___x_12139_; uint8_t v___x_12140_; 
v_val_12136_ = lean_ctor_get(v___x_12135_, 0);
lean_inc(v_val_12136_);
lean_dec_ref(v___x_12135_);
v___x_12137_ = l_Lean_Environment_header(v_env_12127_);
v_modules_12138_ = lean_ctor_get(v___x_12137_, 3);
lean_inc_ref(v_modules_12138_);
lean_dec_ref(v___x_12137_);
v___x_12139_ = lean_array_get_size(v_modules_12138_);
v___x_12140_ = lean_nat_dec_lt(v_val_12136_, v___x_12139_);
if (v___x_12140_ == 0)
{
lean_dec_ref(v_modules_12138_);
lean_dec(v_val_12136_);
lean_dec_ref(v_env_12127_);
lean_dec(v_declName_12113_);
goto v___jp_12124_;
}
else
{
lean_object* v___x_12141_; lean_object* v_env_12142_; lean_object* v___x_12143_; lean_object* v___x_12144_; uint8_t v___y_12146_; 
v___x_12141_ = lean_st_ref_get(v___y_12121_);
v_env_12142_ = lean_ctor_get(v___x_12141_, 0);
lean_inc_ref(v_env_12142_);
lean_dec(v___x_12141_);
v___x_12143_ = lean_obj_once(&l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2, &l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2_once, _init_l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__2);
v___x_12144_ = lean_array_fget(v_modules_12138_, v_val_12136_);
lean_dec(v_val_12136_);
lean_dec_ref(v_modules_12138_);
if (v_isMeta_12114_ == 0)
{
lean_dec_ref(v_env_12142_);
v___y_12146_ = v_isMeta_12114_;
goto v___jp_12145_;
}
else
{
uint8_t v___x_12157_; 
lean_inc(v_declName_12113_);
v___x_12157_ = l_Lean_isMarkedMeta(v_env_12142_, v_declName_12113_);
if (v___x_12157_ == 0)
{
v___y_12146_ = v_isMeta_12114_;
goto v___jp_12145_;
}
else
{
uint8_t v___x_12158_; 
v___x_12158_ = 0;
v___y_12146_ = v___x_12158_;
goto v___jp_12145_;
}
}
v___jp_12145_:
{
lean_object* v_toImport_12147_; lean_object* v_module_12148_; lean_object* v___x_12149_; 
v_toImport_12147_ = lean_ctor_get(v___x_12144_, 0);
lean_inc_ref(v_toImport_12147_);
lean_dec(v___x_12144_);
v_module_12148_ = lean_ctor_get(v_toImport_12147_, 0);
lean_inc(v_module_12148_);
lean_dec_ref(v_toImport_12147_);
lean_inc(v_declName_12113_);
v___x_12149_ = l___private_Lean_ExtraModUses_0__Lean_recordExtraModUseCore___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__3(v_module_12148_, v___y_12146_, v_declName_12113_, v___y_12115_, v___y_12116_, v___y_12117_, v___y_12118_, v___y_12119_, v___y_12120_, v___y_12121_);
if (lean_obj_tag(v___x_12149_) == 0)
{
lean_object* v___x_12150_; lean_object* v___x_12151_; lean_object* v___x_12152_; lean_object* v___x_12153_; lean_object* v___x_12154_; 
lean_dec_ref(v___x_12149_);
v___x_12150_ = l_Lean_indirectModUseExt;
v___x_12151_ = lean_box(1);
v___x_12152_ = lean_box(0);
lean_inc_ref(v_env_12127_);
v___x_12153_ = l_Lean_SimplePersistentEnvExtension_getState___redArg(v___x_12143_, v___x_12150_, v_env_12127_, v___x_12151_, v___x_12152_);
v___x_12154_ = l_Std_DHashMap_Internal_Raw_u2080_Const_get_x3f___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3_spec__6___redArg(v___x_12153_, v_declName_12113_);
lean_dec(v___x_12153_);
if (lean_obj_tag(v___x_12154_) == 0)
{
lean_object* v___x_12155_; 
v___x_12155_ = ((lean_object*)(l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__3___closed__3));
v___y_12129_ = v___x_12155_;
goto v___jp_12128_;
}
else
{
lean_object* v_val_12156_; 
v_val_12156_ = lean_ctor_get(v___x_12154_, 0);
lean_inc(v_val_12156_);
lean_dec_ref(v___x_12154_);
v___y_12129_ = v_val_12156_;
goto v___jp_12128_;
}
}
else
{
lean_dec_ref(v_env_12127_);
lean_dec(v_declName_12113_);
return v___x_12149_;
}
}
}
}
v___jp_12124_:
{
lean_object* v___x_12125_; lean_object* v___x_12126_; 
v___x_12125_ = lean_box(0);
v___x_12126_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12126_, 0, v___x_12125_);
return v___x_12126_;
}
v___jp_12128_:
{
lean_object* v___x_12130_; size_t v_sz_12131_; size_t v___x_12132_; lean_object* v___x_12133_; 
v___x_12130_ = lean_box(0);
v_sz_12131_ = lean_array_size(v___y_12129_);
v___x_12132_ = ((size_t)0ULL);
v___x_12133_ = l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2_spec__4(v_env_12127_, v_declName_12113_, v___y_12129_, v_sz_12131_, v___x_12132_, v___x_12130_, v___y_12115_, v___y_12116_, v___y_12117_, v___y_12118_, v___y_12119_, v___y_12120_, v___y_12121_);
lean_dec_ref(v___y_12129_);
lean_dec_ref(v_env_12127_);
if (lean_obj_tag(v___x_12133_) == 0)
{
lean_object* v___x_12134_; 
lean_dec_ref(v___x_12133_);
v___x_12134_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12134_, 0, v___x_12130_);
return v___x_12134_;
}
else
{
return v___x_12133_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2___boxed(lean_object* v_declName_12159_, lean_object* v_isMeta_12160_, lean_object* v___y_12161_, lean_object* v___y_12162_, lean_object* v___y_12163_, lean_object* v___y_12164_, lean_object* v___y_12165_, lean_object* v___y_12166_, lean_object* v___y_12167_, lean_object* v___y_12168_){
_start:
{
uint8_t v_isMeta_boxed_12169_; lean_object* v_res_12170_; 
v_isMeta_boxed_12169_ = lean_unbox(v_isMeta_12160_);
v_res_12170_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2(v_declName_12159_, v_isMeta_boxed_12169_, v___y_12161_, v___y_12162_, v___y_12163_, v___y_12164_, v___y_12165_, v___y_12166_, v___y_12167_);
lean_dec(v___y_12167_);
lean_dec_ref(v___y_12166_);
lean_dec(v___y_12165_);
lean_dec_ref(v___y_12164_);
lean_dec(v___y_12163_);
lean_dec_ref(v___y_12162_);
lean_dec_ref(v___y_12161_);
return v_res_12170_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg(lean_object* v_as_x27_12171_, lean_object* v_b_12172_, lean_object* v___y_12173_, lean_object* v___y_12174_, lean_object* v___y_12175_, lean_object* v___y_12176_, lean_object* v___y_12177_, lean_object* v___y_12178_, lean_object* v___y_12179_){
_start:
{
if (lean_obj_tag(v_as_x27_12171_) == 0)
{
lean_object* v___x_12181_; 
v___x_12181_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12181_, 0, v_b_12172_);
return v___x_12181_;
}
else
{
lean_object* v_head_12182_; lean_object* v_tail_12183_; uint8_t v___x_12184_; lean_object* v___x_12185_; 
v_head_12182_ = lean_ctor_get(v_as_x27_12171_, 0);
lean_inc(v_head_12182_);
v_tail_12183_ = lean_ctor_get(v_as_x27_12171_, 1);
lean_inc(v_tail_12183_);
lean_dec_ref(v_as_x27_12171_);
v___x_12184_ = 1;
v___x_12185_ = l_Lean_recordExtraModUseFromDecl___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__2(v_head_12182_, v___x_12184_, v___y_12173_, v___y_12174_, v___y_12175_, v___y_12176_, v___y_12177_, v___y_12178_, v___y_12179_);
if (lean_obj_tag(v___x_12185_) == 0)
{
lean_object* v___x_12186_; 
lean_dec_ref(v___x_12185_);
v___x_12186_ = lean_box(0);
v_as_x27_12171_ = v_tail_12183_;
v_b_12172_ = v___x_12186_;
goto _start;
}
else
{
lean_dec(v_tail_12183_);
return v___x_12185_;
}
}
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg___boxed(lean_object* v_as_x27_12188_, lean_object* v_b_12189_, lean_object* v___y_12190_, lean_object* v___y_12191_, lean_object* v___y_12192_, lean_object* v___y_12193_, lean_object* v___y_12194_, lean_object* v___y_12195_, lean_object* v___y_12196_, lean_object* v___y_12197_){
_start:
{
lean_object* v_res_12198_; 
v_res_12198_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg(v_as_x27_12188_, v_b_12189_, v___y_12190_, v___y_12191_, v___y_12192_, v___y_12193_, v___y_12194_, v___y_12195_, v___y_12196_);
lean_dec(v___y_12196_);
lean_dec_ref(v___y_12195_);
lean_dec(v___y_12194_);
lean_dec_ref(v___y_12193_);
lean_dec(v___y_12192_);
lean_dec_ref(v___y_12191_);
lean_dec_ref(v___y_12190_);
return v_res_12198_;
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4(lean_object* v_as_12199_, lean_object* v___y_12200_, lean_object* v___y_12201_, lean_object* v___y_12202_, lean_object* v___y_12203_, lean_object* v___y_12204_, lean_object* v___y_12205_, lean_object* v___y_12206_){
_start:
{
if (lean_obj_tag(v_as_12199_) == 0)
{
lean_object* v___x_12208_; lean_object* v___x_12209_; 
v___x_12208_ = lean_box(0);
v___x_12209_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12209_, 0, v___x_12208_);
return v___x_12209_;
}
else
{
lean_object* v_head_12210_; lean_object* v_tail_12211_; lean_object* v_fst_12212_; lean_object* v_snd_12213_; lean_object* v___x_12214_; lean_object* v_a_12215_; uint8_t v___x_12216_; 
v_head_12210_ = lean_ctor_get(v_as_12199_, 0);
lean_inc(v_head_12210_);
v_tail_12211_ = lean_ctor_get(v_as_12199_, 1);
lean_inc(v_tail_12211_);
lean_dec_ref(v_as_12199_);
v_fst_12212_ = lean_ctor_get(v_head_12210_, 0);
lean_inc(v_fst_12212_);
v_snd_12213_ = lean_ctor_get(v_head_12210_, 1);
lean_inc(v_snd_12213_);
lean_dec(v_head_12210_);
lean_inc(v_fst_12212_);
v___x_12214_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(v_fst_12212_, v___y_12205_);
v_a_12215_ = lean_ctor_get(v___x_12214_, 0);
lean_inc(v_a_12215_);
lean_dec_ref(v___x_12214_);
v___x_12216_ = lean_unbox(v_a_12215_);
lean_dec(v_a_12215_);
if (v___x_12216_ == 0)
{
lean_dec(v_snd_12213_);
lean_dec(v_fst_12212_);
v_as_12199_ = v_tail_12211_;
goto _start;
}
else
{
lean_object* v___x_12218_; lean_object* v___x_12219_; lean_object* v___x_12220_; 
v___x_12218_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_12218_, 0, v_snd_12213_);
v___x_12219_ = l_Lean_MessageData_ofFormat(v___x_12218_);
v___x_12220_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(v_fst_12212_, v___x_12219_, v___y_12203_, v___y_12204_, v___y_12205_, v___y_12206_);
if (lean_obj_tag(v___x_12220_) == 0)
{
lean_dec_ref(v___x_12220_);
v_as_12199_ = v_tail_12211_;
goto _start;
}
else
{
lean_dec(v_tail_12211_);
return v___x_12220_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4___boxed(lean_object* v_as_12222_, lean_object* v___y_12223_, lean_object* v___y_12224_, lean_object* v___y_12225_, lean_object* v___y_12226_, lean_object* v___y_12227_, lean_object* v___y_12228_, lean_object* v___y_12229_, lean_object* v___y_12230_){
_start:
{
lean_object* v_res_12231_; 
v_res_12231_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4(v_as_12222_, v___y_12223_, v___y_12224_, v___y_12225_, v___y_12226_, v___y_12227_, v___y_12228_, v___y_12229_);
lean_dec(v___y_12229_);
lean_dec_ref(v___y_12228_);
lean_dec(v___y_12227_);
lean_dec_ref(v___y_12226_);
lean_dec(v___y_12225_);
lean_dec_ref(v___y_12224_);
lean_dec_ref(v___y_12223_);
return v_res_12231_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(lean_object* v_ref_12232_){
_start:
{
lean_object* v___x_12234_; lean_object* v___x_12235_; lean_object* v___x_12236_; 
v___x_12234_ = lean_obj_once(&l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5, &l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5_once, _init_l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__7___redArg___closed__5);
v___x_12235_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12235_, 0, v_ref_12232_);
lean_ctor_set(v___x_12235_, 1, v___x_12234_);
v___x_12236_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12236_, 0, v___x_12235_);
return v___x_12236_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg___boxed(lean_object* v_ref_12237_, lean_object* v___y_12238_){
_start:
{
lean_object* v_res_12239_; 
v_res_12239_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(v_ref_12237_);
return v_res_12239_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(lean_object* v_ref_12240_, lean_object* v_msg_12241_, lean_object* v___y_12242_, lean_object* v___y_12243_, lean_object* v___y_12244_, lean_object* v___y_12245_){
_start:
{
lean_object* v_fileName_12247_; lean_object* v_fileMap_12248_; lean_object* v_options_12249_; lean_object* v_currRecDepth_12250_; lean_object* v_maxRecDepth_12251_; lean_object* v_ref_12252_; lean_object* v_currNamespace_12253_; lean_object* v_openDecls_12254_; lean_object* v_initHeartbeats_12255_; lean_object* v_maxHeartbeats_12256_; lean_object* v_quotContext_12257_; lean_object* v_currMacroScope_12258_; uint8_t v_diag_12259_; lean_object* v_cancelTk_x3f_12260_; uint8_t v_suppressElabErrors_12261_; lean_object* v_inheritedTraceOptions_12262_; lean_object* v_ref_12263_; lean_object* v___x_12264_; lean_object* v___x_12265_; 
v_fileName_12247_ = lean_ctor_get(v___y_12244_, 0);
v_fileMap_12248_ = lean_ctor_get(v___y_12244_, 1);
v_options_12249_ = lean_ctor_get(v___y_12244_, 2);
v_currRecDepth_12250_ = lean_ctor_get(v___y_12244_, 3);
v_maxRecDepth_12251_ = lean_ctor_get(v___y_12244_, 4);
v_ref_12252_ = lean_ctor_get(v___y_12244_, 5);
v_currNamespace_12253_ = lean_ctor_get(v___y_12244_, 6);
v_openDecls_12254_ = lean_ctor_get(v___y_12244_, 7);
v_initHeartbeats_12255_ = lean_ctor_get(v___y_12244_, 8);
v_maxHeartbeats_12256_ = lean_ctor_get(v___y_12244_, 9);
v_quotContext_12257_ = lean_ctor_get(v___y_12244_, 10);
v_currMacroScope_12258_ = lean_ctor_get(v___y_12244_, 11);
v_diag_12259_ = lean_ctor_get_uint8(v___y_12244_, sizeof(void*)*14);
v_cancelTk_x3f_12260_ = lean_ctor_get(v___y_12244_, 12);
v_suppressElabErrors_12261_ = lean_ctor_get_uint8(v___y_12244_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_12262_ = lean_ctor_get(v___y_12244_, 13);
v_ref_12263_ = l_Lean_replaceRef(v_ref_12240_, v_ref_12252_);
lean_inc_ref(v_inheritedTraceOptions_12262_);
lean_inc(v_cancelTk_x3f_12260_);
lean_inc(v_currMacroScope_12258_);
lean_inc(v_quotContext_12257_);
lean_inc(v_maxHeartbeats_12256_);
lean_inc(v_initHeartbeats_12255_);
lean_inc(v_openDecls_12254_);
lean_inc(v_currNamespace_12253_);
lean_inc(v_maxRecDepth_12251_);
lean_inc(v_currRecDepth_12250_);
lean_inc_ref(v_options_12249_);
lean_inc_ref(v_fileMap_12248_);
lean_inc_ref(v_fileName_12247_);
v___x_12264_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_12264_, 0, v_fileName_12247_);
lean_ctor_set(v___x_12264_, 1, v_fileMap_12248_);
lean_ctor_set(v___x_12264_, 2, v_options_12249_);
lean_ctor_set(v___x_12264_, 3, v_currRecDepth_12250_);
lean_ctor_set(v___x_12264_, 4, v_maxRecDepth_12251_);
lean_ctor_set(v___x_12264_, 5, v_ref_12263_);
lean_ctor_set(v___x_12264_, 6, v_currNamespace_12253_);
lean_ctor_set(v___x_12264_, 7, v_openDecls_12254_);
lean_ctor_set(v___x_12264_, 8, v_initHeartbeats_12255_);
lean_ctor_set(v___x_12264_, 9, v_maxHeartbeats_12256_);
lean_ctor_set(v___x_12264_, 10, v_quotContext_12257_);
lean_ctor_set(v___x_12264_, 11, v_currMacroScope_12258_);
lean_ctor_set(v___x_12264_, 12, v_cancelTk_x3f_12260_);
lean_ctor_set(v___x_12264_, 13, v_inheritedTraceOptions_12262_);
lean_ctor_set_uint8(v___x_12264_, sizeof(void*)*14, v_diag_12259_);
lean_ctor_set_uint8(v___x_12264_, sizeof(void*)*14 + 1, v_suppressElabErrors_12261_);
v___x_12265_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v_msg_12241_, v___y_12242_, v___y_12243_, v___x_12264_, v___y_12245_);
lean_dec_ref(v___x_12264_);
return v___x_12265_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg___boxed(lean_object* v_ref_12266_, lean_object* v_msg_12267_, lean_object* v___y_12268_, lean_object* v___y_12269_, lean_object* v___y_12270_, lean_object* v___y_12271_, lean_object* v___y_12272_){
_start:
{
lean_object* v_res_12273_; 
v_res_12273_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(v_ref_12266_, v_msg_12267_, v___y_12268_, v___y_12269_, v___y_12270_, v___y_12271_);
lean_dec(v___y_12271_);
lean_dec_ref(v___y_12270_);
lean_dec(v___y_12269_);
lean_dec_ref(v___y_12268_);
lean_dec(v_ref_12266_);
return v_res_12273_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg(){
_start:
{
lean_object* v___x_12275_; lean_object* v___x_12276_; 
v___x_12275_ = lean_obj_once(&l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0, &l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0_once, _init_l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0_spec__8___redArg___closed__0);
v___x_12276_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12276_, 0, v___x_12275_);
return v___x_12276_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg___boxed(lean_object* v___y_12277_){
_start:
{
lean_object* v_res_12278_; 
v_res_12278_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg();
return v_res_12278_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(lean_object* v_x_12279_, lean_object* v___y_12280_, lean_object* v___y_12281_, lean_object* v___y_12282_, lean_object* v___y_12283_, lean_object* v___y_12284_, lean_object* v___y_12285_, lean_object* v___y_12286_){
_start:
{
lean_object* v___x_12288_; lean_object* v_env_12289_; lean_object* v_options_12290_; lean_object* v_currRecDepth_12291_; lean_object* v_maxRecDepth_12292_; lean_object* v_ref_12293_; lean_object* v_currNamespace_12294_; lean_object* v_openDecls_12295_; lean_object* v_quotContext_12296_; lean_object* v_currMacroScope_12297_; lean_object* v___x_12298_; lean_object* v_nextMacroScope_12299_; lean_object* v___f_12300_; lean_object* v___f_12301_; lean_object* v___f_12302_; lean_object* v___f_12303_; lean_object* v___f_12304_; lean_object* v_methods_12305_; lean_object* v___x_12306_; lean_object* v___x_12307_; lean_object* v___x_12308_; lean_object* v___x_12309_; 
v___x_12288_ = lean_st_ref_get(v___y_12286_);
v_env_12289_ = lean_ctor_get(v___x_12288_, 0);
lean_inc_ref(v_env_12289_);
lean_dec(v___x_12288_);
v_options_12290_ = lean_ctor_get(v___y_12285_, 2);
v_currRecDepth_12291_ = lean_ctor_get(v___y_12285_, 3);
v_maxRecDepth_12292_ = lean_ctor_get(v___y_12285_, 4);
v_ref_12293_ = lean_ctor_get(v___y_12285_, 5);
v_currNamespace_12294_ = lean_ctor_get(v___y_12285_, 6);
v_openDecls_12295_ = lean_ctor_get(v___y_12285_, 7);
v_quotContext_12296_ = lean_ctor_get(v___y_12285_, 10);
v_currMacroScope_12297_ = lean_ctor_get(v___y_12285_, 11);
v___x_12298_ = lean_st_ref_get(v___y_12286_);
v_nextMacroScope_12299_ = lean_ctor_get(v___x_12298_, 1);
lean_inc(v_nextMacroScope_12299_);
lean_dec(v___x_12298_);
lean_inc_ref(v_env_12289_);
v___f_12300_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg___lam__0___boxed), 4, 1);
lean_closure_set(v___f_12300_, 0, v_env_12289_);
lean_inc_ref(v_env_12289_);
v___f_12301_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__1___boxed), 4, 1);
lean_closure_set(v___f_12301_, 0, v_env_12289_);
lean_inc(v_openDecls_12295_);
lean_inc(v_currNamespace_12294_);
lean_inc_ref(v_env_12289_);
v___f_12302_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__2___boxed), 6, 3);
lean_closure_set(v___f_12302_, 0, v_env_12289_);
lean_closure_set(v___f_12302_, 1, v_currNamespace_12294_);
lean_closure_set(v___f_12302_, 2, v_openDecls_12295_);
lean_inc(v_currNamespace_12294_);
v___f_12303_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__3___boxed), 3, 1);
lean_closure_set(v___f_12303_, 0, v_currNamespace_12294_);
lean_inc(v_openDecls_12295_);
lean_inc(v_currNamespace_12294_);
lean_inc_ref(v_options_12290_);
v___f_12304_ = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___lam__4___boxed), 7, 4);
lean_closure_set(v___f_12304_, 0, v_env_12289_);
lean_closure_set(v___f_12304_, 1, v_options_12290_);
lean_closure_set(v___f_12304_, 2, v_currNamespace_12294_);
lean_closure_set(v___f_12304_, 3, v_openDecls_12295_);
v_methods_12305_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v_methods_12305_, 0, v___f_12300_);
lean_ctor_set(v_methods_12305_, 1, v___f_12303_);
lean_ctor_set(v_methods_12305_, 2, v___f_12301_);
lean_ctor_set(v_methods_12305_, 3, v___f_12302_);
lean_ctor_set(v_methods_12305_, 4, v___f_12304_);
lean_inc(v_ref_12293_);
lean_inc(v_maxRecDepth_12292_);
lean_inc(v_currRecDepth_12291_);
lean_inc(v_currMacroScope_12297_);
lean_inc(v_quotContext_12296_);
v___x_12306_ = lean_alloc_ctor(0, 6, 0);
lean_ctor_set(v___x_12306_, 0, v_methods_12305_);
lean_ctor_set(v___x_12306_, 1, v_quotContext_12296_);
lean_ctor_set(v___x_12306_, 2, v_currMacroScope_12297_);
lean_ctor_set(v___x_12306_, 3, v_currRecDepth_12291_);
lean_ctor_set(v___x_12306_, 4, v_maxRecDepth_12292_);
lean_ctor_set(v___x_12306_, 5, v_ref_12293_);
v___x_12307_ = lean_box(0);
v___x_12308_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_12308_, 0, v_nextMacroScope_12299_);
lean_ctor_set(v___x_12308_, 1, v___x_12307_);
lean_ctor_set(v___x_12308_, 2, v___x_12307_);
v___x_12309_ = lean_apply_2(v_x_12279_, v___x_12306_, v___x_12308_);
if (lean_obj_tag(v___x_12309_) == 0)
{
lean_object* v_a_12310_; lean_object* v_a_12311_; lean_object* v_macroScope_12312_; lean_object* v_traceMsgs_12313_; lean_object* v_expandedMacroDecls_12314_; lean_object* v___x_12315_; lean_object* v___x_12316_; 
v_a_12310_ = lean_ctor_get(v___x_12309_, 1);
lean_inc(v_a_12310_);
v_a_12311_ = lean_ctor_get(v___x_12309_, 0);
lean_inc(v_a_12311_);
lean_dec_ref(v___x_12309_);
v_macroScope_12312_ = lean_ctor_get(v_a_12310_, 0);
lean_inc(v_macroScope_12312_);
v_traceMsgs_12313_ = lean_ctor_get(v_a_12310_, 1);
lean_inc(v_traceMsgs_12313_);
v_expandedMacroDecls_12314_ = lean_ctor_get(v_a_12310_, 2);
lean_inc(v_expandedMacroDecls_12314_);
lean_dec(v_a_12310_);
v___x_12315_ = lean_box(0);
v___x_12316_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg(v_expandedMacroDecls_12314_, v___x_12315_, v___y_12280_, v___y_12281_, v___y_12282_, v___y_12283_, v___y_12284_, v___y_12285_, v___y_12286_);
if (lean_obj_tag(v___x_12316_) == 0)
{
lean_object* v___x_12317_; lean_object* v_env_12318_; lean_object* v_ngen_12319_; lean_object* v_auxDeclNGen_12320_; lean_object* v_traceState_12321_; lean_object* v_cache_12322_; lean_object* v_messages_12323_; lean_object* v_infoState_12324_; lean_object* v_snapshotTasks_12325_; lean_object* v___x_12326_; lean_object* v___x_12327_; lean_object* v___x_12328_; lean_object* v___x_12329_; 
lean_dec_ref(v___x_12316_);
v___x_12317_ = lean_st_ref_take(v___y_12286_);
v_env_12318_ = lean_ctor_get(v___x_12317_, 0);
lean_inc_ref(v_env_12318_);
v_ngen_12319_ = lean_ctor_get(v___x_12317_, 2);
lean_inc_ref(v_ngen_12319_);
v_auxDeclNGen_12320_ = lean_ctor_get(v___x_12317_, 3);
lean_inc_ref(v_auxDeclNGen_12320_);
v_traceState_12321_ = lean_ctor_get(v___x_12317_, 4);
lean_inc_ref(v_traceState_12321_);
v_cache_12322_ = lean_ctor_get(v___x_12317_, 5);
lean_inc_ref(v_cache_12322_);
v_messages_12323_ = lean_ctor_get(v___x_12317_, 6);
lean_inc_ref(v_messages_12323_);
v_infoState_12324_ = lean_ctor_get(v___x_12317_, 7);
lean_inc_ref(v_infoState_12324_);
v_snapshotTasks_12325_ = lean_ctor_get(v___x_12317_, 8);
lean_inc_ref(v_snapshotTasks_12325_);
lean_dec(v___x_12317_);
v___x_12326_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_12326_, 0, v_env_12318_);
lean_ctor_set(v___x_12326_, 1, v_macroScope_12312_);
lean_ctor_set(v___x_12326_, 2, v_ngen_12319_);
lean_ctor_set(v___x_12326_, 3, v_auxDeclNGen_12320_);
lean_ctor_set(v___x_12326_, 4, v_traceState_12321_);
lean_ctor_set(v___x_12326_, 5, v_cache_12322_);
lean_ctor_set(v___x_12326_, 6, v_messages_12323_);
lean_ctor_set(v___x_12326_, 7, v_infoState_12324_);
lean_ctor_set(v___x_12326_, 8, v_snapshotTasks_12325_);
v___x_12327_ = lean_st_ref_set(v___y_12286_, v___x_12326_);
v___x_12328_ = l_List_reverse___redArg(v_traceMsgs_12313_);
v___x_12329_ = l_List_forM___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__4(v___x_12328_, v___y_12280_, v___y_12281_, v___y_12282_, v___y_12283_, v___y_12284_, v___y_12285_, v___y_12286_);
lean_dec_ref(v___y_12285_);
if (lean_obj_tag(v___x_12329_) == 0)
{
lean_object* v___x_12330_; 
lean_dec_ref(v___x_12329_);
v___x_12330_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12330_, 0, v_a_12311_);
return v___x_12330_;
}
else
{
lean_object* v_a_12331_; lean_object* v___x_12332_; 
lean_dec(v_a_12311_);
v_a_12331_ = lean_ctor_get(v___x_12329_, 0);
lean_inc(v_a_12331_);
lean_dec_ref(v___x_12329_);
v___x_12332_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12332_, 0, v_a_12331_);
return v___x_12332_;
}
}
else
{
lean_object* v_a_12333_; lean_object* v___x_12334_; 
lean_dec(v_traceMsgs_12313_);
lean_dec(v_macroScope_12312_);
lean_dec(v_a_12311_);
lean_dec_ref(v___y_12285_);
v_a_12333_ = lean_ctor_get(v___x_12316_, 0);
lean_inc(v_a_12333_);
lean_dec_ref(v___x_12316_);
v___x_12334_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12334_, 0, v_a_12333_);
return v___x_12334_;
}
}
else
{
lean_object* v_a_12335_; 
v_a_12335_ = lean_ctor_get(v___x_12309_, 0);
lean_inc(v_a_12335_);
lean_dec_ref(v___x_12309_);
if (lean_obj_tag(v_a_12335_) == 0)
{
lean_object* v_a_12336_; lean_object* v_a_12337_; lean_object* v___x_12338_; uint8_t v___x_12339_; 
v_a_12336_ = lean_ctor_get(v_a_12335_, 0);
lean_inc(v_a_12336_);
v_a_12337_ = lean_ctor_get(v_a_12335_, 1);
lean_inc_ref(v_a_12337_);
lean_dec_ref(v_a_12335_);
v___x_12338_ = ((lean_object*)(l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_mkJmp_spec__0___redArg___closed__0));
v___x_12339_ = lean_string_dec_eq(v_a_12337_, v___x_12338_);
if (v___x_12339_ == 0)
{
lean_object* v___x_12340_; lean_object* v___x_12341_; lean_object* v___x_12342_; 
v___x_12340_ = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(v___x_12340_, 0, v_a_12337_);
v___x_12341_ = l_Lean_MessageData_ofFormat(v___x_12340_);
v___x_12342_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(v_a_12336_, v___x_12341_, v___y_12283_, v___y_12284_, v___y_12285_, v___y_12286_);
lean_dec_ref(v___y_12285_);
lean_dec(v_a_12336_);
return v___x_12342_;
}
else
{
lean_object* v___x_12343_; 
lean_dec_ref(v_a_12337_);
lean_dec_ref(v___y_12285_);
v___x_12343_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(v_a_12336_);
return v___x_12343_;
}
}
else
{
lean_object* v___x_12344_; 
lean_dec_ref(v___y_12285_);
v___x_12344_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg();
return v___x_12344_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg___boxed(lean_object* v_x_12345_, lean_object* v___y_12346_, lean_object* v___y_12347_, lean_object* v___y_12348_, lean_object* v___y_12349_, lean_object* v___y_12350_, lean_object* v___y_12351_, lean_object* v___y_12352_, lean_object* v___y_12353_){
_start:
{
lean_object* v_res_12354_; 
v_res_12354_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v_x_12345_, v___y_12346_, v___y_12347_, v___y_12348_, v___y_12349_, v___y_12350_, v___y_12351_, v___y_12352_);
lean_dec(v___y_12352_);
lean_dec(v___y_12350_);
lean_dec_ref(v___y_12349_);
lean_dec(v___y_12348_);
lean_dec_ref(v___y_12347_);
lean_dec_ref(v___y_12346_);
return v_res_12354_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg(lean_object* v_forInBody_12355_, lean_object* v_a_12356_, lean_object* v_a_12357_, lean_object* v_a_12358_, lean_object* v_a_12359_, lean_object* v_a_12360_, lean_object* v_a_12361_, lean_object* v_a_12362_){
_start:
{
lean_object* v_code_12364_; lean_object* v_uvars_12365_; lean_object* v_m_12366_; lean_object* v_returnType_12367_; lean_object* v___x_12368_; uint8_t v___y_12370_; uint8_t v___x_12379_; 
v_code_12364_ = lean_ctor_get(v_forInBody_12355_, 0);
lean_inc_ref(v_code_12364_);
v_uvars_12365_ = lean_ctor_get(v_forInBody_12355_, 1);
lean_inc(v_uvars_12365_);
lean_dec_ref(v_forInBody_12355_);
v_m_12366_ = lean_ctor_get(v_a_12356_, 1);
v_returnType_12367_ = lean_ctor_get(v_a_12356_, 2);
v___x_12368_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v_uvars_12365_);
lean_inc_ref(v_code_12364_);
v___x_12379_ = l_Lean_Elab_Term_Do_hasReturn(v_code_12364_);
if (v___x_12379_ == 0)
{
uint8_t v___x_12380_; 
v___x_12380_ = 1;
v___y_12370_ = v___x_12380_;
goto v___jp_12369_;
}
else
{
uint8_t v___x_12381_; 
v___x_12381_ = 2;
v___y_12370_ = v___x_12381_;
goto v___jp_12369_;
}
v___jp_12369_:
{
lean_object* v___x_12371_; lean_object* v___x_12372_; lean_object* v___x_12373_; 
v___x_12371_ = lean_box(v___y_12370_);
lean_inc_ref(v___x_12368_);
lean_inc(v_returnType_12367_);
lean_inc(v_m_12366_);
v___x_12372_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_run___boxed), 7, 5);
lean_closure_set(v___x_12372_, 0, v_code_12364_);
lean_closure_set(v___x_12372_, 1, v_m_12366_);
lean_closure_set(v___x_12372_, 2, v_returnType_12367_);
lean_closure_set(v___x_12372_, 3, v___x_12368_);
lean_closure_set(v___x_12372_, 4, v___x_12371_);
v___x_12373_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_12372_, v_a_12356_, v_a_12357_, v_a_12358_, v_a_12359_, v_a_12360_, v_a_12361_, v_a_12362_);
lean_dec_ref(v_a_12356_);
if (lean_obj_tag(v___x_12373_) == 0)
{
lean_object* v_a_12374_; lean_object* v___x_12375_; lean_object* v___x_12376_; 
v_a_12374_ = lean_ctor_get(v___x_12373_, 0);
lean_inc(v_a_12374_);
lean_dec_ref(v___x_12373_);
v___x_12375_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12375_, 0, v___x_12368_);
lean_ctor_set(v___x_12375_, 1, v_a_12374_);
v___x_12376_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12376_, 0, v___x_12375_);
return v___x_12376_;
}
else
{
lean_object* v_a_12377_; lean_object* v___x_12378_; 
lean_dec_ref(v___x_12368_);
v_a_12377_ = lean_ctor_get(v___x_12373_, 0);
lean_inc(v_a_12377_);
lean_dec_ref(v___x_12373_);
v___x_12378_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12378_, 0, v_a_12377_);
return v___x_12378_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg___boxed(lean_object* v_forInBody_12382_, lean_object* v_a_12383_, lean_object* v_a_12384_, lean_object* v_a_12385_, lean_object* v_a_12386_, lean_object* v_a_12387_, lean_object* v_a_12388_, lean_object* v_a_12389_, lean_object* v_a_12390_){
_start:
{
lean_object* v_res_12391_; 
v_res_12391_ = l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg(v_forInBody_12382_, v_a_12383_, v_a_12384_, v_a_12385_, v_a_12386_, v_a_12387_, v_a_12388_, v_a_12389_);
lean_dec(v_a_12389_);
lean_dec(v_a_12387_);
lean_dec_ref(v_a_12386_);
lean_dec(v_a_12385_);
lean_dec_ref(v_a_12384_);
return v_res_12391_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody(lean_object* v_x_12392_, lean_object* v_forInBody_12393_, lean_object* v_a_12394_, lean_object* v_a_12395_, lean_object* v_a_12396_, lean_object* v_a_12397_, lean_object* v_a_12398_, lean_object* v_a_12399_, lean_object* v_a_12400_){
_start:
{
lean_object* v___x_12402_; 
v___x_12402_ = l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg(v_forInBody_12393_, v_a_12394_, v_a_12395_, v_a_12396_, v_a_12397_, v_a_12398_, v_a_12399_, v_a_12400_);
return v___x_12402_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___boxed(lean_object* v_x_12403_, lean_object* v_forInBody_12404_, lean_object* v_a_12405_, lean_object* v_a_12406_, lean_object* v_a_12407_, lean_object* v_a_12408_, lean_object* v_a_12409_, lean_object* v_a_12410_, lean_object* v_a_12411_, lean_object* v_a_12412_){
_start:
{
lean_object* v_res_12413_; 
v_res_12413_ = l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody(v_x_12403_, v_forInBody_12404_, v_a_12405_, v_a_12406_, v_a_12407_, v_a_12408_, v_a_12409_, v_a_12410_, v_a_12411_);
lean_dec(v_a_12411_);
lean_dec(v_a_12409_);
lean_dec_ref(v_a_12408_);
lean_dec(v_a_12407_);
lean_dec_ref(v_a_12406_);
lean_dec(v_x_12403_);
return v_res_12413_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0(lean_object* v_cls_12414_, lean_object* v___y_12415_, lean_object* v___y_12416_, lean_object* v___y_12417_, lean_object* v___y_12418_, lean_object* v___y_12419_, lean_object* v___y_12420_, lean_object* v___y_12421_){
_start:
{
lean_object* v___x_12423_; 
v___x_12423_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___redArg(v_cls_12414_, v___y_12420_);
return v___x_12423_;
}
}
LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0___boxed(lean_object* v_cls_12424_, lean_object* v___y_12425_, lean_object* v___y_12426_, lean_object* v___y_12427_, lean_object* v___y_12428_, lean_object* v___y_12429_, lean_object* v___y_12430_, lean_object* v___y_12431_, lean_object* v___y_12432_){
_start:
{
lean_object* v_res_12433_; 
v_res_12433_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__0(v_cls_12424_, v___y_12425_, v___y_12426_, v___y_12427_, v___y_12428_, v___y_12429_, v___y_12430_, v___y_12431_);
lean_dec(v___y_12431_);
lean_dec_ref(v___y_12430_);
lean_dec(v___y_12429_);
lean_dec_ref(v___y_12428_);
lean_dec(v___y_12427_);
lean_dec_ref(v___y_12426_);
lean_dec_ref(v___y_12425_);
return v_res_12433_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6(lean_object* v_00_u03b1_12434_, lean_object* v_ref_12435_, lean_object* v___y_12436_, lean_object* v___y_12437_, lean_object* v___y_12438_, lean_object* v___y_12439_, lean_object* v___y_12440_, lean_object* v___y_12441_, lean_object* v___y_12442_){
_start:
{
lean_object* v___x_12444_; 
v___x_12444_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(v_ref_12435_);
return v___x_12444_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___boxed(lean_object* v_00_u03b1_12445_, lean_object* v_ref_12446_, lean_object* v___y_12447_, lean_object* v___y_12448_, lean_object* v___y_12449_, lean_object* v___y_12450_, lean_object* v___y_12451_, lean_object* v___y_12452_, lean_object* v___y_12453_, lean_object* v___y_12454_){
_start:
{
lean_object* v_res_12455_; 
v_res_12455_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6(v_00_u03b1_12445_, v_ref_12446_, v___y_12447_, v___y_12448_, v___y_12449_, v___y_12450_, v___y_12451_, v___y_12452_, v___y_12453_);
lean_dec(v___y_12453_);
lean_dec_ref(v___y_12452_);
lean_dec(v___y_12451_);
lean_dec_ref(v___y_12450_);
lean_dec(v___y_12449_);
lean_dec_ref(v___y_12448_);
lean_dec_ref(v___y_12447_);
return v_res_12455_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7(lean_object* v_00_u03b1_12456_, lean_object* v___y_12457_, lean_object* v___y_12458_, lean_object* v___y_12459_, lean_object* v___y_12460_, lean_object* v___y_12461_, lean_object* v___y_12462_, lean_object* v___y_12463_){
_start:
{
lean_object* v___x_12465_; 
v___x_12465_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___redArg();
return v___x_12465_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7___boxed(lean_object* v_00_u03b1_12466_, lean_object* v___y_12467_, lean_object* v___y_12468_, lean_object* v___y_12469_, lean_object* v___y_12470_, lean_object* v___y_12471_, lean_object* v___y_12472_, lean_object* v___y_12473_, lean_object* v___y_12474_){
_start:
{
lean_object* v_res_12475_; 
v_res_12475_ = l_Lean_Elab_throwUnsupportedSyntax___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__7(v_00_u03b1_12466_, v___y_12467_, v___y_12468_, v___y_12469_, v___y_12470_, v___y_12471_, v___y_12472_, v___y_12473_);
lean_dec(v___y_12473_);
lean_dec_ref(v___y_12472_);
lean_dec(v___y_12471_);
lean_dec_ref(v___y_12470_);
lean_dec(v___y_12469_);
lean_dec_ref(v___y_12468_);
lean_dec_ref(v___y_12467_);
return v_res_12475_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0(lean_object* v_00_u03b1_12476_, lean_object* v_x_12477_, lean_object* v___y_12478_, lean_object* v___y_12479_, lean_object* v___y_12480_, lean_object* v___y_12481_, lean_object* v___y_12482_, lean_object* v___y_12483_, lean_object* v___y_12484_){
_start:
{
lean_object* v___x_12486_; 
v___x_12486_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v_x_12477_, v___y_12478_, v___y_12479_, v___y_12480_, v___y_12481_, v___y_12482_, v___y_12483_, v___y_12484_);
return v___x_12486_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___boxed(lean_object* v_00_u03b1_12487_, lean_object* v_x_12488_, lean_object* v___y_12489_, lean_object* v___y_12490_, lean_object* v___y_12491_, lean_object* v___y_12492_, lean_object* v___y_12493_, lean_object* v___y_12494_, lean_object* v___y_12495_, lean_object* v___y_12496_){
_start:
{
lean_object* v_res_12497_; 
v_res_12497_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0(v_00_u03b1_12487_, v_x_12488_, v___y_12489_, v___y_12490_, v___y_12491_, v___y_12492_, v___y_12493_, v___y_12494_, v___y_12495_);
lean_dec(v___y_12495_);
lean_dec(v___y_12493_);
lean_dec_ref(v___y_12492_);
lean_dec(v___y_12491_);
lean_dec_ref(v___y_12490_);
lean_dec_ref(v___y_12489_);
return v_res_12497_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1(lean_object* v_cls_12498_, lean_object* v_msg_12499_, lean_object* v___y_12500_, lean_object* v___y_12501_, lean_object* v___y_12502_, lean_object* v___y_12503_, lean_object* v___y_12504_, lean_object* v___y_12505_, lean_object* v___y_12506_){
_start:
{
lean_object* v___x_12508_; 
v___x_12508_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___redArg(v_cls_12498_, v_msg_12499_, v___y_12503_, v___y_12504_, v___y_12505_, v___y_12506_);
return v___x_12508_;
}
}
LEAN_EXPORT lean_object* l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1___boxed(lean_object* v_cls_12509_, lean_object* v_msg_12510_, lean_object* v___y_12511_, lean_object* v___y_12512_, lean_object* v___y_12513_, lean_object* v___y_12514_, lean_object* v___y_12515_, lean_object* v___y_12516_, lean_object* v___y_12517_, lean_object* v___y_12518_){
_start:
{
lean_object* v_res_12519_; 
v_res_12519_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__1(v_cls_12509_, v_msg_12510_, v___y_12511_, v___y_12512_, v___y_12513_, v___y_12514_, v___y_12515_, v___y_12516_, v___y_12517_);
lean_dec(v___y_12517_);
lean_dec_ref(v___y_12516_);
lean_dec(v___y_12515_);
lean_dec_ref(v___y_12514_);
lean_dec(v___y_12513_);
lean_dec_ref(v___y_12512_);
lean_dec_ref(v___y_12511_);
return v_res_12519_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3(lean_object* v_as_12520_, lean_object* v_as_x27_12521_, lean_object* v_b_12522_, lean_object* v_a_12523_, lean_object* v___y_12524_, lean_object* v___y_12525_, lean_object* v___y_12526_, lean_object* v___y_12527_, lean_object* v___y_12528_, lean_object* v___y_12529_, lean_object* v___y_12530_){
_start:
{
lean_object* v___x_12532_; 
v___x_12532_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___redArg(v_as_x27_12521_, v_b_12522_, v___y_12524_, v___y_12525_, v___y_12526_, v___y_12527_, v___y_12528_, v___y_12529_, v___y_12530_);
return v___x_12532_;
}
}
LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3___boxed(lean_object* v_as_12533_, lean_object* v_as_x27_12534_, lean_object* v_b_12535_, lean_object* v_a_12536_, lean_object* v___y_12537_, lean_object* v___y_12538_, lean_object* v___y_12539_, lean_object* v___y_12540_, lean_object* v___y_12541_, lean_object* v___y_12542_, lean_object* v___y_12543_, lean_object* v___y_12544_){
_start:
{
lean_object* v_res_12545_; 
v_res_12545_ = l_List_forIn_x27_loop___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__3(v_as_12533_, v_as_x27_12534_, v_b_12535_, v_a_12536_, v___y_12537_, v___y_12538_, v___y_12539_, v___y_12540_, v___y_12541_, v___y_12542_, v___y_12543_);
lean_dec(v___y_12543_);
lean_dec_ref(v___y_12542_);
lean_dec(v___y_12541_);
lean_dec_ref(v___y_12540_);
lean_dec(v___y_12539_);
lean_dec_ref(v___y_12538_);
lean_dec_ref(v___y_12537_);
lean_dec(v_as_12533_);
return v_res_12545_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5(lean_object* v_00_u03b1_12546_, lean_object* v_ref_12547_, lean_object* v_msg_12548_, lean_object* v___y_12549_, lean_object* v___y_12550_, lean_object* v___y_12551_, lean_object* v___y_12552_, lean_object* v___y_12553_, lean_object* v___y_12554_, lean_object* v___y_12555_){
_start:
{
lean_object* v___x_12557_; 
v___x_12557_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(v_ref_12547_, v_msg_12548_, v___y_12552_, v___y_12553_, v___y_12554_, v___y_12555_);
return v___x_12557_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___boxed(lean_object* v_00_u03b1_12558_, lean_object* v_ref_12559_, lean_object* v_msg_12560_, lean_object* v___y_12561_, lean_object* v___y_12562_, lean_object* v___y_12563_, lean_object* v___y_12564_, lean_object* v___y_12565_, lean_object* v___y_12566_, lean_object* v___y_12567_, lean_object* v___y_12568_){
_start:
{
lean_object* v_res_12569_; 
v_res_12569_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5(v_00_u03b1_12558_, v_ref_12559_, v_msg_12560_, v___y_12561_, v___y_12562_, v___y_12563_, v___y_12564_, v___y_12565_, v___y_12566_, v___y_12567_);
lean_dec(v___y_12567_);
lean_dec_ref(v___y_12566_);
lean_dec(v___y_12565_);
lean_dec_ref(v___y_12564_);
lean_dec(v___y_12563_);
lean_dec_ref(v___y_12562_);
lean_dec_ref(v___y_12561_);
lean_dec(v_ref_12559_);
return v_res_12569_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1(void){
_start:
{
lean_object* v___x_12571_; lean_object* v___x_12572_; 
v___x_12571_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__0));
v___x_12572_ = l_Lean_stringToMessageData(v___x_12571_);
return v___x_12572_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(lean_object* v_a_12573_, lean_object* v_a_12574_, lean_object* v_a_12575_, lean_object* v_a_12576_, lean_object* v_a_12577_){
_start:
{
uint8_t v_insideFor_12579_; 
v_insideFor_12579_ = lean_ctor_get_uint8(v_a_12573_, sizeof(void*)*4);
if (v_insideFor_12579_ == 0)
{
lean_object* v___x_12580_; lean_object* v___x_12581_; 
v___x_12580_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___closed__1);
v___x_12581_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_12580_, v_a_12574_, v_a_12575_, v_a_12576_, v_a_12577_);
return v___x_12581_;
}
else
{
lean_object* v___x_12582_; lean_object* v___x_12583_; 
v___x_12582_ = lean_box(0);
v___x_12583_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12583_, 0, v___x_12582_);
return v___x_12583_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg___boxed(lean_object* v_a_12584_, lean_object* v_a_12585_, lean_object* v_a_12586_, lean_object* v_a_12587_, lean_object* v_a_12588_, lean_object* v_a_12589_){
_start:
{
lean_object* v_res_12590_; 
v_res_12590_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(v_a_12584_, v_a_12585_, v_a_12586_, v_a_12587_, v_a_12588_);
lean_dec(v_a_12588_);
lean_dec_ref(v_a_12587_);
lean_dec(v_a_12586_);
lean_dec_ref(v_a_12585_);
lean_dec_ref(v_a_12584_);
return v_res_12590_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor(lean_object* v_a_12591_, lean_object* v_a_12592_, lean_object* v_a_12593_, lean_object* v_a_12594_, lean_object* v_a_12595_, lean_object* v_a_12596_, lean_object* v_a_12597_){
_start:
{
lean_object* v___x_12599_; 
v___x_12599_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(v_a_12591_, v_a_12594_, v_a_12595_, v_a_12596_, v_a_12597_);
return v___x_12599_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___boxed(lean_object* v_a_12600_, lean_object* v_a_12601_, lean_object* v_a_12602_, lean_object* v_a_12603_, lean_object* v_a_12604_, lean_object* v_a_12605_, lean_object* v_a_12606_, lean_object* v_a_12607_){
_start:
{
lean_object* v_res_12608_; 
v_res_12608_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor(v_a_12600_, v_a_12601_, v_a_12602_, v_a_12603_, v_a_12604_, v_a_12605_, v_a_12606_);
lean_dec(v_a_12606_);
lean_dec_ref(v_a_12605_);
lean_dec(v_a_12604_);
lean_dec_ref(v_a_12603_);
lean_dec(v_a_12602_);
lean_dec_ref(v_a_12601_);
lean_dec_ref(v_a_12600_);
return v_res_12608_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1(void){
_start:
{
lean_object* v___x_12610_; lean_object* v___x_12611_; 
v___x_12610_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__0));
v___x_12611_ = l_Lean_stringToMessageData(v___x_12610_);
return v___x_12611_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(lean_object* v_doElems_12612_, lean_object* v_a_12613_, lean_object* v_a_12614_, lean_object* v_a_12615_, lean_object* v_a_12616_){
_start:
{
uint8_t v___x_12618_; 
v___x_12618_ = l_List_isEmpty___redArg(v_doElems_12612_);
if (v___x_12618_ == 0)
{
lean_object* v___x_12619_; lean_object* v___x_12620_; 
v___x_12619_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___closed__1);
v___x_12620_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_12619_, v_a_12613_, v_a_12614_, v_a_12615_, v_a_12616_);
return v___x_12620_;
}
else
{
lean_object* v___x_12621_; lean_object* v___x_12622_; 
v___x_12621_ = lean_box(0);
v___x_12622_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12622_, 0, v___x_12621_);
return v___x_12622_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg___boxed(lean_object* v_doElems_12623_, lean_object* v_a_12624_, lean_object* v_a_12625_, lean_object* v_a_12626_, lean_object* v_a_12627_, lean_object* v_a_12628_){
_start:
{
lean_object* v_res_12629_; 
v_res_12629_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(v_doElems_12623_, v_a_12624_, v_a_12625_, v_a_12626_, v_a_12627_);
lean_dec(v_a_12627_);
lean_dec_ref(v_a_12626_);
lean_dec(v_a_12625_);
lean_dec_ref(v_a_12624_);
lean_dec(v_doElems_12623_);
return v_res_12629_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS(lean_object* v_doElems_12630_, lean_object* v_a_12631_, lean_object* v_a_12632_, lean_object* v_a_12633_, lean_object* v_a_12634_, lean_object* v_a_12635_, lean_object* v_a_12636_, lean_object* v_a_12637_){
_start:
{
lean_object* v___x_12639_; 
v___x_12639_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(v_doElems_12630_, v_a_12634_, v_a_12635_, v_a_12636_, v_a_12637_);
return v___x_12639_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___boxed(lean_object* v_doElems_12640_, lean_object* v_a_12641_, lean_object* v_a_12642_, lean_object* v_a_12643_, lean_object* v_a_12644_, lean_object* v_a_12645_, lean_object* v_a_12646_, lean_object* v_a_12647_, lean_object* v_a_12648_){
_start:
{
lean_object* v_res_12649_; 
v_res_12649_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS(v_doElems_12640_, v_a_12641_, v_a_12642_, v_a_12643_, v_a_12644_, v_a_12645_, v_a_12646_, v_a_12647_);
lean_dec(v_a_12647_);
lean_dec_ref(v_a_12646_);
lean_dec(v_a_12645_);
lean_dec_ref(v_a_12644_);
lean_dec(v_a_12643_);
lean_dec_ref(v_a_12642_);
lean_dec_ref(v_a_12641_);
lean_dec(v_doElems_12640_);
return v_res_12649_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg(lean_object* v_val_12650_, uint8_t v_canonical_12651_, lean_object* v___y_12652_, lean_object* v___y_12653_){
_start:
{
lean_object* v_ref_12655_; lean_object* v___x_12656_; lean_object* v___x_12657_; lean_object* v___x_12658_; 
v_ref_12655_ = lean_ctor_get(v___y_12653_, 5);
v___x_12656_ = l_Lean_mkIdentFrom(v_ref_12655_, v_val_12650_, v_canonical_12651_);
v___x_12657_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12657_, 0, v___x_12656_);
lean_ctor_set(v___x_12657_, 1, v___y_12652_);
v___x_12658_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12658_, 0, v___x_12657_);
return v___x_12658_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg___boxed(lean_object* v_val_12659_, lean_object* v_canonical_12660_, lean_object* v___y_12661_, lean_object* v___y_12662_, lean_object* v___y_12663_){
_start:
{
uint8_t v_canonical_boxed_12664_; lean_object* v_res_12665_; 
v_canonical_boxed_12664_ = lean_unbox(v_canonical_12660_);
v_res_12665_ = l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg(v_val_12659_, v_canonical_boxed_12664_, v___y_12661_, v___y_12662_);
lean_dec_ref(v___y_12662_);
return v_res_12665_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1(lean_object* v_val_12666_, uint8_t v_canonical_12667_, lean_object* v___y_12668_, lean_object* v___y_12669_, lean_object* v___y_12670_, lean_object* v___y_12671_, lean_object* v___y_12672_, lean_object* v___y_12673_, lean_object* v___y_12674_, lean_object* v___y_12675_){
_start:
{
lean_object* v___x_12677_; 
v___x_12677_ = l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg(v_val_12666_, v_canonical_12667_, v___y_12668_, v___y_12674_);
return v___x_12677_;
}
}
LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___boxed(lean_object* v_val_12678_, lean_object* v_canonical_12679_, lean_object* v___y_12680_, lean_object* v___y_12681_, lean_object* v___y_12682_, lean_object* v___y_12683_, lean_object* v___y_12684_, lean_object* v___y_12685_, lean_object* v___y_12686_, lean_object* v___y_12687_, lean_object* v___y_12688_){
_start:
{
uint8_t v_canonical_boxed_12689_; lean_object* v_res_12690_; 
v_canonical_boxed_12689_ = lean_unbox(v_canonical_12679_);
v_res_12690_ = l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1(v_val_12678_, v_canonical_boxed_12689_, v___y_12680_, v___y_12681_, v___y_12682_, v___y_12683_, v___y_12684_, v___y_12685_, v___y_12686_, v___y_12687_);
lean_dec(v___y_12687_);
lean_dec_ref(v___y_12686_);
lean_dec(v___y_12685_);
lean_dec_ref(v___y_12684_);
lean_dec(v___y_12683_);
lean_dec_ref(v___y_12682_);
lean_dec_ref(v___y_12681_);
return v_res_12690_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4(size_t v_sz_12691_, size_t v_i_12692_, lean_object* v_bs_12693_){
_start:
{
uint8_t v___x_12694_; 
v___x_12694_ = lean_usize_dec_lt(v_i_12692_, v_sz_12691_);
if (v___x_12694_ == 0)
{
return v_bs_12693_;
}
else
{
lean_object* v_v_12695_; lean_object* v_fst_12696_; lean_object* v___x_12697_; lean_object* v_bs_x27_12698_; size_t v___x_12699_; size_t v___x_12700_; lean_object* v___x_12701_; 
v_v_12695_ = lean_array_uget_borrowed(v_bs_12693_, v_i_12692_);
v_fst_12696_ = lean_ctor_get(v_v_12695_, 0);
lean_inc(v_fst_12696_);
v___x_12697_ = lean_unsigned_to_nat(0u);
v_bs_x27_12698_ = lean_array_uset(v_bs_12693_, v_i_12692_, v___x_12697_);
v___x_12699_ = ((size_t)1ULL);
v___x_12700_ = lean_usize_add(v_i_12692_, v___x_12699_);
v___x_12701_ = lean_array_uset(v_bs_x27_12698_, v_i_12692_, v_fst_12696_);
v_i_12692_ = v___x_12700_;
v_bs_12693_ = v___x_12701_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4___boxed(lean_object* v_sz_12703_, lean_object* v_i_12704_, lean_object* v_bs_12705_){
_start:
{
size_t v_sz_boxed_12706_; size_t v_i_boxed_12707_; lean_object* v_res_12708_; 
v_sz_boxed_12706_ = lean_unbox_usize(v_sz_12703_);
lean_dec(v_sz_12703_);
v_i_boxed_12707_ = lean_unbox_usize(v_i_12704_);
lean_dec(v_i_12704_);
v_res_12708_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4(v_sz_boxed_12706_, v_i_boxed_12707_, v_bs_12705_);
return v_res_12708_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg(lean_object* v_msg_12709_, lean_object* v___y_12710_, lean_object* v___y_12711_, lean_object* v___y_12712_, lean_object* v___y_12713_){
_start:
{
lean_object* v_ref_12715_; lean_object* v___x_12716_; lean_object* v_a_12717_; lean_object* v___x_12718_; lean_object* v___x_12719_; 
v_ref_12715_ = lean_ctor_get(v___y_12712_, 5);
v___x_12716_ = l_Lean_addMessageContextFull___at___00Lean_throwError___at___00Lean_throwErrorAt___at___00Lean_Elab_Term_elabLiftMethod_spec__0_spec__0_spec__1(v_msg_12709_, v___y_12710_, v___y_12711_, v___y_12712_, v___y_12713_);
v_a_12717_ = lean_ctor_get(v___x_12716_, 0);
lean_inc(v_a_12717_);
lean_dec_ref(v___x_12716_);
lean_inc(v_ref_12715_);
v___x_12718_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12718_, 0, v_ref_12715_);
lean_ctor_set(v___x_12718_, 1, v_a_12717_);
v___x_12719_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12719_, 0, v___x_12718_);
return v___x_12719_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg___boxed(lean_object* v_msg_12720_, lean_object* v___y_12721_, lean_object* v___y_12722_, lean_object* v___y_12723_, lean_object* v___y_12724_, lean_object* v___y_12725_){
_start:
{
lean_object* v_res_12726_; 
v_res_12726_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg(v_msg_12720_, v___y_12721_, v___y_12722_, v___y_12723_, v___y_12724_);
lean_dec(v___y_12724_);
lean_dec_ref(v___y_12723_);
lean_dec(v___y_12722_);
lean_dec_ref(v___y_12721_);
return v_res_12726_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(lean_object* v_ref_12727_, lean_object* v_msg_12728_, lean_object* v___y_12729_, lean_object* v___y_12730_, lean_object* v___y_12731_, lean_object* v___y_12732_, lean_object* v___y_12733_, lean_object* v___y_12734_, lean_object* v___y_12735_, lean_object* v___y_12736_){
_start:
{
lean_object* v_fileName_12738_; lean_object* v_fileMap_12739_; lean_object* v_options_12740_; lean_object* v_currRecDepth_12741_; lean_object* v_maxRecDepth_12742_; lean_object* v_ref_12743_; lean_object* v_currNamespace_12744_; lean_object* v_openDecls_12745_; lean_object* v_initHeartbeats_12746_; lean_object* v_maxHeartbeats_12747_; lean_object* v_quotContext_12748_; lean_object* v_currMacroScope_12749_; uint8_t v_diag_12750_; lean_object* v_cancelTk_x3f_12751_; uint8_t v_suppressElabErrors_12752_; lean_object* v_inheritedTraceOptions_12753_; lean_object* v_ref_12754_; lean_object* v___x_12755_; lean_object* v___x_12756_; 
v_fileName_12738_ = lean_ctor_get(v___y_12735_, 0);
v_fileMap_12739_ = lean_ctor_get(v___y_12735_, 1);
v_options_12740_ = lean_ctor_get(v___y_12735_, 2);
v_currRecDepth_12741_ = lean_ctor_get(v___y_12735_, 3);
v_maxRecDepth_12742_ = lean_ctor_get(v___y_12735_, 4);
v_ref_12743_ = lean_ctor_get(v___y_12735_, 5);
v_currNamespace_12744_ = lean_ctor_get(v___y_12735_, 6);
v_openDecls_12745_ = lean_ctor_get(v___y_12735_, 7);
v_initHeartbeats_12746_ = lean_ctor_get(v___y_12735_, 8);
v_maxHeartbeats_12747_ = lean_ctor_get(v___y_12735_, 9);
v_quotContext_12748_ = lean_ctor_get(v___y_12735_, 10);
v_currMacroScope_12749_ = lean_ctor_get(v___y_12735_, 11);
v_diag_12750_ = lean_ctor_get_uint8(v___y_12735_, sizeof(void*)*14);
v_cancelTk_x3f_12751_ = lean_ctor_get(v___y_12735_, 12);
v_suppressElabErrors_12752_ = lean_ctor_get_uint8(v___y_12735_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_12753_ = lean_ctor_get(v___y_12735_, 13);
v_ref_12754_ = l_Lean_replaceRef(v_ref_12727_, v_ref_12743_);
lean_inc_ref(v_inheritedTraceOptions_12753_);
lean_inc(v_cancelTk_x3f_12751_);
lean_inc(v_currMacroScope_12749_);
lean_inc(v_quotContext_12748_);
lean_inc(v_maxHeartbeats_12747_);
lean_inc(v_initHeartbeats_12746_);
lean_inc(v_openDecls_12745_);
lean_inc(v_currNamespace_12744_);
lean_inc(v_maxRecDepth_12742_);
lean_inc(v_currRecDepth_12741_);
lean_inc_ref(v_options_12740_);
lean_inc_ref(v_fileMap_12739_);
lean_inc_ref(v_fileName_12738_);
v___x_12755_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_12755_, 0, v_fileName_12738_);
lean_ctor_set(v___x_12755_, 1, v_fileMap_12739_);
lean_ctor_set(v___x_12755_, 2, v_options_12740_);
lean_ctor_set(v___x_12755_, 3, v_currRecDepth_12741_);
lean_ctor_set(v___x_12755_, 4, v_maxRecDepth_12742_);
lean_ctor_set(v___x_12755_, 5, v_ref_12754_);
lean_ctor_set(v___x_12755_, 6, v_currNamespace_12744_);
lean_ctor_set(v___x_12755_, 7, v_openDecls_12745_);
lean_ctor_set(v___x_12755_, 8, v_initHeartbeats_12746_);
lean_ctor_set(v___x_12755_, 9, v_maxHeartbeats_12747_);
lean_ctor_set(v___x_12755_, 10, v_quotContext_12748_);
lean_ctor_set(v___x_12755_, 11, v_currMacroScope_12749_);
lean_ctor_set(v___x_12755_, 12, v_cancelTk_x3f_12751_);
lean_ctor_set(v___x_12755_, 13, v_inheritedTraceOptions_12753_);
lean_ctor_set_uint8(v___x_12755_, sizeof(void*)*14, v_diag_12750_);
lean_ctor_set_uint8(v___x_12755_, sizeof(void*)*14 + 1, v_suppressElabErrors_12752_);
v___x_12756_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg(v_msg_12728_, v___y_12733_, v___y_12734_, v___x_12755_, v___y_12736_);
lean_dec_ref(v___x_12755_);
return v___x_12756_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg___boxed(lean_object* v_ref_12757_, lean_object* v_msg_12758_, lean_object* v___y_12759_, lean_object* v___y_12760_, lean_object* v___y_12761_, lean_object* v___y_12762_, lean_object* v___y_12763_, lean_object* v___y_12764_, lean_object* v___y_12765_, lean_object* v___y_12766_, lean_object* v___y_12767_){
_start:
{
lean_object* v_res_12768_; 
v_res_12768_ = l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(v_ref_12757_, v_msg_12758_, v___y_12759_, v___y_12760_, v___y_12761_, v___y_12762_, v___y_12763_, v___y_12764_, v___y_12765_, v___y_12766_);
lean_dec(v___y_12766_);
lean_dec_ref(v___y_12765_);
lean_dec(v___y_12764_);
lean_dec_ref(v___y_12763_);
lean_dec(v___y_12762_);
lean_dec_ref(v___y_12761_);
lean_dec_ref(v___y_12760_);
lean_dec(v___y_12759_);
lean_dec(v_ref_12757_);
return v_res_12768_;
}
}
LEAN_EXPORT uint8_t l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5(lean_object* v_x_12769_, lean_object* v_x_12770_){
_start:
{
if (lean_obj_tag(v_x_12769_) == 0)
{
if (lean_obj_tag(v_x_12770_) == 0)
{
uint8_t v___x_12771_; 
v___x_12771_ = 1;
return v___x_12771_;
}
else
{
uint8_t v___x_12772_; 
lean_dec_ref(v_x_12770_);
v___x_12772_ = 0;
return v___x_12772_;
}
}
else
{
if (lean_obj_tag(v_x_12770_) == 0)
{
uint8_t v___x_12773_; 
lean_dec_ref(v_x_12769_);
v___x_12773_ = 0;
return v___x_12773_;
}
else
{
lean_object* v_head_12774_; lean_object* v_tail_12775_; lean_object* v_head_12776_; lean_object* v_tail_12777_; uint8_t v___x_12778_; 
v_head_12774_ = lean_ctor_get(v_x_12769_, 0);
lean_inc(v_head_12774_);
v_tail_12775_ = lean_ctor_get(v_x_12769_, 1);
lean_inc(v_tail_12775_);
lean_dec_ref(v_x_12769_);
v_head_12776_ = lean_ctor_get(v_x_12770_, 0);
lean_inc(v_head_12776_);
v_tail_12777_ = lean_ctor_get(v_x_12770_, 1);
lean_inc(v_tail_12777_);
lean_dec_ref(v_x_12770_);
v___x_12778_ = l_Lean_Syntax_structEq(v_head_12774_, v_head_12776_);
if (v___x_12778_ == 0)
{
lean_dec(v_tail_12777_);
lean_dec(v_tail_12775_);
return v___x_12778_;
}
else
{
v_x_12769_ = v_tail_12775_;
v_x_12770_ = v_tail_12777_;
goto _start;
}
}
}
}
}
LEAN_EXPORT lean_object* l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5___boxed(lean_object* v_x_12780_, lean_object* v_x_12781_){
_start:
{
uint8_t v_res_12782_; lean_object* v_r_12783_; 
v_res_12782_ = l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5(v_x_12780_, v_x_12781_);
v_r_12783_ = lean_box(v_res_12782_);
return v_r_12783_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6(lean_object* v_snd_12784_, uint8_t v___x_12785_, lean_object* v_as_12786_, size_t v_i_12787_, size_t v_stop_12788_){
_start:
{
uint8_t v___x_12789_; 
v___x_12789_ = lean_usize_dec_eq(v_i_12787_, v_stop_12788_);
if (v___x_12789_ == 0)
{
lean_object* v___x_12790_; lean_object* v_snd_12791_; uint8_t v___x_12792_; uint8_t v___y_12794_; uint8_t v___x_12798_; 
v___x_12790_ = lean_array_uget_borrowed(v_as_12786_, v_i_12787_);
v_snd_12791_ = lean_ctor_get(v___x_12790_, 1);
v___x_12792_ = 1;
lean_inc(v_snd_12784_);
lean_inc(v_snd_12791_);
v___x_12798_ = l_List_beq___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__5(v_snd_12791_, v_snd_12784_);
if (v___x_12798_ == 0)
{
v___y_12794_ = v___x_12785_;
goto v___jp_12793_;
}
else
{
v___y_12794_ = v___x_12789_;
goto v___jp_12793_;
}
v___jp_12793_:
{
if (v___y_12794_ == 0)
{
size_t v___x_12795_; size_t v___x_12796_; 
v___x_12795_ = ((size_t)1ULL);
v___x_12796_ = lean_usize_add(v_i_12787_, v___x_12795_);
v_i_12787_ = v___x_12796_;
goto _start;
}
else
{
lean_dec(v_snd_12784_);
return v___x_12792_;
}
}
}
else
{
uint8_t v___x_12799_; 
lean_dec(v_snd_12784_);
v___x_12799_ = 0;
return v___x_12799_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6___boxed(lean_object* v_snd_12800_, lean_object* v___x_12801_, lean_object* v_as_12802_, lean_object* v_i_12803_, lean_object* v_stop_12804_){
_start:
{
uint8_t v___x_27620__boxed_12805_; size_t v_i_boxed_12806_; size_t v_stop_boxed_12807_; uint8_t v_res_12808_; lean_object* v_r_12809_; 
v___x_27620__boxed_12805_ = lean_unbox(v___x_12801_);
v_i_boxed_12806_ = lean_unbox_usize(v_i_12803_);
lean_dec(v_i_12803_);
v_stop_boxed_12807_ = lean_unbox_usize(v_stop_12804_);
lean_dec(v_stop_12804_);
v_res_12808_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6(v_snd_12800_, v___x_27620__boxed_12805_, v_as_12802_, v_i_boxed_12806_, v_stop_boxed_12807_);
lean_dec_ref(v_as_12802_);
v_r_12809_ = lean_box(v_res_12808_);
return v_r_12809_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1(void){
_start:
{
lean_object* v___x_12811_; lean_object* v___x_12812_; 
v___x_12811_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__0));
v___x_12812_ = l_Lean_stringToMessageData(v___x_12811_);
return v___x_12812_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1(uint8_t v_inBinder_12813_, lean_object* v___f_12814_, lean_object* v_a_12815_, lean_object* v_a_12816_, lean_object* v_a_12817_, lean_object* v_a_12818_, lean_object* v_a_12819_, lean_object* v_a_12820_, lean_object* v_x_12821_, lean_object* v___y_12822_, lean_object* v___y_12823_){
_start:
{
if (v_inBinder_12813_ == 0)
{
lean_object* v___x_12825_; lean_object* v___x_12826_; 
v___x_12825_ = lean_box(0);
v___x_12826_ = lean_apply_10(v___f_12814_, v___x_12825_, v_a_12815_, v_a_12816_, v_a_12817_, v_a_12818_, v_a_12819_, v_a_12820_, v___y_12822_, v___y_12823_, lean_box(0));
return v___x_12826_;
}
else
{
lean_object* v___x_12827_; lean_object* v___x_12828_; 
v___x_12827_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___closed__1);
v___x_12828_ = l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(v_x_12821_, v___x_12827_, v_a_12815_, v_a_12816_, v_a_12817_, v_a_12818_, v_a_12819_, v_a_12820_, v___y_12822_, v___y_12823_);
lean_dec(v_a_12815_);
if (lean_obj_tag(v___x_12828_) == 0)
{
lean_object* v_a_12829_; lean_object* v_fst_12830_; lean_object* v_snd_12831_; lean_object* v___x_12832_; 
v_a_12829_ = lean_ctor_get(v___x_12828_, 0);
lean_inc(v_a_12829_);
lean_dec_ref(v___x_12828_);
v_fst_12830_ = lean_ctor_get(v_a_12829_, 0);
lean_inc(v_fst_12830_);
v_snd_12831_ = lean_ctor_get(v_a_12829_, 1);
lean_inc(v_snd_12831_);
lean_dec(v_a_12829_);
v___x_12832_ = lean_apply_10(v___f_12814_, v_fst_12830_, v_snd_12831_, v_a_12816_, v_a_12817_, v_a_12818_, v_a_12819_, v_a_12820_, v___y_12822_, v___y_12823_, lean_box(0));
return v___x_12832_;
}
else
{
lean_object* v_a_12833_; lean_object* v___x_12834_; 
lean_dec(v___y_12823_);
lean_dec_ref(v___y_12822_);
lean_dec(v_a_12820_);
lean_dec_ref(v_a_12819_);
lean_dec(v_a_12818_);
lean_dec_ref(v_a_12817_);
lean_dec_ref(v_a_12816_);
lean_dec_ref(v___f_12814_);
v_a_12833_ = lean_ctor_get(v___x_12828_, 0);
lean_inc(v_a_12833_);
lean_dec_ref(v___x_12828_);
v___x_12834_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12834_, 0, v_a_12833_);
return v___x_12834_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___boxed(lean_object* v_inBinder_12835_, lean_object* v___f_12836_, lean_object* v_a_12837_, lean_object* v_a_12838_, lean_object* v_a_12839_, lean_object* v_a_12840_, lean_object* v_a_12841_, lean_object* v_a_12842_, lean_object* v_x_12843_, lean_object* v___y_12844_, lean_object* v___y_12845_, lean_object* v___y_12846_){
_start:
{
uint8_t v_inBinder_boxed_12847_; lean_object* v_res_12848_; 
v_inBinder_boxed_12847_ = lean_unbox(v_inBinder_12835_);
v_res_12848_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1(v_inBinder_boxed_12847_, v___f_12836_, v_a_12837_, v_a_12838_, v_a_12839_, v_a_12840_, v_a_12841_, v_a_12842_, v_x_12843_, v___y_12844_, v___y_12845_);
lean_dec(v_x_12843_);
return v_res_12848_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0(lean_object* v_baseId_12849_, uint8_t v___y_12850_, uint8_t v___y_12851_, size_t v_sz_12852_, size_t v_i_12853_, lean_object* v_bs_12854_, lean_object* v___y_12855_, lean_object* v___y_12856_, lean_object* v___y_12857_, lean_object* v___y_12858_, lean_object* v___y_12859_, lean_object* v___y_12860_, lean_object* v___y_12861_, lean_object* v___y_12862_){
_start:
{
uint8_t v___x_12864_; 
v___x_12864_ = lean_usize_dec_lt(v_i_12853_, v_sz_12852_);
if (v___x_12864_ == 0)
{
lean_object* v___x_12865_; lean_object* v___x_12866_; 
lean_dec(v___y_12862_);
lean_dec_ref(v___y_12861_);
lean_dec(v___y_12860_);
lean_dec_ref(v___y_12859_);
lean_dec(v___y_12858_);
lean_dec_ref(v___y_12857_);
lean_dec_ref(v___y_12856_);
lean_dec(v_baseId_12849_);
v___x_12865_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12865_, 0, v_bs_12854_);
lean_ctor_set(v___x_12865_, 1, v___y_12855_);
v___x_12866_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12866_, 0, v___x_12865_);
return v___x_12866_;
}
else
{
lean_object* v_v_12867_; lean_object* v___x_12868_; 
v_v_12867_ = lean_array_uget_borrowed(v_bs_12854_, v_i_12853_);
lean_inc(v___y_12862_);
lean_inc_ref(v___y_12861_);
lean_inc(v___y_12860_);
lean_inc_ref(v___y_12859_);
lean_inc(v___y_12858_);
lean_inc_ref(v___y_12857_);
lean_inc_ref(v___y_12856_);
lean_inc(v_v_12867_);
lean_inc(v_baseId_12849_);
v___x_12868_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_baseId_12849_, v___y_12850_, v___y_12851_, v_v_12867_, v___y_12855_, v___y_12856_, v___y_12857_, v___y_12858_, v___y_12859_, v___y_12860_, v___y_12861_, v___y_12862_);
if (lean_obj_tag(v___x_12868_) == 0)
{
lean_object* v_a_12869_; lean_object* v_fst_12870_; lean_object* v_snd_12871_; lean_object* v___x_12872_; lean_object* v_bs_x27_12873_; size_t v___x_12874_; size_t v___x_12875_; lean_object* v___x_12876_; 
v_a_12869_ = lean_ctor_get(v___x_12868_, 0);
lean_inc(v_a_12869_);
lean_dec_ref(v___x_12868_);
v_fst_12870_ = lean_ctor_get(v_a_12869_, 0);
lean_inc(v_fst_12870_);
v_snd_12871_ = lean_ctor_get(v_a_12869_, 1);
lean_inc(v_snd_12871_);
lean_dec(v_a_12869_);
v___x_12872_ = lean_unsigned_to_nat(0u);
v_bs_x27_12873_ = lean_array_uset(v_bs_12854_, v_i_12853_, v___x_12872_);
v___x_12874_ = ((size_t)1ULL);
v___x_12875_ = lean_usize_add(v_i_12853_, v___x_12874_);
v___x_12876_ = lean_array_uset(v_bs_x27_12873_, v_i_12853_, v_fst_12870_);
v_i_12853_ = v___x_12875_;
v_bs_12854_ = v___x_12876_;
v___y_12855_ = v_snd_12871_;
goto _start;
}
else
{
lean_object* v_a_12878_; lean_object* v___x_12879_; 
lean_dec(v___y_12862_);
lean_dec_ref(v___y_12861_);
lean_dec(v___y_12860_);
lean_dec_ref(v___y_12859_);
lean_dec(v___y_12858_);
lean_dec_ref(v___y_12857_);
lean_dec_ref(v___y_12856_);
lean_dec_ref(v_bs_12854_);
lean_dec(v_baseId_12849_);
v_a_12878_ = lean_ctor_get(v___x_12868_, 0);
lean_inc(v_a_12878_);
lean_dec_ref(v___x_12868_);
v___x_12879_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12879_, 0, v_a_12878_);
return v___x_12879_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0(lean_object* v_args_12883_, lean_object* v_baseId_12884_, uint8_t v_inQuot_12885_, uint8_t v_inBinder_12886_, uint8_t v___x_12887_, lean_object* v___x_12888_, lean_object* v___x_12889_, lean_object* v___x_12890_, lean_object* v_____r_12891_, lean_object* v___y_12892_, lean_object* v___y_12893_, lean_object* v___y_12894_, lean_object* v___y_12895_, lean_object* v___y_12896_, lean_object* v___y_12897_, lean_object* v___y_12898_, lean_object* v___y_12899_){
_start:
{
lean_object* v___x_12901_; lean_object* v___x_12902_; lean_object* v_term_12903_; lean_object* v___x_12904_; 
v___x_12901_ = lean_box(0);
v___x_12902_ = lean_unsigned_to_nat(1u);
v_term_12903_ = lean_array_get_borrowed(v___x_12901_, v_args_12883_, v___x_12902_);
lean_inc_ref(v___y_12898_);
lean_inc(v_term_12903_);
lean_inc(v_baseId_12884_);
v___x_12904_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_baseId_12884_, v_inQuot_12885_, v_inBinder_12886_, v_term_12903_, v___y_12892_, v___y_12893_, v___y_12894_, v___y_12895_, v___y_12896_, v___y_12897_, v___y_12898_, v___y_12899_);
if (lean_obj_tag(v___x_12904_) == 0)
{
lean_object* v_a_12905_; lean_object* v_fst_12906_; lean_object* v_snd_12907_; lean_object* v___x_12908_; lean_object* v___x_12909_; lean_object* v___x_12910_; 
v_a_12905_ = lean_ctor_get(v___x_12904_, 0);
lean_inc(v_a_12905_);
lean_dec_ref(v___x_12904_);
v_fst_12906_ = lean_ctor_get(v_a_12905_, 0);
lean_inc(v_fst_12906_);
v_snd_12907_ = lean_ctor_get(v_a_12905_, 1);
lean_inc(v_snd_12907_);
lean_dec(v_a_12905_);
v___x_12908_ = l_List_lengthTR___redArg(v_snd_12907_);
v___x_12909_ = l_Lean_Name_num___override(v_baseId_12884_, v___x_12908_);
v___x_12910_ = l_Lean_mkIdentFromRef___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__1___redArg(v___x_12909_, v___x_12887_, v_snd_12907_, v___y_12898_);
if (lean_obj_tag(v___x_12910_) == 0)
{
lean_object* v_a_12911_; lean_object* v_fst_12912_; lean_object* v_snd_12913_; lean_object* v_ref_12914_; lean_object* v___x_12915_; lean_object* v___x_12916_; lean_object* v___x_12917_; lean_object* v___x_12918_; lean_object* v___x_12919_; lean_object* v___x_12920_; lean_object* v___x_12921_; lean_object* v___x_12922_; lean_object* v___x_12923_; lean_object* v___x_12924_; lean_object* v___x_12925_; lean_object* v___x_12926_; lean_object* v___x_12927_; lean_object* v___x_12928_; lean_object* v___x_12929_; lean_object* v___x_12930_; lean_object* v___x_12931_; lean_object* v___x_12932_; lean_object* v___x_12933_; lean_object* v___x_12934_; lean_object* v___x_12935_; lean_object* v___x_12936_; 
v_a_12911_ = lean_ctor_get(v___x_12910_, 0);
lean_inc(v_a_12911_);
lean_dec_ref(v___x_12910_);
v_fst_12912_ = lean_ctor_get(v_a_12911_, 0);
lean_inc(v_fst_12912_);
v_snd_12913_ = lean_ctor_get(v_a_12911_, 1);
lean_inc(v_snd_12913_);
lean_dec(v_a_12911_);
v_ref_12914_ = lean_ctor_get(v___y_12898_, 5);
lean_inc(v_ref_12914_);
lean_dec_ref(v___y_12898_);
v___x_12915_ = l_Lean_SourceInfo_fromRef(v_ref_12914_, v___x_12887_);
lean_dec(v_ref_12914_);
v___x_12916_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_12890_);
lean_inc_ref(v___x_12889_);
lean_inc_ref(v___x_12888_);
v___x_12917_ = l_Lean_Name_mkStr4(v___x_12888_, v___x_12889_, v___x_12890_, v___x_12916_);
v___x_12918_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_12915_);
v___x_12919_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_12919_, 0, v___x_12915_);
lean_ctor_set(v___x_12919_, 1, v___x_12918_);
v___x_12920_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_12921_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_12915_);
v___x_12922_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_12922_, 0, v___x_12915_);
lean_ctor_set(v___x_12922_, 1, v___x_12920_);
lean_ctor_set(v___x_12922_, 2, v___x_12921_);
v___x_12923_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__3));
lean_inc_ref(v___x_12890_);
lean_inc_ref(v___x_12889_);
lean_inc_ref(v___x_12888_);
v___x_12924_ = l_Lean_Name_mkStr4(v___x_12888_, v___x_12889_, v___x_12890_, v___x_12923_);
v___x_12925_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_12915_);
v___x_12926_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_12926_, 0, v___x_12915_);
lean_ctor_set(v___x_12926_, 1, v___x_12925_);
v___x_12927_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__9));
v___x_12928_ = l_Lean_Name_mkStr4(v___x_12888_, v___x_12889_, v___x_12890_, v___x_12927_);
lean_inc(v___x_12915_);
v___x_12929_ = l_Lean_Syntax_node1(v___x_12915_, v___x_12928_, v_fst_12906_);
lean_inc_ref(v___x_12922_);
lean_inc(v_fst_12912_);
lean_inc(v___x_12915_);
v___x_12930_ = l_Lean_Syntax_node4(v___x_12915_, v___x_12924_, v_fst_12912_, v___x_12922_, v___x_12926_, v___x_12929_);
v___x_12931_ = l_Lean_Syntax_node3(v___x_12915_, v___x_12917_, v___x_12919_, v___x_12922_, v___x_12930_);
v___x_12932_ = lean_box(0);
v___x_12933_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_12933_, 0, v___x_12931_);
lean_ctor_set(v___x_12933_, 1, v___x_12932_);
v___x_12934_ = l_List_appendTR___redArg(v_snd_12913_, v___x_12933_);
v___x_12935_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12935_, 0, v_fst_12912_);
lean_ctor_set(v___x_12935_, 1, v___x_12934_);
v___x_12936_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12936_, 0, v___x_12935_);
return v___x_12936_;
}
else
{
lean_object* v_a_12937_; lean_object* v___x_12938_; 
lean_dec(v_fst_12906_);
lean_dec_ref(v___y_12898_);
lean_dec_ref(v___x_12890_);
lean_dec_ref(v___x_12889_);
lean_dec_ref(v___x_12888_);
v_a_12937_ = lean_ctor_get(v___x_12910_, 0);
lean_inc(v_a_12937_);
lean_dec_ref(v___x_12910_);
v___x_12938_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_12938_, 0, v_a_12937_);
return v___x_12938_;
}
}
else
{
lean_dec_ref(v___y_12898_);
lean_dec_ref(v___x_12890_);
lean_dec_ref(v___x_12889_);
lean_dec_ref(v___x_12888_);
lean_dec(v_baseId_12884_);
return v___x_12904_;
}
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0___boxed(lean_object** _args){
lean_object* v_args_12939_ = _args[0];
lean_object* v_baseId_12940_ = _args[1];
lean_object* v_inQuot_12941_ = _args[2];
lean_object* v_inBinder_12942_ = _args[3];
lean_object* v___x_12943_ = _args[4];
lean_object* v___x_12944_ = _args[5];
lean_object* v___x_12945_ = _args[6];
lean_object* v___x_12946_ = _args[7];
lean_object* v_____r_12947_ = _args[8];
lean_object* v___y_12948_ = _args[9];
lean_object* v___y_12949_ = _args[10];
lean_object* v___y_12950_ = _args[11];
lean_object* v___y_12951_ = _args[12];
lean_object* v___y_12952_ = _args[13];
lean_object* v___y_12953_ = _args[14];
lean_object* v___y_12954_ = _args[15];
lean_object* v___y_12955_ = _args[16];
lean_object* v___y_12956_ = _args[17];
_start:
{
uint8_t v_inQuot_boxed_12957_; uint8_t v_inBinder_boxed_12958_; uint8_t v___x_27789__boxed_12959_; lean_object* v_res_12960_; 
v_inQuot_boxed_12957_ = lean_unbox(v_inQuot_12941_);
v_inBinder_boxed_12958_ = lean_unbox(v_inBinder_12942_);
v___x_27789__boxed_12959_ = lean_unbox(v___x_12943_);
v_res_12960_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0(v_args_12939_, v_baseId_12940_, v_inQuot_boxed_12957_, v_inBinder_boxed_12958_, v___x_27789__boxed_12959_, v___x_12944_, v___x_12945_, v___x_12946_, v_____r_12947_, v___y_12948_, v___y_12949_, v___y_12950_, v___y_12951_, v___y_12952_, v___y_12953_, v___y_12954_, v___y_12955_);
lean_dec_ref(v_args_12939_);
return v_res_12960_;
}
}
static lean_object* _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4(void){
_start:
{
lean_object* v___x_12965_; lean_object* v___x_12966_; 
v___x_12965_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__3));
v___x_12966_ = l_Lean_stringToMessageData(v___x_12965_);
return v___x_12966_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(lean_object* v_baseId_12967_, uint8_t v_inQuot_12968_, uint8_t v_inBinder_12969_, lean_object* v_x_12970_, lean_object* v_a_12971_, lean_object* v_a_12972_, lean_object* v_a_12973_, lean_object* v_a_12974_, lean_object* v_a_12975_, lean_object* v_a_12976_, lean_object* v_a_12977_, lean_object* v_a_12978_){
_start:
{
if (lean_obj_tag(v_x_12970_) == 1)
{
lean_object* v_info_12980_; lean_object* v_kind_12981_; lean_object* v_args_12982_; uint8_t v___y_12984_; uint8_t v___y_12998_; uint8_t v___y_12999_; uint8_t v___y_13012_; lean_object* v___x_13014_; uint8_t v___x_13015_; 
v_info_12980_ = lean_ctor_get(v_x_12970_, 0);
v_kind_12981_ = lean_ctor_get(v_x_12970_, 1);
v_args_12982_ = lean_ctor_get(v_x_12970_, 2);
v___x_13014_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__1));
v___x_13015_ = lean_name_eq(v_kind_12981_, v___x_13014_);
if (v___x_13015_ == 0)
{
uint8_t v___x_13016_; 
v___x_13016_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter(v_kind_12981_);
if (v___x_13016_ == 0)
{
uint8_t v___x_13017_; uint8_t v___y_13019_; uint8_t v___y_13024_; uint8_t v___y_13025_; uint8_t v___y_13026_; uint8_t v___y_13028_; uint8_t v___y_13029_; lean_object* v___y_13032_; uint8_t v___y_13033_; lean_object* v___x_13049_; lean_object* v___x_13050_; uint8_t v___x_13051_; 
lean_inc_ref(v_args_12982_);
lean_inc(v_kind_12981_);
lean_inc(v_info_12980_);
v___x_13017_ = 1;
v___x_13049_ = lean_unsigned_to_nat(2u);
v___x_13050_ = lean_array_get_size(v_args_12982_);
v___x_13051_ = lean_nat_dec_le(v___x_13049_, v___x_13050_);
if (v___x_13051_ == 0)
{
goto v___jp_13037_;
}
else
{
lean_object* v___x_13052_; uint8_t v___x_13053_; 
v___x_13052_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__3));
v___x_13053_ = lean_name_eq(v_kind_12981_, v___x_13052_);
if (v___x_13053_ == 0)
{
lean_object* v___x_13054_; uint8_t v___x_13055_; 
v___x_13054_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__5));
v___x_13055_ = lean_name_eq(v_kind_12981_, v___x_13054_);
if (v___x_13055_ == 0)
{
goto v___jp_13037_;
}
else
{
goto v___jp_13020_;
}
}
else
{
goto v___jp_13020_;
}
}
v___jp_13018_:
{
if (v_inQuot_12968_ == 0)
{
goto v___jp_12995_;
}
else
{
if (v___y_13019_ == 0)
{
lean_dec_ref(v_x_12970_);
v___y_12984_ = v___x_13017_;
goto v___jp_12983_;
}
else
{
if (v___x_13016_ == 0)
{
goto v___jp_12995_;
}
else
{
lean_dec_ref(v_x_12970_);
v___y_12984_ = v___x_13017_;
goto v___jp_12983_;
}
}
}
}
v___jp_13020_:
{
uint8_t v___x_13021_; 
v___x_13021_ = l_Lean_Syntax_isAntiquot(v_x_12970_);
if (v___x_13021_ == 0)
{
v___y_13019_ = v___x_13021_;
goto v___jp_13018_;
}
else
{
uint8_t v___x_13022_; 
v___x_13022_ = l_Lean_Syntax_isEscapedAntiquot(v_x_12970_);
if (v___x_13022_ == 0)
{
v___y_13019_ = v___x_13021_;
goto v___jp_13018_;
}
else
{
v___y_13019_ = v___x_13016_;
goto v___jp_13018_;
}
}
}
v___jp_13023_:
{
if (v_inQuot_12968_ == 0)
{
v___y_13012_ = v___y_13026_;
goto v___jp_13011_;
}
else
{
if (v___y_13025_ == 0)
{
lean_dec_ref(v_x_12970_);
v___y_12998_ = v___y_13026_;
v___y_12999_ = v___x_13017_;
goto v___jp_12997_;
}
else
{
if (v___y_13024_ == 0)
{
v___y_13012_ = v___y_13026_;
goto v___jp_13011_;
}
else
{
lean_dec_ref(v_x_12970_);
v___y_12998_ = v___y_13026_;
v___y_12999_ = v___x_13017_;
goto v___jp_12997_;
}
}
}
}
v___jp_13027_:
{
if (v_inBinder_12969_ == 0)
{
if (v_inQuot_12968_ == 0)
{
uint8_t v___x_13030_; 
lean_inc_ref(v_x_12970_);
v___x_13030_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder(v_x_12970_);
v___y_13024_ = v___y_13028_;
v___y_13025_ = v___y_13029_;
v___y_13026_ = v___x_13030_;
goto v___jp_13023_;
}
else
{
v___y_13024_ = v___y_13028_;
v___y_13025_ = v___y_13029_;
v___y_13026_ = v_inBinder_12969_;
goto v___jp_13023_;
}
}
else
{
v___y_13024_ = v___y_13028_;
v___y_13025_ = v___y_13029_;
v___y_13026_ = v___x_13017_;
goto v___jp_13023_;
}
}
v___jp_13031_:
{
if (v___y_13033_ == 0)
{
uint8_t v___x_13034_; 
lean_dec_ref(v___y_13032_);
v___x_13034_ = l_Lean_Syntax_isAntiquot(v_x_12970_);
if (v___x_13034_ == 0)
{
v___y_13028_ = v___y_13033_;
v___y_13029_ = v___x_13034_;
goto v___jp_13027_;
}
else
{
uint8_t v___x_13035_; 
v___x_13035_ = l_Lean_Syntax_isEscapedAntiquot(v_x_12970_);
if (v___x_13035_ == 0)
{
v___y_13028_ = v___y_13033_;
v___y_13029_ = v___x_13034_;
goto v___jp_13027_;
}
else
{
v___y_13028_ = v___y_13033_;
v___y_13029_ = v___y_13033_;
goto v___jp_13027_;
}
}
}
else
{
lean_object* v___x_13036_; 
lean_dec_ref(v_args_12982_);
lean_dec(v_kind_12981_);
lean_dec_ref(v_x_12970_);
lean_dec(v_info_12980_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
lean_dec(v_a_12971_);
lean_dec(v_baseId_12967_);
v___x_13036_ = l_Lean_Core_withFreshMacroScope___redArg(v___y_13032_, v_a_12977_, v_a_12978_);
return v___x_13036_;
}
}
v___jp_13037_:
{
lean_object* v___x_13038_; lean_object* v___x_13039_; lean_object* v___x_13040_; lean_object* v___x_13041_; lean_object* v___x_13042_; lean_object* v___x_13043_; lean_object* v___f_13044_; lean_object* v___x_13045_; lean_object* v___f_13046_; lean_object* v___x_13047_; uint8_t v___x_13048_; 
v___x_13038_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0));
v___x_13039_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1));
v___x_13040_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2));
v___x_13041_ = lean_box(v_inQuot_12968_);
v___x_13042_ = lean_box(v_inBinder_12969_);
v___x_13043_ = lean_box(v___x_13016_);
lean_inc(v_baseId_12967_);
lean_inc_ref(v_args_12982_);
v___f_13044_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__0___boxed), 18, 8);
lean_closure_set(v___f_13044_, 0, v_args_12982_);
lean_closure_set(v___f_13044_, 1, v_baseId_12967_);
lean_closure_set(v___f_13044_, 2, v___x_13041_);
lean_closure_set(v___f_13044_, 3, v___x_13042_);
lean_closure_set(v___f_13044_, 4, v___x_13043_);
lean_closure_set(v___f_13044_, 5, v___x_13038_);
lean_closure_set(v___f_13044_, 6, v___x_13039_);
lean_closure_set(v___f_13044_, 7, v___x_13040_);
v___x_13045_ = lean_box(v_inBinder_12969_);
lean_inc_ref(v_x_12970_);
lean_inc(v_a_12976_);
lean_inc_ref(v_a_12975_);
lean_inc(v_a_12974_);
lean_inc_ref(v_a_12973_);
lean_inc_ref(v_a_12972_);
lean_inc(v_a_12971_);
v___f_13046_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___lam__1___boxed), 12, 9);
lean_closure_set(v___f_13046_, 0, v___x_13045_);
lean_closure_set(v___f_13046_, 1, v___f_13044_);
lean_closure_set(v___f_13046_, 2, v_a_12971_);
lean_closure_set(v___f_13046_, 3, v_a_12972_);
lean_closure_set(v___f_13046_, 4, v_a_12973_);
lean_closure_set(v___f_13046_, 5, v_a_12974_);
lean_closure_set(v___f_13046_, 6, v_a_12975_);
lean_closure_set(v___f_13046_, 7, v_a_12976_);
lean_closure_set(v___f_13046_, 8, v_x_12970_);
v___x_13047_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod___closed__1));
v___x_13048_ = lean_name_eq(v_kind_12981_, v___x_13047_);
if (v___x_13048_ == 0)
{
v___y_13032_ = v___f_13046_;
v___y_13033_ = v___x_13048_;
goto v___jp_13031_;
}
else
{
if (v_inQuot_12968_ == 0)
{
v___y_13032_ = v___f_13046_;
v___y_13033_ = v___x_13048_;
goto v___jp_13031_;
}
else
{
v___y_13032_ = v___f_13046_;
v___y_13033_ = v___x_13016_;
goto v___jp_13031_;
}
}
}
}
else
{
lean_object* v___x_13056_; lean_object* v___x_13057_; 
lean_dec(v_a_12978_);
lean_dec_ref(v_a_12977_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
lean_dec(v_baseId_12967_);
v___x_13056_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13056_, 0, v_x_12970_);
lean_ctor_set(v___x_13056_, 1, v_a_12971_);
v___x_13057_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13057_, 0, v___x_13056_);
return v___x_13057_;
}
}
else
{
lean_object* v___x_13058_; size_t v_sz_13059_; size_t v___x_13060_; lean_object* v___x_13061_; 
lean_inc(v_kind_12981_);
lean_inc(v_info_12980_);
v___x_13058_ = l_Lean_Syntax_getArgs(v_x_12970_);
v_sz_13059_ = lean_array_size(v___x_13058_);
v___x_13060_ = ((size_t)0ULL);
lean_inc(v_a_12978_);
lean_inc_ref(v_a_12977_);
lean_inc(v_a_12976_);
lean_inc_ref(v_a_12975_);
lean_inc(v_a_12974_);
lean_inc_ref(v_a_12973_);
lean_inc_ref(v_a_12972_);
v___x_13061_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3(v_baseId_12967_, v_inQuot_12968_, v_inBinder_12969_, v_sz_13059_, v___x_13060_, v___x_13058_, v_a_12971_, v_a_12972_, v_a_12973_, v_a_12974_, v_a_12975_, v_a_12976_, v_a_12977_, v_a_12978_);
if (lean_obj_tag(v___x_13061_) == 0)
{
lean_object* v_a_13062_; lean_object* v_fst_13063_; lean_object* v_snd_13064_; lean_object* v___x_13065_; lean_object* v___x_13066_; lean_object* v___x_13067_; lean_object* v_snd_13068_; lean_object* v___y_13070_; uint8_t v___y_13085_; lean_object* v___x_13086_; uint8_t v___x_13087_; 
v_a_13062_ = lean_ctor_get(v___x_13061_, 0);
lean_inc(v_a_13062_);
lean_dec_ref(v___x_13061_);
v_fst_13063_ = lean_ctor_get(v_a_13062_, 0);
lean_inc(v_fst_13063_);
v_snd_13064_ = lean_ctor_get(v_a_13062_, 1);
lean_inc(v_snd_13064_);
lean_dec(v_a_13062_);
v___x_13065_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__2));
v___x_13066_ = lean_unsigned_to_nat(0u);
v___x_13067_ = lean_array_get_borrowed(v___x_13065_, v_fst_13063_, v___x_13066_);
v_snd_13068_ = lean_ctor_get(v___x_13067_, 1);
v___x_13086_ = lean_array_get_size(v_fst_13063_);
v___x_13087_ = lean_nat_dec_lt(v___x_13066_, v___x_13086_);
if (v___x_13087_ == 0)
{
v___y_13085_ = v___x_13015_;
goto v___jp_13084_;
}
else
{
if (v___x_13087_ == 0)
{
v___y_13085_ = v___x_13015_;
goto v___jp_13084_;
}
else
{
size_t v___x_13088_; uint8_t v___x_13089_; 
v___x_13088_ = lean_usize_of_nat(v___x_13086_);
lean_inc(v_snd_13068_);
v___x_13089_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__6(v_snd_13068_, v___x_13015_, v_fst_13063_, v___x_13060_, v___x_13088_);
if (v___x_13089_ == 0)
{
v___y_13085_ = v___x_13015_;
goto v___jp_13084_;
}
else
{
goto v___jp_13077_;
}
}
}
v___jp_13069_:
{
lean_object* v___x_13071_; size_t v_sz_13072_; lean_object* v___x_13073_; lean_object* v___x_13074_; lean_object* v___x_13075_; lean_object* v___x_13076_; 
lean_inc(v_snd_13068_);
v___x_13071_ = l_List_appendTR___redArg(v___y_13070_, v_snd_13068_);
v_sz_13072_ = lean_array_size(v_fst_13063_);
v___x_13073_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__4(v_sz_13072_, v___x_13060_, v_fst_13063_);
v___x_13074_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13074_, 0, v_info_12980_);
lean_ctor_set(v___x_13074_, 1, v_kind_12981_);
lean_ctor_set(v___x_13074_, 2, v___x_13073_);
v___x_13075_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13075_, 0, v___x_13074_);
lean_ctor_set(v___x_13075_, 1, v___x_13071_);
v___x_13076_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13076_, 0, v___x_13075_);
return v___x_13076_;
}
v___jp_13077_:
{
lean_object* v___x_13078_; lean_object* v___x_13079_; 
v___x_13078_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___closed__4);
v___x_13079_ = l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(v_x_12970_, v___x_13078_, v_snd_13064_, v_a_12972_, v_a_12973_, v_a_12974_, v_a_12975_, v_a_12976_, v_a_12977_, v_a_12978_);
lean_dec(v_a_12978_);
lean_dec_ref(v_a_12977_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
lean_dec(v_snd_13064_);
lean_dec_ref(v_x_12970_);
if (lean_obj_tag(v___x_13079_) == 0)
{
lean_object* v_a_13080_; lean_object* v_snd_13081_; 
v_a_13080_ = lean_ctor_get(v___x_13079_, 0);
lean_inc(v_a_13080_);
lean_dec_ref(v___x_13079_);
v_snd_13081_ = lean_ctor_get(v_a_13080_, 1);
lean_inc(v_snd_13081_);
lean_dec(v_a_13080_);
v___y_13070_ = v_snd_13081_;
goto v___jp_13069_;
}
else
{
lean_object* v_a_13082_; lean_object* v___x_13083_; 
lean_dec(v_fst_13063_);
lean_dec(v_kind_12981_);
lean_dec(v_info_12980_);
v_a_13082_ = lean_ctor_get(v___x_13079_, 0);
lean_inc(v_a_13082_);
lean_dec_ref(v___x_13079_);
v___x_13083_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13083_, 0, v_a_13082_);
return v___x_13083_;
}
}
v___jp_13084_:
{
if (v___y_13085_ == 0)
{
goto v___jp_13077_;
}
else
{
lean_dec_ref(v_x_12970_);
lean_dec(v_a_12978_);
lean_dec_ref(v_a_12977_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
v___y_13070_ = v_snd_13064_;
goto v___jp_13069_;
}
}
}
else
{
lean_object* v_a_13090_; lean_object* v___x_13091_; 
lean_dec(v_kind_12981_);
lean_dec(v_info_12980_);
lean_dec_ref(v_x_12970_);
lean_dec(v_a_12978_);
lean_dec_ref(v_a_12977_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
v_a_13090_ = lean_ctor_get(v___x_13061_, 0);
lean_inc(v_a_13090_);
lean_dec_ref(v___x_13061_);
v___x_13091_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13091_, 0, v_a_13090_);
return v___x_13091_;
}
}
v___jp_12983_:
{
lean_object* v___x_12985_; lean_object* v___x_12986_; lean_object* v___x_12987_; 
v___x_12985_ = lean_unsigned_to_nat(1u);
v___x_12986_ = lean_array_fget_borrowed(v_args_12982_, v___x_12985_);
lean_inc(v___x_12986_);
v___x_12987_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_baseId_12967_, v___y_12984_, v_inBinder_12969_, v___x_12986_, v_a_12971_, v_a_12972_, v_a_12973_, v_a_12974_, v_a_12975_, v_a_12976_, v_a_12977_, v_a_12978_);
if (lean_obj_tag(v___x_12987_) == 0)
{
lean_object* v_a_12988_; lean_object* v_fst_12989_; lean_object* v_snd_12990_; lean_object* v___x_12991_; lean_object* v___x_12992_; lean_object* v___x_12993_; lean_object* v___x_12994_; 
v_a_12988_ = lean_ctor_get(v___x_12987_, 0);
lean_inc(v_a_12988_);
lean_dec_ref(v___x_12987_);
v_fst_12989_ = lean_ctor_get(v_a_12988_, 0);
lean_inc(v_fst_12989_);
v_snd_12990_ = lean_ctor_get(v_a_12988_, 1);
lean_inc(v_snd_12990_);
lean_dec(v_a_12988_);
v___x_12991_ = lean_array_set(v_args_12982_, v___x_12985_, v_fst_12989_);
v___x_12992_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_12992_, 0, v_info_12980_);
lean_ctor_set(v___x_12992_, 1, v_kind_12981_);
lean_ctor_set(v___x_12992_, 2, v___x_12991_);
v___x_12993_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_12993_, 0, v___x_12992_);
lean_ctor_set(v___x_12993_, 1, v_snd_12990_);
v___x_12994_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_12994_, 0, v___x_12993_);
return v___x_12994_;
}
else
{
lean_dec_ref(v_args_12982_);
lean_dec(v_kind_12981_);
lean_dec(v_info_12980_);
return v___x_12987_;
}
}
v___jp_12995_:
{
uint8_t v___x_12996_; 
v___x_12996_ = l_Lean_Syntax_isQuot(v_x_12970_);
lean_dec_ref(v_x_12970_);
v___y_12984_ = v___x_12996_;
goto v___jp_12983_;
}
v___jp_12997_:
{
size_t v_sz_13000_; size_t v___x_13001_; lean_object* v___x_13002_; 
v_sz_13000_ = lean_array_size(v_args_12982_);
v___x_13001_ = ((size_t)0ULL);
v___x_13002_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0(v_baseId_12967_, v___y_12999_, v___y_12998_, v_sz_13000_, v___x_13001_, v_args_12982_, v_a_12971_, v_a_12972_, v_a_12973_, v_a_12974_, v_a_12975_, v_a_12976_, v_a_12977_, v_a_12978_);
if (lean_obj_tag(v___x_13002_) == 0)
{
lean_object* v_a_13003_; lean_object* v_fst_13004_; lean_object* v_snd_13005_; lean_object* v___x_13006_; lean_object* v___x_13007_; lean_object* v___x_13008_; 
v_a_13003_ = lean_ctor_get(v___x_13002_, 0);
lean_inc(v_a_13003_);
lean_dec_ref(v___x_13002_);
v_fst_13004_ = lean_ctor_get(v_a_13003_, 0);
lean_inc(v_fst_13004_);
v_snd_13005_ = lean_ctor_get(v_a_13003_, 1);
lean_inc(v_snd_13005_);
lean_dec(v_a_13003_);
v___x_13006_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13006_, 0, v_info_12980_);
lean_ctor_set(v___x_13006_, 1, v_kind_12981_);
lean_ctor_set(v___x_13006_, 2, v_fst_13004_);
v___x_13007_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13007_, 0, v___x_13006_);
lean_ctor_set(v___x_13007_, 1, v_snd_13005_);
v___x_13008_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13008_, 0, v___x_13007_);
return v___x_13008_;
}
else
{
lean_object* v_a_13009_; lean_object* v___x_13010_; 
lean_dec(v_kind_12981_);
lean_dec(v_info_12980_);
v_a_13009_ = lean_ctor_get(v___x_13002_, 0);
lean_inc(v_a_13009_);
lean_dec_ref(v___x_13002_);
v___x_13010_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13010_, 0, v_a_13009_);
return v___x_13010_;
}
}
v___jp_13011_:
{
uint8_t v___x_13013_; 
v___x_13013_ = l_Lean_Syntax_isQuot(v_x_12970_);
lean_dec_ref(v_x_12970_);
v___y_12998_ = v___y_13012_;
v___y_12999_ = v___x_13013_;
goto v___jp_12997_;
}
}
else
{
lean_object* v___x_13092_; lean_object* v___x_13093_; 
lean_dec(v_a_12978_);
lean_dec_ref(v_a_12977_);
lean_dec(v_a_12976_);
lean_dec_ref(v_a_12975_);
lean_dec(v_a_12974_);
lean_dec_ref(v_a_12973_);
lean_dec_ref(v_a_12972_);
lean_dec(v_baseId_12967_);
v___x_13092_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13092_, 0, v_x_12970_);
lean_ctor_set(v___x_13092_, 1, v_a_12971_);
v___x_13093_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13093_, 0, v___x_13092_);
return v___x_13093_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3(lean_object* v_baseId_13094_, uint8_t v_inQuot_13095_, uint8_t v_inBinder_13096_, size_t v_sz_13097_, size_t v_i_13098_, lean_object* v_bs_13099_, lean_object* v___y_13100_, lean_object* v___y_13101_, lean_object* v___y_13102_, lean_object* v___y_13103_, lean_object* v___y_13104_, lean_object* v___y_13105_, lean_object* v___y_13106_, lean_object* v___y_13107_){
_start:
{
uint8_t v___x_13109_; 
v___x_13109_ = lean_usize_dec_lt(v_i_13098_, v_sz_13097_);
if (v___x_13109_ == 0)
{
lean_object* v___x_13110_; lean_object* v___x_13111_; 
lean_dec(v___y_13107_);
lean_dec_ref(v___y_13106_);
lean_dec(v___y_13105_);
lean_dec_ref(v___y_13104_);
lean_dec(v___y_13103_);
lean_dec_ref(v___y_13102_);
lean_dec_ref(v___y_13101_);
lean_dec(v_baseId_13094_);
v___x_13110_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13110_, 0, v_bs_13099_);
lean_ctor_set(v___x_13110_, 1, v___y_13100_);
v___x_13111_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13111_, 0, v___x_13110_);
return v___x_13111_;
}
else
{
lean_object* v_v_13112_; lean_object* v___x_13113_; lean_object* v___x_13114_; 
v_v_13112_ = lean_array_uget_borrowed(v_bs_13099_, v_i_13098_);
v___x_13113_ = lean_box(0);
lean_inc(v___y_13107_);
lean_inc_ref(v___y_13106_);
lean_inc(v___y_13105_);
lean_inc_ref(v___y_13104_);
lean_inc(v___y_13103_);
lean_inc_ref(v___y_13102_);
lean_inc_ref(v___y_13101_);
lean_inc(v_v_13112_);
lean_inc(v_baseId_13094_);
v___x_13114_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_baseId_13094_, v_inQuot_13095_, v_inBinder_13096_, v_v_13112_, v___x_13113_, v___y_13101_, v___y_13102_, v___y_13103_, v___y_13104_, v___y_13105_, v___y_13106_, v___y_13107_);
if (lean_obj_tag(v___x_13114_) == 0)
{
lean_object* v_a_13115_; lean_object* v___x_13116_; lean_object* v_bs_x27_13117_; size_t v___x_13118_; size_t v___x_13119_; lean_object* v___x_13120_; 
v_a_13115_ = lean_ctor_get(v___x_13114_, 0);
lean_inc(v_a_13115_);
lean_dec_ref(v___x_13114_);
v___x_13116_ = lean_unsigned_to_nat(0u);
v_bs_x27_13117_ = lean_array_uset(v_bs_13099_, v_i_13098_, v___x_13116_);
v___x_13118_ = ((size_t)1ULL);
v___x_13119_ = lean_usize_add(v_i_13098_, v___x_13118_);
v___x_13120_ = lean_array_uset(v_bs_x27_13117_, v_i_13098_, v_a_13115_);
v_i_13098_ = v___x_13119_;
v_bs_13099_ = v___x_13120_;
goto _start;
}
else
{
lean_object* v_a_13122_; lean_object* v___x_13123_; 
lean_dec(v___y_13107_);
lean_dec_ref(v___y_13106_);
lean_dec(v___y_13105_);
lean_dec_ref(v___y_13104_);
lean_dec(v___y_13103_);
lean_dec_ref(v___y_13102_);
lean_dec_ref(v___y_13101_);
lean_dec(v___y_13100_);
lean_dec_ref(v_bs_13099_);
lean_dec(v_baseId_13094_);
v_a_13122_ = lean_ctor_get(v___x_13114_, 0);
lean_inc(v_a_13122_);
lean_dec_ref(v___x_13114_);
v___x_13123_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13123_, 0, v_a_13122_);
return v___x_13123_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3___boxed(lean_object* v_baseId_13124_, lean_object* v_inQuot_13125_, lean_object* v_inBinder_13126_, lean_object* v_sz_13127_, lean_object* v_i_13128_, lean_object* v_bs_13129_, lean_object* v___y_13130_, lean_object* v___y_13131_, lean_object* v___y_13132_, lean_object* v___y_13133_, lean_object* v___y_13134_, lean_object* v___y_13135_, lean_object* v___y_13136_, lean_object* v___y_13137_, lean_object* v___y_13138_){
_start:
{
uint8_t v_inQuot_boxed_13139_; uint8_t v_inBinder_boxed_13140_; size_t v_sz_boxed_13141_; size_t v_i_boxed_13142_; lean_object* v_res_13143_; 
v_inQuot_boxed_13139_ = lean_unbox(v_inQuot_13125_);
v_inBinder_boxed_13140_ = lean_unbox(v_inBinder_13126_);
v_sz_boxed_13141_ = lean_unbox_usize(v_sz_13127_);
lean_dec(v_sz_13127_);
v_i_boxed_13142_ = lean_unbox_usize(v_i_13128_);
lean_dec(v_i_13128_);
v_res_13143_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__3(v_baseId_13124_, v_inQuot_boxed_13139_, v_inBinder_boxed_13140_, v_sz_boxed_13141_, v_i_boxed_13142_, v_bs_13129_, v___y_13130_, v___y_13131_, v___y_13132_, v___y_13133_, v___y_13134_, v___y_13135_, v___y_13136_, v___y_13137_);
return v_res_13143_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0___boxed(lean_object* v_baseId_13144_, lean_object* v___y_13145_, lean_object* v___y_13146_, lean_object* v_sz_13147_, lean_object* v_i_13148_, lean_object* v_bs_13149_, lean_object* v___y_13150_, lean_object* v___y_13151_, lean_object* v___y_13152_, lean_object* v___y_13153_, lean_object* v___y_13154_, lean_object* v___y_13155_, lean_object* v___y_13156_, lean_object* v___y_13157_, lean_object* v___y_13158_){
_start:
{
uint8_t v___y_27763__boxed_13159_; uint8_t v___y_27764__boxed_13160_; size_t v_sz_boxed_13161_; size_t v_i_boxed_13162_; lean_object* v_res_13163_; 
v___y_27763__boxed_13159_ = lean_unbox(v___y_13145_);
v___y_27764__boxed_13160_ = lean_unbox(v___y_13146_);
v_sz_boxed_13161_ = lean_unbox_usize(v_sz_13147_);
lean_dec(v_sz_13147_);
v_i_boxed_13162_ = lean_unbox_usize(v_i_13148_);
lean_dec(v_i_13148_);
v_res_13163_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__0(v_baseId_13144_, v___y_27763__boxed_13159_, v___y_27764__boxed_13160_, v_sz_boxed_13161_, v_i_boxed_13162_, v_bs_13149_, v___y_13150_, v___y_13151_, v___y_13152_, v___y_13153_, v___y_13154_, v___y_13155_, v___y_13156_, v___y_13157_);
return v_res_13163_;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux___boxed(lean_object* v_baseId_13164_, lean_object* v_inQuot_13165_, lean_object* v_inBinder_13166_, lean_object* v_x_13167_, lean_object* v_a_13168_, lean_object* v_a_13169_, lean_object* v_a_13170_, lean_object* v_a_13171_, lean_object* v_a_13172_, lean_object* v_a_13173_, lean_object* v_a_13174_, lean_object* v_a_13175_, lean_object* v_a_13176_){
_start:
{
uint8_t v_inQuot_boxed_13177_; uint8_t v_inBinder_boxed_13178_; lean_object* v_res_13179_; 
v_inQuot_boxed_13177_ = lean_unbox(v_inQuot_13165_);
v_inBinder_boxed_13178_ = lean_unbox(v_inBinder_13166_);
v_res_13179_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_baseId_13164_, v_inQuot_boxed_13177_, v_inBinder_boxed_13178_, v_x_13167_, v_a_13168_, v_a_13169_, v_a_13170_, v_a_13171_, v_a_13172_, v_a_13173_, v_a_13174_, v_a_13175_);
return v_res_13179_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2(lean_object* v_00_u03b1_13180_, lean_object* v_ref_13181_, lean_object* v_msg_13182_, lean_object* v___y_13183_, lean_object* v___y_13184_, lean_object* v___y_13185_, lean_object* v___y_13186_, lean_object* v___y_13187_, lean_object* v___y_13188_, lean_object* v___y_13189_, lean_object* v___y_13190_){
_start:
{
lean_object* v___x_13192_; 
v___x_13192_ = l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___redArg(v_ref_13181_, v_msg_13182_, v___y_13183_, v___y_13184_, v___y_13185_, v___y_13186_, v___y_13187_, v___y_13188_, v___y_13189_, v___y_13190_);
return v___x_13192_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2___boxed(lean_object* v_00_u03b1_13193_, lean_object* v_ref_13194_, lean_object* v_msg_13195_, lean_object* v___y_13196_, lean_object* v___y_13197_, lean_object* v___y_13198_, lean_object* v___y_13199_, lean_object* v___y_13200_, lean_object* v___y_13201_, lean_object* v___y_13202_, lean_object* v___y_13203_, lean_object* v___y_13204_){
_start:
{
lean_object* v_res_13205_; 
v_res_13205_ = l_Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2(v_00_u03b1_13193_, v_ref_13194_, v_msg_13195_, v___y_13196_, v___y_13197_, v___y_13198_, v___y_13199_, v___y_13200_, v___y_13201_, v___y_13202_, v___y_13203_);
lean_dec(v___y_13203_);
lean_dec_ref(v___y_13202_);
lean_dec(v___y_13201_);
lean_dec_ref(v___y_13200_);
lean_dec(v___y_13199_);
lean_dec_ref(v___y_13198_);
lean_dec_ref(v___y_13197_);
lean_dec(v___y_13196_);
lean_dec(v_ref_13194_);
return v_res_13205_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2(lean_object* v_00_u03b1_13206_, lean_object* v_msg_13207_, lean_object* v___y_13208_, lean_object* v___y_13209_, lean_object* v___y_13210_, lean_object* v___y_13211_, lean_object* v___y_13212_, lean_object* v___y_13213_, lean_object* v___y_13214_, lean_object* v___y_13215_){
_start:
{
lean_object* v___x_13217_; 
v___x_13217_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___redArg(v_msg_13207_, v___y_13212_, v___y_13213_, v___y_13214_, v___y_13215_);
return v___x_13217_;
}
}
LEAN_EXPORT lean_object* l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2___boxed(lean_object* v_00_u03b1_13218_, lean_object* v_msg_13219_, lean_object* v___y_13220_, lean_object* v___y_13221_, lean_object* v___y_13222_, lean_object* v___y_13223_, lean_object* v___y_13224_, lean_object* v___y_13225_, lean_object* v___y_13226_, lean_object* v___y_13227_, lean_object* v___y_13228_){
_start:
{
lean_object* v_res_13229_; 
v_res_13229_ = l_Lean_throwError___at___00Lean_throwErrorAt___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux_spec__2_spec__2(v_00_u03b1_13218_, v_msg_13219_, v___y_13220_, v___y_13221_, v___y_13222_, v___y_13223_, v___y_13224_, v___y_13225_, v___y_13226_, v___y_13227_);
lean_dec(v___y_13227_);
lean_dec_ref(v___y_13226_);
lean_dec(v___y_13225_);
lean_dec_ref(v___y_13224_);
lean_dec(v___y_13223_);
lean_dec_ref(v___y_13222_);
lean_dec_ref(v___y_13221_);
lean_dec(v___y_13220_);
return v_res_13229_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0(lean_object* v___x_13230_, lean_object* v___y_13231_, lean_object* v___y_13232_){
_start:
{
lean_object* v_quotContext_13234_; lean_object* v_currMacroScope_13235_; lean_object* v___x_13236_; lean_object* v___x_13237_; 
v_quotContext_13234_ = lean_ctor_get(v___y_13231_, 10);
lean_inc(v_quotContext_13234_);
v_currMacroScope_13235_ = lean_ctor_get(v___y_13231_, 11);
lean_inc(v_currMacroScope_13235_);
lean_dec_ref(v___y_13231_);
v___x_13236_ = l_Lean_addMacroScope(v_quotContext_13234_, v___x_13230_, v_currMacroScope_13235_);
v___x_13237_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13237_, 0, v___x_13236_);
return v___x_13237_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0___boxed(lean_object* v___x_13238_, lean_object* v___y_13239_, lean_object* v___y_13240_, lean_object* v___y_13241_){
_start:
{
lean_object* v_res_13242_; 
v_res_13242_ = l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___lam__0(v___x_13238_, v___y_13239_, v___y_13240_);
lean_dec(v___y_13240_);
return v_res_13242_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod(lean_object* v_doElem_13248_, lean_object* v_a_13249_, lean_object* v_a_13250_, lean_object* v_a_13251_, lean_object* v_a_13252_, lean_object* v_a_13253_, lean_object* v_a_13254_, lean_object* v_a_13255_){
_start:
{
uint8_t v___x_13257_; 
lean_inc(v_doElem_13248_);
v___x_13257_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_hasLiftMethod(v_doElem_13248_);
if (v___x_13257_ == 0)
{
lean_object* v___x_13258_; lean_object* v___x_13259_; lean_object* v___x_13260_; 
lean_dec(v_a_13255_);
lean_dec_ref(v_a_13254_);
lean_dec(v_a_13253_);
lean_dec_ref(v_a_13252_);
lean_dec(v_a_13251_);
lean_dec_ref(v_a_13250_);
lean_dec_ref(v_a_13249_);
v___x_13258_ = lean_box(0);
v___x_13259_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13259_, 0, v___x_13258_);
lean_ctor_set(v___x_13259_, 1, v_doElem_13248_);
v___x_13260_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13260_, 0, v___x_13259_);
return v___x_13260_;
}
else
{
lean_object* v___f_13261_; lean_object* v___x_13262_; 
v___f_13261_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___closed__2));
lean_inc(v_a_13255_);
lean_inc_ref(v_a_13254_);
v___x_13262_ = l_Lean_Core_withFreshMacroScope___redArg(v___f_13261_, v_a_13254_, v_a_13255_);
if (lean_obj_tag(v___x_13262_) == 0)
{
lean_object* v_a_13263_; uint8_t v___x_13264_; lean_object* v___x_13265_; lean_object* v___x_13266_; 
v_a_13263_ = lean_ctor_get(v___x_13262_, 0);
lean_inc(v_a_13263_);
lean_dec_ref(v___x_13262_);
v___x_13264_ = 0;
v___x_13265_ = lean_box(0);
v___x_13266_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethodAux(v_a_13263_, v___x_13264_, v___x_13264_, v_doElem_13248_, v___x_13265_, v_a_13249_, v_a_13250_, v_a_13251_, v_a_13252_, v_a_13253_, v_a_13254_, v_a_13255_);
if (lean_obj_tag(v___x_13266_) == 0)
{
lean_object* v_a_13267_; lean_object* v_fst_13268_; lean_object* v_snd_13269_; lean_object* v___x_13270_; lean_object* v___x_13271_; 
v_a_13267_ = lean_ctor_get(v___x_13266_, 0);
lean_inc(v_a_13267_);
lean_dec_ref(v___x_13266_);
v_fst_13268_ = lean_ctor_get(v_a_13267_, 0);
lean_inc(v_fst_13268_);
v_snd_13269_ = lean_ctor_get(v_a_13267_, 1);
lean_inc(v_snd_13269_);
lean_dec(v_a_13267_);
v___x_13270_ = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(v___x_13270_, 0, v_snd_13269_);
lean_ctor_set(v___x_13270_, 1, v_fst_13268_);
v___x_13271_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13271_, 0, v___x_13270_);
return v___x_13271_;
}
else
{
lean_object* v_a_13272_; lean_object* v___x_13273_; 
v_a_13272_ = lean_ctor_get(v___x_13266_, 0);
lean_inc(v_a_13272_);
lean_dec_ref(v___x_13266_);
v___x_13273_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13273_, 0, v_a_13272_);
return v___x_13273_;
}
}
else
{
lean_object* v_a_13274_; lean_object* v___x_13275_; 
lean_dec(v_a_13255_);
lean_dec_ref(v_a_13254_);
lean_dec(v_a_13253_);
lean_dec_ref(v_a_13252_);
lean_dec(v_a_13251_);
lean_dec_ref(v_a_13250_);
lean_dec_ref(v_a_13249_);
lean_dec(v_doElem_13248_);
v_a_13274_ = lean_ctor_get(v___x_13262_, 0);
lean_inc(v_a_13274_);
lean_dec_ref(v___x_13262_);
v___x_13275_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13275_, 0, v_a_13274_);
return v___x_13275_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod___boxed(lean_object* v_doElem_13276_, lean_object* v_a_13277_, lean_object* v_a_13278_, lean_object* v_a_13279_, lean_object* v_a_13280_, lean_object* v_a_13281_, lean_object* v_a_13282_, lean_object* v_a_13283_, lean_object* v_a_13284_){
_start:
{
lean_object* v_res_13285_; 
v_res_13285_ = l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod(v_doElem_13276_, v_a_13277_, v_a_13278_, v_a_13279_, v_a_13280_, v_a_13281_, v_a_13282_, v_a_13283_);
return v_res_13285_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1(void){
_start:
{
lean_object* v___x_13287_; lean_object* v___x_13288_; 
v___x_13287_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__0));
v___x_13288_ = l_Lean_stringToMessageData(v___x_13287_);
return v___x_13288_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3(void){
_start:
{
lean_object* v___x_13290_; lean_object* v___x_13291_; 
v___x_13290_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__2));
v___x_13291_ = l_Lean_stringToMessageData(v___x_13290_);
return v___x_13291_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg(lean_object* v_doElem_13298_, lean_object* v_a_13299_, lean_object* v_a_13300_, lean_object* v_a_13301_, lean_object* v_a_13302_){
_start:
{
lean_object* v_kind_13304_; uint8_t v___y_13313_; lean_object* v___x_13324_; uint8_t v___x_13325_; 
lean_inc(v_doElem_13298_);
v_kind_13304_ = l_Lean_Syntax_getKind(v_doElem_13298_);
v___x_13324_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_13325_ = lean_name_eq(v_kind_13304_, v___x_13324_);
if (v___x_13325_ == 0)
{
lean_object* v___x_13326_; uint8_t v___x_13327_; 
v___x_13326_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_13327_ = lean_name_eq(v_kind_13304_, v___x_13326_);
v___y_13313_ = v___x_13327_;
goto v___jp_13312_;
}
else
{
v___y_13313_ = v___x_13325_;
goto v___jp_13312_;
}
v___jp_13305_:
{
lean_object* v___x_13306_; lean_object* v___x_13307_; lean_object* v___x_13308_; lean_object* v___x_13309_; lean_object* v___x_13310_; lean_object* v___x_13311_; 
v___x_13306_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__1);
v___x_13307_ = l_Lean_MessageData_ofName(v_kind_13304_);
v___x_13308_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_13308_, 0, v___x_13306_);
lean_ctor_set(v___x_13308_, 1, v___x_13307_);
v___x_13309_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3, &l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__3);
v___x_13310_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_13310_, 0, v___x_13308_);
lean_ctor_set(v___x_13310_, 1, v___x_13309_);
v___x_13311_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(v_doElem_13298_, v___x_13310_, v_a_13299_, v_a_13300_, v_a_13301_, v_a_13302_);
lean_dec(v_doElem_13298_);
return v___x_13311_;
}
v___jp_13312_:
{
if (v___y_13313_ == 0)
{
lean_object* v___x_13314_; uint8_t v___x_13315_; 
v___x_13314_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1));
v___x_13315_ = lean_name_eq(v_kind_13304_, v___x_13314_);
if (v___x_13315_ == 0)
{
lean_object* v___x_13316_; uint8_t v___x_13317_; 
v___x_13316_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1));
v___x_13317_ = lean_name_eq(v_kind_13304_, v___x_13316_);
if (v___x_13317_ == 0)
{
lean_object* v___x_13318_; uint8_t v___x_13319_; 
v___x_13318_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_13319_ = lean_name_eq(v_kind_13304_, v___x_13318_);
if (v___x_13319_ == 0)
{
lean_object* v___x_13320_; uint8_t v___x_13321_; 
v___x_13320_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5));
v___x_13321_ = lean_name_eq(v_kind_13304_, v___x_13320_);
if (v___x_13321_ == 0)
{
lean_object* v___x_13322_; lean_object* v___x_13323_; 
lean_dec(v_kind_13304_);
lean_dec(v_doElem_13298_);
v___x_13322_ = lean_box(0);
v___x_13323_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13323_, 0, v___x_13322_);
return v___x_13323_;
}
else
{
goto v___jp_13305_;
}
}
else
{
goto v___jp_13305_;
}
}
else
{
goto v___jp_13305_;
}
}
else
{
goto v___jp_13305_;
}
}
else
{
goto v___jp_13305_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___boxed(lean_object* v_doElem_13328_, lean_object* v_a_13329_, lean_object* v_a_13330_, lean_object* v_a_13331_, lean_object* v_a_13332_, lean_object* v_a_13333_){
_start:
{
lean_object* v_res_13334_; 
v_res_13334_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg(v_doElem_13328_, v_a_13329_, v_a_13330_, v_a_13331_, v_a_13332_);
lean_dec(v_a_13332_);
lean_dec_ref(v_a_13331_);
lean_dec(v_a_13330_);
lean_dec_ref(v_a_13329_);
return v_res_13334_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS(lean_object* v_doElem_13335_, lean_object* v_a_13336_, lean_object* v_a_13337_, lean_object* v_a_13338_, lean_object* v_a_13339_, lean_object* v_a_13340_, lean_object* v_a_13341_, lean_object* v_a_13342_){
_start:
{
lean_object* v___x_13344_; 
v___x_13344_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg(v_doElem_13335_, v_a_13339_, v_a_13340_, v_a_13341_, v_a_13342_);
return v___x_13344_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___boxed(lean_object* v_doElem_13345_, lean_object* v_a_13346_, lean_object* v_a_13347_, lean_object* v_a_13348_, lean_object* v_a_13349_, lean_object* v_a_13350_, lean_object* v_a_13351_, lean_object* v_a_13352_, lean_object* v_a_13353_){
_start:
{
lean_object* v_res_13354_; 
v_res_13354_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS(v_doElem_13345_, v_a_13346_, v_a_13347_, v_a_13348_, v_a_13349_, v_a_13350_, v_a_13351_, v_a_13352_);
lean_dec(v_a_13352_);
lean_dec_ref(v_a_13351_);
lean_dec(v_a_13350_);
lean_dec_ref(v_a_13349_);
lean_dec(v_a_13348_);
lean_dec_ref(v_a_13347_);
lean_dec_ref(v_a_13346_);
return v_res_13354_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode(lean_object* v_doReturn_13355_, lean_object* v_doElems_13356_, lean_object* v_a_13357_, lean_object* v_a_13358_, lean_object* v_a_13359_, lean_object* v_a_13360_, lean_object* v_a_13361_, lean_object* v_a_13362_, lean_object* v_a_13363_){
_start:
{
lean_object* v_arg_13366_; lean_object* v_ref_13367_; lean_object* v_fileName_13370_; lean_object* v_fileMap_13371_; lean_object* v_options_13372_; lean_object* v_currRecDepth_13373_; lean_object* v_maxRecDepth_13374_; lean_object* v_ref_13375_; lean_object* v_currNamespace_13376_; lean_object* v_openDecls_13377_; lean_object* v_initHeartbeats_13378_; lean_object* v_maxHeartbeats_13379_; lean_object* v_quotContext_13380_; lean_object* v_currMacroScope_13381_; uint8_t v_diag_13382_; lean_object* v_cancelTk_x3f_13383_; uint8_t v_suppressElabErrors_13384_; lean_object* v_inheritedTraceOptions_13385_; lean_object* v_ref_13386_; lean_object* v___x_13387_; lean_object* v___x_13388_; 
v_fileName_13370_ = lean_ctor_get(v_a_13362_, 0);
v_fileMap_13371_ = lean_ctor_get(v_a_13362_, 1);
v_options_13372_ = lean_ctor_get(v_a_13362_, 2);
v_currRecDepth_13373_ = lean_ctor_get(v_a_13362_, 3);
v_maxRecDepth_13374_ = lean_ctor_get(v_a_13362_, 4);
v_ref_13375_ = lean_ctor_get(v_a_13362_, 5);
v_currNamespace_13376_ = lean_ctor_get(v_a_13362_, 6);
v_openDecls_13377_ = lean_ctor_get(v_a_13362_, 7);
v_initHeartbeats_13378_ = lean_ctor_get(v_a_13362_, 8);
v_maxHeartbeats_13379_ = lean_ctor_get(v_a_13362_, 9);
v_quotContext_13380_ = lean_ctor_get(v_a_13362_, 10);
v_currMacroScope_13381_ = lean_ctor_get(v_a_13362_, 11);
v_diag_13382_ = lean_ctor_get_uint8(v_a_13362_, sizeof(void*)*14);
v_cancelTk_x3f_13383_ = lean_ctor_get(v_a_13362_, 12);
v_suppressElabErrors_13384_ = lean_ctor_get_uint8(v_a_13362_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_13385_ = lean_ctor_get(v_a_13362_, 13);
v_ref_13386_ = l_Lean_replaceRef(v_doReturn_13355_, v_ref_13375_);
lean_inc_ref(v_inheritedTraceOptions_13385_);
lean_inc(v_cancelTk_x3f_13383_);
lean_inc(v_currMacroScope_13381_);
lean_inc(v_quotContext_13380_);
lean_inc(v_maxHeartbeats_13379_);
lean_inc(v_initHeartbeats_13378_);
lean_inc(v_openDecls_13377_);
lean_inc(v_currNamespace_13376_);
lean_inc(v_ref_13386_);
lean_inc(v_maxRecDepth_13374_);
lean_inc(v_currRecDepth_13373_);
lean_inc_ref(v_options_13372_);
lean_inc_ref(v_fileMap_13371_);
lean_inc_ref(v_fileName_13370_);
v___x_13387_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_13387_, 0, v_fileName_13370_);
lean_ctor_set(v___x_13387_, 1, v_fileMap_13371_);
lean_ctor_set(v___x_13387_, 2, v_options_13372_);
lean_ctor_set(v___x_13387_, 3, v_currRecDepth_13373_);
lean_ctor_set(v___x_13387_, 4, v_maxRecDepth_13374_);
lean_ctor_set(v___x_13387_, 5, v_ref_13386_);
lean_ctor_set(v___x_13387_, 6, v_currNamespace_13376_);
lean_ctor_set(v___x_13387_, 7, v_openDecls_13377_);
lean_ctor_set(v___x_13387_, 8, v_initHeartbeats_13378_);
lean_ctor_set(v___x_13387_, 9, v_maxHeartbeats_13379_);
lean_ctor_set(v___x_13387_, 10, v_quotContext_13380_);
lean_ctor_set(v___x_13387_, 11, v_currMacroScope_13381_);
lean_ctor_set(v___x_13387_, 12, v_cancelTk_x3f_13383_);
lean_ctor_set(v___x_13387_, 13, v_inheritedTraceOptions_13385_);
lean_ctor_set_uint8(v___x_13387_, sizeof(void*)*14, v_diag_13382_);
lean_ctor_set_uint8(v___x_13387_, sizeof(void*)*14 + 1, v_suppressElabErrors_13384_);
v___x_13388_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(v_doElems_13356_, v_a_13360_, v_a_13361_, v___x_13387_, v_a_13363_);
if (lean_obj_tag(v___x_13388_) == 0)
{
lean_object* v___x_13389_; lean_object* v___x_13390_; uint8_t v___x_13391_; 
lean_dec_ref(v___x_13388_);
v___x_13389_ = lean_unsigned_to_nat(1u);
v___x_13390_ = l_Lean_Syntax_getArg(v_doReturn_13355_, v___x_13389_);
v___x_13391_ = l_Lean_Syntax_isNone(v___x_13390_);
if (v___x_13391_ == 0)
{
lean_object* v___x_13392_; lean_object* v___x_13393_; 
lean_dec_ref(v___x_13387_);
v___x_13392_ = lean_unsigned_to_nat(0u);
v___x_13393_ = l_Lean_Syntax_getArg(v___x_13390_, v___x_13392_);
lean_dec(v___x_13390_);
v_arg_13366_ = v___x_13393_;
v_ref_13367_ = v_ref_13386_;
goto v___jp_13365_;
}
else
{
lean_object* v___x_13394_; lean_object* v___x_13395_; 
lean_dec(v___x_13390_);
v___x_13394_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit), 2, 0);
v___x_13395_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_13394_, v_a_13357_, v_a_13358_, v_a_13359_, v_a_13360_, v_a_13361_, v___x_13387_, v_a_13363_);
if (lean_obj_tag(v___x_13395_) == 0)
{
lean_object* v_a_13396_; 
v_a_13396_ = lean_ctor_get(v___x_13395_, 0);
lean_inc(v_a_13396_);
lean_dec_ref(v___x_13395_);
v_arg_13366_ = v_a_13396_;
v_ref_13367_ = v_ref_13386_;
goto v___jp_13365_;
}
else
{
lean_object* v_a_13397_; lean_object* v___x_13398_; 
lean_dec(v_ref_13386_);
v_a_13397_ = lean_ctor_get(v___x_13395_, 0);
lean_inc(v_a_13397_);
lean_dec_ref(v___x_13395_);
v___x_13398_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13398_, 0, v_a_13397_);
return v___x_13398_;
}
}
}
else
{
lean_object* v_a_13399_; lean_object* v___x_13400_; 
lean_dec_ref(v___x_13387_);
lean_dec(v_ref_13386_);
v_a_13399_ = lean_ctor_get(v___x_13388_, 0);
lean_inc(v_a_13399_);
lean_dec_ref(v___x_13388_);
v___x_13400_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13400_, 0, v_a_13399_);
return v___x_13400_;
}
v___jp_13365_:
{
lean_object* v___x_13368_; lean_object* v___x_13369_; 
v___x_13368_ = l_Lean_Elab_Term_Do_mkReturn(v_ref_13367_, v_arg_13366_);
v___x_13369_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13369_, 0, v___x_13368_);
return v___x_13369_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode___boxed(lean_object* v_doReturn_13401_, lean_object* v_doElems_13402_, lean_object* v_a_13403_, lean_object* v_a_13404_, lean_object* v_a_13405_, lean_object* v_a_13406_, lean_object* v_a_13407_, lean_object* v_a_13408_, lean_object* v_a_13409_, lean_object* v_a_13410_){
_start:
{
lean_object* v_res_13411_; 
v_res_13411_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode(v_doReturn_13401_, v_doElems_13402_, v_a_13403_, v_a_13404_, v_a_13405_, v_a_13406_, v_a_13407_, v_a_13408_, v_a_13409_);
lean_dec(v_a_13409_);
lean_dec_ref(v_a_13408_);
lean_dec(v_a_13407_);
lean_dec_ref(v_a_13406_);
lean_dec(v_a_13405_);
lean_dec_ref(v_a_13404_);
lean_dec_ref(v_a_13403_);
lean_dec(v_doElems_13402_);
lean_dec(v_doReturn_13401_);
return v_res_13411_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0(lean_object* v_as_13412_, size_t v_i_13413_, size_t v_stop_13414_, lean_object* v_b_13415_){
_start:
{
uint8_t v___x_13416_; 
v___x_13416_ = lean_usize_dec_eq(v_i_13413_, v_stop_13414_);
if (v___x_13416_ == 0)
{
lean_object* v___x_13417_; lean_object* v_codeBlock_13418_; lean_object* v_uvars_13419_; lean_object* v___x_13420_; size_t v___x_13421_; size_t v___x_13422_; 
v___x_13417_ = lean_array_uget_borrowed(v_as_13412_, v_i_13413_);
v_codeBlock_13418_ = lean_ctor_get(v___x_13417_, 2);
v_uvars_13419_ = lean_ctor_get(v_codeBlock_13418_, 1);
lean_inc(v_uvars_13419_);
v___x_13420_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v_b_13415_, v_uvars_13419_);
v___x_13421_ = ((size_t)1ULL);
v___x_13422_ = lean_usize_add(v_i_13413_, v___x_13421_);
v_i_13413_ = v___x_13422_;
v_b_13415_ = v___x_13420_;
goto _start;
}
else
{
return v_b_13415_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0___boxed(lean_object* v_as_13424_, lean_object* v_i_13425_, lean_object* v_stop_13426_, lean_object* v_b_13427_){
_start:
{
size_t v_i_boxed_13428_; size_t v_stop_boxed_13429_; lean_object* v_res_13430_; 
v_i_boxed_13428_ = lean_unbox_usize(v_i_13425_);
lean_dec(v_i_13425_);
v_stop_boxed_13429_ = lean_unbox_usize(v_stop_13426_);
lean_dec(v_stop_13426_);
v_res_13430_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0(v_as_13424_, v_i_boxed_13428_, v_stop_boxed_13429_, v_b_13427_);
lean_dec_ref(v_as_13424_);
return v_res_13430_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars(lean_object* v_tryCode_13431_, lean_object* v_catches_13432_, lean_object* v_finallyCode_x3f_13433_){
_start:
{
lean_object* v___y_13435_; lean_object* v_uvars_13439_; lean_object* v___x_13440_; lean_object* v___x_13441_; uint8_t v___x_13442_; 
v_uvars_13439_ = lean_ctor_get(v_tryCode_13431_, 1);
lean_inc(v_uvars_13439_);
lean_dec_ref(v_tryCode_13431_);
v___x_13440_ = lean_unsigned_to_nat(0u);
v___x_13441_ = lean_array_get_size(v_catches_13432_);
v___x_13442_ = lean_nat_dec_lt(v___x_13440_, v___x_13441_);
if (v___x_13442_ == 0)
{
v___y_13435_ = v_uvars_13439_;
goto v___jp_13434_;
}
else
{
uint8_t v___x_13443_; 
v___x_13443_ = lean_nat_dec_le(v___x_13441_, v___x_13441_);
if (v___x_13443_ == 0)
{
if (v___x_13442_ == 0)
{
v___y_13435_ = v_uvars_13439_;
goto v___jp_13434_;
}
else
{
size_t v___x_13444_; size_t v___x_13445_; lean_object* v___x_13446_; 
v___x_13444_ = ((size_t)0ULL);
v___x_13445_ = lean_usize_of_nat(v___x_13441_);
v___x_13446_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0(v_catches_13432_, v___x_13444_, v___x_13445_, v_uvars_13439_);
v___y_13435_ = v___x_13446_;
goto v___jp_13434_;
}
}
else
{
size_t v___x_13447_; size_t v___x_13448_; lean_object* v___x_13449_; 
v___x_13447_ = ((size_t)0ULL);
v___x_13448_ = lean_usize_of_nat(v___x_13441_);
v___x_13449_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars_spec__0(v_catches_13432_, v___x_13447_, v___x_13448_, v_uvars_13439_);
v___y_13435_ = v___x_13449_;
goto v___jp_13434_;
}
}
v___jp_13434_:
{
if (lean_obj_tag(v_finallyCode_x3f_13433_) == 0)
{
return v___y_13435_;
}
else
{
lean_object* v_val_13436_; lean_object* v_uvars_13437_; lean_object* v___x_13438_; 
v_val_13436_ = lean_ctor_get(v_finallyCode_x3f_13433_, 0);
lean_inc(v_val_13436_);
lean_dec_ref(v_finallyCode_x3f_13433_);
v_uvars_13437_ = lean_ctor_get(v_val_13436_, 1);
lean_inc(v_uvars_13437_);
lean_dec(v_val_13436_);
v___x_13438_ = l_Std_DTreeMap_Internal_Impl_foldlM___at___00Std_DTreeMap_Internal_Impl_foldl___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_union_spec__0_spec__0(v___y_13435_, v_uvars_13437_);
return v___x_13438_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars___boxed(lean_object* v_tryCode_13450_, lean_object* v_catches_13451_, lean_object* v_finallyCode_x3f_13452_){
_start:
{
lean_object* v_res_13453_; 
v_res_13453_ = l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars(v_tryCode_13450_, v_catches_13451_, v_finallyCode_x3f_13452_);
lean_dec_ref(v_catches_13451_);
return v_res_13453_;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0(lean_object* v_p_13454_, lean_object* v_as_13455_, size_t v_i_13456_, size_t v_stop_13457_){
_start:
{
uint8_t v___x_13458_; 
v___x_13458_ = lean_usize_dec_eq(v_i_13456_, v_stop_13457_);
if (v___x_13458_ == 0)
{
lean_object* v___x_13459_; lean_object* v_codeBlock_13460_; lean_object* v_code_13461_; lean_object* v___x_13462_; uint8_t v___x_13463_; 
v___x_13459_ = lean_array_uget_borrowed(v_as_13455_, v_i_13456_);
v_codeBlock_13460_ = lean_ctor_get(v___x_13459_, 2);
v_code_13461_ = lean_ctor_get(v_codeBlock_13460_, 0);
lean_inc_ref(v_p_13454_);
lean_inc_ref(v_code_13461_);
v___x_13462_ = lean_apply_1(v_p_13454_, v_code_13461_);
v___x_13463_ = lean_unbox(v___x_13462_);
if (v___x_13463_ == 0)
{
size_t v___x_13464_; size_t v___x_13465_; 
v___x_13464_ = ((size_t)1ULL);
v___x_13465_ = lean_usize_add(v_i_13456_, v___x_13464_);
v_i_13456_ = v___x_13465_;
goto _start;
}
else
{
uint8_t v___x_13467_; 
lean_dec_ref(v_p_13454_);
v___x_13467_ = lean_unbox(v___x_13462_);
return v___x_13467_;
}
}
else
{
uint8_t v___x_13468_; 
lean_dec_ref(v_p_13454_);
v___x_13468_ = 0;
return v___x_13468_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0___boxed(lean_object* v_p_13469_, lean_object* v_as_13470_, lean_object* v_i_13471_, lean_object* v_stop_13472_){
_start:
{
size_t v_i_boxed_13473_; size_t v_stop_boxed_13474_; uint8_t v_res_13475_; lean_object* v_r_13476_; 
v_i_boxed_13473_ = lean_unbox_usize(v_i_13471_);
lean_dec(v_i_13471_);
v_stop_boxed_13474_ = lean_unbox_usize(v_stop_13472_);
lean_dec(v_stop_13472_);
v_res_13475_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0(v_p_13469_, v_as_13470_, v_i_boxed_13473_, v_stop_boxed_13474_);
lean_dec_ref(v_as_13470_);
v_r_13476_ = lean_box(v_res_13475_);
return v_r_13476_;
}
}
LEAN_EXPORT uint8_t l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(lean_object* v_tryCode_13477_, lean_object* v_catches_13478_, lean_object* v_finallyCode_x3f_13479_, lean_object* v_p_13480_){
_start:
{
lean_object* v_code_13481_; lean_object* v___x_13482_; uint8_t v___x_13489_; 
v_code_13481_ = lean_ctor_get(v_tryCode_13477_, 0);
lean_inc_ref(v_code_13481_);
lean_dec_ref(v_tryCode_13477_);
lean_inc_ref(v_p_13480_);
v___x_13482_ = lean_apply_1(v_p_13480_, v_code_13481_);
v___x_13489_ = lean_unbox(v___x_13482_);
if (v___x_13489_ == 0)
{
lean_object* v___x_13490_; lean_object* v___x_13491_; uint8_t v___x_13492_; 
v___x_13490_ = lean_unsigned_to_nat(0u);
v___x_13491_ = lean_array_get_size(v_catches_13478_);
v___x_13492_ = lean_nat_dec_lt(v___x_13490_, v___x_13491_);
if (v___x_13492_ == 0)
{
goto v___jp_13483_;
}
else
{
if (v___x_13492_ == 0)
{
goto v___jp_13483_;
}
else
{
size_t v___x_13493_; size_t v___x_13494_; uint8_t v___x_13495_; 
v___x_13493_ = ((size_t)0ULL);
v___x_13494_ = lean_usize_of_nat(v___x_13491_);
lean_inc_ref(v_p_13480_);
v___x_13495_ = l___private_Init_Data_Array_Basic_0__Array_anyMUnsafe_any___at___00Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred_spec__0(v_p_13480_, v_catches_13478_, v___x_13493_, v___x_13494_);
if (v___x_13495_ == 0)
{
goto v___jp_13483_;
}
else
{
lean_dec_ref(v_p_13480_);
lean_dec(v_finallyCode_x3f_13479_);
return v___x_13495_;
}
}
}
}
else
{
uint8_t v___x_13496_; 
lean_dec_ref(v_p_13480_);
lean_dec(v_finallyCode_x3f_13479_);
v___x_13496_ = lean_unbox(v___x_13482_);
return v___x_13496_;
}
v___jp_13483_:
{
if (lean_obj_tag(v_finallyCode_x3f_13479_) == 0)
{
uint8_t v___x_13484_; 
lean_dec_ref(v_p_13480_);
v___x_13484_ = lean_unbox(v___x_13482_);
return v___x_13484_;
}
else
{
lean_object* v_val_13485_; lean_object* v_code_13486_; lean_object* v___x_13487_; uint8_t v___x_13488_; 
v_val_13485_ = lean_ctor_get(v_finallyCode_x3f_13479_, 0);
lean_inc(v_val_13485_);
lean_dec_ref(v_finallyCode_x3f_13479_);
v_code_13486_ = lean_ctor_get(v_val_13485_, 0);
lean_inc_ref(v_code_13486_);
lean_dec(v_val_13485_);
v___x_13487_ = lean_apply_1(v_p_13480_, v_code_13486_);
v___x_13488_ = lean_unbox(v___x_13487_);
return v___x_13488_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred___boxed(lean_object* v_tryCode_13497_, lean_object* v_catches_13498_, lean_object* v_finallyCode_x3f_13499_, lean_object* v_p_13500_){
_start:
{
uint8_t v_res_13501_; lean_object* v_r_13502_; 
v_res_13501_ = l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(v_tryCode_13497_, v_catches_13498_, v_finallyCode_x3f_13499_, v_p_13500_);
lean_dec_ref(v_catches_13498_);
v_r_13502_ = lean_box(v_res_13501_);
return v_r_13502_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1(void){
_start:
{
lean_object* v___x_13504_; lean_object* v___x_13505_; 
v___x_13504_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__0));
v___x_13505_ = l_String_toRawSubstring_x27(v___x_13504_);
return v___x_13505_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1(uint8_t v___x_13508_, lean_object* v_optType_13509_, lean_object* v___x_13510_, lean_object* v___x_13511_, uint8_t v___x_13512_, lean_object* v___x_13513_, lean_object* v___x_13514_, lean_object* v___x_13515_, lean_object* v___x_13516_, lean_object* v_doElem_13517_, lean_object* v_pattern_13518_, lean_object* v___f_13519_, lean_object* v_a_13520_, lean_object* v_a_13521_, lean_object* v_a_13522_, lean_object* v_a_13523_, lean_object* v_a_13524_, lean_object* v___y_13525_, lean_object* v___y_13526_){
_start:
{
if (v___x_13508_ == 0)
{
lean_object* v_ref_13528_; lean_object* v_quotContext_13529_; lean_object* v_currMacroScope_13530_; lean_object* v___x_13531_; lean_object* v___x_13532_; lean_object* v___x_13533_; lean_object* v___x_13534_; lean_object* v___x_13535_; lean_object* v___x_13536_; lean_object* v___x_13537_; lean_object* v___x_13538_; lean_object* v___x_13539_; lean_object* v___x_13540_; lean_object* v___x_13541_; lean_object* v___x_13542_; lean_object* v___x_13543_; lean_object* v___x_13544_; lean_object* v___x_13545_; lean_object* v___x_13546_; lean_object* v___x_13547_; lean_object* v___x_13548_; lean_object* v___x_13549_; lean_object* v___x_13550_; lean_object* v___x_13551_; lean_object* v___x_13552_; lean_object* v___x_13553_; lean_object* v___x_13554_; lean_object* v___x_13555_; lean_object* v___x_13556_; lean_object* v___x_13557_; lean_object* v___x_13558_; lean_object* v___x_13559_; lean_object* v___x_13560_; lean_object* v___x_13561_; lean_object* v___x_13562_; lean_object* v___x_13563_; lean_object* v___x_13564_; lean_object* v___x_13565_; lean_object* v___x_13566_; lean_object* v___x_13567_; lean_object* v___x_13568_; lean_object* v___x_13569_; lean_object* v___x_13570_; lean_object* v___x_13571_; lean_object* v___x_13572_; lean_object* v___x_13573_; lean_object* v___x_13574_; lean_object* v___x_13575_; lean_object* v___x_13576_; lean_object* v___x_13577_; lean_object* v___x_13578_; lean_object* v___x_13579_; 
v_ref_13528_ = lean_ctor_get(v___y_13525_, 5);
v_quotContext_13529_ = lean_ctor_get(v___y_13525_, 10);
v_currMacroScope_13530_ = lean_ctor_get(v___y_13525_, 11);
v___x_13531_ = l_Lean_Syntax_getArg(v_optType_13509_, v___x_13510_);
v___x_13532_ = l_Lean_Syntax_getArg(v___x_13531_, v___x_13511_);
lean_dec(v___x_13531_);
v___x_13533_ = l_Lean_SourceInfo_fromRef(v_ref_13528_, v___x_13512_);
v___x_13534_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13535_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13534_);
lean_inc(v___x_13533_);
v___x_13536_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13536_, 0, v___x_13533_);
lean_ctor_set(v___x_13536_, 1, v___x_13534_);
v___x_13537_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13538_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13537_);
v___x_13539_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13540_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13541_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13540_);
v___x_13542_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13543_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13542_);
v___x_13544_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_13533_);
v___x_13545_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13545_, 0, v___x_13533_);
lean_ctor_set(v___x_13545_, 1, v___x_13544_);
v___x_13546_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13533_);
v___x_13547_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13547_, 0, v___x_13533_);
lean_ctor_set(v___x_13547_, 1, v___x_13539_);
lean_ctor_set(v___x_13547_, 2, v___x_13546_);
v___x_13548_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_13549_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_13530_);
lean_inc(v_quotContext_13529_);
v___x_13550_ = l_Lean_addMacroScope(v_quotContext_13529_, v___x_13549_, v_currMacroScope_13530_);
v___x_13551_ = lean_box(0);
lean_inc(v___x_13533_);
v___x_13552_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13552_, 0, v___x_13533_);
lean_ctor_set(v___x_13552_, 1, v___x_13548_);
lean_ctor_set(v___x_13552_, 2, v___x_13550_);
lean_ctor_set(v___x_13552_, 3, v___x_13551_);
v___x_13553_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13554_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13553_);
v___x_13555_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_13533_);
v___x_13556_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13556_, 0, v___x_13533_);
lean_ctor_set(v___x_13556_, 1, v___x_13555_);
lean_inc(v___x_13533_);
v___x_13557_ = l_Lean_Syntax_node2(v___x_13533_, v___x_13554_, v___x_13556_, v___x_13532_);
lean_inc(v___x_13533_);
v___x_13558_ = l_Lean_Syntax_node1(v___x_13533_, v___x_13539_, v___x_13557_);
v___x_13559_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_13533_);
v___x_13560_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13560_, 0, v___x_13533_);
lean_ctor_set(v___x_13560_, 1, v___x_13559_);
lean_inc_ref(v___x_13552_);
lean_inc(v___x_13533_);
v___x_13561_ = l_Lean_Syntax_node4(v___x_13533_, v___x_13516_, v___x_13552_, v___x_13558_, v___x_13560_, v_doElem_13517_);
lean_inc_ref(v___x_13547_);
lean_inc(v___x_13533_);
v___x_13562_ = l_Lean_Syntax_node3(v___x_13533_, v___x_13543_, v___x_13545_, v___x_13547_, v___x_13561_);
v___x_13563_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_13533_);
v___x_13564_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13564_, 0, v___x_13533_);
lean_ctor_set(v___x_13564_, 1, v___x_13563_);
lean_inc(v___x_13533_);
v___x_13565_ = l_Lean_Syntax_node1(v___x_13533_, v___x_13539_, v___x_13564_);
lean_inc(v___x_13541_);
lean_inc(v___x_13533_);
v___x_13566_ = l_Lean_Syntax_node2(v___x_13533_, v___x_13541_, v___x_13562_, v___x_13565_);
v___x_13567_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13568_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13567_);
v___x_13569_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_13570_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13569_);
v___x_13571_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_13533_);
v___x_13572_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13572_, 0, v___x_13533_);
lean_ctor_set(v___x_13572_, 1, v___x_13571_);
lean_inc_ref_n(v___x_13547_, 2);
lean_inc(v___x_13533_);
v___x_13573_ = l_Lean_Syntax_node5(v___x_13533_, v___x_13570_, v_pattern_13518_, v___x_13547_, v___x_13547_, v___x_13572_, v___x_13552_);
lean_inc(v___x_13533_);
v___x_13574_ = l_Lean_Syntax_node1(v___x_13533_, v___x_13568_, v___x_13573_);
lean_inc(v___x_13533_);
v___x_13575_ = l_Lean_Syntax_node2(v___x_13533_, v___x_13541_, v___x_13574_, v___x_13547_);
lean_inc(v___x_13533_);
v___x_13576_ = l_Lean_Syntax_node2(v___x_13533_, v___x_13539_, v___x_13566_, v___x_13575_);
lean_inc(v___x_13533_);
v___x_13577_ = l_Lean_Syntax_node1(v___x_13533_, v___x_13538_, v___x_13576_);
v___x_13578_ = l_Lean_Syntax_node2(v___x_13533_, v___x_13535_, v___x_13536_, v___x_13577_);
v___x_13579_ = lean_apply_9(v___f_13519_, v___x_13578_, v_a_13520_, v_a_13521_, v_a_13522_, v_a_13523_, v_a_13524_, v___y_13525_, v___y_13526_, lean_box(0));
return v___x_13579_;
}
else
{
lean_object* v_ref_13580_; lean_object* v_quotContext_13581_; lean_object* v_currMacroScope_13582_; lean_object* v___x_13583_; lean_object* v___x_13584_; lean_object* v___x_13585_; lean_object* v___x_13586_; lean_object* v___x_13587_; lean_object* v___x_13588_; lean_object* v___x_13589_; lean_object* v___x_13590_; lean_object* v___x_13591_; lean_object* v___x_13592_; lean_object* v___x_13593_; lean_object* v___x_13594_; lean_object* v___x_13595_; lean_object* v___x_13596_; lean_object* v___x_13597_; lean_object* v___x_13598_; lean_object* v___x_13599_; lean_object* v___x_13600_; lean_object* v___x_13601_; lean_object* v___x_13602_; lean_object* v___x_13603_; lean_object* v___x_13604_; lean_object* v___x_13605_; lean_object* v___x_13606_; lean_object* v___x_13607_; lean_object* v___x_13608_; lean_object* v___x_13609_; lean_object* v___x_13610_; lean_object* v___x_13611_; lean_object* v___x_13612_; lean_object* v___x_13613_; lean_object* v___x_13614_; lean_object* v___x_13615_; lean_object* v___x_13616_; lean_object* v___x_13617_; lean_object* v___x_13618_; lean_object* v___x_13619_; lean_object* v___x_13620_; lean_object* v___x_13621_; lean_object* v___x_13622_; lean_object* v___x_13623_; 
v_ref_13580_ = lean_ctor_get(v___y_13525_, 5);
v_quotContext_13581_ = lean_ctor_get(v___y_13525_, 10);
v_currMacroScope_13582_ = lean_ctor_get(v___y_13525_, 11);
v___x_13583_ = l_Lean_SourceInfo_fromRef(v_ref_13580_, v___x_13512_);
v___x_13584_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13585_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13584_);
lean_inc(v___x_13583_);
v___x_13586_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13586_, 0, v___x_13583_);
lean_ctor_set(v___x_13586_, 1, v___x_13584_);
v___x_13587_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13588_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13587_);
v___x_13589_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13590_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13591_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13590_);
v___x_13592_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13593_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13592_);
v___x_13594_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_13583_);
v___x_13595_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13595_, 0, v___x_13583_);
lean_ctor_set(v___x_13595_, 1, v___x_13594_);
v___x_13596_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13583_);
v___x_13597_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13597_, 0, v___x_13583_);
lean_ctor_set(v___x_13597_, 1, v___x_13589_);
lean_ctor_set(v___x_13597_, 2, v___x_13596_);
v___x_13598_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_13599_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_13582_);
lean_inc(v_quotContext_13581_);
v___x_13600_ = l_Lean_addMacroScope(v_quotContext_13581_, v___x_13599_, v_currMacroScope_13582_);
v___x_13601_ = lean_box(0);
lean_inc(v___x_13583_);
v___x_13602_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13602_, 0, v___x_13583_);
lean_ctor_set(v___x_13602_, 1, v___x_13598_);
lean_ctor_set(v___x_13602_, 2, v___x_13600_);
lean_ctor_set(v___x_13602_, 3, v___x_13601_);
v___x_13603_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_13583_);
v___x_13604_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13604_, 0, v___x_13583_);
lean_ctor_set(v___x_13604_, 1, v___x_13603_);
lean_inc_ref(v___x_13597_);
lean_inc_ref(v___x_13602_);
lean_inc(v___x_13583_);
v___x_13605_ = l_Lean_Syntax_node4(v___x_13583_, v___x_13516_, v___x_13602_, v___x_13597_, v___x_13604_, v_doElem_13517_);
lean_inc_ref(v___x_13597_);
lean_inc(v___x_13583_);
v___x_13606_ = l_Lean_Syntax_node3(v___x_13583_, v___x_13593_, v___x_13595_, v___x_13597_, v___x_13605_);
v___x_13607_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_13583_);
v___x_13608_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13608_, 0, v___x_13583_);
lean_ctor_set(v___x_13608_, 1, v___x_13607_);
lean_inc(v___x_13583_);
v___x_13609_ = l_Lean_Syntax_node1(v___x_13583_, v___x_13589_, v___x_13608_);
lean_inc(v___x_13591_);
lean_inc(v___x_13583_);
v___x_13610_ = l_Lean_Syntax_node2(v___x_13583_, v___x_13591_, v___x_13606_, v___x_13609_);
v___x_13611_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__0));
lean_inc_ref(v___x_13515_);
lean_inc_ref(v___x_13514_);
lean_inc_ref(v___x_13513_);
v___x_13612_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13611_);
v___x_13613_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_13614_ = l_Lean_Name_mkStr4(v___x_13513_, v___x_13514_, v___x_13515_, v___x_13613_);
v___x_13615_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_13583_);
v___x_13616_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13616_, 0, v___x_13583_);
lean_ctor_set(v___x_13616_, 1, v___x_13615_);
lean_inc_ref_n(v___x_13597_, 2);
lean_inc(v___x_13583_);
v___x_13617_ = l_Lean_Syntax_node5(v___x_13583_, v___x_13614_, v_pattern_13518_, v___x_13597_, v___x_13597_, v___x_13616_, v___x_13602_);
lean_inc(v___x_13583_);
v___x_13618_ = l_Lean_Syntax_node1(v___x_13583_, v___x_13612_, v___x_13617_);
lean_inc(v___x_13583_);
v___x_13619_ = l_Lean_Syntax_node2(v___x_13583_, v___x_13591_, v___x_13618_, v___x_13597_);
lean_inc(v___x_13583_);
v___x_13620_ = l_Lean_Syntax_node2(v___x_13583_, v___x_13589_, v___x_13610_, v___x_13619_);
lean_inc(v___x_13583_);
v___x_13621_ = l_Lean_Syntax_node1(v___x_13583_, v___x_13588_, v___x_13620_);
v___x_13622_ = l_Lean_Syntax_node2(v___x_13583_, v___x_13585_, v___x_13586_, v___x_13621_);
v___x_13623_ = lean_apply_9(v___f_13519_, v___x_13622_, v_a_13520_, v_a_13521_, v_a_13522_, v_a_13523_, v_a_13524_, v___y_13525_, v___y_13526_, lean_box(0));
return v___x_13623_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___boxed(lean_object** _args){
lean_object* v___x_13624_ = _args[0];
lean_object* v_optType_13625_ = _args[1];
lean_object* v___x_13626_ = _args[2];
lean_object* v___x_13627_ = _args[3];
lean_object* v___x_13628_ = _args[4];
lean_object* v___x_13629_ = _args[5];
lean_object* v___x_13630_ = _args[6];
lean_object* v___x_13631_ = _args[7];
lean_object* v___x_13632_ = _args[8];
lean_object* v_doElem_13633_ = _args[9];
lean_object* v_pattern_13634_ = _args[10];
lean_object* v___f_13635_ = _args[11];
lean_object* v_a_13636_ = _args[12];
lean_object* v_a_13637_ = _args[13];
lean_object* v_a_13638_ = _args[14];
lean_object* v_a_13639_ = _args[15];
lean_object* v_a_13640_ = _args[16];
lean_object* v___y_13641_ = _args[17];
lean_object* v___y_13642_ = _args[18];
lean_object* v___y_13643_ = _args[19];
_start:
{
uint8_t v___x_269062__boxed_13644_; uint8_t v___x_269065__boxed_13645_; lean_object* v_res_13646_; 
v___x_269062__boxed_13644_ = lean_unbox(v___x_13624_);
v___x_269065__boxed_13645_ = lean_unbox(v___x_13628_);
v_res_13646_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1(v___x_269062__boxed_13644_, v_optType_13625_, v___x_13626_, v___x_13627_, v___x_269065__boxed_13645_, v___x_13629_, v___x_13630_, v___x_13631_, v___x_13632_, v_doElem_13633_, v_pattern_13634_, v___f_13635_, v_a_13636_, v_a_13637_, v_a_13638_, v_a_13639_, v_a_13640_, v___y_13641_, v___y_13642_);
lean_dec(v___x_13627_);
lean_dec(v___x_13626_);
lean_dec(v_optType_13625_);
return v_res_13646_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(lean_object* v_as_13647_, size_t v_i_13648_, size_t v_stop_13649_, lean_object* v_b_13650_){
_start:
{
uint8_t v___x_13652_; 
v___x_13652_ = lean_usize_dec_eq(v_i_13648_, v_stop_13649_);
if (v___x_13652_ == 0)
{
lean_object* v___x_13653_; lean_object* v___x_13654_; lean_object* v___x_13655_; size_t v___x_13656_; size_t v___x_13657_; 
v___x_13653_ = lean_array_uget_borrowed(v_as_13647_, v_i_13648_);
lean_inc(v___x_13653_);
v___x_13654_ = l_Lean_Elab_Term_expandMatchAlt(v___x_13653_);
v___x_13655_ = l_Array_append___redArg(v_b_13650_, v___x_13654_);
lean_dec_ref(v___x_13654_);
v___x_13656_ = ((size_t)1ULL);
v___x_13657_ = lean_usize_add(v_i_13648_, v___x_13656_);
v_i_13648_ = v___x_13657_;
v_b_13650_ = v___x_13655_;
goto _start;
}
else
{
lean_object* v___x_13659_; 
v___x_13659_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13659_, 0, v_b_13650_);
return v___x_13659_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg___boxed(lean_object* v_as_13660_, lean_object* v_i_13661_, lean_object* v_stop_13662_, lean_object* v_b_13663_, lean_object* v___y_13664_){
_start:
{
size_t v_i_boxed_13665_; size_t v_stop_boxed_13666_; lean_object* v_res_13667_; 
v_i_boxed_13665_ = lean_unbox_usize(v_i_13661_);
lean_dec(v_i_13661_);
v_stop_boxed_13666_ = lean_unbox_usize(v_stop_13662_);
lean_dec(v_stop_13662_);
v_res_13667_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(v_as_13660_, v_i_boxed_13665_, v_stop_boxed_13666_, v_b_13663_);
lean_dec_ref(v_as_13660_);
return v_res_13667_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(lean_object* v_ref_13668_, lean_object* v_term_13669_, lean_object* v___y_13670_){
_start:
{
lean_object* v_ref_13672_; lean_object* v_ref_13673_; uint8_t v___x_13674_; lean_object* v___x_13675_; lean_object* v___x_13676_; lean_object* v___x_13677_; lean_object* v___x_13678_; lean_object* v___x_13679_; lean_object* v___x_13680_; 
v_ref_13672_ = lean_ctor_get(v___y_13670_, 5);
v_ref_13673_ = l_Lean_replaceRef(v_term_13669_, v_ref_13672_);
v___x_13674_ = 0;
v___x_13675_ = l_Lean_SourceInfo_fromRef(v_ref_13673_, v___x_13674_);
lean_dec(v_ref_13673_);
v___x_13676_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__1));
v___x_13677_ = ((lean_object*)(l_Lean_Elab_Term_Do_annotate___redArg___lam__1___closed__2));
lean_inc(v___x_13675_);
v___x_13678_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13678_, 0, v___x_13675_);
lean_ctor_set(v___x_13678_, 1, v___x_13677_);
v___x_13679_ = l_Lean_Syntax_node3(v___x_13675_, v___x_13676_, v___x_13678_, v_ref_13668_, v_term_13669_);
v___x_13680_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13680_, 0, v___x_13679_);
return v___x_13680_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg___boxed(lean_object* v_ref_13681_, lean_object* v_term_13682_, lean_object* v___y_13683_, lean_object* v___y_13684_){
_start:
{
lean_object* v_res_13685_; 
v_res_13685_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_ref_13681_, v_term_13682_, v___y_13683_);
lean_dec_ref(v___y_13683_);
return v_res_13685_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1(void){
_start:
{
lean_object* v___x_13687_; lean_object* v___x_13688_; 
v___x_13687_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__0));
v___x_13688_ = l_String_toRawSubstring_x27(v___x_13687_);
return v___x_13688_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10(void){
_start:
{
lean_object* v___x_13710_; lean_object* v___x_13711_; 
v___x_13710_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__9));
v___x_13711_ = l_String_toRawSubstring_x27(v___x_13710_);
return v___x_13711_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5(lean_object* v___x_13723_, lean_object* v___y_13724_, lean_object* v___x_13725_, uint8_t v___x_13726_, uint8_t v___x_13727_, uint8_t v___x_13728_, lean_object* v_doTry_13729_, lean_object* v_as_13730_, size_t v_i_13731_, size_t v_stop_13732_, lean_object* v_b_13733_, lean_object* v___y_13734_, lean_object* v___y_13735_, lean_object* v___y_13736_, lean_object* v___y_13737_, lean_object* v___y_13738_, lean_object* v___y_13739_, lean_object* v___y_13740_){
_start:
{
lean_object* v___y_13743_; uint8_t v___x_13748_; 
v___x_13748_ = lean_usize_dec_eq(v_i_13731_, v_stop_13732_);
if (v___x_13748_ == 0)
{
lean_object* v___x_13749_; lean_object* v_x_13750_; lean_object* v_optType_13751_; lean_object* v_codeBlock_13752_; lean_object* v___x_13753_; 
v___x_13749_ = lean_array_uget_borrowed(v_as_13730_, v_i_13731_);
v_x_13750_ = lean_ctor_get(v___x_13749_, 0);
v_optType_13751_ = lean_ctor_get(v___x_13749_, 1);
v_codeBlock_13752_ = lean_ctor_get(v___x_13749_, 2);
lean_inc(v___y_13740_);
lean_inc_ref(v___y_13739_);
lean_inc(v___y_13738_);
lean_inc_ref(v___y_13737_);
lean_inc(v___y_13736_);
lean_inc_ref(v___y_13735_);
lean_inc(v___x_13723_);
lean_inc_ref(v_codeBlock_13752_);
v___x_13753_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_codeBlock_13752_, v___x_13723_, v___y_13735_, v___y_13736_, v___y_13737_, v___y_13738_, v___y_13739_, v___y_13740_);
if (lean_obj_tag(v___x_13753_) == 0)
{
lean_object* v_a_13754_; lean_object* v_code_13755_; lean_object* v_m_13756_; lean_object* v_returnType_13757_; lean_object* v___x_13758_; lean_object* v___x_13759_; lean_object* v___x_13760_; lean_object* v___x_13761_; lean_object* v___x_13762_; 
v_a_13754_ = lean_ctor_get(v___x_13753_, 0);
lean_inc(v_a_13754_);
lean_dec_ref(v___x_13753_);
v_code_13755_ = lean_ctor_get(v_a_13754_, 0);
lean_inc_ref(v_code_13755_);
lean_dec(v_a_13754_);
v_m_13756_ = lean_ctor_get(v___y_13724_, 1);
v_returnType_13757_ = lean_ctor_get(v___y_13724_, 2);
v___x_13758_ = lean_box(v___x_13726_);
v___x_13759_ = lean_box(v___x_13727_);
v___x_13760_ = lean_box(v___x_13728_);
lean_inc_ref(v___x_13725_);
lean_inc(v_returnType_13757_);
lean_inc(v_m_13756_);
v___x_13761_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm___boxed), 9, 7);
lean_closure_set(v___x_13761_, 0, v_code_13755_);
lean_closure_set(v___x_13761_, 1, v_m_13756_);
lean_closure_set(v___x_13761_, 2, v_returnType_13757_);
lean_closure_set(v___x_13761_, 3, v___x_13725_);
lean_closure_set(v___x_13761_, 4, v___x_13758_);
lean_closure_set(v___x_13761_, 5, v___x_13759_);
lean_closure_set(v___x_13761_, 6, v___x_13760_);
lean_inc_ref(v___y_13739_);
v___x_13762_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_13761_, v___y_13734_, v___y_13735_, v___y_13736_, v___y_13737_, v___y_13738_, v___y_13739_, v___y_13740_);
if (lean_obj_tag(v___x_13762_) == 0)
{
lean_object* v_a_13763_; uint8_t v___x_13764_; 
v_a_13763_ = lean_ctor_get(v___x_13762_, 0);
lean_inc(v_a_13763_);
lean_dec_ref(v___x_13762_);
v___x_13764_ = l_Lean_Syntax_isNone(v_optType_13751_);
if (v___x_13764_ == 0)
{
lean_object* v_ref_13765_; lean_object* v_quotContext_13766_; lean_object* v_currMacroScope_13767_; lean_object* v___x_13768_; lean_object* v___x_13769_; lean_object* v___x_13770_; lean_object* v___x_13771_; lean_object* v___x_13772_; lean_object* v___x_13773_; lean_object* v___x_13774_; lean_object* v___x_13775_; lean_object* v___x_13776_; lean_object* v___x_13777_; lean_object* v___x_13778_; lean_object* v___x_13779_; lean_object* v___x_13780_; lean_object* v___x_13781_; lean_object* v___x_13782_; lean_object* v___x_13783_; lean_object* v___x_13784_; lean_object* v___x_13785_; lean_object* v___x_13786_; lean_object* v___x_13787_; lean_object* v___x_13788_; lean_object* v___x_13789_; lean_object* v___x_13790_; lean_object* v___x_13791_; lean_object* v___x_13792_; lean_object* v___x_13793_; lean_object* v___x_13794_; lean_object* v___x_13795_; lean_object* v___x_13796_; lean_object* v___x_13797_; lean_object* v___x_13798_; lean_object* v___x_13799_; lean_object* v___x_13800_; lean_object* v___x_13801_; lean_object* v___x_13802_; lean_object* v___x_13803_; lean_object* v___x_13804_; lean_object* v___x_13805_; lean_object* v___x_13806_; 
v_ref_13765_ = lean_ctor_get(v___y_13739_, 5);
v_quotContext_13766_ = lean_ctor_get(v___y_13739_, 10);
v_currMacroScope_13767_ = lean_ctor_get(v___y_13739_, 11);
v___x_13768_ = lean_unsigned_to_nat(1u);
v___x_13769_ = l_Lean_Syntax_getArg(v_optType_13751_, v___x_13768_);
v___x_13770_ = l_Lean_SourceInfo_fromRef(v_ref_13765_, v___x_13764_);
v___x_13771_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_13772_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1);
v___x_13773_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2));
lean_inc(v_currMacroScope_13767_);
lean_inc(v_quotContext_13766_);
v___x_13774_ = l_Lean_addMacroScope(v_quotContext_13766_, v___x_13773_, v_currMacroScope_13767_);
v___x_13775_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__4));
lean_inc(v___x_13770_);
v___x_13776_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13776_, 0, v___x_13770_);
lean_ctor_set(v___x_13776_, 1, v___x_13772_);
lean_ctor_set(v___x_13776_, 2, v___x_13774_);
lean_ctor_set(v___x_13776_, 3, v___x_13775_);
v___x_13777_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13778_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_13779_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_13780_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_13770_);
v___x_13781_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13781_, 0, v___x_13770_);
lean_ctor_set(v___x_13781_, 1, v___x_13780_);
v___x_13782_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_13783_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_13784_ = lean_box(0);
lean_inc(v_currMacroScope_13767_);
lean_inc(v_quotContext_13766_);
v___x_13785_ = l_Lean_addMacroScope(v_quotContext_13766_, v___x_13784_, v_currMacroScope_13767_);
v___x_13786_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8));
lean_inc(v___x_13770_);
v___x_13787_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13787_, 0, v___x_13770_);
lean_ctor_set(v___x_13787_, 1, v___x_13783_);
lean_ctor_set(v___x_13787_, 2, v___x_13785_);
lean_ctor_set(v___x_13787_, 3, v___x_13786_);
lean_inc(v___x_13770_);
v___x_13788_ = l_Lean_Syntax_node1(v___x_13770_, v___x_13782_, v___x_13787_);
lean_inc(v___x_13770_);
v___x_13789_ = l_Lean_Syntax_node2(v___x_13770_, v___x_13779_, v___x_13781_, v___x_13788_);
v___x_13790_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_13791_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_13770_);
v___x_13792_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13792_, 0, v___x_13770_);
lean_ctor_set(v___x_13792_, 1, v___x_13790_);
v___x_13793_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_x_13750_);
lean_inc(v___x_13770_);
v___x_13794_ = l_Lean_Syntax_node1(v___x_13770_, v___x_13777_, v_x_13750_);
v___x_13795_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13770_);
v___x_13796_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13796_, 0, v___x_13770_);
lean_ctor_set(v___x_13796_, 1, v___x_13777_);
lean_ctor_set(v___x_13796_, 2, v___x_13795_);
v___x_13797_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_13770_);
v___x_13798_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13798_, 0, v___x_13770_);
lean_ctor_set(v___x_13798_, 1, v___x_13797_);
lean_inc(v___x_13770_);
v___x_13799_ = l_Lean_Syntax_node4(v___x_13770_, v___x_13793_, v___x_13794_, v___x_13796_, v___x_13798_, v_a_13763_);
lean_inc(v___x_13770_);
v___x_13800_ = l_Lean_Syntax_node2(v___x_13770_, v___x_13791_, v___x_13792_, v___x_13799_);
v___x_13801_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_13770_);
v___x_13802_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13802_, 0, v___x_13770_);
lean_ctor_set(v___x_13802_, 1, v___x_13801_);
lean_inc(v___x_13770_);
v___x_13803_ = l_Lean_Syntax_node3(v___x_13770_, v___x_13778_, v___x_13789_, v___x_13800_, v___x_13802_);
lean_inc(v___x_13770_);
v___x_13804_ = l_Lean_Syntax_node3(v___x_13770_, v___x_13777_, v___x_13769_, v_b_13733_, v___x_13803_);
v___x_13805_ = l_Lean_Syntax_node2(v___x_13770_, v___x_13771_, v___x_13776_, v___x_13804_);
lean_inc(v_doTry_13729_);
v___x_13806_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doTry_13729_, v___x_13805_, v___y_13739_);
v___y_13743_ = v___x_13806_;
goto v___jp_13742_;
}
else
{
lean_object* v_ref_13807_; lean_object* v_quotContext_13808_; lean_object* v_currMacroScope_13809_; lean_object* v___x_13810_; lean_object* v___x_13811_; lean_object* v___x_13812_; lean_object* v___x_13813_; lean_object* v___x_13814_; lean_object* v___x_13815_; lean_object* v___x_13816_; lean_object* v___x_13817_; lean_object* v___x_13818_; lean_object* v___x_13819_; lean_object* v___x_13820_; lean_object* v___x_13821_; lean_object* v___x_13822_; lean_object* v___x_13823_; lean_object* v___x_13824_; lean_object* v___x_13825_; lean_object* v___x_13826_; lean_object* v___x_13827_; lean_object* v___x_13828_; lean_object* v___x_13829_; lean_object* v___x_13830_; lean_object* v___x_13831_; lean_object* v___x_13832_; lean_object* v___x_13833_; lean_object* v___x_13834_; lean_object* v___x_13835_; lean_object* v___x_13836_; lean_object* v___x_13837_; lean_object* v___x_13838_; lean_object* v___x_13839_; lean_object* v___x_13840_; lean_object* v___x_13841_; lean_object* v___x_13842_; lean_object* v___x_13843_; lean_object* v___x_13844_; lean_object* v___x_13845_; lean_object* v___x_13846_; 
v_ref_13807_ = lean_ctor_get(v___y_13739_, 5);
v_quotContext_13808_ = lean_ctor_get(v___y_13739_, 10);
v_currMacroScope_13809_ = lean_ctor_get(v___y_13739_, 11);
v___x_13810_ = l_Lean_SourceInfo_fromRef(v_ref_13807_, v___x_13748_);
v___x_13811_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_13812_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10);
v___x_13813_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13));
lean_inc(v_currMacroScope_13809_);
lean_inc(v_quotContext_13808_);
v___x_13814_ = l_Lean_addMacroScope(v_quotContext_13808_, v___x_13813_, v_currMacroScope_13809_);
v___x_13815_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__15));
lean_inc(v___x_13810_);
v___x_13816_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13816_, 0, v___x_13810_);
lean_ctor_set(v___x_13816_, 1, v___x_13812_);
lean_ctor_set(v___x_13816_, 2, v___x_13814_);
lean_ctor_set(v___x_13816_, 3, v___x_13815_);
v___x_13817_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13818_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_13819_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_13820_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_13810_);
v___x_13821_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13821_, 0, v___x_13810_);
lean_ctor_set(v___x_13821_, 1, v___x_13820_);
v___x_13822_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_13823_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_13824_ = lean_box(0);
lean_inc(v_currMacroScope_13809_);
lean_inc(v_quotContext_13808_);
v___x_13825_ = l_Lean_addMacroScope(v_quotContext_13808_, v___x_13824_, v_currMacroScope_13809_);
v___x_13826_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8));
lean_inc(v___x_13810_);
v___x_13827_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13827_, 0, v___x_13810_);
lean_ctor_set(v___x_13827_, 1, v___x_13823_);
lean_ctor_set(v___x_13827_, 2, v___x_13825_);
lean_ctor_set(v___x_13827_, 3, v___x_13826_);
lean_inc(v___x_13810_);
v___x_13828_ = l_Lean_Syntax_node1(v___x_13810_, v___x_13822_, v___x_13827_);
lean_inc(v___x_13810_);
v___x_13829_ = l_Lean_Syntax_node2(v___x_13810_, v___x_13819_, v___x_13821_, v___x_13828_);
v___x_13830_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_13831_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_13810_);
v___x_13832_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13832_, 0, v___x_13810_);
lean_ctor_set(v___x_13832_, 1, v___x_13830_);
v___x_13833_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_x_13750_);
lean_inc(v___x_13810_);
v___x_13834_ = l_Lean_Syntax_node1(v___x_13810_, v___x_13817_, v_x_13750_);
v___x_13835_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13810_);
v___x_13836_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13836_, 0, v___x_13810_);
lean_ctor_set(v___x_13836_, 1, v___x_13817_);
lean_ctor_set(v___x_13836_, 2, v___x_13835_);
v___x_13837_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_13810_);
v___x_13838_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13838_, 0, v___x_13810_);
lean_ctor_set(v___x_13838_, 1, v___x_13837_);
lean_inc(v___x_13810_);
v___x_13839_ = l_Lean_Syntax_node4(v___x_13810_, v___x_13833_, v___x_13834_, v___x_13836_, v___x_13838_, v_a_13763_);
lean_inc(v___x_13810_);
v___x_13840_ = l_Lean_Syntax_node2(v___x_13810_, v___x_13831_, v___x_13832_, v___x_13839_);
v___x_13841_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_13810_);
v___x_13842_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13842_, 0, v___x_13810_);
lean_ctor_set(v___x_13842_, 1, v___x_13841_);
lean_inc(v___x_13810_);
v___x_13843_ = l_Lean_Syntax_node3(v___x_13810_, v___x_13818_, v___x_13829_, v___x_13840_, v___x_13842_);
lean_inc(v___x_13810_);
v___x_13844_ = l_Lean_Syntax_node2(v___x_13810_, v___x_13817_, v_b_13733_, v___x_13843_);
v___x_13845_ = l_Lean_Syntax_node2(v___x_13810_, v___x_13811_, v___x_13816_, v___x_13844_);
lean_inc(v_doTry_13729_);
v___x_13846_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doTry_13729_, v___x_13845_, v___y_13739_);
v___y_13743_ = v___x_13846_;
goto v___jp_13742_;
}
}
else
{
lean_dec(v_b_13733_);
v___y_13743_ = v___x_13762_;
goto v___jp_13742_;
}
}
else
{
lean_object* v_a_13847_; lean_object* v___x_13848_; 
lean_dec(v___y_13740_);
lean_dec_ref(v___y_13739_);
lean_dec(v___y_13738_);
lean_dec_ref(v___y_13737_);
lean_dec(v___y_13736_);
lean_dec_ref(v___y_13735_);
lean_dec(v_b_13733_);
lean_dec(v_doTry_13729_);
lean_dec_ref(v___x_13725_);
lean_dec_ref(v___y_13724_);
lean_dec(v___x_13723_);
v_a_13847_ = lean_ctor_get(v___x_13753_, 0);
lean_inc(v_a_13847_);
lean_dec_ref(v___x_13753_);
v___x_13848_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_13848_, 0, v_a_13847_);
return v___x_13848_;
}
}
else
{
lean_object* v___x_13849_; 
lean_dec(v___y_13740_);
lean_dec_ref(v___y_13739_);
lean_dec(v___y_13738_);
lean_dec_ref(v___y_13737_);
lean_dec(v___y_13736_);
lean_dec_ref(v___y_13735_);
lean_dec(v_doTry_13729_);
lean_dec_ref(v___x_13725_);
lean_dec_ref(v___y_13724_);
lean_dec(v___x_13723_);
v___x_13849_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_13849_, 0, v_b_13733_);
return v___x_13849_;
}
v___jp_13742_:
{
if (lean_obj_tag(v___y_13743_) == 0)
{
lean_object* v_a_13744_; size_t v___x_13745_; size_t v___x_13746_; 
v_a_13744_ = lean_ctor_get(v___y_13743_, 0);
lean_inc(v_a_13744_);
lean_dec_ref(v___y_13743_);
v___x_13745_ = ((size_t)1ULL);
v___x_13746_ = lean_usize_add(v_i_13731_, v___x_13745_);
v_i_13731_ = v___x_13746_;
v_b_13733_ = v_a_13744_;
goto _start;
}
else
{
lean_dec(v___y_13740_);
lean_dec_ref(v___y_13739_);
lean_dec(v___y_13738_);
lean_dec_ref(v___y_13737_);
lean_dec(v___y_13736_);
lean_dec_ref(v___y_13735_);
lean_dec(v_doTry_13729_);
lean_dec_ref(v___x_13725_);
lean_dec_ref(v___y_13724_);
lean_dec(v___x_13723_);
return v___y_13743_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___boxed(lean_object** _args){
lean_object* v___x_13850_ = _args[0];
lean_object* v___y_13851_ = _args[1];
lean_object* v___x_13852_ = _args[2];
lean_object* v___x_13853_ = _args[3];
lean_object* v___x_13854_ = _args[4];
lean_object* v___x_13855_ = _args[5];
lean_object* v_doTry_13856_ = _args[6];
lean_object* v_as_13857_ = _args[7];
lean_object* v_i_13858_ = _args[8];
lean_object* v_stop_13859_ = _args[9];
lean_object* v_b_13860_ = _args[10];
lean_object* v___y_13861_ = _args[11];
lean_object* v___y_13862_ = _args[12];
lean_object* v___y_13863_ = _args[13];
lean_object* v___y_13864_ = _args[14];
lean_object* v___y_13865_ = _args[15];
lean_object* v___y_13866_ = _args[16];
lean_object* v___y_13867_ = _args[17];
lean_object* v___y_13868_ = _args[18];
_start:
{
uint8_t v___x_269588__boxed_13869_; uint8_t v___x_269589__boxed_13870_; uint8_t v___x_269590__boxed_13871_; size_t v_i_boxed_13872_; size_t v_stop_boxed_13873_; lean_object* v_res_13874_; 
v___x_269588__boxed_13869_ = lean_unbox(v___x_13853_);
v___x_269589__boxed_13870_ = lean_unbox(v___x_13854_);
v___x_269590__boxed_13871_ = lean_unbox(v___x_13855_);
v_i_boxed_13872_ = lean_unbox_usize(v_i_13858_);
lean_dec(v_i_13858_);
v_stop_boxed_13873_ = lean_unbox_usize(v_stop_13859_);
lean_dec(v_stop_13859_);
v_res_13874_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5(v___x_13850_, v___y_13851_, v___x_13852_, v___x_269588__boxed_13869_, v___x_269589__boxed_13870_, v___x_269590__boxed_13871_, v_doTry_13856_, v_as_13857_, v_i_boxed_13872_, v_stop_boxed_13873_, v_b_13860_, v___y_13861_, v___y_13862_, v___y_13863_, v___y_13864_, v___y_13865_, v___y_13866_, v___y_13867_);
lean_dec_ref(v___y_13861_);
lean_dec_ref(v_as_13857_);
return v_res_13874_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4(lean_object* v___x_13875_, lean_object* v___y_13876_, lean_object* v___x_13877_, uint8_t v___x_13878_, uint8_t v___x_13879_, uint8_t v___x_13880_, lean_object* v_doTry_13881_, lean_object* v_as_13882_, size_t v_i_13883_, size_t v_stop_13884_, lean_object* v_b_13885_, lean_object* v___y_13886_, lean_object* v___y_13887_, lean_object* v___y_13888_, lean_object* v___y_13889_, lean_object* v___y_13890_, lean_object* v___y_13891_, lean_object* v___y_13892_){
_start:
{
lean_object* v___y_13895_; uint8_t v___x_13900_; 
v___x_13900_ = lean_usize_dec_eq(v_i_13883_, v_stop_13884_);
if (v___x_13900_ == 0)
{
lean_object* v___x_13901_; lean_object* v_x_13902_; lean_object* v_optType_13903_; lean_object* v_codeBlock_13904_; lean_object* v___x_13905_; 
v___x_13901_ = lean_array_uget_borrowed(v_as_13882_, v_i_13883_);
v_x_13902_ = lean_ctor_get(v___x_13901_, 0);
v_optType_13903_ = lean_ctor_get(v___x_13901_, 1);
v_codeBlock_13904_ = lean_ctor_get(v___x_13901_, 2);
lean_inc(v___y_13892_);
lean_inc_ref(v___y_13891_);
lean_inc(v___y_13890_);
lean_inc_ref(v___y_13889_);
lean_inc(v___y_13888_);
lean_inc_ref(v___y_13887_);
lean_inc(v___x_13875_);
lean_inc_ref(v_codeBlock_13904_);
v___x_13905_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_codeBlock_13904_, v___x_13875_, v___y_13887_, v___y_13888_, v___y_13889_, v___y_13890_, v___y_13891_, v___y_13892_);
if (lean_obj_tag(v___x_13905_) == 0)
{
lean_object* v_a_13906_; lean_object* v_code_13907_; lean_object* v_m_13908_; lean_object* v_returnType_13909_; lean_object* v___x_13910_; lean_object* v___x_13911_; lean_object* v___x_13912_; lean_object* v___x_13913_; lean_object* v___x_13914_; 
v_a_13906_ = lean_ctor_get(v___x_13905_, 0);
lean_inc(v_a_13906_);
lean_dec_ref(v___x_13905_);
v_code_13907_ = lean_ctor_get(v_a_13906_, 0);
lean_inc_ref(v_code_13907_);
lean_dec(v_a_13906_);
v_m_13908_ = lean_ctor_get(v___y_13876_, 1);
v_returnType_13909_ = lean_ctor_get(v___y_13876_, 2);
v___x_13910_ = lean_box(v___x_13878_);
v___x_13911_ = lean_box(v___x_13879_);
v___x_13912_ = lean_box(v___x_13880_);
lean_inc_ref(v___x_13877_);
lean_inc(v_returnType_13909_);
lean_inc(v_m_13908_);
v___x_13913_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm___boxed), 9, 7);
lean_closure_set(v___x_13913_, 0, v_code_13907_);
lean_closure_set(v___x_13913_, 1, v_m_13908_);
lean_closure_set(v___x_13913_, 2, v_returnType_13909_);
lean_closure_set(v___x_13913_, 3, v___x_13877_);
lean_closure_set(v___x_13913_, 4, v___x_13910_);
lean_closure_set(v___x_13913_, 5, v___x_13911_);
lean_closure_set(v___x_13913_, 6, v___x_13912_);
lean_inc_ref(v___y_13891_);
v___x_13914_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_13913_, v___y_13886_, v___y_13887_, v___y_13888_, v___y_13889_, v___y_13890_, v___y_13891_, v___y_13892_);
if (lean_obj_tag(v___x_13914_) == 0)
{
lean_object* v_a_13915_; uint8_t v___x_13916_; 
v_a_13915_ = lean_ctor_get(v___x_13914_, 0);
lean_inc(v_a_13915_);
lean_dec_ref(v___x_13914_);
v___x_13916_ = l_Lean_Syntax_isNone(v_optType_13903_);
if (v___x_13916_ == 0)
{
lean_object* v_ref_13917_; lean_object* v_quotContext_13918_; lean_object* v_currMacroScope_13919_; lean_object* v___x_13920_; lean_object* v___x_13921_; lean_object* v___x_13922_; lean_object* v___x_13923_; lean_object* v___x_13924_; lean_object* v___x_13925_; lean_object* v___x_13926_; lean_object* v___x_13927_; lean_object* v___x_13928_; lean_object* v___x_13929_; lean_object* v___x_13930_; lean_object* v___x_13931_; lean_object* v___x_13932_; lean_object* v___x_13933_; lean_object* v___x_13934_; lean_object* v___x_13935_; lean_object* v___x_13936_; lean_object* v___x_13937_; lean_object* v___x_13938_; lean_object* v___x_13939_; lean_object* v___x_13940_; lean_object* v___x_13941_; lean_object* v___x_13942_; lean_object* v___x_13943_; lean_object* v___x_13944_; lean_object* v___x_13945_; lean_object* v___x_13946_; lean_object* v___x_13947_; lean_object* v___x_13948_; lean_object* v___x_13949_; lean_object* v___x_13950_; lean_object* v___x_13951_; lean_object* v___x_13952_; lean_object* v___x_13953_; lean_object* v___x_13954_; lean_object* v___x_13955_; lean_object* v___x_13956_; lean_object* v___x_13957_; lean_object* v___x_13958_; 
v_ref_13917_ = lean_ctor_get(v___y_13891_, 5);
v_quotContext_13918_ = lean_ctor_get(v___y_13891_, 10);
v_currMacroScope_13919_ = lean_ctor_get(v___y_13891_, 11);
v___x_13920_ = lean_unsigned_to_nat(1u);
v___x_13921_ = l_Lean_Syntax_getArg(v_optType_13903_, v___x_13920_);
v___x_13922_ = l_Lean_SourceInfo_fromRef(v_ref_13917_, v___x_13916_);
v___x_13923_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_13924_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__1);
v___x_13925_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__2));
lean_inc(v_currMacroScope_13919_);
lean_inc(v_quotContext_13918_);
v___x_13926_ = l_Lean_addMacroScope(v_quotContext_13918_, v___x_13925_, v_currMacroScope_13919_);
v___x_13927_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__4));
lean_inc(v___x_13922_);
v___x_13928_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13928_, 0, v___x_13922_);
lean_ctor_set(v___x_13928_, 1, v___x_13924_);
lean_ctor_set(v___x_13928_, 2, v___x_13926_);
lean_ctor_set(v___x_13928_, 3, v___x_13927_);
v___x_13929_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13930_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_13931_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_13932_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_13922_);
v___x_13933_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13933_, 0, v___x_13922_);
lean_ctor_set(v___x_13933_, 1, v___x_13932_);
v___x_13934_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_13935_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_13936_ = lean_box(0);
lean_inc(v_currMacroScope_13919_);
lean_inc(v_quotContext_13918_);
v___x_13937_ = l_Lean_addMacroScope(v_quotContext_13918_, v___x_13936_, v_currMacroScope_13919_);
v___x_13938_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8));
lean_inc(v___x_13922_);
v___x_13939_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13939_, 0, v___x_13922_);
lean_ctor_set(v___x_13939_, 1, v___x_13935_);
lean_ctor_set(v___x_13939_, 2, v___x_13937_);
lean_ctor_set(v___x_13939_, 3, v___x_13938_);
lean_inc(v___x_13922_);
v___x_13940_ = l_Lean_Syntax_node1(v___x_13922_, v___x_13934_, v___x_13939_);
lean_inc(v___x_13922_);
v___x_13941_ = l_Lean_Syntax_node2(v___x_13922_, v___x_13931_, v___x_13933_, v___x_13940_);
v___x_13942_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_13943_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_13922_);
v___x_13944_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13944_, 0, v___x_13922_);
lean_ctor_set(v___x_13944_, 1, v___x_13942_);
v___x_13945_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_x_13902_);
lean_inc(v___x_13922_);
v___x_13946_ = l_Lean_Syntax_node1(v___x_13922_, v___x_13929_, v_x_13902_);
v___x_13947_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13922_);
v___x_13948_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13948_, 0, v___x_13922_);
lean_ctor_set(v___x_13948_, 1, v___x_13929_);
lean_ctor_set(v___x_13948_, 2, v___x_13947_);
v___x_13949_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_13922_);
v___x_13950_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13950_, 0, v___x_13922_);
lean_ctor_set(v___x_13950_, 1, v___x_13949_);
lean_inc(v___x_13922_);
v___x_13951_ = l_Lean_Syntax_node4(v___x_13922_, v___x_13945_, v___x_13946_, v___x_13948_, v___x_13950_, v_a_13915_);
lean_inc(v___x_13922_);
v___x_13952_ = l_Lean_Syntax_node2(v___x_13922_, v___x_13943_, v___x_13944_, v___x_13951_);
v___x_13953_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_13922_);
v___x_13954_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13954_, 0, v___x_13922_);
lean_ctor_set(v___x_13954_, 1, v___x_13953_);
lean_inc(v___x_13922_);
v___x_13955_ = l_Lean_Syntax_node3(v___x_13922_, v___x_13930_, v___x_13941_, v___x_13952_, v___x_13954_);
lean_inc(v___x_13922_);
v___x_13956_ = l_Lean_Syntax_node3(v___x_13922_, v___x_13929_, v___x_13921_, v_b_13885_, v___x_13955_);
v___x_13957_ = l_Lean_Syntax_node2(v___x_13922_, v___x_13923_, v___x_13928_, v___x_13956_);
lean_inc(v_doTry_13881_);
v___x_13958_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doTry_13881_, v___x_13957_, v___y_13891_);
v___y_13895_ = v___x_13958_;
goto v___jp_13894_;
}
else
{
lean_object* v_ref_13959_; lean_object* v_quotContext_13960_; lean_object* v_currMacroScope_13961_; lean_object* v___x_13962_; lean_object* v___x_13963_; lean_object* v___x_13964_; lean_object* v___x_13965_; lean_object* v___x_13966_; lean_object* v___x_13967_; lean_object* v___x_13968_; lean_object* v___x_13969_; lean_object* v___x_13970_; lean_object* v___x_13971_; lean_object* v___x_13972_; lean_object* v___x_13973_; lean_object* v___x_13974_; lean_object* v___x_13975_; lean_object* v___x_13976_; lean_object* v___x_13977_; lean_object* v___x_13978_; lean_object* v___x_13979_; lean_object* v___x_13980_; lean_object* v___x_13981_; lean_object* v___x_13982_; lean_object* v___x_13983_; lean_object* v___x_13984_; lean_object* v___x_13985_; lean_object* v___x_13986_; lean_object* v___x_13987_; lean_object* v___x_13988_; lean_object* v___x_13989_; lean_object* v___x_13990_; lean_object* v___x_13991_; lean_object* v___x_13992_; lean_object* v___x_13993_; lean_object* v___x_13994_; lean_object* v___x_13995_; lean_object* v___x_13996_; lean_object* v___x_13997_; lean_object* v___x_13998_; 
v_ref_13959_ = lean_ctor_get(v___y_13891_, 5);
v_quotContext_13960_ = lean_ctor_get(v___y_13891_, 10);
v_currMacroScope_13961_ = lean_ctor_get(v___y_13891_, 11);
v___x_13962_ = l_Lean_SourceInfo_fromRef(v_ref_13959_, v___x_13900_);
v___x_13963_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_13964_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10, &l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__10);
v___x_13965_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__13));
lean_inc(v_currMacroScope_13961_);
lean_inc(v_quotContext_13960_);
v___x_13966_ = l_Lean_addMacroScope(v_quotContext_13960_, v___x_13965_, v_currMacroScope_13961_);
v___x_13967_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__15));
lean_inc(v___x_13962_);
v___x_13968_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13968_, 0, v___x_13962_);
lean_ctor_set(v___x_13968_, 1, v___x_13964_);
lean_ctor_set(v___x_13968_, 2, v___x_13966_);
lean_ctor_set(v___x_13968_, 3, v___x_13967_);
v___x_13969_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_13970_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_13971_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_13972_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_13962_);
v___x_13973_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13973_, 0, v___x_13962_);
lean_ctor_set(v___x_13973_, 1, v___x_13972_);
v___x_13974_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_13975_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_13976_ = lean_box(0);
lean_inc(v_currMacroScope_13961_);
lean_inc(v_quotContext_13960_);
v___x_13977_ = l_Lean_addMacroScope(v_quotContext_13960_, v___x_13976_, v_currMacroScope_13961_);
v___x_13978_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8));
lean_inc(v___x_13962_);
v___x_13979_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_13979_, 0, v___x_13962_);
lean_ctor_set(v___x_13979_, 1, v___x_13975_);
lean_ctor_set(v___x_13979_, 2, v___x_13977_);
lean_ctor_set(v___x_13979_, 3, v___x_13978_);
lean_inc(v___x_13962_);
v___x_13980_ = l_Lean_Syntax_node1(v___x_13962_, v___x_13974_, v___x_13979_);
lean_inc(v___x_13962_);
v___x_13981_ = l_Lean_Syntax_node2(v___x_13962_, v___x_13971_, v___x_13973_, v___x_13980_);
v___x_13982_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_13983_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v___x_13962_);
v___x_13984_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13984_, 0, v___x_13962_);
lean_ctor_set(v___x_13984_, 1, v___x_13982_);
v___x_13985_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_x_13902_);
lean_inc(v___x_13962_);
v___x_13986_ = l_Lean_Syntax_node1(v___x_13962_, v___x_13969_, v_x_13902_);
v___x_13987_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_13962_);
v___x_13988_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_13988_, 0, v___x_13962_);
lean_ctor_set(v___x_13988_, 1, v___x_13969_);
lean_ctor_set(v___x_13988_, 2, v___x_13987_);
v___x_13989_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_13962_);
v___x_13990_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13990_, 0, v___x_13962_);
lean_ctor_set(v___x_13990_, 1, v___x_13989_);
lean_inc(v___x_13962_);
v___x_13991_ = l_Lean_Syntax_node4(v___x_13962_, v___x_13985_, v___x_13986_, v___x_13988_, v___x_13990_, v_a_13915_);
lean_inc(v___x_13962_);
v___x_13992_ = l_Lean_Syntax_node2(v___x_13962_, v___x_13983_, v___x_13984_, v___x_13991_);
v___x_13993_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_13962_);
v___x_13994_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_13994_, 0, v___x_13962_);
lean_ctor_set(v___x_13994_, 1, v___x_13993_);
lean_inc(v___x_13962_);
v___x_13995_ = l_Lean_Syntax_node3(v___x_13962_, v___x_13970_, v___x_13981_, v___x_13992_, v___x_13994_);
lean_inc(v___x_13962_);
v___x_13996_ = l_Lean_Syntax_node2(v___x_13962_, v___x_13969_, v_b_13885_, v___x_13995_);
v___x_13997_ = l_Lean_Syntax_node2(v___x_13962_, v___x_13963_, v___x_13968_, v___x_13996_);
lean_inc(v_doTry_13881_);
v___x_13998_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doTry_13881_, v___x_13997_, v___y_13891_);
v___y_13895_ = v___x_13998_;
goto v___jp_13894_;
}
}
else
{
lean_dec(v_b_13885_);
v___y_13895_ = v___x_13914_;
goto v___jp_13894_;
}
}
else
{
lean_object* v_a_13999_; lean_object* v___x_14000_; 
lean_dec(v___y_13892_);
lean_dec_ref(v___y_13891_);
lean_dec(v___y_13890_);
lean_dec_ref(v___y_13889_);
lean_dec(v___y_13888_);
lean_dec_ref(v___y_13887_);
lean_dec(v_b_13885_);
lean_dec(v_doTry_13881_);
lean_dec_ref(v___x_13877_);
lean_dec_ref(v___y_13876_);
lean_dec(v___x_13875_);
v_a_13999_ = lean_ctor_get(v___x_13905_, 0);
lean_inc(v_a_13999_);
lean_dec_ref(v___x_13905_);
v___x_14000_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14000_, 0, v_a_13999_);
return v___x_14000_;
}
}
else
{
lean_object* v___x_14001_; 
lean_dec(v___y_13892_);
lean_dec_ref(v___y_13891_);
lean_dec(v___y_13890_);
lean_dec_ref(v___y_13889_);
lean_dec(v___y_13888_);
lean_dec_ref(v___y_13887_);
lean_dec(v_doTry_13881_);
lean_dec_ref(v___x_13877_);
lean_dec_ref(v___y_13876_);
lean_dec(v___x_13875_);
v___x_14001_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14001_, 0, v_b_13885_);
return v___x_14001_;
}
v___jp_13894_:
{
if (lean_obj_tag(v___y_13895_) == 0)
{
lean_object* v_a_13896_; size_t v___x_13897_; size_t v___x_13898_; lean_object* v___x_13899_; 
v_a_13896_ = lean_ctor_get(v___y_13895_, 0);
lean_inc(v_a_13896_);
lean_dec_ref(v___y_13895_);
v___x_13897_ = ((size_t)1ULL);
v___x_13898_ = lean_usize_add(v_i_13883_, v___x_13897_);
v___x_13899_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5(v___x_13875_, v___y_13876_, v___x_13877_, v___x_13878_, v___x_13879_, v___x_13880_, v_doTry_13881_, v_as_13882_, v___x_13898_, v_stop_13884_, v_a_13896_, v___y_13886_, v___y_13887_, v___y_13888_, v___y_13889_, v___y_13890_, v___y_13891_, v___y_13892_);
return v___x_13899_;
}
else
{
lean_dec(v___y_13892_);
lean_dec_ref(v___y_13891_);
lean_dec(v___y_13890_);
lean_dec_ref(v___y_13889_);
lean_dec(v___y_13888_);
lean_dec_ref(v___y_13887_);
lean_dec(v_doTry_13881_);
lean_dec_ref(v___x_13877_);
lean_dec_ref(v___y_13876_);
lean_dec(v___x_13875_);
return v___y_13895_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4___boxed(lean_object** _args){
lean_object* v___x_14002_ = _args[0];
lean_object* v___y_14003_ = _args[1];
lean_object* v___x_14004_ = _args[2];
lean_object* v___x_14005_ = _args[3];
lean_object* v___x_14006_ = _args[4];
lean_object* v___x_14007_ = _args[5];
lean_object* v_doTry_14008_ = _args[6];
lean_object* v_as_14009_ = _args[7];
lean_object* v_i_14010_ = _args[8];
lean_object* v_stop_14011_ = _args[9];
lean_object* v_b_14012_ = _args[10];
lean_object* v___y_14013_ = _args[11];
lean_object* v___y_14014_ = _args[12];
lean_object* v___y_14015_ = _args[13];
lean_object* v___y_14016_ = _args[14];
lean_object* v___y_14017_ = _args[15];
lean_object* v___y_14018_ = _args[16];
lean_object* v___y_14019_ = _args[17];
lean_object* v___y_14020_ = _args[18];
_start:
{
uint8_t v___x_270064__boxed_14021_; uint8_t v___x_270065__boxed_14022_; uint8_t v___x_270066__boxed_14023_; size_t v_i_boxed_14024_; size_t v_stop_boxed_14025_; lean_object* v_res_14026_; 
v___x_270064__boxed_14021_ = lean_unbox(v___x_14005_);
v___x_270065__boxed_14022_ = lean_unbox(v___x_14006_);
v___x_270066__boxed_14023_ = lean_unbox(v___x_14007_);
v_i_boxed_14024_ = lean_unbox_usize(v_i_14010_);
lean_dec(v_i_14010_);
v_stop_boxed_14025_ = lean_unbox_usize(v_stop_14011_);
lean_dec(v_stop_14011_);
v_res_14026_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4(v___x_14002_, v___y_14003_, v___x_14004_, v___x_270064__boxed_14021_, v___x_270065__boxed_14022_, v___x_270066__boxed_14023_, v_doTry_14008_, v_as_14009_, v_i_boxed_14024_, v_stop_boxed_14025_, v_b_14012_, v___y_14013_, v___y_14014_, v___y_14015_, v___y_14016_, v___y_14017_, v___y_14018_, v___y_14019_);
lean_dec_ref(v___y_14013_);
lean_dec_ref(v_as_14009_);
return v_res_14026_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1(void){
_start:
{
lean_object* v___x_14028_; lean_object* v___x_14029_; 
v___x_14028_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__0));
v___x_14029_ = l_String_toRawSubstring_x27(v___x_14028_);
return v___x_14029_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6(void){
_start:
{
lean_object* v___x_14039_; lean_object* v___x_14040_; 
v___x_14039_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__5));
v___x_14040_ = l_Lean_stringToMessageData(v___x_14039_);
return v___x_14040_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0(lean_object* v___x_14041_, lean_object* v_code_14042_, lean_object* v_m_14043_, lean_object* v_returnType_14044_, lean_object* v_a_14045_, lean_object* v_doTry_14046_, lean_object* v_____r_14047_, lean_object* v___y_14048_, lean_object* v___y_14049_, lean_object* v___y_14050_, lean_object* v___y_14051_, lean_object* v___y_14052_, lean_object* v___y_14053_, lean_object* v___y_14054_){
_start:
{
lean_object* v___y_14057_; lean_object* v___y_14058_; lean_object* v___y_14059_; lean_object* v___y_14060_; lean_object* v___y_14061_; lean_object* v___y_14062_; lean_object* v___y_14063_; uint8_t v___x_14085_; 
lean_inc_ref(v_code_14042_);
v___x_14085_ = l_Lean_Elab_Term_Do_hasBreakContinueReturn(v_code_14042_);
if (v___x_14085_ == 0)
{
v___y_14057_ = v___y_14048_;
v___y_14058_ = v___y_14049_;
v___y_14059_ = v___y_14050_;
v___y_14060_ = v___y_14051_;
v___y_14061_ = v___y_14052_;
v___y_14062_ = v___y_14053_;
v___y_14063_ = v___y_14054_;
goto v___jp_14056_;
}
else
{
lean_object* v___x_14086_; lean_object* v___x_14087_; 
v___x_14086_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6, &l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__6);
v___x_14087_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_14086_, v___y_14051_, v___y_14052_, v___y_14053_, v___y_14054_);
if (lean_obj_tag(v___x_14087_) == 0)
{
lean_dec_ref(v___x_14087_);
v___y_14057_ = v___y_14048_;
v___y_14058_ = v___y_14049_;
v___y_14059_ = v___y_14050_;
v___y_14060_ = v___y_14051_;
v___y_14061_ = v___y_14052_;
v___y_14062_ = v___y_14053_;
v___y_14063_ = v___y_14054_;
goto v___jp_14056_;
}
else
{
lean_object* v_a_14088_; lean_object* v___x_14089_; 
lean_dec_ref(v___y_14053_);
lean_dec(v_doTry_14046_);
lean_dec(v_a_14045_);
lean_dec(v_returnType_14044_);
lean_dec(v_m_14043_);
lean_dec_ref(v_code_14042_);
v_a_14088_ = lean_ctor_get(v___x_14087_, 0);
lean_inc(v_a_14088_);
lean_dec_ref(v___x_14087_);
v___x_14089_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14089_, 0, v_a_14088_);
return v___x_14089_;
}
}
v___jp_14056_:
{
lean_object* v___x_14064_; uint8_t v___x_14065_; lean_object* v___x_14066_; lean_object* v___x_14067_; lean_object* v___x_14068_; 
v___x_14064_ = lean_mk_empty_array_with_capacity(v___x_14041_);
v___x_14065_ = 0;
v___x_14066_ = lean_box(v___x_14065_);
v___x_14067_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_run___boxed), 7, 5);
lean_closure_set(v___x_14067_, 0, v_code_14042_);
lean_closure_set(v___x_14067_, 1, v_m_14043_);
lean_closure_set(v___x_14067_, 2, v_returnType_14044_);
lean_closure_set(v___x_14067_, 3, v___x_14064_);
lean_closure_set(v___x_14067_, 4, v___x_14066_);
lean_inc_ref(v___y_14062_);
v___x_14068_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_14067_, v___y_14057_, v___y_14058_, v___y_14059_, v___y_14060_, v___y_14061_, v___y_14062_, v___y_14063_);
if (lean_obj_tag(v___x_14068_) == 0)
{
lean_object* v_a_14069_; lean_object* v_ref_14070_; lean_object* v_quotContext_14071_; lean_object* v_currMacroScope_14072_; uint8_t v___x_14073_; lean_object* v___x_14074_; lean_object* v___x_14075_; lean_object* v___x_14076_; lean_object* v___x_14077_; lean_object* v___x_14078_; lean_object* v___x_14079_; lean_object* v___x_14080_; lean_object* v___x_14081_; lean_object* v___x_14082_; lean_object* v___x_14083_; lean_object* v___x_14084_; 
v_a_14069_ = lean_ctor_get(v___x_14068_, 0);
lean_inc(v_a_14069_);
lean_dec_ref(v___x_14068_);
v_ref_14070_ = lean_ctor_get(v___y_14062_, 5);
v_quotContext_14071_ = lean_ctor_get(v___y_14062_, 10);
v_currMacroScope_14072_ = lean_ctor_get(v___y_14062_, 11);
v___x_14073_ = 0;
v___x_14074_ = l_Lean_SourceInfo_fromRef(v_ref_14070_, v___x_14073_);
v___x_14075_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_14076_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__1);
v___x_14077_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__2));
lean_inc(v_currMacroScope_14072_);
lean_inc(v_quotContext_14071_);
v___x_14078_ = l_Lean_addMacroScope(v_quotContext_14071_, v___x_14077_, v_currMacroScope_14072_);
v___x_14079_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___closed__4));
lean_inc(v___x_14074_);
v___x_14080_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14080_, 0, v___x_14074_);
lean_ctor_set(v___x_14080_, 1, v___x_14076_);
lean_ctor_set(v___x_14080_, 2, v___x_14078_);
lean_ctor_set(v___x_14080_, 3, v___x_14079_);
v___x_14081_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v___x_14074_);
v___x_14082_ = l_Lean_Syntax_node2(v___x_14074_, v___x_14081_, v_a_14045_, v_a_14069_);
v___x_14083_ = l_Lean_Syntax_node2(v___x_14074_, v___x_14075_, v___x_14080_, v___x_14082_);
v___x_14084_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doTry_14046_, v___x_14083_, v___y_14062_);
lean_dec_ref(v___y_14062_);
return v___x_14084_;
}
else
{
lean_dec_ref(v___y_14062_);
lean_dec(v_doTry_14046_);
lean_dec(v_a_14045_);
return v___x_14068_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___boxed(lean_object* v___x_14090_, lean_object* v_code_14091_, lean_object* v_m_14092_, lean_object* v_returnType_14093_, lean_object* v_a_14094_, lean_object* v_doTry_14095_, lean_object* v_____r_14096_, lean_object* v___y_14097_, lean_object* v___y_14098_, lean_object* v___y_14099_, lean_object* v___y_14100_, lean_object* v___y_14101_, lean_object* v___y_14102_, lean_object* v___y_14103_, lean_object* v___y_14104_){
_start:
{
lean_object* v_res_14105_; 
v_res_14105_ = l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0(v___x_14090_, v_code_14091_, v_m_14092_, v_returnType_14093_, v_a_14094_, v_doTry_14095_, v_____r_14096_, v___y_14097_, v___y_14098_, v___y_14099_, v___y_14100_, v___y_14101_, v___y_14102_, v___y_14103_);
lean_dec(v___y_14103_);
lean_dec(v___y_14101_);
lean_dec_ref(v___y_14100_);
lean_dec(v___y_14099_);
lean_dec_ref(v___y_14098_);
lean_dec_ref(v___y_14097_);
lean_dec(v___x_14090_);
return v_res_14105_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1(uint8_t v___x_14107_, lean_object* v_optType_14108_, lean_object* v___x_14109_, lean_object* v___x_14110_, lean_object* v_doLetArrow_14111_, lean_object* v___x_14112_, lean_object* v___x_14113_, lean_object* v___x_14114_, uint8_t v___x_14115_, lean_object* v___x_14116_, lean_object* v_doElem_14117_, lean_object* v_pattern_14118_, lean_object* v___f_14119_, lean_object* v_a_14120_, lean_object* v_a_14121_, lean_object* v_a_14122_, lean_object* v_a_14123_, lean_object* v_a_14124_, uint8_t v___x_14125_, lean_object* v___y_14126_, lean_object* v___y_14127_){
_start:
{
if (v___x_14107_ == 0)
{
lean_object* v___x_14129_; lean_object* v___x_14130_; uint8_t v___x_14131_; 
v___x_14129_ = l_Lean_Syntax_getArg(v_optType_14108_, v___x_14109_);
v___x_14130_ = l_Lean_Syntax_getArg(v___x_14129_, v___x_14110_);
lean_dec(v___x_14129_);
lean_inc(v_doLetArrow_14111_);
v___x_14131_ = l_Lean_Elab_Term_Do_isMutableLet(v_doLetArrow_14111_);
if (v___x_14131_ == 0)
{
lean_object* v_ref_14132_; lean_object* v_quotContext_14133_; lean_object* v_currMacroScope_14134_; lean_object* v___x_14135_; lean_object* v___x_14136_; lean_object* v___x_14137_; lean_object* v___x_14138_; lean_object* v___x_14139_; lean_object* v___x_14140_; lean_object* v___x_14141_; lean_object* v___x_14142_; lean_object* v___x_14143_; lean_object* v___x_14144_; lean_object* v___x_14145_; lean_object* v___x_14146_; lean_object* v___x_14147_; lean_object* v___x_14148_; lean_object* v___x_14149_; lean_object* v___x_14150_; lean_object* v___x_14151_; lean_object* v___x_14152_; lean_object* v___x_14153_; lean_object* v___x_14154_; lean_object* v___x_14155_; lean_object* v___x_14156_; lean_object* v___x_14157_; lean_object* v___x_14158_; lean_object* v___x_14159_; lean_object* v___x_14160_; lean_object* v___x_14161_; lean_object* v___x_14162_; lean_object* v___x_14163_; lean_object* v___x_14164_; lean_object* v___x_14165_; lean_object* v___x_14166_; lean_object* v___x_14167_; lean_object* v___x_14168_; lean_object* v___x_14169_; lean_object* v___x_14170_; lean_object* v___x_14171_; lean_object* v___x_14172_; lean_object* v___x_14173_; lean_object* v___x_14174_; lean_object* v___x_14175_; lean_object* v___x_14176_; lean_object* v___x_14177_; lean_object* v___x_14178_; lean_object* v___x_14179_; lean_object* v___x_14180_; lean_object* v___x_14181_; lean_object* v___x_14182_; lean_object* v___x_14183_; lean_object* v___x_14184_; lean_object* v___x_14185_; 
v_ref_14132_ = lean_ctor_get(v___y_14126_, 5);
v_quotContext_14133_ = lean_ctor_get(v___y_14126_, 10);
v_currMacroScope_14134_ = lean_ctor_get(v___y_14126_, 11);
v___x_14135_ = l_Lean_SourceInfo_fromRef(v_ref_14132_, v___x_14131_);
v___x_14136_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14137_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14136_);
lean_inc(v___x_14135_);
v___x_14138_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14138_, 0, v___x_14135_);
lean_ctor_set(v___x_14138_, 1, v___x_14136_);
v___x_14139_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14140_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14139_);
v___x_14141_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14142_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14143_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14142_);
v___x_14144_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14145_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14144_);
v___x_14146_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_14111_, v___x_14115_);
lean_dec(v_doLetArrow_14111_);
v___x_14147_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_14148_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14148_, 0, v___x_14146_);
lean_ctor_set(v___x_14148_, 1, v___x_14147_);
v___x_14149_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14135_);
v___x_14150_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14150_, 0, v___x_14135_);
lean_ctor_set(v___x_14150_, 1, v___x_14141_);
lean_ctor_set(v___x_14150_, 2, v___x_14149_);
v___x_14151_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_14152_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_14134_);
lean_inc(v_quotContext_14133_);
v___x_14153_ = l_Lean_addMacroScope(v_quotContext_14133_, v___x_14152_, v_currMacroScope_14134_);
v___x_14154_ = lean_box(0);
lean_inc(v___x_14135_);
v___x_14155_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14155_, 0, v___x_14135_);
lean_ctor_set(v___x_14155_, 1, v___x_14151_);
lean_ctor_set(v___x_14155_, 2, v___x_14153_);
lean_ctor_set(v___x_14155_, 3, v___x_14154_);
v___x_14156_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14157_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14156_);
v___x_14158_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_14135_);
v___x_14159_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14159_, 0, v___x_14135_);
lean_ctor_set(v___x_14159_, 1, v___x_14158_);
lean_inc(v___x_14135_);
v___x_14160_ = l_Lean_Syntax_node2(v___x_14135_, v___x_14157_, v___x_14159_, v___x_14130_);
lean_inc(v___x_14135_);
v___x_14161_ = l_Lean_Syntax_node1(v___x_14135_, v___x_14141_, v___x_14160_);
v___x_14162_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_14135_);
v___x_14163_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14163_, 0, v___x_14135_);
lean_ctor_set(v___x_14163_, 1, v___x_14162_);
lean_inc_ref(v___x_14155_);
lean_inc(v___x_14135_);
v___x_14164_ = l_Lean_Syntax_node4(v___x_14135_, v___x_14116_, v___x_14155_, v___x_14161_, v___x_14163_, v_doElem_14117_);
lean_inc_ref(v___x_14150_);
lean_inc_ref(v___x_14148_);
lean_inc(v___x_14135_);
v___x_14165_ = l_Lean_Syntax_node3(v___x_14135_, v___x_14145_, v___x_14148_, v___x_14150_, v___x_14164_);
v___x_14166_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_14135_);
v___x_14167_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14167_, 0, v___x_14135_);
lean_ctor_set(v___x_14167_, 1, v___x_14166_);
lean_inc(v___x_14135_);
v___x_14168_ = l_Lean_Syntax_node1(v___x_14135_, v___x_14141_, v___x_14167_);
lean_inc(v___x_14143_);
lean_inc(v___x_14135_);
v___x_14169_ = l_Lean_Syntax_node2(v___x_14135_, v___x_14143_, v___x_14165_, v___x_14168_);
v___x_14170_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14171_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14170_);
v___x_14172_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14173_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14172_);
v___x_14174_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_14175_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14174_);
v___x_14176_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14135_);
v___x_14177_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14177_, 0, v___x_14135_);
lean_ctor_set(v___x_14177_, 1, v___x_14176_);
lean_inc_ref_n(v___x_14150_, 2);
lean_inc(v___x_14135_);
v___x_14178_ = l_Lean_Syntax_node5(v___x_14135_, v___x_14175_, v_pattern_14118_, v___x_14150_, v___x_14150_, v___x_14177_, v___x_14155_);
lean_inc(v___x_14135_);
v___x_14179_ = l_Lean_Syntax_node1(v___x_14135_, v___x_14173_, v___x_14178_);
lean_inc_ref(v___x_14150_);
lean_inc(v___x_14135_);
v___x_14180_ = l_Lean_Syntax_node3(v___x_14135_, v___x_14171_, v___x_14148_, v___x_14150_, v___x_14179_);
lean_inc(v___x_14135_);
v___x_14181_ = l_Lean_Syntax_node2(v___x_14135_, v___x_14143_, v___x_14180_, v___x_14150_);
lean_inc(v___x_14135_);
v___x_14182_ = l_Lean_Syntax_node2(v___x_14135_, v___x_14141_, v___x_14169_, v___x_14181_);
lean_inc(v___x_14135_);
v___x_14183_ = l_Lean_Syntax_node1(v___x_14135_, v___x_14140_, v___x_14182_);
v___x_14184_ = l_Lean_Syntax_node2(v___x_14135_, v___x_14137_, v___x_14138_, v___x_14183_);
v___x_14185_ = lean_apply_9(v___f_14119_, v___x_14184_, v_a_14120_, v_a_14121_, v_a_14122_, v_a_14123_, v_a_14124_, v___y_14126_, v___y_14127_, lean_box(0));
return v___x_14185_;
}
else
{
lean_object* v_ref_14186_; lean_object* v_quotContext_14187_; lean_object* v_currMacroScope_14188_; lean_object* v___x_14189_; lean_object* v___x_14190_; lean_object* v___x_14191_; lean_object* v___x_14192_; lean_object* v___x_14193_; lean_object* v___x_14194_; lean_object* v___x_14195_; lean_object* v___x_14196_; lean_object* v___x_14197_; lean_object* v___x_14198_; lean_object* v___x_14199_; lean_object* v___x_14200_; lean_object* v___x_14201_; lean_object* v___x_14202_; lean_object* v___x_14203_; lean_object* v___x_14204_; lean_object* v___x_14205_; lean_object* v___x_14206_; lean_object* v___x_14207_; lean_object* v___x_14208_; lean_object* v___x_14209_; lean_object* v___x_14210_; lean_object* v___x_14211_; lean_object* v___x_14212_; lean_object* v___x_14213_; lean_object* v___x_14214_; lean_object* v___x_14215_; lean_object* v___x_14216_; lean_object* v___x_14217_; lean_object* v___x_14218_; lean_object* v___x_14219_; lean_object* v___x_14220_; lean_object* v___x_14221_; lean_object* v___x_14222_; lean_object* v___x_14223_; lean_object* v___x_14224_; lean_object* v___x_14225_; lean_object* v___x_14226_; lean_object* v___x_14227_; lean_object* v___x_14228_; lean_object* v___x_14229_; lean_object* v___x_14230_; lean_object* v___x_14231_; lean_object* v___x_14232_; lean_object* v___x_14233_; lean_object* v___x_14234_; lean_object* v___x_14235_; lean_object* v___x_14236_; lean_object* v___x_14237_; lean_object* v___x_14238_; lean_object* v___x_14239_; lean_object* v___x_14240_; lean_object* v___x_14241_; lean_object* v___x_14242_; 
v_ref_14186_ = lean_ctor_get(v___y_14126_, 5);
v_quotContext_14187_ = lean_ctor_get(v___y_14126_, 10);
v_currMacroScope_14188_ = lean_ctor_get(v___y_14126_, 11);
v___x_14189_ = l_Lean_SourceInfo_fromRef(v_ref_14186_, v___x_14125_);
v___x_14190_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14191_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14190_);
lean_inc(v___x_14189_);
v___x_14192_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14192_, 0, v___x_14189_);
lean_ctor_set(v___x_14192_, 1, v___x_14190_);
v___x_14193_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14194_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14193_);
v___x_14195_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14196_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14197_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14196_);
v___x_14198_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14199_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14198_);
v___x_14200_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_14111_, v___x_14115_);
lean_dec(v_doLetArrow_14111_);
v___x_14201_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_14202_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14202_, 0, v___x_14200_);
lean_ctor_set(v___x_14202_, 1, v___x_14201_);
v___x_14203_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14189_);
v___x_14204_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14204_, 0, v___x_14189_);
lean_ctor_set(v___x_14204_, 1, v___x_14195_);
lean_ctor_set(v___x_14204_, 2, v___x_14203_);
v___x_14205_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_14206_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_14188_);
lean_inc(v_quotContext_14187_);
v___x_14207_ = l_Lean_addMacroScope(v_quotContext_14187_, v___x_14206_, v_currMacroScope_14188_);
v___x_14208_ = lean_box(0);
lean_inc(v___x_14189_);
v___x_14209_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14209_, 0, v___x_14189_);
lean_ctor_set(v___x_14209_, 1, v___x_14205_);
lean_ctor_set(v___x_14209_, 2, v___x_14207_);
lean_ctor_set(v___x_14209_, 3, v___x_14208_);
v___x_14210_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__2));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14211_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14210_);
v___x_14212_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_14189_);
v___x_14213_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14213_, 0, v___x_14189_);
lean_ctor_set(v___x_14213_, 1, v___x_14212_);
lean_inc(v___x_14189_);
v___x_14214_ = l_Lean_Syntax_node2(v___x_14189_, v___x_14211_, v___x_14213_, v___x_14130_);
lean_inc(v___x_14189_);
v___x_14215_ = l_Lean_Syntax_node1(v___x_14189_, v___x_14195_, v___x_14214_);
v___x_14216_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_14189_);
v___x_14217_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14217_, 0, v___x_14189_);
lean_ctor_set(v___x_14217_, 1, v___x_14216_);
lean_inc_ref(v___x_14209_);
lean_inc(v___x_14189_);
v___x_14218_ = l_Lean_Syntax_node4(v___x_14189_, v___x_14116_, v___x_14209_, v___x_14215_, v___x_14217_, v_doElem_14117_);
lean_inc_ref(v___x_14204_);
lean_inc_ref(v___x_14202_);
lean_inc(v___x_14189_);
v___x_14219_ = l_Lean_Syntax_node3(v___x_14189_, v___x_14199_, v___x_14202_, v___x_14204_, v___x_14218_);
v___x_14220_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_14189_);
v___x_14221_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14221_, 0, v___x_14189_);
lean_ctor_set(v___x_14221_, 1, v___x_14220_);
lean_inc(v___x_14189_);
v___x_14222_ = l_Lean_Syntax_node1(v___x_14189_, v___x_14195_, v___x_14221_);
lean_inc(v___x_14197_);
lean_inc(v___x_14189_);
v___x_14223_ = l_Lean_Syntax_node2(v___x_14189_, v___x_14197_, v___x_14219_, v___x_14222_);
v___x_14224_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14225_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14224_);
v___x_14226_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0));
lean_inc(v___x_14189_);
v___x_14227_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14227_, 0, v___x_14189_);
lean_ctor_set(v___x_14227_, 1, v___x_14226_);
lean_inc(v___x_14189_);
v___x_14228_ = l_Lean_Syntax_node1(v___x_14189_, v___x_14195_, v___x_14227_);
v___x_14229_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14230_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14229_);
v___x_14231_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_14232_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14231_);
v___x_14233_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14189_);
v___x_14234_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14234_, 0, v___x_14189_);
lean_ctor_set(v___x_14234_, 1, v___x_14233_);
lean_inc_ref_n(v___x_14204_, 2);
lean_inc(v___x_14189_);
v___x_14235_ = l_Lean_Syntax_node5(v___x_14189_, v___x_14232_, v_pattern_14118_, v___x_14204_, v___x_14204_, v___x_14234_, v___x_14209_);
lean_inc(v___x_14189_);
v___x_14236_ = l_Lean_Syntax_node1(v___x_14189_, v___x_14230_, v___x_14235_);
lean_inc(v___x_14189_);
v___x_14237_ = l_Lean_Syntax_node3(v___x_14189_, v___x_14225_, v___x_14202_, v___x_14228_, v___x_14236_);
lean_inc(v___x_14189_);
v___x_14238_ = l_Lean_Syntax_node2(v___x_14189_, v___x_14197_, v___x_14237_, v___x_14204_);
lean_inc(v___x_14189_);
v___x_14239_ = l_Lean_Syntax_node2(v___x_14189_, v___x_14195_, v___x_14223_, v___x_14238_);
lean_inc(v___x_14189_);
v___x_14240_ = l_Lean_Syntax_node1(v___x_14189_, v___x_14194_, v___x_14239_);
v___x_14241_ = l_Lean_Syntax_node2(v___x_14189_, v___x_14191_, v___x_14192_, v___x_14240_);
v___x_14242_ = lean_apply_9(v___f_14119_, v___x_14241_, v_a_14120_, v_a_14121_, v_a_14122_, v_a_14123_, v_a_14124_, v___y_14126_, v___y_14127_, lean_box(0));
return v___x_14242_;
}
}
else
{
uint8_t v___x_14243_; 
lean_inc(v_doLetArrow_14111_);
v___x_14243_ = l_Lean_Elab_Term_Do_isMutableLet(v_doLetArrow_14111_);
if (v___x_14243_ == 0)
{
lean_object* v_ref_14244_; lean_object* v_quotContext_14245_; lean_object* v_currMacroScope_14246_; lean_object* v___x_14247_; lean_object* v___x_14248_; lean_object* v___x_14249_; lean_object* v___x_14250_; lean_object* v___x_14251_; lean_object* v___x_14252_; lean_object* v___x_14253_; lean_object* v___x_14254_; lean_object* v___x_14255_; lean_object* v___x_14256_; lean_object* v___x_14257_; lean_object* v___x_14258_; lean_object* v___x_14259_; lean_object* v___x_14260_; lean_object* v___x_14261_; lean_object* v___x_14262_; lean_object* v___x_14263_; lean_object* v___x_14264_; lean_object* v___x_14265_; lean_object* v___x_14266_; lean_object* v___x_14267_; lean_object* v___x_14268_; lean_object* v___x_14269_; lean_object* v___x_14270_; lean_object* v___x_14271_; lean_object* v___x_14272_; lean_object* v___x_14273_; lean_object* v___x_14274_; lean_object* v___x_14275_; lean_object* v___x_14276_; lean_object* v___x_14277_; lean_object* v___x_14278_; lean_object* v___x_14279_; lean_object* v___x_14280_; lean_object* v___x_14281_; lean_object* v___x_14282_; lean_object* v___x_14283_; lean_object* v___x_14284_; lean_object* v___x_14285_; lean_object* v___x_14286_; lean_object* v___x_14287_; lean_object* v___x_14288_; lean_object* v___x_14289_; lean_object* v___x_14290_; lean_object* v___x_14291_; 
v_ref_14244_ = lean_ctor_get(v___y_14126_, 5);
v_quotContext_14245_ = lean_ctor_get(v___y_14126_, 10);
v_currMacroScope_14246_ = lean_ctor_get(v___y_14126_, 11);
v___x_14247_ = l_Lean_SourceInfo_fromRef(v_ref_14244_, v___x_14243_);
v___x_14248_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14249_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14248_);
lean_inc(v___x_14247_);
v___x_14250_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14250_, 0, v___x_14247_);
lean_ctor_set(v___x_14250_, 1, v___x_14248_);
v___x_14251_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14252_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14251_);
v___x_14253_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14254_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14255_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14254_);
v___x_14256_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14257_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14256_);
v___x_14258_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_14111_, v___x_14115_);
lean_dec(v_doLetArrow_14111_);
v___x_14259_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_14260_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14260_, 0, v___x_14258_);
lean_ctor_set(v___x_14260_, 1, v___x_14259_);
v___x_14261_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14247_);
v___x_14262_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14262_, 0, v___x_14247_);
lean_ctor_set(v___x_14262_, 1, v___x_14253_);
lean_ctor_set(v___x_14262_, 2, v___x_14261_);
v___x_14263_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_14264_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_14246_);
lean_inc(v_quotContext_14245_);
v___x_14265_ = l_Lean_addMacroScope(v_quotContext_14245_, v___x_14264_, v_currMacroScope_14246_);
v___x_14266_ = lean_box(0);
lean_inc(v___x_14247_);
v___x_14267_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14267_, 0, v___x_14247_);
lean_ctor_set(v___x_14267_, 1, v___x_14263_);
lean_ctor_set(v___x_14267_, 2, v___x_14265_);
lean_ctor_set(v___x_14267_, 3, v___x_14266_);
v___x_14268_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_14247_);
v___x_14269_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14269_, 0, v___x_14247_);
lean_ctor_set(v___x_14269_, 1, v___x_14268_);
lean_inc_ref(v___x_14262_);
lean_inc_ref(v___x_14267_);
lean_inc(v___x_14247_);
v___x_14270_ = l_Lean_Syntax_node4(v___x_14247_, v___x_14116_, v___x_14267_, v___x_14262_, v___x_14269_, v_doElem_14117_);
lean_inc_ref(v___x_14262_);
lean_inc_ref(v___x_14260_);
lean_inc(v___x_14247_);
v___x_14271_ = l_Lean_Syntax_node3(v___x_14247_, v___x_14257_, v___x_14260_, v___x_14262_, v___x_14270_);
v___x_14272_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_14247_);
v___x_14273_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14273_, 0, v___x_14247_);
lean_ctor_set(v___x_14273_, 1, v___x_14272_);
lean_inc(v___x_14247_);
v___x_14274_ = l_Lean_Syntax_node1(v___x_14247_, v___x_14253_, v___x_14273_);
lean_inc(v___x_14255_);
lean_inc(v___x_14247_);
v___x_14275_ = l_Lean_Syntax_node2(v___x_14247_, v___x_14255_, v___x_14271_, v___x_14274_);
v___x_14276_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14277_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14276_);
v___x_14278_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14279_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14278_);
v___x_14280_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_14281_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14280_);
v___x_14282_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14247_);
v___x_14283_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14283_, 0, v___x_14247_);
lean_ctor_set(v___x_14283_, 1, v___x_14282_);
lean_inc_ref_n(v___x_14262_, 2);
lean_inc(v___x_14247_);
v___x_14284_ = l_Lean_Syntax_node5(v___x_14247_, v___x_14281_, v_pattern_14118_, v___x_14262_, v___x_14262_, v___x_14283_, v___x_14267_);
lean_inc(v___x_14247_);
v___x_14285_ = l_Lean_Syntax_node1(v___x_14247_, v___x_14279_, v___x_14284_);
lean_inc_ref(v___x_14262_);
lean_inc(v___x_14247_);
v___x_14286_ = l_Lean_Syntax_node3(v___x_14247_, v___x_14277_, v___x_14260_, v___x_14262_, v___x_14285_);
lean_inc(v___x_14247_);
v___x_14287_ = l_Lean_Syntax_node2(v___x_14247_, v___x_14255_, v___x_14286_, v___x_14262_);
lean_inc(v___x_14247_);
v___x_14288_ = l_Lean_Syntax_node2(v___x_14247_, v___x_14253_, v___x_14275_, v___x_14287_);
lean_inc(v___x_14247_);
v___x_14289_ = l_Lean_Syntax_node1(v___x_14247_, v___x_14252_, v___x_14288_);
v___x_14290_ = l_Lean_Syntax_node2(v___x_14247_, v___x_14249_, v___x_14250_, v___x_14289_);
v___x_14291_ = lean_apply_9(v___f_14119_, v___x_14290_, v_a_14120_, v_a_14121_, v_a_14122_, v_a_14123_, v_a_14124_, v___y_14126_, v___y_14127_, lean_box(0));
return v___x_14291_;
}
else
{
lean_object* v_ref_14292_; lean_object* v_quotContext_14293_; lean_object* v_currMacroScope_14294_; lean_object* v___x_14295_; lean_object* v___x_14296_; lean_object* v___x_14297_; lean_object* v___x_14298_; lean_object* v___x_14299_; lean_object* v___x_14300_; lean_object* v___x_14301_; lean_object* v___x_14302_; lean_object* v___x_14303_; lean_object* v___x_14304_; lean_object* v___x_14305_; lean_object* v___x_14306_; lean_object* v___x_14307_; lean_object* v___x_14308_; lean_object* v___x_14309_; lean_object* v___x_14310_; lean_object* v___x_14311_; lean_object* v___x_14312_; lean_object* v___x_14313_; lean_object* v___x_14314_; lean_object* v___x_14315_; lean_object* v___x_14316_; lean_object* v___x_14317_; lean_object* v___x_14318_; lean_object* v___x_14319_; lean_object* v___x_14320_; lean_object* v___x_14321_; lean_object* v___x_14322_; lean_object* v___x_14323_; lean_object* v___x_14324_; lean_object* v___x_14325_; lean_object* v___x_14326_; lean_object* v___x_14327_; lean_object* v___x_14328_; lean_object* v___x_14329_; lean_object* v___x_14330_; lean_object* v___x_14331_; lean_object* v___x_14332_; lean_object* v___x_14333_; lean_object* v___x_14334_; lean_object* v___x_14335_; lean_object* v___x_14336_; lean_object* v___x_14337_; lean_object* v___x_14338_; lean_object* v___x_14339_; lean_object* v___x_14340_; lean_object* v___x_14341_; lean_object* v___x_14342_; 
v_ref_14292_ = lean_ctor_get(v___y_14126_, 5);
v_quotContext_14293_ = lean_ctor_get(v___y_14126_, 10);
v_currMacroScope_14294_ = lean_ctor_get(v___y_14126_, 11);
v___x_14295_ = l_Lean_SourceInfo_fromRef(v_ref_14292_, v___x_14125_);
v___x_14296_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14297_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14296_);
lean_inc(v___x_14295_);
v___x_14298_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14298_, 0, v___x_14295_);
lean_ctor_set(v___x_14298_, 1, v___x_14296_);
v___x_14299_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14300_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14299_);
v___x_14301_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14302_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__24));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14303_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14302_);
v___x_14304_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__8));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14305_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14304_);
v___x_14306_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_14111_, v___x_14115_);
lean_dec(v_doLetArrow_14111_);
v___x_14307_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_14308_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14308_, 0, v___x_14306_);
lean_ctor_set(v___x_14308_, 1, v___x_14307_);
v___x_14309_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14295_);
v___x_14310_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14310_, 0, v___x_14295_);
lean_ctor_set(v___x_14310_, 1, v___x_14301_);
lean_ctor_set(v___x_14310_, 2, v___x_14309_);
v___x_14311_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_14312_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_14294_);
lean_inc(v_quotContext_14293_);
v___x_14313_ = l_Lean_addMacroScope(v_quotContext_14293_, v___x_14312_, v_currMacroScope_14294_);
v___x_14314_ = lean_box(0);
lean_inc(v___x_14295_);
v___x_14315_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14315_, 0, v___x_14295_);
lean_ctor_set(v___x_14315_, 1, v___x_14311_);
lean_ctor_set(v___x_14315_, 2, v___x_14313_);
lean_ctor_set(v___x_14315_, 3, v___x_14314_);
v___x_14316_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_14295_);
v___x_14317_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14317_, 0, v___x_14295_);
lean_ctor_set(v___x_14317_, 1, v___x_14316_);
lean_inc_ref(v___x_14310_);
lean_inc_ref(v___x_14315_);
lean_inc(v___x_14295_);
v___x_14318_ = l_Lean_Syntax_node4(v___x_14295_, v___x_14116_, v___x_14315_, v___x_14310_, v___x_14317_, v_doElem_14117_);
lean_inc_ref(v___x_14310_);
lean_inc_ref(v___x_14308_);
lean_inc(v___x_14295_);
v___x_14319_ = l_Lean_Syntax_node3(v___x_14295_, v___x_14305_, v___x_14308_, v___x_14310_, v___x_14318_);
v___x_14320_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_14295_);
v___x_14321_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14321_, 0, v___x_14295_);
lean_ctor_set(v___x_14321_, 1, v___x_14320_);
lean_inc(v___x_14295_);
v___x_14322_ = l_Lean_Syntax_node1(v___x_14295_, v___x_14301_, v___x_14321_);
lean_inc(v___x_14303_);
lean_inc(v___x_14295_);
v___x_14323_ = l_Lean_Syntax_node2(v___x_14295_, v___x_14303_, v___x_14319_, v___x_14322_);
v___x_14324_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__6));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14325_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14324_);
v___x_14326_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0));
lean_inc(v___x_14295_);
v___x_14327_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14327_, 0, v___x_14295_);
lean_ctor_set(v___x_14327_, 1, v___x_14326_);
lean_inc(v___x_14295_);
v___x_14328_ = l_Lean_Syntax_node1(v___x_14295_, v___x_14301_, v___x_14327_);
v___x_14329_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__5));
lean_inc_ref(v___x_14114_);
lean_inc_ref(v___x_14113_);
lean_inc_ref(v___x_14112_);
v___x_14330_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14329_);
v___x_14331_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__0));
v___x_14332_ = l_Lean_Name_mkStr4(v___x_14112_, v___x_14113_, v___x_14114_, v___x_14331_);
v___x_14333_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14295_);
v___x_14334_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14334_, 0, v___x_14295_);
lean_ctor_set(v___x_14334_, 1, v___x_14333_);
lean_inc_ref_n(v___x_14310_, 2);
lean_inc(v___x_14295_);
v___x_14335_ = l_Lean_Syntax_node5(v___x_14295_, v___x_14332_, v_pattern_14118_, v___x_14310_, v___x_14310_, v___x_14334_, v___x_14315_);
lean_inc(v___x_14295_);
v___x_14336_ = l_Lean_Syntax_node1(v___x_14295_, v___x_14330_, v___x_14335_);
lean_inc(v___x_14295_);
v___x_14337_ = l_Lean_Syntax_node3(v___x_14295_, v___x_14325_, v___x_14308_, v___x_14328_, v___x_14336_);
lean_inc(v___x_14295_);
v___x_14338_ = l_Lean_Syntax_node2(v___x_14295_, v___x_14303_, v___x_14337_, v___x_14310_);
lean_inc(v___x_14295_);
v___x_14339_ = l_Lean_Syntax_node2(v___x_14295_, v___x_14301_, v___x_14323_, v___x_14338_);
lean_inc(v___x_14295_);
v___x_14340_ = l_Lean_Syntax_node1(v___x_14295_, v___x_14300_, v___x_14339_);
v___x_14341_ = l_Lean_Syntax_node2(v___x_14295_, v___x_14297_, v___x_14298_, v___x_14340_);
v___x_14342_ = lean_apply_9(v___f_14119_, v___x_14341_, v_a_14120_, v_a_14121_, v_a_14122_, v_a_14123_, v_a_14124_, v___y_14126_, v___y_14127_, lean_box(0));
return v___x_14342_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___boxed(lean_object** _args){
lean_object* v___x_14343_ = _args[0];
lean_object* v_optType_14344_ = _args[1];
lean_object* v___x_14345_ = _args[2];
lean_object* v___x_14346_ = _args[3];
lean_object* v_doLetArrow_14347_ = _args[4];
lean_object* v___x_14348_ = _args[5];
lean_object* v___x_14349_ = _args[6];
lean_object* v___x_14350_ = _args[7];
lean_object* v___x_14351_ = _args[8];
lean_object* v___x_14352_ = _args[9];
lean_object* v_doElem_14353_ = _args[10];
lean_object* v_pattern_14354_ = _args[11];
lean_object* v___f_14355_ = _args[12];
lean_object* v_a_14356_ = _args[13];
lean_object* v_a_14357_ = _args[14];
lean_object* v_a_14358_ = _args[15];
lean_object* v_a_14359_ = _args[16];
lean_object* v_a_14360_ = _args[17];
lean_object* v___x_14361_ = _args[18];
lean_object* v___y_14362_ = _args[19];
lean_object* v___y_14363_ = _args[20];
lean_object* v___y_14364_ = _args[21];
_start:
{
uint8_t v___x_270597__boxed_14365_; uint8_t v___x_270603__boxed_14366_; uint8_t v___x_270611__boxed_14367_; lean_object* v_res_14368_; 
v___x_270597__boxed_14365_ = lean_unbox(v___x_14343_);
v___x_270603__boxed_14366_ = lean_unbox(v___x_14351_);
v___x_270611__boxed_14367_ = lean_unbox(v___x_14361_);
v_res_14368_ = l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1(v___x_270597__boxed_14365_, v_optType_14344_, v___x_14345_, v___x_14346_, v_doLetArrow_14347_, v___x_14348_, v___x_14349_, v___x_14350_, v___x_270603__boxed_14366_, v___x_14352_, v_doElem_14353_, v_pattern_14354_, v___f_14355_, v_a_14356_, v_a_14357_, v_a_14358_, v_a_14359_, v_a_14360_, v___x_270611__boxed_14367_, v___y_14362_, v___y_14363_);
lean_dec(v___x_14346_);
lean_dec(v___x_14345_);
lean_dec(v_optType_14344_);
return v_res_14368_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg(uint8_t v___x_14369_, size_t v_sz_14370_, size_t v_i_14371_, lean_object* v_bs_14372_, lean_object* v___y_14373_){
_start:
{
uint8_t v___x_14375_; 
v___x_14375_ = lean_usize_dec_lt(v_i_14371_, v_sz_14370_);
if (v___x_14375_ == 0)
{
lean_object* v___x_14376_; 
v___x_14376_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14376_, 0, v_bs_14372_);
return v___x_14376_;
}
else
{
lean_object* v_ref_14377_; lean_object* v_v_14378_; lean_object* v___x_14379_; lean_object* v_bs_x27_14380_; lean_object* v___x_14381_; lean_object* v___x_14382_; lean_object* v___x_14383_; lean_object* v___x_14384_; lean_object* v___x_14385_; lean_object* v___x_14386_; lean_object* v___x_14387_; lean_object* v___x_14388_; lean_object* v___x_14389_; lean_object* v___x_14390_; lean_object* v___x_14391_; lean_object* v___x_14392_; lean_object* v___x_14393_; lean_object* v___x_14394_; lean_object* v___x_14395_; lean_object* v___x_14396_; lean_object* v___x_14397_; lean_object* v___x_14398_; lean_object* v___x_14399_; size_t v___x_14400_; size_t v___x_14401_; lean_object* v___x_14402_; 
v_ref_14377_ = lean_ctor_get(v___y_14373_, 5);
v_v_14378_ = lean_array_uget(v_bs_14372_, v_i_14371_);
v___x_14379_ = lean_unsigned_to_nat(0u);
v_bs_x27_14380_ = lean_array_uset(v_bs_14372_, v_i_14371_, v___x_14379_);
v___x_14381_ = l_Lean_SourceInfo_fromRef(v_ref_14377_, v___x_14369_);
v___x_14382_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_14383_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_14381_);
v___x_14384_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14384_, 0, v___x_14381_);
lean_ctor_set(v___x_14384_, 1, v___x_14383_);
v___x_14385_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14386_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0));
lean_inc(v___x_14381_);
v___x_14387_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14387_, 0, v___x_14381_);
lean_ctor_set(v___x_14387_, 1, v___x_14386_);
lean_inc(v___x_14381_);
v___x_14388_ = l_Lean_Syntax_node1(v___x_14381_, v___x_14385_, v___x_14387_);
v___x_14389_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_14390_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_14391_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v_v_14378_);
lean_inc(v___x_14381_);
v___x_14392_ = l_Lean_Syntax_node1(v___x_14381_, v___x_14391_, v_v_14378_);
v___x_14393_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14381_);
v___x_14394_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14394_, 0, v___x_14381_);
lean_ctor_set(v___x_14394_, 1, v___x_14385_);
lean_ctor_set(v___x_14394_, 2, v___x_14393_);
v___x_14395_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14381_);
v___x_14396_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14396_, 0, v___x_14381_);
lean_ctor_set(v___x_14396_, 1, v___x_14395_);
lean_inc_ref(v___x_14394_);
lean_inc(v___x_14381_);
v___x_14397_ = l_Lean_Syntax_node5(v___x_14381_, v___x_14390_, v___x_14392_, v___x_14394_, v___x_14394_, v___x_14396_, v_v_14378_);
lean_inc(v___x_14381_);
v___x_14398_ = l_Lean_Syntax_node1(v___x_14381_, v___x_14389_, v___x_14397_);
v___x_14399_ = l_Lean_Syntax_node3(v___x_14381_, v___x_14382_, v___x_14384_, v___x_14388_, v___x_14398_);
v___x_14400_ = ((size_t)1ULL);
v___x_14401_ = lean_usize_add(v_i_14371_, v___x_14400_);
v___x_14402_ = lean_array_uset(v_bs_x27_14380_, v_i_14371_, v___x_14399_);
v_i_14371_ = v___x_14401_;
v_bs_14372_ = v___x_14402_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg___boxed(lean_object* v___x_14404_, lean_object* v_sz_14405_, lean_object* v_i_14406_, lean_object* v_bs_14407_, lean_object* v___y_14408_, lean_object* v___y_14409_){
_start:
{
uint8_t v___x_271090__boxed_14410_; size_t v_sz_boxed_14411_; size_t v_i_boxed_14412_; lean_object* v_res_14413_; 
v___x_271090__boxed_14410_ = lean_unbox(v___x_14404_);
v_sz_boxed_14411_ = lean_unbox_usize(v_sz_14405_);
lean_dec(v_sz_14405_);
v_i_boxed_14412_ = lean_unbox_usize(v_i_14406_);
lean_dec(v_i_14406_);
v_res_14413_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg(v___x_271090__boxed_14410_, v_sz_boxed_14411_, v_i_boxed_14412_, v_bs_14407_, v___y_14408_);
lean_dec_ref(v___y_14408_);
return v_res_14413_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg(size_t v_sz_14414_, size_t v_i_14415_, lean_object* v_bs_14416_, lean_object* v___y_14417_){
_start:
{
uint8_t v___x_14419_; 
v___x_14419_ = lean_usize_dec_lt(v_i_14415_, v_sz_14414_);
if (v___x_14419_ == 0)
{
lean_object* v___x_14420_; 
v___x_14420_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14420_, 0, v_bs_14416_);
return v___x_14420_;
}
else
{
lean_object* v_ref_14421_; lean_object* v_v_14422_; lean_object* v___x_14423_; lean_object* v_bs_x27_14424_; uint8_t v___x_14425_; lean_object* v___x_14426_; lean_object* v___x_14427_; lean_object* v___x_14428_; lean_object* v___x_14429_; lean_object* v___x_14430_; lean_object* v___x_14431_; lean_object* v___x_14432_; lean_object* v___x_14433_; lean_object* v___x_14434_; lean_object* v___x_14435_; lean_object* v___x_14436_; lean_object* v___x_14437_; lean_object* v___x_14438_; lean_object* v___x_14439_; lean_object* v___x_14440_; lean_object* v___x_14441_; lean_object* v___x_14442_; lean_object* v___x_14443_; lean_object* v___x_14444_; size_t v___x_14445_; size_t v___x_14446_; lean_object* v___x_14447_; 
v_ref_14421_ = lean_ctor_get(v___y_14417_, 5);
v_v_14422_ = lean_array_uget(v_bs_14416_, v_i_14415_);
v___x_14423_ = lean_unsigned_to_nat(0u);
v_bs_x27_14424_ = lean_array_uset(v_bs_14416_, v_i_14415_, v___x_14423_);
v___x_14425_ = 0;
v___x_14426_ = l_Lean_SourceInfo_fromRef(v_ref_14421_, v___x_14425_);
v___x_14427_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_14428_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_14426_);
v___x_14429_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14429_, 0, v___x_14426_);
lean_ctor_set(v___x_14429_, 1, v___x_14428_);
v___x_14430_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14431_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0));
lean_inc(v___x_14426_);
v___x_14432_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14432_, 0, v___x_14426_);
lean_ctor_set(v___x_14432_, 1, v___x_14431_);
lean_inc(v___x_14426_);
v___x_14433_ = l_Lean_Syntax_node1(v___x_14426_, v___x_14430_, v___x_14432_);
v___x_14434_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_14435_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_14436_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v_v_14422_);
lean_inc(v___x_14426_);
v___x_14437_ = l_Lean_Syntax_node1(v___x_14426_, v___x_14436_, v_v_14422_);
v___x_14438_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14426_);
v___x_14439_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14439_, 0, v___x_14426_);
lean_ctor_set(v___x_14439_, 1, v___x_14430_);
lean_ctor_set(v___x_14439_, 2, v___x_14438_);
v___x_14440_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_14426_);
v___x_14441_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14441_, 0, v___x_14426_);
lean_ctor_set(v___x_14441_, 1, v___x_14440_);
lean_inc_ref(v___x_14439_);
lean_inc(v___x_14426_);
v___x_14442_ = l_Lean_Syntax_node5(v___x_14426_, v___x_14435_, v___x_14437_, v___x_14439_, v___x_14439_, v___x_14441_, v_v_14422_);
lean_inc(v___x_14426_);
v___x_14443_ = l_Lean_Syntax_node1(v___x_14426_, v___x_14434_, v___x_14442_);
v___x_14444_ = l_Lean_Syntax_node3(v___x_14426_, v___x_14427_, v___x_14429_, v___x_14433_, v___x_14443_);
v___x_14445_ = ((size_t)1ULL);
v___x_14446_ = lean_usize_add(v_i_14415_, v___x_14445_);
v___x_14447_ = lean_array_uset(v_bs_x27_14424_, v_i_14415_, v___x_14444_);
v_i_14415_ = v___x_14446_;
v_bs_14416_ = v___x_14447_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg___boxed(lean_object* v_sz_14449_, lean_object* v_i_14450_, lean_object* v_bs_14451_, lean_object* v___y_14452_, lean_object* v___y_14453_){
_start:
{
size_t v_sz_boxed_14454_; size_t v_i_boxed_14455_; lean_object* v_res_14456_; 
v_sz_boxed_14454_ = lean_unbox_usize(v_sz_14449_);
lean_dec(v_sz_14449_);
v_i_boxed_14455_ = lean_unbox_usize(v_i_14450_);
lean_dec(v_i_14450_);
v_res_14456_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg(v_sz_boxed_14454_, v_i_boxed_14455_, v_bs_14451_, v___y_14452_);
lean_dec_ref(v___y_14452_);
return v_res_14456_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(uint8_t v___x_14457_, lean_object* v_____do__lift_14458_, lean_object* v___y_14459_, lean_object* v___y_14460_, lean_object* v___y_14461_, lean_object* v___y_14462_, lean_object* v___y_14463_, lean_object* v___y_14464_, lean_object* v___y_14465_){
_start:
{
lean_object* v___x_14467_; lean_object* v___x_14468_; 
v___x_14467_ = l_Lean_SourceInfo_fromRef(v_____do__lift_14458_, v___x_14457_);
v___x_14468_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14468_, 0, v___x_14467_);
return v___x_14468_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0___boxed(lean_object* v___x_14469_, lean_object* v_____do__lift_14470_, lean_object* v___y_14471_, lean_object* v___y_14472_, lean_object* v___y_14473_, lean_object* v___y_14474_, lean_object* v___y_14475_, lean_object* v___y_14476_, lean_object* v___y_14477_, lean_object* v___y_14478_){
_start:
{
uint8_t v___x_271261__boxed_14479_; lean_object* v_res_14480_; 
v___x_271261__boxed_14479_ = lean_unbox(v___x_14469_);
v_res_14480_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_271261__boxed_14479_, v_____do__lift_14470_, v___y_14471_, v___y_14472_, v___y_14473_, v___y_14474_, v___y_14475_, v___y_14476_, v___y_14477_);
lean_dec(v___y_14477_);
lean_dec_ref(v___y_14476_);
lean_dec(v___y_14475_);
lean_dec_ref(v___y_14474_);
lean_dec(v___y_14473_);
lean_dec_ref(v___y_14472_);
lean_dec_ref(v___y_14471_);
lean_dec(v_____do__lift_14470_);
return v_res_14480_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg(lean_object* v_t_14481_, lean_object* v_k_14482_, lean_object* v_fallback_14483_){
_start:
{
if (lean_obj_tag(v_t_14481_) == 0)
{
lean_object* v_k_14484_; lean_object* v_v_14485_; lean_object* v_l_14486_; lean_object* v_r_14487_; uint8_t v___x_14488_; 
v_k_14484_ = lean_ctor_get(v_t_14481_, 1);
v_v_14485_ = lean_ctor_get(v_t_14481_, 2);
v_l_14486_ = lean_ctor_get(v_t_14481_, 3);
v_r_14487_ = lean_ctor_get(v_t_14481_, 4);
v___x_14488_ = l_Lean_Name_cmp(v_k_14482_, v_k_14484_);
switch(v___x_14488_)
{
case 0:
{
v_t_14481_ = v_l_14486_;
goto _start;
}
case 1:
{
lean_inc(v_v_14485_);
return v_v_14485_;
}
default: 
{
v_t_14481_ = v_r_14487_;
goto _start;
}
}
}
else
{
lean_inc(v_fallback_14483_);
return v_fallback_14483_;
}
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg___boxed(lean_object* v_t_14491_, lean_object* v_k_14492_, lean_object* v_fallback_14493_){
_start:
{
lean_object* v_res_14494_; 
v_res_14494_ = l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg(v_t_14491_, v_k_14492_, v_fallback_14493_);
lean_dec(v_fallback_14493_);
lean_dec(v_k_14492_);
lean_dec(v_t_14491_);
return v_res_14494_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12(lean_object* v_a_14495_, size_t v_sz_14496_, size_t v_i_14497_, lean_object* v_bs_14498_){
_start:
{
uint8_t v___x_14499_; 
v___x_14499_ = lean_usize_dec_lt(v_i_14497_, v_sz_14496_);
if (v___x_14499_ == 0)
{
return v_bs_14498_;
}
else
{
lean_object* v_mutableVars_14500_; lean_object* v_v_14501_; lean_object* v___x_14502_; lean_object* v_bs_x27_14503_; lean_object* v___x_14504_; lean_object* v___x_14505_; size_t v___x_14506_; size_t v___x_14507_; lean_object* v___x_14508_; 
v_mutableVars_14500_ = lean_ctor_get(v_a_14495_, 3);
v_v_14501_ = lean_array_uget(v_bs_14498_, v_i_14497_);
v___x_14502_ = lean_unsigned_to_nat(0u);
v_bs_x27_14503_ = lean_array_uset(v_bs_14498_, v_i_14497_, v___x_14502_);
v___x_14504_ = l_Lean_Syntax_getId(v_v_14501_);
v___x_14505_ = l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg(v_mutableVars_14500_, v___x_14504_, v_v_14501_);
lean_dec(v_v_14501_);
lean_dec(v___x_14504_);
v___x_14506_ = ((size_t)1ULL);
v___x_14507_ = lean_usize_add(v_i_14497_, v___x_14506_);
v___x_14508_ = lean_array_uset(v_bs_x27_14503_, v_i_14497_, v___x_14505_);
v_i_14497_ = v___x_14507_;
v_bs_14498_ = v___x_14508_;
goto _start;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12___boxed(lean_object* v_a_14510_, lean_object* v_sz_14511_, lean_object* v_i_14512_, lean_object* v_bs_14513_){
_start:
{
size_t v_sz_boxed_14514_; size_t v_i_boxed_14515_; lean_object* v_res_14516_; 
v_sz_boxed_14514_ = lean_unbox_usize(v_sz_14511_);
lean_dec(v_sz_14511_);
v_i_boxed_14515_ = lean_unbox_usize(v_i_14512_);
lean_dec(v_i_14512_);
v_res_14516_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12(v_a_14510_, v_sz_boxed_14514_, v_i_boxed_14515_, v_bs_14513_);
lean_dec_ref(v_a_14510_);
return v_res_14516_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6(void){
_start:
{
lean_object* v___x_14543_; lean_object* v___x_14544_; 
v___x_14543_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__5));
v___x_14544_ = l_Lean_stringToMessageData(v___x_14543_);
return v___x_14544_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8(void){
_start:
{
lean_object* v___x_14546_; lean_object* v___x_14547_; 
v___x_14546_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__7));
v___x_14547_ = l_Lean_stringToMessageData(v___x_14546_);
return v___x_14547_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5(void){
_start:
{
lean_object* v___x_14561_; lean_object* v___x_14562_; 
v___x_14561_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__4));
v___x_14562_ = l_Lean_stringToMessageData(v___x_14561_);
return v___x_14562_;
}
}
static lean_object* _init_l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7(void){
_start:
{
lean_object* v___x_14564_; lean_object* v___x_14565_; 
v___x_14564_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__6));
v___x_14565_ = l_String_toRawSubstring_x27(v___x_14564_);
return v___x_14565_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2(size_t v_sz_14568_, size_t v_i_14569_, lean_object* v_bs_14570_, lean_object* v___y_14571_, lean_object* v___y_14572_, lean_object* v___y_14573_, lean_object* v___y_14574_, lean_object* v___y_14575_, lean_object* v___y_14576_, lean_object* v___y_14577_){
_start:
{
uint8_t v___x_14579_; 
v___x_14579_ = lean_usize_dec_lt(v_i_14569_, v_sz_14568_);
if (v___x_14579_ == 0)
{
lean_object* v___x_14580_; 
lean_dec(v___y_14577_);
lean_dec_ref(v___y_14576_);
lean_dec(v___y_14575_);
lean_dec_ref(v___y_14574_);
lean_dec(v___y_14573_);
lean_dec_ref(v___y_14572_);
lean_dec_ref(v___y_14571_);
v___x_14580_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14580_, 0, v_bs_14570_);
return v___x_14580_;
}
else
{
lean_object* v___x_14581_; lean_object* v_v_14582_; lean_object* v___x_14583_; lean_object* v_bs_x27_14584_; lean_object* v_a_14586_; lean_object* v___x_14591_; lean_object* v___x_14592_; uint8_t v___x_14593_; 
v___x_14581_ = lean_unsigned_to_nat(1u);
v_v_14582_ = lean_array_uget(v_bs_14570_, v_i_14569_);
v___x_14583_ = lean_unsigned_to_nat(0u);
v_bs_x27_14584_ = lean_array_uset(v_bs_14570_, v_i_14569_, v___x_14583_);
lean_inc(v_v_14582_);
v___x_14591_ = l_Lean_Syntax_getKind(v_v_14582_);
v___x_14592_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__1));
v___x_14593_ = lean_name_eq(v___x_14591_, v___x_14592_);
if (v___x_14593_ == 0)
{
lean_object* v___x_14594_; uint8_t v___x_14595_; 
v___x_14594_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__3));
v___x_14595_ = lean_name_eq(v___x_14591_, v___x_14594_);
lean_dec(v___x_14591_);
if (v___x_14595_ == 0)
{
lean_object* v___x_14596_; lean_object* v___x_14597_; 
lean_dec(v_v_14582_);
v___x_14596_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5, &l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5_once, _init_l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__5);
v___x_14597_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_14596_, v___y_14574_, v___y_14575_, v___y_14576_, v___y_14577_);
if (lean_obj_tag(v___x_14597_) == 0)
{
lean_object* v_a_14598_; 
v_a_14598_ = lean_ctor_get(v___x_14597_, 0);
lean_inc(v_a_14598_);
lean_dec_ref(v___x_14597_);
v_a_14586_ = v_a_14598_;
goto v___jp_14585_;
}
else
{
lean_object* v_a_14599_; lean_object* v___x_14600_; 
lean_dec_ref(v_bs_x27_14584_);
lean_dec(v___y_14577_);
lean_dec_ref(v___y_14576_);
lean_dec(v___y_14575_);
lean_dec_ref(v___y_14574_);
lean_dec(v___y_14573_);
lean_dec_ref(v___y_14572_);
lean_dec_ref(v___y_14571_);
v_a_14599_ = lean_ctor_get(v___x_14597_, 0);
lean_inc(v_a_14599_);
lean_dec_ref(v___x_14597_);
v___x_14600_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14600_, 0, v_a_14599_);
return v___x_14600_;
}
}
else
{
lean_object* v_ref_14601_; lean_object* v_quotContext_14602_; lean_object* v_currMacroScope_14603_; lean_object* v___x_14604_; lean_object* v___x_14605_; lean_object* v___x_14606_; lean_object* v___x_14607_; lean_object* v___x_14608_; lean_object* v___x_14609_; lean_object* v___x_14610_; lean_object* v___x_14611_; lean_object* v___x_14612_; lean_object* v___x_14613_; lean_object* v___x_14614_; lean_object* v___x_14615_; lean_object* v___x_14616_; lean_object* v___x_14617_; lean_object* v___x_14618_; lean_object* v___x_14619_; lean_object* v___x_14620_; lean_object* v___x_14621_; lean_object* v___x_14622_; lean_object* v___x_14623_; lean_object* v___x_14624_; lean_object* v___x_14625_; lean_object* v___x_14626_; lean_object* v___x_14627_; lean_object* v___x_14628_; lean_object* v___x_14629_; lean_object* v___x_14630_; lean_object* v___x_14631_; lean_object* v___x_14632_; lean_object* v___x_14633_; lean_object* v___x_14634_; 
v_ref_14601_ = lean_ctor_get(v___y_14576_, 5);
v_quotContext_14602_ = lean_ctor_get(v___y_14576_, 10);
v_currMacroScope_14603_ = lean_ctor_get(v___y_14576_, 11);
v___x_14604_ = l_Lean_Syntax_getArg(v_v_14582_, v___x_14581_);
lean_dec(v_v_14582_);
v___x_14605_ = l_Lean_SourceInfo_fromRef(v_ref_14601_, v___x_14593_);
v___x_14606_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7, &l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7_once, _init_l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__7);
v___x_14607_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_14608_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_14605_);
v___x_14609_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14609_, 0, v___x_14605_);
lean_ctor_set(v___x_14609_, 1, v___x_14607_);
v___x_14610_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_14611_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_14612_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_14613_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_14614_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_14605_);
v___x_14615_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14615_, 0, v___x_14605_);
lean_ctor_set(v___x_14615_, 1, v___x_14614_);
v___x_14616_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_14605_);
v___x_14617_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_14617_, 0, v___x_14605_);
lean_ctor_set(v___x_14617_, 1, v___x_14611_);
lean_ctor_set(v___x_14617_, 2, v___x_14616_);
v___x_14618_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
v___x_14619_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___closed__8));
lean_inc(v_currMacroScope_14603_);
lean_inc(v_quotContext_14602_);
v___x_14620_ = l_Lean_addMacroScope(v_quotContext_14602_, v___x_14619_, v_currMacroScope_14603_);
v___x_14621_ = lean_box(0);
lean_inc(v___x_14605_);
v___x_14622_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_14622_, 0, v___x_14605_);
lean_ctor_set(v___x_14622_, 1, v___x_14606_);
lean_ctor_set(v___x_14622_, 2, v___x_14620_);
lean_ctor_set(v___x_14622_, 3, v___x_14621_);
lean_inc_ref(v___x_14622_);
lean_inc_ref(v___x_14617_);
lean_inc(v___x_14605_);
v___x_14623_ = l_Lean_Syntax_node2(v___x_14605_, v___x_14618_, v___x_14617_, v___x_14622_);
lean_inc(v___x_14605_);
v___x_14624_ = l_Lean_Syntax_node1(v___x_14605_, v___x_14611_, v___x_14623_);
v___x_14625_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_14605_);
v___x_14626_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_14626_, 0, v___x_14605_);
lean_ctor_set(v___x_14626_, 1, v___x_14625_);
lean_inc_ref_n(v___x_14617_, 3);
lean_inc(v___x_14605_);
v___x_14627_ = l_Lean_Syntax_node7(v___x_14605_, v___x_14613_, v___x_14615_, v___x_14617_, v___x_14617_, v___x_14617_, v___x_14624_, v___x_14626_, v___x_14604_);
lean_inc(v___x_14605_);
v___x_14628_ = l_Lean_Syntax_node2(v___x_14605_, v___x_14612_, v___x_14627_, v___x_14617_);
lean_inc(v___x_14605_);
v___x_14629_ = l_Lean_Syntax_node1(v___x_14605_, v___x_14611_, v___x_14628_);
lean_inc(v___x_14605_);
v___x_14630_ = l_Lean_Syntax_node1(v___x_14605_, v___x_14610_, v___x_14629_);
v___x_14631_ = l_Lean_Syntax_node2(v___x_14605_, v___x_14608_, v___x_14609_, v___x_14630_);
v___x_14632_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_14631_);
lean_dec(v___x_14631_);
v___x_14633_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_14632_);
lean_inc(v___y_14577_);
lean_inc_ref(v___y_14576_);
lean_inc(v___y_14575_);
lean_inc_ref(v___y_14574_);
lean_inc(v___y_14573_);
lean_inc_ref(v___y_14572_);
lean_inc_ref(v___y_14571_);
v___x_14634_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14633_, v___y_14571_, v___y_14572_, v___y_14573_, v___y_14574_, v___y_14575_, v___y_14576_, v___y_14577_);
if (lean_obj_tag(v___x_14634_) == 0)
{
lean_object* v_a_14635_; lean_object* v___x_14636_; lean_object* v___x_14637_; 
v_a_14635_ = lean_ctor_get(v___x_14634_, 0);
lean_inc(v_a_14635_);
lean_dec_ref(v___x_14634_);
v___x_14636_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkUnless___closed__0));
v___x_14637_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_14637_, 0, v___x_14622_);
lean_ctor_set(v___x_14637_, 1, v___x_14636_);
lean_ctor_set(v___x_14637_, 2, v_a_14635_);
v_a_14586_ = v___x_14637_;
goto v___jp_14585_;
}
else
{
lean_object* v_a_14638_; lean_object* v___x_14639_; 
lean_dec_ref(v___x_14622_);
lean_dec_ref(v_bs_x27_14584_);
lean_dec(v___y_14577_);
lean_dec_ref(v___y_14576_);
lean_dec(v___y_14575_);
lean_dec_ref(v___y_14574_);
lean_dec(v___y_14573_);
lean_dec_ref(v___y_14572_);
lean_dec_ref(v___y_14571_);
v_a_14638_ = lean_ctor_get(v___x_14634_, 0);
lean_inc(v_a_14638_);
lean_dec_ref(v___x_14634_);
v___x_14639_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14639_, 0, v_a_14638_);
return v___x_14639_;
}
}
}
else
{
lean_object* v___x_14640_; lean_object* v___y_14642_; lean_object* v___y_14643_; lean_object* v___y_14644_; lean_object* v___y_14645_; lean_object* v___y_14646_; lean_object* v___y_14647_; lean_object* v___y_14648_; uint8_t v___x_14659_; 
lean_dec(v___x_14591_);
v___x_14640_ = l_Lean_Syntax_getArg(v_v_14582_, v___x_14581_);
v___x_14659_ = l_Lean_Syntax_isIdent(v___x_14640_);
if (v___x_14659_ == 0)
{
lean_inc(v___y_14577_);
lean_inc_ref(v___y_14576_);
lean_inc(v___y_14575_);
lean_inc_ref(v___y_14574_);
lean_inc(v___y_14573_);
lean_inc_ref(v___y_14572_);
lean_inc_ref(v___y_14571_);
v___y_14642_ = v___y_14571_;
v___y_14643_ = v___y_14572_;
v___y_14644_ = v___y_14573_;
v___y_14645_ = v___y_14574_;
v___y_14646_ = v___y_14575_;
v___y_14647_ = v___y_14576_;
v___y_14648_ = v___y_14577_;
goto v___jp_14641_;
}
else
{
lean_object* v_fileName_14660_; lean_object* v_fileMap_14661_; lean_object* v_options_14662_; lean_object* v_currRecDepth_14663_; lean_object* v_maxRecDepth_14664_; lean_object* v_ref_14665_; lean_object* v_currNamespace_14666_; lean_object* v_openDecls_14667_; lean_object* v_initHeartbeats_14668_; lean_object* v_maxHeartbeats_14669_; lean_object* v_quotContext_14670_; lean_object* v_currMacroScope_14671_; uint8_t v_diag_14672_; lean_object* v_cancelTk_x3f_14673_; uint8_t v_suppressElabErrors_14674_; lean_object* v_inheritedTraceOptions_14675_; lean_object* v___x_14676_; lean_object* v___x_14677_; lean_object* v_ref_14678_; lean_object* v___x_14679_; lean_object* v___x_14680_; 
v_fileName_14660_ = lean_ctor_get(v___y_14576_, 0);
v_fileMap_14661_ = lean_ctor_get(v___y_14576_, 1);
v_options_14662_ = lean_ctor_get(v___y_14576_, 2);
v_currRecDepth_14663_ = lean_ctor_get(v___y_14576_, 3);
v_maxRecDepth_14664_ = lean_ctor_get(v___y_14576_, 4);
v_ref_14665_ = lean_ctor_get(v___y_14576_, 5);
v_currNamespace_14666_ = lean_ctor_get(v___y_14576_, 6);
v_openDecls_14667_ = lean_ctor_get(v___y_14576_, 7);
v_initHeartbeats_14668_ = lean_ctor_get(v___y_14576_, 8);
v_maxHeartbeats_14669_ = lean_ctor_get(v___y_14576_, 9);
v_quotContext_14670_ = lean_ctor_get(v___y_14576_, 10);
v_currMacroScope_14671_ = lean_ctor_get(v___y_14576_, 11);
v_diag_14672_ = lean_ctor_get_uint8(v___y_14576_, sizeof(void*)*14);
v_cancelTk_x3f_14673_ = lean_ctor_get(v___y_14576_, 12);
v_suppressElabErrors_14674_ = lean_ctor_get_uint8(v___y_14576_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_14675_ = lean_ctor_get(v___y_14576_, 13);
v___x_14676_ = lean_mk_empty_array_with_capacity(v___x_14581_);
lean_inc(v___x_14640_);
v___x_14677_ = lean_array_push(v___x_14676_, v___x_14640_);
v_ref_14678_ = l_Lean_replaceRef(v___x_14640_, v_ref_14665_);
lean_inc_ref(v_inheritedTraceOptions_14675_);
lean_inc(v_cancelTk_x3f_14673_);
lean_inc(v_currMacroScope_14671_);
lean_inc(v_quotContext_14670_);
lean_inc(v_maxHeartbeats_14669_);
lean_inc(v_initHeartbeats_14668_);
lean_inc(v_openDecls_14667_);
lean_inc(v_currNamespace_14666_);
lean_inc(v_maxRecDepth_14664_);
lean_inc(v_currRecDepth_14663_);
lean_inc_ref(v_options_14662_);
lean_inc_ref(v_fileMap_14661_);
lean_inc_ref(v_fileName_14660_);
v___x_14679_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_14679_, 0, v_fileName_14660_);
lean_ctor_set(v___x_14679_, 1, v_fileMap_14661_);
lean_ctor_set(v___x_14679_, 2, v_options_14662_);
lean_ctor_set(v___x_14679_, 3, v_currRecDepth_14663_);
lean_ctor_set(v___x_14679_, 4, v_maxRecDepth_14664_);
lean_ctor_set(v___x_14679_, 5, v_ref_14678_);
lean_ctor_set(v___x_14679_, 6, v_currNamespace_14666_);
lean_ctor_set(v___x_14679_, 7, v_openDecls_14667_);
lean_ctor_set(v___x_14679_, 8, v_initHeartbeats_14668_);
lean_ctor_set(v___x_14679_, 9, v_maxHeartbeats_14669_);
lean_ctor_set(v___x_14679_, 10, v_quotContext_14670_);
lean_ctor_set(v___x_14679_, 11, v_currMacroScope_14671_);
lean_ctor_set(v___x_14679_, 12, v_cancelTk_x3f_14673_);
lean_ctor_set(v___x_14679_, 13, v_inheritedTraceOptions_14675_);
lean_ctor_set_uint8(v___x_14679_, sizeof(void*)*14, v_diag_14672_);
lean_ctor_set_uint8(v___x_14679_, sizeof(void*)*14 + 1, v_suppressElabErrors_14674_);
v___x_14680_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v___x_14677_, v___y_14571_, v___y_14572_, v___y_14573_, v___y_14574_, v___y_14575_, v___x_14679_, v___y_14577_);
lean_dec_ref(v___x_14679_);
lean_dec_ref(v___x_14677_);
if (lean_obj_tag(v___x_14680_) == 0)
{
lean_dec_ref(v___x_14680_);
lean_inc(v___y_14577_);
lean_inc_ref(v___y_14576_);
lean_inc(v___y_14575_);
lean_inc_ref(v___y_14574_);
lean_inc(v___y_14573_);
lean_inc_ref(v___y_14572_);
lean_inc_ref(v___y_14571_);
v___y_14642_ = v___y_14571_;
v___y_14643_ = v___y_14572_;
v___y_14644_ = v___y_14573_;
v___y_14645_ = v___y_14574_;
v___y_14646_ = v___y_14575_;
v___y_14647_ = v___y_14576_;
v___y_14648_ = v___y_14577_;
goto v___jp_14641_;
}
else
{
lean_object* v_a_14681_; lean_object* v___x_14682_; 
lean_dec(v___x_14640_);
lean_dec_ref(v_bs_x27_14584_);
lean_dec(v_v_14582_);
lean_dec(v___y_14577_);
lean_dec_ref(v___y_14576_);
lean_dec(v___y_14575_);
lean_dec_ref(v___y_14574_);
lean_dec(v___y_14573_);
lean_dec_ref(v___y_14572_);
lean_dec_ref(v___y_14571_);
v_a_14681_ = lean_ctor_get(v___x_14680_, 0);
lean_inc(v_a_14681_);
lean_dec_ref(v___x_14680_);
v___x_14682_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14682_, 0, v_a_14681_);
return v___x_14682_;
}
}
v___jp_14641_:
{
lean_object* v___x_14649_; lean_object* v___x_14650_; lean_object* v___x_14651_; lean_object* v___x_14652_; 
v___x_14649_ = lean_unsigned_to_nat(4u);
v___x_14650_ = l_Lean_Syntax_getArg(v_v_14582_, v___x_14649_);
v___x_14651_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_14650_);
v___x_14652_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14651_, v___y_14642_, v___y_14643_, v___y_14644_, v___y_14645_, v___y_14646_, v___y_14647_, v___y_14648_);
if (lean_obj_tag(v___x_14652_) == 0)
{
lean_object* v_a_14653_; lean_object* v___x_14654_; lean_object* v___x_14655_; lean_object* v___x_14656_; 
v_a_14653_ = lean_ctor_get(v___x_14652_, 0);
lean_inc(v_a_14653_);
lean_dec_ref(v___x_14652_);
v___x_14654_ = lean_unsigned_to_nat(2u);
v___x_14655_ = l_Lean_Syntax_getArg(v_v_14582_, v___x_14654_);
lean_dec(v_v_14582_);
v___x_14656_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_14656_, 0, v___x_14640_);
lean_ctor_set(v___x_14656_, 1, v___x_14655_);
lean_ctor_set(v___x_14656_, 2, v_a_14653_);
v_a_14586_ = v___x_14656_;
goto v___jp_14585_;
}
else
{
lean_object* v_a_14657_; lean_object* v___x_14658_; 
lean_dec(v___x_14640_);
lean_dec_ref(v_bs_x27_14584_);
lean_dec(v_v_14582_);
lean_dec(v___y_14577_);
lean_dec_ref(v___y_14576_);
lean_dec(v___y_14575_);
lean_dec_ref(v___y_14574_);
lean_dec(v___y_14573_);
lean_dec_ref(v___y_14572_);
lean_dec_ref(v___y_14571_);
v_a_14657_ = lean_ctor_get(v___x_14652_, 0);
lean_inc(v_a_14657_);
lean_dec_ref(v___x_14652_);
v___x_14658_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14658_, 0, v_a_14657_);
return v___x_14658_;
}
}
}
v___jp_14585_:
{
size_t v___x_14587_; size_t v___x_14588_; lean_object* v___x_14589_; 
v___x_14587_ = ((size_t)1ULL);
v___x_14588_ = lean_usize_add(v_i_14569_, v___x_14587_);
v___x_14589_ = lean_array_uset(v_bs_x27_14584_, v_i_14569_, v_a_14586_);
v_i_14569_ = v___x_14588_;
v_bs_14570_ = v___x_14589_;
goto _start;
}
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1(void){
_start:
{
lean_object* v___x_14684_; lean_object* v___x_14685_; 
v___x_14684_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__0));
v___x_14685_ = l_Lean_stringToMessageData(v___x_14684_);
return v___x_14685_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6(void){
_start:
{
lean_object* v___x_14690_; lean_object* v___x_14691_; 
v___x_14690_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__5));
v___x_14691_ = l_Lean_stringToMessageData(v___x_14690_);
return v___x_14691_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode(lean_object* v_doTry_14692_, lean_object* v_doElems_14693_, lean_object* v_a_14694_, lean_object* v_a_14695_, lean_object* v_a_14696_, lean_object* v_a_14697_, lean_object* v_a_14698_, lean_object* v_a_14699_, lean_object* v_a_14700_){
_start:
{
uint8_t v___y_14703_; uint8_t v___y_14704_; uint8_t v___y_14705_; lean_object* v___y_14706_; lean_object* v_term_14707_; lean_object* v___y_14708_; lean_object* v___y_14709_; lean_object* v___y_14710_; lean_object* v___y_14711_; lean_object* v___y_14712_; lean_object* v___y_14713_; lean_object* v___y_14714_; uint8_t v___y_14726_; lean_object* v___y_14727_; lean_object* v___y_14728_; uint8_t v___y_14729_; lean_object* v___y_14730_; uint8_t v___y_14731_; lean_object* v___y_14732_; lean_object* v___y_14733_; lean_object* v___y_14734_; lean_object* v___y_14735_; lean_object* v___y_14736_; lean_object* v___y_14737_; lean_object* v___x_14741_; lean_object* v___x_14742_; lean_object* v___x_14743_; lean_object* v___x_14744_; 
v___x_14741_ = lean_unsigned_to_nat(1u);
v___x_14742_ = l_Lean_Syntax_getArg(v_doTry_14692_, v___x_14741_);
v___x_14743_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_14742_);
lean_inc(v_a_14700_);
lean_inc_ref(v_a_14699_);
lean_inc(v_a_14698_);
lean_inc_ref(v_a_14697_);
lean_inc(v_a_14696_);
lean_inc_ref(v_a_14695_);
lean_inc_ref(v_a_14694_);
v___x_14744_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14743_, v_a_14694_, v_a_14695_, v_a_14696_, v_a_14697_, v_a_14698_, v_a_14699_, v_a_14700_);
if (lean_obj_tag(v___x_14744_) == 0)
{
lean_object* v_a_14745_; lean_object* v___x_14746_; lean_object* v___x_14747_; lean_object* v___x_14748_; size_t v_sz_14749_; size_t v___x_14750_; lean_object* v___x_14751_; 
v_a_14745_ = lean_ctor_get(v___x_14744_, 0);
lean_inc(v_a_14745_);
lean_dec_ref(v___x_14744_);
v___x_14746_ = lean_unsigned_to_nat(2u);
v___x_14747_ = l_Lean_Syntax_getArg(v_doTry_14692_, v___x_14746_);
v___x_14748_ = l_Lean_Syntax_getArgs(v___x_14747_);
lean_dec(v___x_14747_);
v_sz_14749_ = lean_array_size(v___x_14748_);
v___x_14750_ = ((size_t)0ULL);
lean_inc(v_a_14700_);
lean_inc_ref(v_a_14699_);
lean_inc(v_a_14698_);
lean_inc_ref(v_a_14697_);
lean_inc(v_a_14696_);
lean_inc_ref(v_a_14695_);
lean_inc_ref(v_a_14694_);
v___x_14751_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2(v_sz_14749_, v___x_14750_, v___x_14748_, v_a_14694_, v_a_14695_, v_a_14696_, v_a_14697_, v_a_14698_, v_a_14699_, v_a_14700_);
if (lean_obj_tag(v___x_14751_) == 0)
{
lean_object* v_a_14752_; lean_object* v___x_14753_; lean_object* v___x_14754_; uint8_t v___y_14756_; lean_object* v___y_14757_; uint8_t v___y_14758_; uint8_t v___y_14759_; lean_object* v___y_14760_; lean_object* v___y_14761_; lean_object* v___y_14762_; lean_object* v___y_14763_; lean_object* v___y_14764_; lean_object* v___y_14765_; lean_object* v___y_14766_; lean_object* v___y_14767_; uint8_t v___y_14768_; lean_object* v___y_14796_; lean_object* v___y_14797_; lean_object* v___y_14798_; uint8_t v___y_14799_; lean_object* v___y_14800_; lean_object* v___y_14801_; uint8_t v___y_14802_; lean_object* v___y_14803_; uint8_t v___y_14804_; lean_object* v___y_14805_; lean_object* v___y_14806_; lean_object* v___y_14807_; lean_object* v___y_14808_; lean_object* v___y_14809_; lean_object* v___y_14810_; lean_object* v_a_14811_; lean_object* v___y_14819_; lean_object* v___y_14820_; lean_object* v___y_14821_; uint8_t v___y_14822_; lean_object* v___y_14823_; lean_object* v___y_14824_; uint8_t v___y_14825_; lean_object* v___y_14826_; lean_object* v___y_14827_; uint8_t v___y_14828_; lean_object* v___y_14829_; lean_object* v___y_14830_; lean_object* v___y_14831_; lean_object* v___y_14832_; lean_object* v___y_14833_; lean_object* v___y_14834_; lean_object* v___y_14839_; lean_object* v___y_14840_; lean_object* v___y_14841_; lean_object* v___y_14842_; lean_object* v___y_14843_; lean_object* v___y_14844_; lean_object* v___y_14845_; lean_object* v___y_14846_; lean_object* v___y_14877_; lean_object* v___y_14878_; lean_object* v___y_14879_; lean_object* v___y_14880_; lean_object* v___y_14881_; lean_object* v___y_14882_; lean_object* v___y_14883_; lean_object* v___y_14884_; uint8_t v___y_14885_; lean_object* v_finallyCode_x3f_14891_; lean_object* v___y_14892_; lean_object* v___y_14893_; lean_object* v___y_14894_; lean_object* v___y_14895_; lean_object* v___y_14896_; lean_object* v___y_14897_; lean_object* v___y_14898_; uint8_t v___x_14902_; 
v_a_14752_ = lean_ctor_get(v___x_14751_, 0);
lean_inc(v_a_14752_);
lean_dec_ref(v___x_14751_);
v___x_14753_ = lean_unsigned_to_nat(3u);
v___x_14754_ = l_Lean_Syntax_getArg(v_doTry_14692_, v___x_14753_);
v___x_14902_ = l_Lean_Syntax_isNone(v___x_14754_);
if (v___x_14902_ == 0)
{
lean_object* v___x_14903_; lean_object* v___x_14904_; lean_object* v___x_14905_; lean_object* v___x_14906_; lean_object* v___x_14907_; 
v___x_14903_ = lean_unsigned_to_nat(0u);
v___x_14904_ = l_Lean_Syntax_getArg(v___x_14754_, v___x_14903_);
v___x_14905_ = l_Lean_Syntax_getArg(v___x_14904_, v___x_14741_);
lean_dec(v___x_14904_);
v___x_14906_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_14905_);
lean_inc(v_a_14700_);
lean_inc_ref(v_a_14699_);
lean_inc(v_a_14698_);
lean_inc_ref(v_a_14697_);
lean_inc(v_a_14696_);
lean_inc_ref(v_a_14695_);
lean_inc_ref(v_a_14694_);
v___x_14907_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14906_, v_a_14694_, v_a_14695_, v_a_14696_, v_a_14697_, v_a_14698_, v_a_14699_, v_a_14700_);
if (lean_obj_tag(v___x_14907_) == 0)
{
lean_object* v_a_14908_; lean_object* v___x_14909_; 
v_a_14908_ = lean_ctor_get(v___x_14907_, 0);
lean_inc(v_a_14908_);
lean_dec_ref(v___x_14907_);
v___x_14909_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14909_, 0, v_a_14908_);
v_finallyCode_x3f_14891_ = v___x_14909_;
v___y_14892_ = v_a_14694_;
v___y_14893_ = v_a_14695_;
v___y_14894_ = v_a_14696_;
v___y_14895_ = v_a_14697_;
v___y_14896_ = v_a_14698_;
v___y_14897_ = v_a_14699_;
v___y_14898_ = v_a_14700_;
goto v___jp_14890_;
}
else
{
lean_dec(v___x_14754_);
lean_dec(v_a_14752_);
lean_dec(v_a_14745_);
lean_dec(v_a_14700_);
lean_dec_ref(v_a_14699_);
lean_dec(v_a_14698_);
lean_dec_ref(v_a_14697_);
lean_dec(v_a_14696_);
lean_dec_ref(v_a_14695_);
lean_dec_ref(v_a_14694_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
return v___x_14907_;
}
}
else
{
lean_object* v___x_14910_; 
v___x_14910_ = lean_box(0);
v_finallyCode_x3f_14891_ = v___x_14910_;
v___y_14892_ = v_a_14694_;
v___y_14893_ = v_a_14695_;
v___y_14894_ = v_a_14696_;
v___y_14895_ = v_a_14697_;
v___y_14896_ = v_a_14698_;
v___y_14897_ = v_a_14699_;
v___y_14898_ = v_a_14700_;
goto v___jp_14890_;
}
v___jp_14755_:
{
lean_object* v_fileName_14769_; lean_object* v_fileMap_14770_; lean_object* v_options_14771_; lean_object* v_currRecDepth_14772_; lean_object* v_maxRecDepth_14773_; lean_object* v_ref_14774_; lean_object* v_currNamespace_14775_; lean_object* v_openDecls_14776_; lean_object* v_initHeartbeats_14777_; lean_object* v_maxHeartbeats_14778_; lean_object* v_quotContext_14779_; lean_object* v_currMacroScope_14780_; uint8_t v_diag_14781_; lean_object* v_cancelTk_x3f_14782_; uint8_t v_suppressElabErrors_14783_; lean_object* v_inheritedTraceOptions_14784_; lean_object* v_ref_14785_; lean_object* v___x_14786_; 
v_fileName_14769_ = lean_ctor_get(v___y_14764_, 0);
v_fileMap_14770_ = lean_ctor_get(v___y_14764_, 1);
v_options_14771_ = lean_ctor_get(v___y_14764_, 2);
v_currRecDepth_14772_ = lean_ctor_get(v___y_14764_, 3);
v_maxRecDepth_14773_ = lean_ctor_get(v___y_14764_, 4);
v_ref_14774_ = lean_ctor_get(v___y_14764_, 5);
v_currNamespace_14775_ = lean_ctor_get(v___y_14764_, 6);
v_openDecls_14776_ = lean_ctor_get(v___y_14764_, 7);
v_initHeartbeats_14777_ = lean_ctor_get(v___y_14764_, 8);
v_maxHeartbeats_14778_ = lean_ctor_get(v___y_14764_, 9);
v_quotContext_14779_ = lean_ctor_get(v___y_14764_, 10);
v_currMacroScope_14780_ = lean_ctor_get(v___y_14764_, 11);
v_diag_14781_ = lean_ctor_get_uint8(v___y_14764_, sizeof(void*)*14);
v_cancelTk_x3f_14782_ = lean_ctor_get(v___y_14764_, 12);
v_suppressElabErrors_14783_ = lean_ctor_get_uint8(v___y_14764_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_14784_ = lean_ctor_get(v___y_14764_, 13);
v_ref_14785_ = l_Lean_replaceRef(v___x_14754_, v_ref_14774_);
lean_dec(v___x_14754_);
lean_inc_ref(v_inheritedTraceOptions_14784_);
lean_inc(v_cancelTk_x3f_14782_);
lean_inc(v_currMacroScope_14780_);
lean_inc(v_quotContext_14779_);
lean_inc(v_maxHeartbeats_14778_);
lean_inc(v_initHeartbeats_14777_);
lean_inc(v_openDecls_14776_);
lean_inc(v_currNamespace_14775_);
lean_inc(v_maxRecDepth_14773_);
lean_inc(v_currRecDepth_14772_);
lean_inc_ref(v_options_14771_);
lean_inc_ref(v_fileMap_14770_);
lean_inc_ref(v_fileName_14769_);
v___x_14786_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_14786_, 0, v_fileName_14769_);
lean_ctor_set(v___x_14786_, 1, v_fileMap_14770_);
lean_ctor_set(v___x_14786_, 2, v_options_14771_);
lean_ctor_set(v___x_14786_, 3, v_currRecDepth_14772_);
lean_ctor_set(v___x_14786_, 4, v_maxRecDepth_14773_);
lean_ctor_set(v___x_14786_, 5, v_ref_14785_);
lean_ctor_set(v___x_14786_, 6, v_currNamespace_14775_);
lean_ctor_set(v___x_14786_, 7, v_openDecls_14776_);
lean_ctor_set(v___x_14786_, 8, v_initHeartbeats_14777_);
lean_ctor_set(v___x_14786_, 9, v_maxHeartbeats_14778_);
lean_ctor_set(v___x_14786_, 10, v_quotContext_14779_);
lean_ctor_set(v___x_14786_, 11, v_currMacroScope_14780_);
lean_ctor_set(v___x_14786_, 12, v_cancelTk_x3f_14782_);
lean_ctor_set(v___x_14786_, 13, v_inheritedTraceOptions_14784_);
lean_ctor_set_uint8(v___x_14786_, sizeof(void*)*14, v_diag_14781_);
lean_ctor_set_uint8(v___x_14786_, sizeof(void*)*14 + 1, v_suppressElabErrors_14783_);
if (v___y_14768_ == 0)
{
lean_object* v___x_14787_; lean_object* v___x_14788_; 
v___x_14787_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__1);
v___x_14788_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_14787_, v___y_14762_, v___y_14761_, v___x_14786_, v___y_14757_);
if (lean_obj_tag(v___x_14788_) == 0)
{
lean_object* v_a_14789_; lean_object* v___x_14790_; 
v_a_14789_ = lean_ctor_get(v___x_14788_, 0);
lean_inc(v_a_14789_);
lean_dec_ref(v___x_14788_);
lean_inc(v___y_14757_);
lean_inc(v___y_14761_);
lean_inc_ref(v___y_14762_);
lean_inc(v___y_14767_);
lean_inc_ref(v___y_14763_);
lean_inc_ref(v___y_14765_);
v___x_14790_ = lean_apply_9(v___y_14760_, v_a_14789_, v___y_14765_, v___y_14763_, v___y_14767_, v___y_14762_, v___y_14761_, v___x_14786_, v___y_14757_, lean_box(0));
v___y_14726_ = v___y_14756_;
v___y_14727_ = v___y_14757_;
v___y_14728_ = v___y_14763_;
v___y_14729_ = v___y_14758_;
v___y_14730_ = v___y_14764_;
v___y_14731_ = v___y_14759_;
v___y_14732_ = v___y_14765_;
v___y_14733_ = v___y_14766_;
v___y_14734_ = v___y_14767_;
v___y_14735_ = v___y_14761_;
v___y_14736_ = v___y_14762_;
v___y_14737_ = v___x_14790_;
goto v___jp_14725_;
}
else
{
lean_object* v_a_14791_; lean_object* v___x_14792_; 
lean_dec_ref(v___x_14786_);
lean_dec(v___y_14767_);
lean_dec_ref(v___y_14766_);
lean_dec_ref(v___y_14765_);
lean_dec_ref(v___y_14764_);
lean_dec_ref(v___y_14763_);
lean_dec_ref(v___y_14762_);
lean_dec(v___y_14761_);
lean_dec_ref(v___y_14760_);
lean_dec(v___y_14757_);
lean_dec(v_doElems_14693_);
v_a_14791_ = lean_ctor_get(v___x_14788_, 0);
lean_inc(v_a_14791_);
lean_dec_ref(v___x_14788_);
v___x_14792_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14792_, 0, v_a_14791_);
return v___x_14792_;
}
}
else
{
lean_object* v___x_14793_; lean_object* v___x_14794_; 
v___x_14793_ = lean_box(0);
lean_inc(v___y_14757_);
lean_inc(v___y_14761_);
lean_inc_ref(v___y_14762_);
lean_inc(v___y_14767_);
lean_inc_ref(v___y_14763_);
lean_inc_ref(v___y_14765_);
v___x_14794_ = lean_apply_9(v___y_14760_, v___x_14793_, v___y_14765_, v___y_14763_, v___y_14767_, v___y_14762_, v___y_14761_, v___x_14786_, v___y_14757_, lean_box(0));
v___y_14726_ = v___y_14756_;
v___y_14727_ = v___y_14757_;
v___y_14728_ = v___y_14763_;
v___y_14729_ = v___y_14758_;
v___y_14730_ = v___y_14764_;
v___y_14731_ = v___y_14759_;
v___y_14732_ = v___y_14765_;
v___y_14733_ = v___y_14766_;
v___y_14734_ = v___y_14767_;
v___y_14735_ = v___y_14761_;
v___y_14736_ = v___y_14762_;
v___y_14737_ = v___x_14794_;
goto v___jp_14725_;
}
}
v___jp_14795_:
{
if (lean_obj_tag(v___y_14808_) == 0)
{
lean_dec(v___y_14798_);
lean_dec(v___y_14797_);
lean_dec(v___y_14796_);
lean_dec(v___x_14754_);
lean_dec(v_doTry_14692_);
v___y_14703_ = v___y_14799_;
v___y_14704_ = v___y_14802_;
v___y_14705_ = v___y_14804_;
v___y_14706_ = v___y_14806_;
v_term_14707_ = v_a_14811_;
v___y_14708_ = v___y_14805_;
v___y_14709_ = v___y_14801_;
v___y_14710_ = v___y_14807_;
v___y_14711_ = v___y_14810_;
v___y_14712_ = v___y_14809_;
v___y_14713_ = v___y_14803_;
v___y_14714_ = v___y_14800_;
goto v___jp_14702_;
}
else
{
lean_object* v_val_14812_; lean_object* v_code_14813_; lean_object* v_uvars_14814_; lean_object* v___f_14815_; 
v_val_14812_ = lean_ctor_get(v___y_14808_, 0);
lean_inc(v_val_14812_);
lean_dec_ref(v___y_14808_);
v_code_14813_ = lean_ctor_get(v_val_14812_, 0);
lean_inc_ref(v_code_14813_);
v_uvars_14814_ = lean_ctor_get(v_val_14812_, 1);
lean_inc(v_uvars_14814_);
lean_dec(v_val_14812_);
v___f_14815_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___lam__0___boxed), 15, 6);
lean_closure_set(v___f_14815_, 0, v___y_14797_);
lean_closure_set(v___f_14815_, 1, v_code_14813_);
lean_closure_set(v___f_14815_, 2, v___y_14796_);
lean_closure_set(v___f_14815_, 3, v___y_14798_);
lean_closure_set(v___f_14815_, 4, v_a_14811_);
lean_closure_set(v___f_14815_, 5, v_doTry_14692_);
if (lean_obj_tag(v_uvars_14814_) == 0)
{
uint8_t v___x_14816_; 
lean_dec_ref(v_uvars_14814_);
v___x_14816_ = 0;
v___y_14756_ = v___y_14799_;
v___y_14757_ = v___y_14800_;
v___y_14758_ = v___y_14802_;
v___y_14759_ = v___y_14804_;
v___y_14760_ = v___f_14815_;
v___y_14761_ = v___y_14809_;
v___y_14762_ = v___y_14810_;
v___y_14763_ = v___y_14801_;
v___y_14764_ = v___y_14803_;
v___y_14765_ = v___y_14805_;
v___y_14766_ = v___y_14806_;
v___y_14767_ = v___y_14807_;
v___y_14768_ = v___x_14816_;
goto v___jp_14755_;
}
else
{
uint8_t v___x_14817_; 
v___x_14817_ = 1;
v___y_14756_ = v___y_14799_;
v___y_14757_ = v___y_14800_;
v___y_14758_ = v___y_14802_;
v___y_14759_ = v___y_14804_;
v___y_14760_ = v___f_14815_;
v___y_14761_ = v___y_14809_;
v___y_14762_ = v___y_14810_;
v___y_14763_ = v___y_14801_;
v___y_14764_ = v___y_14803_;
v___y_14765_ = v___y_14805_;
v___y_14766_ = v___y_14806_;
v___y_14767_ = v___y_14807_;
v___y_14768_ = v___x_14817_;
goto v___jp_14755_;
}
}
}
v___jp_14818_:
{
if (lean_obj_tag(v___y_14834_) == 0)
{
lean_object* v_a_14835_; 
v_a_14835_ = lean_ctor_get(v___y_14834_, 0);
lean_inc(v_a_14835_);
lean_dec_ref(v___y_14834_);
v___y_14796_ = v___y_14819_;
v___y_14797_ = v___y_14820_;
v___y_14798_ = v___y_14821_;
v___y_14799_ = v___y_14822_;
v___y_14800_ = v___y_14824_;
v___y_14801_ = v___y_14823_;
v___y_14802_ = v___y_14825_;
v___y_14803_ = v___y_14826_;
v___y_14804_ = v___y_14828_;
v___y_14805_ = v___y_14827_;
v___y_14806_ = v___y_14829_;
v___y_14807_ = v___y_14830_;
v___y_14808_ = v___y_14831_;
v___y_14809_ = v___y_14832_;
v___y_14810_ = v___y_14833_;
v_a_14811_ = v_a_14835_;
goto v___jp_14795_;
}
else
{
lean_object* v_a_14836_; lean_object* v___x_14837_; 
lean_dec_ref(v___y_14833_);
lean_dec(v___y_14832_);
lean_dec(v___y_14831_);
lean_dec(v___y_14830_);
lean_dec_ref(v___y_14829_);
lean_dec_ref(v___y_14827_);
lean_dec_ref(v___y_14826_);
lean_dec(v___y_14824_);
lean_dec_ref(v___y_14823_);
lean_dec(v___y_14821_);
lean_dec(v___y_14820_);
lean_dec(v___y_14819_);
lean_dec(v___x_14754_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
v_a_14836_ = lean_ctor_get(v___y_14834_, 0);
lean_inc(v_a_14836_);
lean_dec_ref(v___y_14834_);
v___x_14837_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14837_, 0, v_a_14836_);
return v___x_14837_;
}
}
v___jp_14838_:
{
lean_object* v___x_14847_; lean_object* v___x_14848_; lean_object* v___x_14849_; uint8_t v___x_14850_; lean_object* v___x_14851_; uint8_t v___x_14852_; lean_object* v___x_14853_; uint8_t v___x_14854_; lean_object* v___x_14855_; 
lean_inc(v___y_14839_);
lean_inc(v_a_14745_);
v___x_14847_ = l_Lean_Elab_Term_Do_ToCodeBlock_getTryCatchUpdatedVars(v_a_14745_, v_a_14752_, v___y_14839_);
lean_inc(v___x_14847_);
v___x_14848_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_varSetToArray(v___x_14847_);
v___x_14849_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__2));
lean_inc(v___y_14839_);
lean_inc(v_a_14745_);
v___x_14850_ = l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(v_a_14745_, v_a_14752_, v___y_14839_, v___x_14849_);
v___x_14851_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__3));
lean_inc(v___y_14839_);
lean_inc(v_a_14745_);
v___x_14852_ = l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(v_a_14745_, v_a_14752_, v___y_14839_, v___x_14851_);
v___x_14853_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__4));
lean_inc(v___y_14839_);
lean_inc(v_a_14745_);
v___x_14854_ = l_Lean_Elab_Term_Do_ToCodeBlock_tryCatchPred(v_a_14745_, v_a_14752_, v___y_14839_, v___x_14853_);
lean_inc(v___y_14846_);
lean_inc_ref(v___y_14845_);
lean_inc(v___y_14844_);
lean_inc_ref(v___y_14843_);
lean_inc(v___y_14842_);
lean_inc_ref(v___y_14841_);
lean_inc(v___x_14847_);
v___x_14855_ = l_Lean_Elab_Term_Do_extendUpdatedVars(v_a_14745_, v___x_14847_, v___y_14841_, v___y_14842_, v___y_14843_, v___y_14844_, v___y_14845_, v___y_14846_);
if (lean_obj_tag(v___x_14855_) == 0)
{
lean_object* v_a_14856_; lean_object* v_code_14857_; lean_object* v_m_14858_; lean_object* v_returnType_14859_; lean_object* v___x_14860_; lean_object* v___x_14861_; lean_object* v___x_14862_; lean_object* v___x_14863_; lean_object* v___x_14864_; 
v_a_14856_ = lean_ctor_get(v___x_14855_, 0);
lean_inc(v_a_14856_);
lean_dec_ref(v___x_14855_);
v_code_14857_ = lean_ctor_get(v_a_14856_, 0);
lean_inc_ref(v_code_14857_);
lean_dec(v_a_14856_);
v_m_14858_ = lean_ctor_get(v___y_14840_, 1);
lean_inc(v_m_14858_);
v_returnType_14859_ = lean_ctor_get(v___y_14840_, 2);
lean_inc(v_returnType_14859_);
v___x_14860_ = lean_box(v___x_14850_);
v___x_14861_ = lean_box(v___x_14852_);
v___x_14862_ = lean_box(v___x_14854_);
lean_inc_ref(v___x_14848_);
lean_inc(v_returnType_14859_);
lean_inc(v_m_14858_);
v___x_14863_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_mkNestedTerm___boxed), 9, 7);
lean_closure_set(v___x_14863_, 0, v_code_14857_);
lean_closure_set(v___x_14863_, 1, v_m_14858_);
lean_closure_set(v___x_14863_, 2, v_returnType_14859_);
lean_closure_set(v___x_14863_, 3, v___x_14848_);
lean_closure_set(v___x_14863_, 4, v___x_14860_);
lean_closure_set(v___x_14863_, 5, v___x_14861_);
lean_closure_set(v___x_14863_, 6, v___x_14862_);
lean_inc_ref(v___y_14845_);
v___x_14864_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_14863_, v___y_14840_, v___y_14841_, v___y_14842_, v___y_14843_, v___y_14844_, v___y_14845_, v___y_14846_);
if (lean_obj_tag(v___x_14864_) == 0)
{
lean_object* v_a_14865_; lean_object* v___x_14866_; lean_object* v___x_14867_; uint8_t v___x_14868_; 
v_a_14865_ = lean_ctor_get(v___x_14864_, 0);
lean_inc(v_a_14865_);
lean_dec_ref(v___x_14864_);
v___x_14866_ = lean_unsigned_to_nat(0u);
v___x_14867_ = lean_array_get_size(v_a_14752_);
v___x_14868_ = lean_nat_dec_lt(v___x_14866_, v___x_14867_);
if (v___x_14868_ == 0)
{
lean_dec(v___x_14847_);
lean_dec(v_a_14752_);
v___y_14796_ = v_m_14858_;
v___y_14797_ = v___x_14866_;
v___y_14798_ = v_returnType_14859_;
v___y_14799_ = v___x_14852_;
v___y_14800_ = v___y_14846_;
v___y_14801_ = v___y_14841_;
v___y_14802_ = v___x_14854_;
v___y_14803_ = v___y_14845_;
v___y_14804_ = v___x_14850_;
v___y_14805_ = v___y_14840_;
v___y_14806_ = v___x_14848_;
v___y_14807_ = v___y_14842_;
v___y_14808_ = v___y_14839_;
v___y_14809_ = v___y_14844_;
v___y_14810_ = v___y_14843_;
v_a_14811_ = v_a_14865_;
goto v___jp_14795_;
}
else
{
uint8_t v___x_14869_; 
v___x_14869_ = lean_nat_dec_le(v___x_14867_, v___x_14867_);
if (v___x_14869_ == 0)
{
if (v___x_14868_ == 0)
{
lean_dec(v___x_14847_);
lean_dec(v_a_14752_);
v___y_14796_ = v_m_14858_;
v___y_14797_ = v___x_14866_;
v___y_14798_ = v_returnType_14859_;
v___y_14799_ = v___x_14852_;
v___y_14800_ = v___y_14846_;
v___y_14801_ = v___y_14841_;
v___y_14802_ = v___x_14854_;
v___y_14803_ = v___y_14845_;
v___y_14804_ = v___x_14850_;
v___y_14805_ = v___y_14840_;
v___y_14806_ = v___x_14848_;
v___y_14807_ = v___y_14842_;
v___y_14808_ = v___y_14839_;
v___y_14809_ = v___y_14844_;
v___y_14810_ = v___y_14843_;
v_a_14811_ = v_a_14865_;
goto v___jp_14795_;
}
else
{
size_t v___x_14870_; lean_object* v___x_14871_; 
v___x_14870_ = lean_usize_of_nat(v___x_14867_);
lean_inc(v___y_14846_);
lean_inc_ref(v___y_14845_);
lean_inc(v___y_14844_);
lean_inc_ref(v___y_14843_);
lean_inc(v___y_14842_);
lean_inc_ref(v___y_14841_);
lean_inc(v_doTry_14692_);
lean_inc_ref(v___x_14848_);
lean_inc_ref(v___y_14840_);
v___x_14871_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4(v___x_14847_, v___y_14840_, v___x_14848_, v___x_14850_, v___x_14852_, v___x_14854_, v_doTry_14692_, v_a_14752_, v___x_14750_, v___x_14870_, v_a_14865_, v___y_14840_, v___y_14841_, v___y_14842_, v___y_14843_, v___y_14844_, v___y_14845_, v___y_14846_);
lean_dec(v_a_14752_);
v___y_14819_ = v_m_14858_;
v___y_14820_ = v___x_14866_;
v___y_14821_ = v_returnType_14859_;
v___y_14822_ = v___x_14852_;
v___y_14823_ = v___y_14841_;
v___y_14824_ = v___y_14846_;
v___y_14825_ = v___x_14854_;
v___y_14826_ = v___y_14845_;
v___y_14827_ = v___y_14840_;
v___y_14828_ = v___x_14850_;
v___y_14829_ = v___x_14848_;
v___y_14830_ = v___y_14842_;
v___y_14831_ = v___y_14839_;
v___y_14832_ = v___y_14844_;
v___y_14833_ = v___y_14843_;
v___y_14834_ = v___x_14871_;
goto v___jp_14818_;
}
}
else
{
size_t v___x_14872_; lean_object* v___x_14873_; 
v___x_14872_ = lean_usize_of_nat(v___x_14867_);
lean_inc(v___y_14846_);
lean_inc_ref(v___y_14845_);
lean_inc(v___y_14844_);
lean_inc_ref(v___y_14843_);
lean_inc(v___y_14842_);
lean_inc_ref(v___y_14841_);
lean_inc(v_doTry_14692_);
lean_inc_ref(v___x_14848_);
lean_inc_ref(v___y_14840_);
v___x_14873_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4(v___x_14847_, v___y_14840_, v___x_14848_, v___x_14850_, v___x_14852_, v___x_14854_, v_doTry_14692_, v_a_14752_, v___x_14750_, v___x_14872_, v_a_14865_, v___y_14840_, v___y_14841_, v___y_14842_, v___y_14843_, v___y_14844_, v___y_14845_, v___y_14846_);
lean_dec(v_a_14752_);
v___y_14819_ = v_m_14858_;
v___y_14820_ = v___x_14866_;
v___y_14821_ = v_returnType_14859_;
v___y_14822_ = v___x_14852_;
v___y_14823_ = v___y_14841_;
v___y_14824_ = v___y_14846_;
v___y_14825_ = v___x_14854_;
v___y_14826_ = v___y_14845_;
v___y_14827_ = v___y_14840_;
v___y_14828_ = v___x_14850_;
v___y_14829_ = v___x_14848_;
v___y_14830_ = v___y_14842_;
v___y_14831_ = v___y_14839_;
v___y_14832_ = v___y_14844_;
v___y_14833_ = v___y_14843_;
v___y_14834_ = v___x_14873_;
goto v___jp_14818_;
}
}
}
else
{
lean_object* v_a_14874_; lean_object* v___x_14875_; 
lean_dec(v_returnType_14859_);
lean_dec(v_m_14858_);
lean_dec_ref(v___x_14848_);
lean_dec(v___x_14847_);
lean_dec(v___y_14846_);
lean_dec_ref(v___y_14845_);
lean_dec(v___y_14844_);
lean_dec_ref(v___y_14843_);
lean_dec(v___y_14842_);
lean_dec_ref(v___y_14841_);
lean_dec_ref(v___y_14840_);
lean_dec(v___y_14839_);
lean_dec(v___x_14754_);
lean_dec(v_a_14752_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
v_a_14874_ = lean_ctor_get(v___x_14864_, 0);
lean_inc(v_a_14874_);
lean_dec_ref(v___x_14864_);
v___x_14875_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14875_, 0, v_a_14874_);
return v___x_14875_;
}
}
else
{
lean_dec_ref(v___x_14848_);
lean_dec(v___x_14847_);
lean_dec(v___y_14846_);
lean_dec_ref(v___y_14845_);
lean_dec(v___y_14844_);
lean_dec_ref(v___y_14843_);
lean_dec(v___y_14842_);
lean_dec_ref(v___y_14841_);
lean_dec_ref(v___y_14840_);
lean_dec(v___y_14839_);
lean_dec(v___x_14754_);
lean_dec(v_a_14752_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
return v___x_14855_;
}
}
v___jp_14876_:
{
if (v___y_14885_ == 0)
{
v___y_14839_ = v___y_14880_;
v___y_14840_ = v___y_14879_;
v___y_14841_ = v___y_14884_;
v___y_14842_ = v___y_14878_;
v___y_14843_ = v___y_14883_;
v___y_14844_ = v___y_14882_;
v___y_14845_ = v___y_14881_;
v___y_14846_ = v___y_14877_;
goto v___jp_14838_;
}
else
{
lean_object* v___x_14886_; lean_object* v___x_14887_; 
v___x_14886_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6, &l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___closed__6);
v___x_14887_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_14886_, v___y_14883_, v___y_14882_, v___y_14881_, v___y_14877_);
if (lean_obj_tag(v___x_14887_) == 0)
{
lean_dec_ref(v___x_14887_);
v___y_14839_ = v___y_14880_;
v___y_14840_ = v___y_14879_;
v___y_14841_ = v___y_14884_;
v___y_14842_ = v___y_14878_;
v___y_14843_ = v___y_14883_;
v___y_14844_ = v___y_14882_;
v___y_14845_ = v___y_14881_;
v___y_14846_ = v___y_14877_;
goto v___jp_14838_;
}
else
{
lean_object* v_a_14888_; lean_object* v___x_14889_; 
lean_dec_ref(v___y_14884_);
lean_dec_ref(v___y_14883_);
lean_dec(v___y_14882_);
lean_dec_ref(v___y_14881_);
lean_dec(v___y_14880_);
lean_dec_ref(v___y_14879_);
lean_dec(v___y_14878_);
lean_dec(v___y_14877_);
lean_dec(v___x_14754_);
lean_dec(v_a_14752_);
lean_dec(v_a_14745_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
v_a_14888_ = lean_ctor_get(v___x_14887_, 0);
lean_inc(v_a_14888_);
lean_dec_ref(v___x_14887_);
v___x_14889_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14889_, 0, v_a_14888_);
return v___x_14889_;
}
}
}
v___jp_14890_:
{
lean_object* v___x_14899_; lean_object* v___x_14900_; uint8_t v___x_14901_; 
v___x_14899_ = lean_array_get_size(v_a_14752_);
v___x_14900_ = lean_unsigned_to_nat(0u);
v___x_14901_ = lean_nat_dec_eq(v___x_14899_, v___x_14900_);
if (v___x_14901_ == 0)
{
v___y_14877_ = v___y_14898_;
v___y_14878_ = v___y_14894_;
v___y_14879_ = v___y_14892_;
v___y_14880_ = v_finallyCode_x3f_14891_;
v___y_14881_ = v___y_14897_;
v___y_14882_ = v___y_14896_;
v___y_14883_ = v___y_14895_;
v___y_14884_ = v___y_14893_;
v___y_14885_ = v___x_14901_;
goto v___jp_14876_;
}
else
{
if (lean_obj_tag(v_finallyCode_x3f_14891_) == 0)
{
v___y_14877_ = v___y_14898_;
v___y_14878_ = v___y_14894_;
v___y_14879_ = v___y_14892_;
v___y_14880_ = v_finallyCode_x3f_14891_;
v___y_14881_ = v___y_14897_;
v___y_14882_ = v___y_14896_;
v___y_14883_ = v___y_14895_;
v___y_14884_ = v___y_14893_;
v___y_14885_ = v___x_14901_;
goto v___jp_14876_;
}
else
{
v___y_14839_ = v_finallyCode_x3f_14891_;
v___y_14840_ = v___y_14892_;
v___y_14841_ = v___y_14893_;
v___y_14842_ = v___y_14894_;
v___y_14843_ = v___y_14895_;
v___y_14844_ = v___y_14896_;
v___y_14845_ = v___y_14897_;
v___y_14846_ = v___y_14898_;
goto v___jp_14838_;
}
}
}
}
else
{
lean_object* v_a_14911_; lean_object* v___x_14912_; 
lean_dec(v_a_14745_);
lean_dec(v_a_14700_);
lean_dec_ref(v_a_14699_);
lean_dec(v_a_14698_);
lean_dec_ref(v_a_14697_);
lean_dec(v_a_14696_);
lean_dec_ref(v_a_14695_);
lean_dec_ref(v_a_14694_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
v_a_14911_ = lean_ctor_get(v___x_14751_, 0);
lean_inc(v_a_14911_);
lean_dec_ref(v___x_14751_);
v___x_14912_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14912_, 0, v_a_14911_);
return v___x_14912_;
}
}
else
{
lean_dec(v_a_14700_);
lean_dec_ref(v_a_14699_);
lean_dec(v_a_14698_);
lean_dec_ref(v_a_14697_);
lean_dec(v_a_14696_);
lean_dec_ref(v_a_14695_);
lean_dec_ref(v_a_14694_);
lean_dec(v_doElems_14693_);
lean_dec(v_doTry_14692_);
return v___x_14744_;
}
v___jp_14702_:
{
lean_object* v___x_14715_; lean_object* v___x_14716_; lean_object* v___x_14717_; lean_object* v___x_14718_; lean_object* v___x_14719_; 
v___x_14715_ = lean_box(v___y_14705_);
v___x_14716_ = lean_box(v___y_14703_);
v___x_14717_ = lean_box(v___y_14704_);
v___x_14718_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___boxed), 7, 5);
lean_closure_set(v___x_14718_, 0, v_term_14707_);
lean_closure_set(v___x_14718_, 1, v___y_14706_);
lean_closure_set(v___x_14718_, 2, v___x_14715_);
lean_closure_set(v___x_14718_, 3, v___x_14716_);
lean_closure_set(v___x_14718_, 4, v___x_14717_);
lean_inc_ref(v___y_14713_);
v___x_14719_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_14718_, v___y_14708_, v___y_14709_, v___y_14710_, v___y_14711_, v___y_14712_, v___y_14713_, v___y_14714_);
if (lean_obj_tag(v___x_14719_) == 0)
{
lean_object* v_a_14720_; lean_object* v___x_14721_; lean_object* v___x_14722_; 
v_a_14720_ = lean_ctor_get(v___x_14719_, 0);
lean_inc(v_a_14720_);
lean_dec_ref(v___x_14719_);
v___x_14721_ = l_List_appendTR___redArg(v_a_14720_, v_doElems_14693_);
v___x_14722_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14721_, v___y_14708_, v___y_14709_, v___y_14710_, v___y_14711_, v___y_14712_, v___y_14713_, v___y_14714_);
return v___x_14722_;
}
else
{
lean_object* v_a_14723_; lean_object* v___x_14724_; 
lean_dec(v___y_14714_);
lean_dec_ref(v___y_14713_);
lean_dec(v___y_14712_);
lean_dec_ref(v___y_14711_);
lean_dec(v___y_14710_);
lean_dec_ref(v___y_14709_);
lean_dec_ref(v___y_14708_);
lean_dec(v_doElems_14693_);
v_a_14723_ = lean_ctor_get(v___x_14719_, 0);
lean_inc(v_a_14723_);
lean_dec_ref(v___x_14719_);
v___x_14724_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14724_, 0, v_a_14723_);
return v___x_14724_;
}
}
v___jp_14725_:
{
if (lean_obj_tag(v___y_14737_) == 0)
{
lean_object* v_a_14738_; 
v_a_14738_ = lean_ctor_get(v___y_14737_, 0);
lean_inc(v_a_14738_);
lean_dec_ref(v___y_14737_);
v___y_14703_ = v___y_14726_;
v___y_14704_ = v___y_14729_;
v___y_14705_ = v___y_14731_;
v___y_14706_ = v___y_14733_;
v_term_14707_ = v_a_14738_;
v___y_14708_ = v___y_14732_;
v___y_14709_ = v___y_14728_;
v___y_14710_ = v___y_14734_;
v___y_14711_ = v___y_14736_;
v___y_14712_ = v___y_14735_;
v___y_14713_ = v___y_14730_;
v___y_14714_ = v___y_14727_;
goto v___jp_14702_;
}
else
{
lean_object* v_a_14739_; lean_object* v___x_14740_; 
lean_dec_ref(v___y_14736_);
lean_dec(v___y_14735_);
lean_dec(v___y_14734_);
lean_dec_ref(v___y_14733_);
lean_dec_ref(v___y_14732_);
lean_dec_ref(v___y_14730_);
lean_dec_ref(v___y_14728_);
lean_dec(v___y_14727_);
lean_dec(v_doElems_14693_);
v_a_14739_ = lean_ctor_get(v___y_14737_, 0);
lean_inc(v_a_14739_);
lean_dec_ref(v___y_14737_);
v___x_14740_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14740_, 0, v_a_14739_);
return v___x_14740_;
}
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6(lean_object* v_doMatchExpr_14913_, size_t v_sz_14914_, size_t v_i_14915_, lean_object* v_bs_14916_, lean_object* v___y_14917_, lean_object* v___y_14918_, lean_object* v___y_14919_, lean_object* v___y_14920_, lean_object* v___y_14921_, lean_object* v___y_14922_, lean_object* v___y_14923_){
_start:
{
uint8_t v___x_14925_; 
v___x_14925_ = lean_usize_dec_lt(v_i_14915_, v_sz_14914_);
if (v___x_14925_ == 0)
{
lean_object* v___x_14926_; 
lean_dec(v___y_14923_);
lean_dec_ref(v___y_14922_);
lean_dec(v___y_14921_);
lean_dec_ref(v___y_14920_);
lean_dec(v___y_14919_);
lean_dec_ref(v___y_14918_);
lean_dec_ref(v___y_14917_);
lean_dec(v_doMatchExpr_14913_);
v___x_14926_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14926_, 0, v_bs_14916_);
return v___x_14926_;
}
else
{
lean_object* v___x_14927_; lean_object* v___x_14928_; lean_object* v___x_14929_; lean_object* v_v_14930_; lean_object* v_bs_x27_14931_; lean_object* v_pat_14932_; lean_object* v___y_14934_; lean_object* v___x_14950_; uint8_t v___x_14951_; 
v___x_14927_ = lean_unsigned_to_nat(1u);
v___x_14928_ = lean_unsigned_to_nat(2u);
v___x_14929_ = lean_unsigned_to_nat(0u);
v_v_14930_ = lean_array_uget(v_bs_14916_, v_i_14915_);
v_bs_x27_14931_ = lean_array_uset(v_bs_14916_, v_i_14915_, v___x_14929_);
v_pat_14932_ = l_Lean_Syntax_getArg(v_v_14930_, v___x_14927_);
v___x_14950_ = l_Lean_Syntax_getArg(v_pat_14932_, v___x_14929_);
v___x_14951_ = l_Lean_Syntax_isNone(v___x_14950_);
if (v___x_14951_ == 0)
{
lean_object* v___x_14952_; lean_object* v___x_14953_; 
v___x_14952_ = l_Lean_Syntax_getArg(v___x_14950_, v___x_14929_);
lean_dec(v___x_14950_);
v___x_14953_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14953_, 0, v___x_14952_);
v___y_14934_ = v___x_14953_;
goto v___jp_14933_;
}
else
{
lean_object* v___x_14954_; 
lean_dec(v___x_14950_);
v___x_14954_ = lean_box(0);
v___y_14934_ = v___x_14954_;
goto v___jp_14933_;
}
v___jp_14933_:
{
lean_object* v___x_14935_; lean_object* v_rhs_14936_; lean_object* v___x_14937_; lean_object* v___x_14938_; 
v___x_14935_ = lean_unsigned_to_nat(3u);
v_rhs_14936_ = l_Lean_Syntax_getArg(v_v_14930_, v___x_14935_);
lean_dec(v_v_14930_);
v___x_14937_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_rhs_14936_);
lean_inc(v___y_14923_);
lean_inc_ref(v___y_14922_);
lean_inc(v___y_14921_);
lean_inc_ref(v___y_14920_);
lean_inc(v___y_14919_);
lean_inc_ref(v___y_14918_);
lean_inc_ref(v___y_14917_);
v___x_14938_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14937_, v___y_14917_, v___y_14918_, v___y_14919_, v___y_14920_, v___y_14921_, v___y_14922_, v___y_14923_);
if (lean_obj_tag(v___x_14938_) == 0)
{
lean_object* v_a_14939_; lean_object* v_funName_14940_; lean_object* v___x_14941_; lean_object* v_pvars_14942_; lean_object* v___x_14943_; size_t v___x_14944_; size_t v___x_14945_; lean_object* v___x_14946_; 
v_a_14939_ = lean_ctor_get(v___x_14938_, 0);
lean_inc(v_a_14939_);
lean_dec_ref(v___x_14938_);
v_funName_14940_ = l_Lean_Syntax_getArg(v_pat_14932_, v___x_14927_);
v___x_14941_ = l_Lean_Syntax_getArg(v_pat_14932_, v___x_14928_);
lean_dec(v_pat_14932_);
v_pvars_14942_ = l_Lean_Syntax_getArgs(v___x_14941_);
lean_dec(v___x_14941_);
lean_inc(v_doMatchExpr_14913_);
v___x_14943_ = lean_alloc_ctor(0, 5, 0);
lean_ctor_set(v___x_14943_, 0, v_doMatchExpr_14913_);
lean_ctor_set(v___x_14943_, 1, v___y_14934_);
lean_ctor_set(v___x_14943_, 2, v_funName_14940_);
lean_ctor_set(v___x_14943_, 3, v_pvars_14942_);
lean_ctor_set(v___x_14943_, 4, v_a_14939_);
v___x_14944_ = ((size_t)1ULL);
v___x_14945_ = lean_usize_add(v_i_14915_, v___x_14944_);
v___x_14946_ = lean_array_uset(v_bs_x27_14931_, v_i_14915_, v___x_14943_);
v_i_14915_ = v___x_14945_;
v_bs_14916_ = v___x_14946_;
goto _start;
}
else
{
lean_object* v_a_14948_; lean_object* v___x_14949_; 
lean_dec(v___y_14934_);
lean_dec(v_pat_14932_);
lean_dec_ref(v_bs_x27_14931_);
lean_dec(v___y_14923_);
lean_dec_ref(v___y_14922_);
lean_dec(v___y_14921_);
lean_dec_ref(v___y_14920_);
lean_dec(v___y_14919_);
lean_dec_ref(v___y_14918_);
lean_dec_ref(v___y_14917_);
lean_dec(v_doMatchExpr_14913_);
v_a_14948_ = lean_ctor_get(v___x_14938_, 0);
lean_inc(v_a_14948_);
lean_dec_ref(v___x_14938_);
v___x_14949_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_14949_, 0, v_a_14948_);
return v___x_14949_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(lean_object* v_c_14955_, lean_object* v_doElems_14956_, lean_object* v_a_14957_, lean_object* v_a_14958_, lean_object* v_a_14959_, lean_object* v_a_14960_, lean_object* v_a_14961_, lean_object* v_a_14962_, lean_object* v_a_14963_){
_start:
{
if (lean_obj_tag(v_doElems_14956_) == 0)
{
lean_object* v___x_14965_; 
lean_dec(v_a_14963_);
lean_dec_ref(v_a_14962_);
lean_dec(v_a_14961_);
lean_dec_ref(v_a_14960_);
lean_dec(v_a_14959_);
lean_dec_ref(v_a_14958_);
lean_dec_ref(v_a_14957_);
v___x_14965_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_14965_, 0, v_c_14955_);
return v___x_14965_;
}
else
{
lean_object* v_head_14966_; lean_object* v___x_14967_; 
v_head_14966_ = lean_ctor_get(v_doElems_14956_, 0);
lean_inc(v_head_14966_);
lean_inc(v_a_14963_);
lean_inc_ref(v_a_14962_);
lean_inc(v_a_14961_);
lean_inc_ref(v_a_14960_);
lean_inc(v_a_14959_);
lean_inc_ref(v_a_14958_);
v___x_14967_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_doElems_14956_, v_a_14957_, v_a_14958_, v_a_14959_, v_a_14960_, v_a_14961_, v_a_14962_, v_a_14963_);
if (lean_obj_tag(v___x_14967_) == 0)
{
lean_object* v_a_14968_; lean_object* v___x_14969_; lean_object* v___x_14970_; 
v_a_14968_ = lean_ctor_get(v___x_14967_, 0);
lean_inc(v_a_14968_);
lean_dec_ref(v___x_14967_);
v___x_14969_ = lean_box(0);
v___x_14970_ = l_Lean_Elab_Term_Do_concat(v_c_14955_, v_head_14966_, v___x_14969_, v_a_14968_, v_a_14958_, v_a_14959_, v_a_14960_, v_a_14961_, v_a_14962_, v_a_14963_);
lean_dec(v_head_14966_);
return v___x_14970_;
}
else
{
lean_dec(v_head_14966_);
lean_dec(v_a_14963_);
lean_dec_ref(v_a_14962_);
lean_dec(v_a_14961_);
lean_dec_ref(v_a_14960_);
lean_dec(v_a_14959_);
lean_dec_ref(v_a_14958_);
lean_dec_ref(v_c_14955_);
return v___x_14967_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode(lean_object* v_doMatchExpr_14971_, lean_object* v_doElems_14972_, lean_object* v_a_14973_, lean_object* v_a_14974_, lean_object* v_a_14975_, lean_object* v_a_14976_, lean_object* v_a_14977_, lean_object* v_a_14978_, lean_object* v_a_14979_){
_start:
{
lean_object* v___x_14981_; lean_object* v___x_14982_; lean_object* v___x_14983_; lean_object* v___x_14984_; lean_object* v_alts_14985_; size_t v_sz_14986_; size_t v___x_14987_; lean_object* v___x_14988_; 
v___x_14981_ = lean_unsigned_to_nat(4u);
v___x_14982_ = l_Lean_Syntax_getArg(v_doMatchExpr_14971_, v___x_14981_);
v___x_14983_ = lean_unsigned_to_nat(0u);
v___x_14984_ = l_Lean_Syntax_getArg(v___x_14982_, v___x_14983_);
v_alts_14985_ = l_Lean_Syntax_getArgs(v___x_14984_);
lean_dec(v___x_14984_);
v_sz_14986_ = lean_array_size(v_alts_14985_);
v___x_14987_ = ((size_t)0ULL);
lean_inc(v_a_14979_);
lean_inc_ref(v_a_14978_);
lean_inc(v_a_14977_);
lean_inc_ref(v_a_14976_);
lean_inc(v_a_14975_);
lean_inc_ref(v_a_14974_);
lean_inc_ref(v_a_14973_);
lean_inc(v_doMatchExpr_14971_);
v___x_14988_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6(v_doMatchExpr_14971_, v_sz_14986_, v___x_14987_, v_alts_14985_, v_a_14973_, v_a_14974_, v_a_14975_, v_a_14976_, v_a_14977_, v_a_14978_, v_a_14979_);
if (lean_obj_tag(v___x_14988_) == 0)
{
lean_object* v_a_14989_; lean_object* v___x_14990_; lean_object* v___x_14991_; lean_object* v___x_14992_; lean_object* v___x_14993_; lean_object* v___x_14994_; lean_object* v___x_14995_; 
v_a_14989_ = lean_ctor_get(v___x_14988_, 0);
lean_inc(v_a_14989_);
lean_dec_ref(v___x_14988_);
v___x_14990_ = lean_unsigned_to_nat(1u);
v___x_14991_ = l_Lean_Syntax_getArg(v___x_14982_, v___x_14990_);
lean_dec(v___x_14982_);
v___x_14992_ = lean_unsigned_to_nat(3u);
v___x_14993_ = l_Lean_Syntax_getArg(v___x_14991_, v___x_14992_);
lean_dec(v___x_14991_);
v___x_14994_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_14993_);
lean_inc(v_a_14979_);
lean_inc_ref(v_a_14978_);
lean_inc(v_a_14977_);
lean_inc_ref(v_a_14976_);
lean_inc(v_a_14975_);
lean_inc_ref(v_a_14974_);
lean_inc_ref(v_a_14973_);
v___x_14995_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_14994_, v_a_14973_, v_a_14974_, v_a_14975_, v_a_14976_, v_a_14977_, v_a_14978_, v_a_14979_);
if (lean_obj_tag(v___x_14995_) == 0)
{
lean_object* v_a_14996_; lean_object* v___x_14997_; lean_object* v___x_14998_; uint8_t v_meta_14999_; lean_object* v_discr_15000_; lean_object* v___x_15001_; 
v_a_14996_ = lean_ctor_get(v___x_14995_, 0);
lean_inc(v_a_14996_);
lean_dec_ref(v___x_14995_);
v___x_14997_ = lean_unsigned_to_nat(2u);
v___x_14998_ = l_Lean_Syntax_getArg(v_doMatchExpr_14971_, v___x_14990_);
v_meta_14999_ = l_Lean_Syntax_isNone(v___x_14998_);
lean_dec(v___x_14998_);
v_discr_15000_ = l_Lean_Syntax_getArg(v_doMatchExpr_14971_, v___x_14997_);
lean_inc(v_a_14979_);
lean_inc_ref(v_a_14978_);
lean_inc(v_a_14977_);
lean_inc_ref(v_a_14976_);
lean_inc(v_a_14975_);
lean_inc_ref(v_a_14974_);
v___x_15001_ = l_Lean_Elab_Term_Do_mkMatchExpr(v_doMatchExpr_14971_, v_meta_14999_, v_discr_15000_, v_a_14989_, v_a_14996_, v_a_14974_, v_a_14975_, v_a_14976_, v_a_14977_, v_a_14978_, v_a_14979_);
if (lean_obj_tag(v___x_15001_) == 0)
{
lean_object* v_a_15002_; lean_object* v___x_15003_; 
v_a_15002_ = lean_ctor_get(v___x_15001_, 0);
lean_inc(v_a_15002_);
lean_dec_ref(v___x_15001_);
v___x_15003_ = l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(v_a_15002_, v_doElems_14972_, v_a_14973_, v_a_14974_, v_a_14975_, v_a_14976_, v_a_14977_, v_a_14978_, v_a_14979_);
return v___x_15003_;
}
else
{
lean_dec(v_a_14979_);
lean_dec_ref(v_a_14978_);
lean_dec(v_a_14977_);
lean_dec_ref(v_a_14976_);
lean_dec(v_a_14975_);
lean_dec_ref(v_a_14974_);
lean_dec_ref(v_a_14973_);
lean_dec(v_doElems_14972_);
return v___x_15001_;
}
}
else
{
lean_dec(v_a_14989_);
lean_dec(v_a_14979_);
lean_dec_ref(v_a_14978_);
lean_dec(v_a_14977_);
lean_dec_ref(v_a_14976_);
lean_dec(v_a_14975_);
lean_dec_ref(v_a_14974_);
lean_dec_ref(v_a_14973_);
lean_dec(v_doElems_14972_);
lean_dec(v_doMatchExpr_14971_);
return v___x_14995_;
}
}
else
{
lean_object* v_a_15004_; lean_object* v___x_15005_; 
lean_dec(v___x_14982_);
lean_dec(v_a_14979_);
lean_dec_ref(v_a_14978_);
lean_dec(v_a_14977_);
lean_dec_ref(v_a_14976_);
lean_dec(v_a_14975_);
lean_dec_ref(v_a_14974_);
lean_dec_ref(v_a_14973_);
lean_dec(v_doElems_14972_);
lean_dec(v_doMatchExpr_14971_);
v_a_15004_ = lean_ctor_get(v___x_14988_, 0);
lean_inc(v_a_15004_);
lean_dec_ref(v___x_14988_);
v___x_15005_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15005_, 0, v_a_15004_);
return v___x_15005_;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8(size_t v_sz_15006_, size_t v_i_15007_, lean_object* v_bs_15008_, lean_object* v___y_15009_, lean_object* v___y_15010_, lean_object* v___y_15011_, lean_object* v___y_15012_, lean_object* v___y_15013_, lean_object* v___y_15014_, lean_object* v___y_15015_){
_start:
{
uint8_t v___x_15017_; 
v___x_15017_ = lean_usize_dec_lt(v_i_15007_, v_sz_15006_);
if (v___x_15017_ == 0)
{
lean_object* v___x_15018_; 
lean_dec(v___y_15015_);
lean_dec_ref(v___y_15014_);
lean_dec(v___y_15013_);
lean_dec_ref(v___y_15012_);
lean_dec(v___y_15011_);
lean_dec_ref(v___y_15010_);
lean_dec_ref(v___y_15009_);
v___x_15018_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_15018_, 0, v_bs_15008_);
return v___x_15018_;
}
else
{
lean_object* v___x_15019_; lean_object* v___x_15020_; lean_object* v_v_15021_; lean_object* v___x_15022_; lean_object* v___x_15023_; lean_object* v___x_15024_; lean_object* v___x_15025_; 
v___x_15019_ = lean_unsigned_to_nat(1u);
v___x_15020_ = lean_unsigned_to_nat(0u);
v_v_15021_ = lean_array_uget(v_bs_15008_, v_i_15007_);
v___x_15022_ = l_Lean_Syntax_getArg(v_v_15021_, v___x_15019_);
v___x_15023_ = l_Lean_Syntax_getArg(v___x_15022_, v___x_15020_);
lean_dec(v___x_15022_);
v___x_15024_ = l_Lean_Syntax_getSepArgs(v___x_15023_);
lean_inc(v___y_15015_);
lean_inc_ref(v___y_15014_);
lean_inc(v___y_15013_);
lean_inc_ref(v___y_15012_);
lean_inc(v___y_15011_);
lean_inc_ref(v___y_15010_);
v___x_15025_ = l_Lean_Elab_Term_Do_getPatternsVarsEx(v___x_15024_, v___y_15010_, v___y_15011_, v___y_15012_, v___y_15013_, v___y_15014_, v___y_15015_);
lean_dec_ref(v___x_15024_);
if (lean_obj_tag(v___x_15025_) == 0)
{
lean_object* v_a_15026_; lean_object* v_fileName_15027_; lean_object* v_fileMap_15028_; lean_object* v_options_15029_; lean_object* v_currRecDepth_15030_; lean_object* v_maxRecDepth_15031_; lean_object* v_ref_15032_; lean_object* v_currNamespace_15033_; lean_object* v_openDecls_15034_; lean_object* v_initHeartbeats_15035_; lean_object* v_maxHeartbeats_15036_; lean_object* v_quotContext_15037_; lean_object* v_currMacroScope_15038_; uint8_t v_diag_15039_; lean_object* v_cancelTk_x3f_15040_; uint8_t v_suppressElabErrors_15041_; lean_object* v_inheritedTraceOptions_15042_; lean_object* v_ref_15043_; lean_object* v___x_15044_; lean_object* v___x_15045_; 
v_a_15026_ = lean_ctor_get(v___x_15025_, 0);
lean_inc(v_a_15026_);
lean_dec_ref(v___x_15025_);
v_fileName_15027_ = lean_ctor_get(v___y_15014_, 0);
v_fileMap_15028_ = lean_ctor_get(v___y_15014_, 1);
v_options_15029_ = lean_ctor_get(v___y_15014_, 2);
v_currRecDepth_15030_ = lean_ctor_get(v___y_15014_, 3);
v_maxRecDepth_15031_ = lean_ctor_get(v___y_15014_, 4);
v_ref_15032_ = lean_ctor_get(v___y_15014_, 5);
v_currNamespace_15033_ = lean_ctor_get(v___y_15014_, 6);
v_openDecls_15034_ = lean_ctor_get(v___y_15014_, 7);
v_initHeartbeats_15035_ = lean_ctor_get(v___y_15014_, 8);
v_maxHeartbeats_15036_ = lean_ctor_get(v___y_15014_, 9);
v_quotContext_15037_ = lean_ctor_get(v___y_15014_, 10);
v_currMacroScope_15038_ = lean_ctor_get(v___y_15014_, 11);
v_diag_15039_ = lean_ctor_get_uint8(v___y_15014_, sizeof(void*)*14);
v_cancelTk_x3f_15040_ = lean_ctor_get(v___y_15014_, 12);
v_suppressElabErrors_15041_ = lean_ctor_get_uint8(v___y_15014_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_15042_ = lean_ctor_get(v___y_15014_, 13);
v_ref_15043_ = l_Lean_replaceRef(v___x_15023_, v_ref_15032_);
lean_inc_ref(v_inheritedTraceOptions_15042_);
lean_inc(v_cancelTk_x3f_15040_);
lean_inc(v_currMacroScope_15038_);
lean_inc(v_quotContext_15037_);
lean_inc(v_maxHeartbeats_15036_);
lean_inc(v_initHeartbeats_15035_);
lean_inc(v_openDecls_15034_);
lean_inc(v_currNamespace_15033_);
lean_inc(v_maxRecDepth_15031_);
lean_inc(v_currRecDepth_15030_);
lean_inc_ref(v_options_15029_);
lean_inc_ref(v_fileMap_15028_);
lean_inc_ref(v_fileName_15027_);
v___x_15044_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_15044_, 0, v_fileName_15027_);
lean_ctor_set(v___x_15044_, 1, v_fileMap_15028_);
lean_ctor_set(v___x_15044_, 2, v_options_15029_);
lean_ctor_set(v___x_15044_, 3, v_currRecDepth_15030_);
lean_ctor_set(v___x_15044_, 4, v_maxRecDepth_15031_);
lean_ctor_set(v___x_15044_, 5, v_ref_15043_);
lean_ctor_set(v___x_15044_, 6, v_currNamespace_15033_);
lean_ctor_set(v___x_15044_, 7, v_openDecls_15034_);
lean_ctor_set(v___x_15044_, 8, v_initHeartbeats_15035_);
lean_ctor_set(v___x_15044_, 9, v_maxHeartbeats_15036_);
lean_ctor_set(v___x_15044_, 10, v_quotContext_15037_);
lean_ctor_set(v___x_15044_, 11, v_currMacroScope_15038_);
lean_ctor_set(v___x_15044_, 12, v_cancelTk_x3f_15040_);
lean_ctor_set(v___x_15044_, 13, v_inheritedTraceOptions_15042_);
lean_ctor_set_uint8(v___x_15044_, sizeof(void*)*14, v_diag_15039_);
lean_ctor_set_uint8(v___x_15044_, sizeof(void*)*14 + 1, v_suppressElabErrors_15041_);
v___x_15045_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_a_15026_, v___y_15009_, v___y_15010_, v___y_15011_, v___y_15012_, v___y_15013_, v___x_15044_, v___y_15015_);
lean_dec_ref(v___x_15044_);
if (lean_obj_tag(v___x_15045_) == 0)
{
lean_object* v___x_15046_; lean_object* v___x_15047_; lean_object* v___x_15048_; lean_object* v___x_15049_; 
lean_dec_ref(v___x_15045_);
v___x_15046_ = lean_unsigned_to_nat(3u);
v___x_15047_ = l_Lean_Syntax_getArg(v_v_15021_, v___x_15046_);
v___x_15048_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15047_);
lean_inc(v___y_15015_);
lean_inc_ref(v___y_15014_);
lean_inc(v___y_15013_);
lean_inc_ref(v___y_15012_);
lean_inc(v___y_15011_);
lean_inc_ref(v___y_15010_);
lean_inc_ref(v___y_15009_);
v___x_15049_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_15048_, v___y_15009_, v___y_15010_, v___y_15011_, v___y_15012_, v___y_15013_, v___y_15014_, v___y_15015_);
if (lean_obj_tag(v___x_15049_) == 0)
{
lean_object* v_a_15050_; lean_object* v_bs_x27_15051_; lean_object* v___x_15052_; size_t v___x_15053_; size_t v___x_15054_; lean_object* v___x_15055_; 
v_a_15050_ = lean_ctor_get(v___x_15049_, 0);
lean_inc(v_a_15050_);
lean_dec_ref(v___x_15049_);
v_bs_x27_15051_ = lean_array_uset(v_bs_15008_, v_i_15007_, v___x_15020_);
v___x_15052_ = lean_alloc_ctor(0, 4, 0);
lean_ctor_set(v___x_15052_, 0, v_v_15021_);
lean_ctor_set(v___x_15052_, 1, v_a_15026_);
lean_ctor_set(v___x_15052_, 2, v___x_15023_);
lean_ctor_set(v___x_15052_, 3, v_a_15050_);
v___x_15053_ = ((size_t)1ULL);
v___x_15054_ = lean_usize_add(v_i_15007_, v___x_15053_);
v___x_15055_ = lean_array_uset(v_bs_x27_15051_, v_i_15007_, v___x_15052_);
v_i_15007_ = v___x_15054_;
v_bs_15008_ = v___x_15055_;
goto _start;
}
else
{
lean_object* v_a_15057_; lean_object* v___x_15058_; 
lean_dec(v_a_15026_);
lean_dec(v___x_15023_);
lean_dec(v_v_15021_);
lean_dec(v___y_15015_);
lean_dec_ref(v___y_15014_);
lean_dec(v___y_15013_);
lean_dec_ref(v___y_15012_);
lean_dec(v___y_15011_);
lean_dec_ref(v___y_15010_);
lean_dec_ref(v___y_15009_);
lean_dec_ref(v_bs_15008_);
v_a_15057_ = lean_ctor_get(v___x_15049_, 0);
lean_inc(v_a_15057_);
lean_dec_ref(v___x_15049_);
v___x_15058_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15058_, 0, v_a_15057_);
return v___x_15058_;
}
}
else
{
lean_object* v_a_15059_; lean_object* v___x_15060_; 
lean_dec(v_a_15026_);
lean_dec(v___x_15023_);
lean_dec(v_v_15021_);
lean_dec(v___y_15015_);
lean_dec_ref(v___y_15014_);
lean_dec(v___y_15013_);
lean_dec_ref(v___y_15012_);
lean_dec(v___y_15011_);
lean_dec_ref(v___y_15010_);
lean_dec_ref(v___y_15009_);
lean_dec_ref(v_bs_15008_);
v_a_15059_ = lean_ctor_get(v___x_15045_, 0);
lean_inc(v_a_15059_);
lean_dec_ref(v___x_15045_);
v___x_15060_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15060_, 0, v_a_15059_);
return v___x_15060_;
}
}
else
{
lean_object* v_a_15061_; lean_object* v___x_15062_; 
lean_dec(v___x_15023_);
lean_dec(v_v_15021_);
lean_dec(v___y_15015_);
lean_dec_ref(v___y_15014_);
lean_dec(v___y_15013_);
lean_dec_ref(v___y_15012_);
lean_dec(v___y_15011_);
lean_dec_ref(v___y_15010_);
lean_dec_ref(v___y_15009_);
lean_dec_ref(v_bs_15008_);
v_a_15061_ = lean_ctor_get(v___x_15025_, 0);
lean_inc(v_a_15061_);
lean_dec_ref(v___x_15025_);
v___x_15062_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15062_, 0, v_a_15061_);
return v___x_15062_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode(lean_object* v_doMatch_15063_, lean_object* v_doElems_15064_, lean_object* v_a_15065_, lean_object* v_a_15066_, lean_object* v_a_15067_, lean_object* v_a_15068_, lean_object* v_a_15069_, lean_object* v_a_15070_, lean_object* v_a_15071_){
_start:
{
lean_object* v_a_15074_; lean_object* v___y_15091_; lean_object* v___x_15095_; lean_object* v___x_15096_; lean_object* v___x_15097_; lean_object* v___x_15098_; lean_object* v_matchAlts_15099_; lean_object* v___x_15100_; lean_object* v___x_15101_; uint8_t v___x_15102_; 
v___x_15095_ = lean_unsigned_to_nat(6u);
v___x_15096_ = l_Lean_Syntax_getArg(v_doMatch_15063_, v___x_15095_);
v___x_15097_ = lean_unsigned_to_nat(0u);
v___x_15098_ = l_Lean_Syntax_getArg(v___x_15096_, v___x_15097_);
lean_dec(v___x_15096_);
v_matchAlts_15099_ = l_Lean_Syntax_getArgs(v___x_15098_);
lean_dec(v___x_15098_);
v___x_15100_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v___x_15101_ = lean_array_get_size(v_matchAlts_15099_);
v___x_15102_ = lean_nat_dec_lt(v___x_15097_, v___x_15101_);
if (v___x_15102_ == 0)
{
lean_dec_ref(v_matchAlts_15099_);
v_a_15074_ = v___x_15100_;
goto v___jp_15073_;
}
else
{
uint8_t v___x_15103_; 
v___x_15103_ = lean_nat_dec_le(v___x_15101_, v___x_15101_);
if (v___x_15103_ == 0)
{
if (v___x_15102_ == 0)
{
lean_dec_ref(v_matchAlts_15099_);
v_a_15074_ = v___x_15100_;
goto v___jp_15073_;
}
else
{
size_t v___x_15104_; size_t v___x_15105_; lean_object* v___x_15106_; 
v___x_15104_ = ((size_t)0ULL);
v___x_15105_ = lean_usize_of_nat(v___x_15101_);
v___x_15106_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(v_matchAlts_15099_, v___x_15104_, v___x_15105_, v___x_15100_);
lean_dec_ref(v_matchAlts_15099_);
v___y_15091_ = v___x_15106_;
goto v___jp_15090_;
}
}
else
{
size_t v___x_15107_; size_t v___x_15108_; lean_object* v___x_15109_; 
v___x_15107_ = ((size_t)0ULL);
v___x_15108_ = lean_usize_of_nat(v___x_15101_);
v___x_15109_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(v_matchAlts_15099_, v___x_15107_, v___x_15108_, v___x_15100_);
lean_dec_ref(v_matchAlts_15099_);
v___y_15091_ = v___x_15109_;
goto v___jp_15090_;
}
}
v___jp_15073_:
{
size_t v_sz_15075_; size_t v___x_15076_; lean_object* v___x_15077_; 
v_sz_15075_ = lean_array_size(v_a_15074_);
v___x_15076_ = ((size_t)0ULL);
lean_inc(v_a_15071_);
lean_inc_ref(v_a_15070_);
lean_inc(v_a_15069_);
lean_inc_ref(v_a_15068_);
lean_inc(v_a_15067_);
lean_inc_ref(v_a_15066_);
lean_inc_ref(v_a_15065_);
v___x_15077_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8(v_sz_15075_, v___x_15076_, v_a_15074_, v_a_15065_, v_a_15066_, v_a_15067_, v_a_15068_, v_a_15069_, v_a_15070_, v_a_15071_);
if (lean_obj_tag(v___x_15077_) == 0)
{
lean_object* v_a_15078_; lean_object* v___x_15079_; lean_object* v___x_15080_; lean_object* v_genParam_15081_; lean_object* v_optMotive_15082_; lean_object* v___x_15083_; lean_object* v_discrs_15084_; lean_object* v___x_15085_; 
v_a_15078_ = lean_ctor_get(v___x_15077_, 0);
lean_inc(v_a_15078_);
lean_dec_ref(v___x_15077_);
v___x_15079_ = lean_unsigned_to_nat(3u);
v___x_15080_ = lean_unsigned_to_nat(2u);
v_genParam_15081_ = l_Lean_Syntax_getArg(v_doMatch_15063_, v___x_15080_);
v_optMotive_15082_ = l_Lean_Syntax_getArg(v_doMatch_15063_, v___x_15079_);
v___x_15083_ = lean_unsigned_to_nat(4u);
v_discrs_15084_ = l_Lean_Syntax_getArg(v_doMatch_15063_, v___x_15083_);
lean_inc(v_a_15071_);
lean_inc_ref(v_a_15070_);
lean_inc(v_a_15069_);
lean_inc_ref(v_a_15068_);
lean_inc(v_a_15067_);
lean_inc_ref(v_a_15066_);
v___x_15085_ = l_Lean_Elab_Term_Do_mkMatch(v_doMatch_15063_, v_genParam_15081_, v_discrs_15084_, v_optMotive_15082_, v_a_15078_, v_a_15066_, v_a_15067_, v_a_15068_, v_a_15069_, v_a_15070_, v_a_15071_);
if (lean_obj_tag(v___x_15085_) == 0)
{
lean_object* v_a_15086_; lean_object* v___x_15087_; 
v_a_15086_ = lean_ctor_get(v___x_15085_, 0);
lean_inc(v_a_15086_);
lean_dec_ref(v___x_15085_);
v___x_15087_ = l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(v_a_15086_, v_doElems_15064_, v_a_15065_, v_a_15066_, v_a_15067_, v_a_15068_, v_a_15069_, v_a_15070_, v_a_15071_);
return v___x_15087_;
}
else
{
lean_dec(v_a_15071_);
lean_dec_ref(v_a_15070_);
lean_dec(v_a_15069_);
lean_dec_ref(v_a_15068_);
lean_dec(v_a_15067_);
lean_dec_ref(v_a_15066_);
lean_dec_ref(v_a_15065_);
lean_dec(v_doElems_15064_);
return v___x_15085_;
}
}
else
{
lean_object* v_a_15088_; lean_object* v___x_15089_; 
lean_dec(v_a_15071_);
lean_dec_ref(v_a_15070_);
lean_dec(v_a_15069_);
lean_dec_ref(v_a_15068_);
lean_dec(v_a_15067_);
lean_dec_ref(v_a_15066_);
lean_dec_ref(v_a_15065_);
lean_dec(v_doElems_15064_);
lean_dec(v_doMatch_15063_);
v_a_15088_ = lean_ctor_get(v___x_15077_, 0);
lean_inc(v_a_15088_);
lean_dec_ref(v___x_15077_);
v___x_15089_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15089_, 0, v_a_15088_);
return v___x_15089_;
}
}
v___jp_15090_:
{
if (lean_obj_tag(v___y_15091_) == 0)
{
lean_object* v_a_15092_; 
v_a_15092_ = lean_ctor_get(v___y_15091_, 0);
lean_inc(v_a_15092_);
lean_dec_ref(v___y_15091_);
v_a_15074_ = v_a_15092_;
goto v___jp_15073_;
}
else
{
lean_object* v_a_15093_; lean_object* v___x_15094_; 
lean_dec(v_a_15071_);
lean_dec_ref(v_a_15070_);
lean_dec(v_a_15069_);
lean_dec_ref(v_a_15068_);
lean_dec(v_a_15067_);
lean_dec_ref(v_a_15066_);
lean_dec_ref(v_a_15065_);
lean_dec(v_doElems_15064_);
lean_dec(v_doMatch_15063_);
v_a_15093_ = lean_ctor_get(v___y_15091_, 0);
lean_inc(v_a_15093_);
lean_dec_ref(v___y_15091_);
v___x_15094_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15094_, 0, v_a_15093_);
return v___x_15094_;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___boxed(lean_object* v_x_15135_, lean_object* v_a_15136_, lean_object* v_a_15137_, lean_object* v_a_15138_, lean_object* v_a_15139_, lean_object* v_a_15140_, lean_object* v_a_15141_, lean_object* v_a_15142_, lean_object* v_a_15143_){
_start:
{
lean_object* v_res_15144_; 
v_res_15144_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_x_15135_, v_a_15136_, v_a_15137_, v_a_15138_, v_a_15139_, v_a_15140_, v_a_15141_, v_a_15142_);
return v_res_15144_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15(void){
_start:
{
lean_object* v___x_15159_; lean_object* v___x_15160_; 
v___x_15159_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__21));
v___x_15160_ = l_String_toRawSubstring_x27(v___x_15159_);
return v___x_15160_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25(void){
_start:
{
lean_object* v___x_15186_; lean_object* v___x_15187_; 
v___x_15186_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__2));
v___x_15187_ = l_String_toRawSubstring_x27(v___x_15186_);
return v___x_15187_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3(void){
_start:
{
lean_object* v___x_15208_; lean_object* v___x_15209_; 
v___x_15208_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__2));
v___x_15209_ = l_String_toRawSubstring_x27(v___x_15208_);
return v___x_15209_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12(void){
_start:
{
lean_object* v___x_15227_; lean_object* v___x_15228_; 
v___x_15227_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__11));
v___x_15228_ = l_String_toRawSubstring_x27(v___x_15227_);
return v___x_15228_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19(void){
_start:
{
lean_object* v___x_15234_; lean_object* v___x_15235_; 
v___x_15234_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__18));
v___x_15235_ = l_String_toRawSubstring_x27(v___x_15234_);
return v___x_15235_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28(void){
_start:
{
lean_object* v___x_15255_; lean_object* v___x_15256_; 
v___x_15255_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__27));
v___x_15256_ = l_String_toRawSubstring_x27(v___x_15255_);
return v___x_15256_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2(lean_object* v_ys_15259_, lean_object* v_doForDecls_15260_, lean_object* v_y_15261_, lean_object* v_body_15262_, lean_object* v_doElems_15263_, lean_object* v___y_15264_, lean_object* v___y_15265_, lean_object* v___y_15266_, lean_object* v___y_15267_, lean_object* v___y_15268_, lean_object* v___y_15269_, lean_object* v___y_15270_){
_start:
{
lean_object* v_ref_15272_; lean_object* v_quotContext_15273_; lean_object* v_currMacroScope_15274_; lean_object* v_ref_15275_; uint8_t v___x_15276_; lean_object* v___x_15277_; lean_object* v___x_15278_; lean_object* v___x_15279_; lean_object* v___x_15280_; lean_object* v___x_15281_; lean_object* v___x_15282_; lean_object* v___x_15283_; lean_object* v___x_15284_; lean_object* v___x_15285_; lean_object* v___x_15286_; lean_object* v___x_15287_; lean_object* v___x_15288_; lean_object* v___x_15289_; lean_object* v___x_15290_; lean_object* v___x_15291_; lean_object* v___x_15292_; lean_object* v___x_15293_; lean_object* v___x_15294_; lean_object* v___x_15295_; lean_object* v___x_15296_; lean_object* v___x_15297_; lean_object* v___x_15298_; lean_object* v___x_15299_; lean_object* v___x_15300_; lean_object* v___x_15301_; lean_object* v___x_15302_; lean_object* v___x_15303_; lean_object* v___x_15304_; lean_object* v___x_15305_; lean_object* v___x_15306_; lean_object* v___x_15307_; lean_object* v___x_15308_; lean_object* v___x_15309_; lean_object* v___x_15310_; lean_object* v___x_15311_; lean_object* v___x_15312_; lean_object* v___x_15313_; lean_object* v___x_15314_; lean_object* v___x_15315_; lean_object* v___x_15316_; lean_object* v___x_15317_; lean_object* v___x_15318_; lean_object* v___x_15319_; lean_object* v___x_15320_; lean_object* v___x_15321_; lean_object* v___x_15322_; lean_object* v___x_15323_; lean_object* v___x_15324_; lean_object* v___x_15325_; lean_object* v___x_15326_; lean_object* v___x_15327_; lean_object* v___x_15328_; lean_object* v___x_15329_; lean_object* v___x_15330_; lean_object* v___x_15331_; lean_object* v___x_15332_; lean_object* v___x_15333_; lean_object* v___x_15334_; lean_object* v___x_15335_; lean_object* v___x_15336_; lean_object* v___x_15337_; lean_object* v___x_15338_; lean_object* v___x_15339_; lean_object* v___x_15340_; lean_object* v___x_15341_; lean_object* v___x_15342_; lean_object* v___x_15343_; lean_object* v___x_15344_; lean_object* v___x_15345_; lean_object* v___x_15346_; lean_object* v___x_15347_; lean_object* v___x_15348_; lean_object* v___x_15349_; lean_object* v___x_15350_; lean_object* v___x_15351_; lean_object* v___x_15352_; lean_object* v___x_15353_; lean_object* v___x_15354_; lean_object* v___x_15355_; lean_object* v___x_15356_; lean_object* v___x_15357_; lean_object* v___x_15358_; lean_object* v___x_15359_; lean_object* v___x_15360_; lean_object* v___x_15361_; lean_object* v___x_15362_; lean_object* v___x_15363_; lean_object* v___x_15364_; lean_object* v___x_15365_; lean_object* v___x_15366_; lean_object* v___x_15367_; lean_object* v___x_15368_; lean_object* v___x_15369_; lean_object* v___x_15370_; lean_object* v___x_15371_; lean_object* v___x_15372_; lean_object* v___x_15373_; lean_object* v___x_15374_; lean_object* v___x_15375_; lean_object* v___x_15376_; lean_object* v___x_15377_; lean_object* v___x_15378_; lean_object* v___x_15379_; lean_object* v___x_15380_; lean_object* v___x_15381_; lean_object* v___x_15382_; lean_object* v___x_15383_; lean_object* v___x_15384_; lean_object* v___x_15385_; lean_object* v___x_15386_; lean_object* v___x_15387_; lean_object* v___x_15388_; lean_object* v___x_15389_; lean_object* v___x_15390_; lean_object* v___x_15391_; lean_object* v___x_15392_; lean_object* v___x_15393_; lean_object* v___x_15394_; lean_object* v___x_15395_; lean_object* v___x_15396_; lean_object* v___x_15397_; lean_object* v___x_15398_; lean_object* v___x_15399_; lean_object* v___x_15400_; lean_object* v___x_15401_; lean_object* v___x_15402_; lean_object* v___x_15403_; lean_object* v___x_15404_; lean_object* v___x_15405_; lean_object* v___x_15406_; lean_object* v___x_15407_; lean_object* v___x_15408_; lean_object* v___x_15409_; lean_object* v___x_15410_; lean_object* v___x_15411_; lean_object* v___x_15412_; lean_object* v___x_15413_; lean_object* v___x_15414_; lean_object* v___x_15415_; lean_object* v___x_15416_; lean_object* v___x_15417_; lean_object* v___x_15418_; lean_object* v___x_15419_; lean_object* v___x_15420_; lean_object* v___x_15421_; lean_object* v___x_15422_; lean_object* v___x_15423_; lean_object* v___x_15424_; lean_object* v___x_15425_; lean_object* v___x_15426_; lean_object* v___x_15427_; 
v_ref_15272_ = lean_ctor_get(v___y_15269_, 5);
v_quotContext_15273_ = lean_ctor_get(v___y_15269_, 10);
v_currMacroScope_15274_ = lean_ctor_get(v___y_15269_, 11);
v_ref_15275_ = l_Lean_replaceRef(v_ys_15259_, v_ref_15272_);
v___x_15276_ = 0;
v___x_15277_ = l_Lean_SourceInfo_fromRef(v_ref_15275_, v___x_15276_);
lean_dec(v_ref_15275_);
v___x_15278_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_15279_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__1));
v___x_15280_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_CodeBlock_toMessageData_loop_spec__3___closed__2));
lean_inc(v___x_15277_);
v___x_15281_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15281_, 0, v___x_15277_);
lean_ctor_set(v___x_15281_, 1, v___x_15280_);
v___x_15282_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__3);
v___x_15283_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__6));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15284_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15283_, v_currMacroScope_15274_);
v___x_15285_ = lean_box(0);
v___x_15286_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__10));
lean_inc(v___x_15277_);
v___x_15287_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15287_, 0, v___x_15277_);
lean_ctor_set(v___x_15287_, 1, v___x_15282_);
lean_ctor_set(v___x_15287_, 2, v___x_15284_);
lean_ctor_set(v___x_15287_, 3, v___x_15286_);
lean_inc(v___x_15277_);
v___x_15288_ = l_Lean_Syntax_node2(v___x_15277_, v___x_15279_, v___x_15281_, v___x_15287_);
v___x_15289_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_15290_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_15291_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_15277_);
v___x_15292_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15292_, 0, v___x_15277_);
lean_ctor_set(v___x_15292_, 1, v___x_15291_);
lean_inc(v___x_15277_);
v___x_15293_ = l_Lean_Syntax_node1(v___x_15277_, v___x_15290_, v___x_15292_);
lean_inc_n(v___x_15293_, 2);
lean_inc(v___x_15277_);
v___x_15294_ = l_Lean_Syntax_node4(v___x_15277_, v___x_15289_, v___x_15293_, v___x_15293_, v___x_15293_, v_ys_15259_);
v___x_15295_ = l_Lean_Syntax_node2(v___x_15277_, v___x_15278_, v___x_15288_, v___x_15294_);
v___x_15296_ = l_Lean_SourceInfo_fromRef(v_ref_15272_, v___x_15276_);
v___x_15297_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_15298_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_15296_);
v___x_15299_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15299_, 0, v___x_15296_);
lean_ctor_set(v___x_15299_, 1, v___x_15297_);
v___x_15300_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_15301_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_15302_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_15303_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_15296_);
v___x_15304_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15304_, 0, v___x_15296_);
lean_ctor_set(v___x_15304_, 1, v___x_15303_);
v___x_15305_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___closed__0));
lean_inc(v___x_15296_);
v___x_15306_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15306_, 0, v___x_15296_);
lean_ctor_set(v___x_15306_, 1, v___x_15305_);
lean_inc(v___x_15296_);
v___x_15307_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15306_);
v___x_15308_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_15309_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_15310_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
v___x_15311_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__12);
v___x_15312_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__13));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15313_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15312_, v_currMacroScope_15274_);
lean_inc(v___x_15296_);
v___x_15314_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15314_, 0, v___x_15296_);
lean_ctor_set(v___x_15314_, 1, v___x_15311_);
lean_ctor_set(v___x_15314_, 2, v___x_15313_);
lean_ctor_set(v___x_15314_, 3, v___x_15285_);
lean_inc_ref(v___x_15314_);
lean_inc(v___x_15296_);
v___x_15315_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15310_, v___x_15314_);
v___x_15316_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_15296_);
v___x_15317_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15317_, 0, v___x_15296_);
lean_ctor_set(v___x_15317_, 1, v___x_15289_);
lean_ctor_set(v___x_15317_, 2, v___x_15316_);
v___x_15318_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_15296_);
v___x_15319_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15319_, 0, v___x_15296_);
lean_ctor_set(v___x_15319_, 1, v___x_15318_);
lean_inc_ref(v___x_15319_);
lean_inc_ref_n(v___x_15317_, 2);
lean_inc(v___x_15315_);
lean_inc(v___x_15296_);
v___x_15320_ = l_Lean_Syntax_node5(v___x_15296_, v___x_15309_, v___x_15315_, v___x_15317_, v___x_15317_, v___x_15319_, v___x_15295_);
lean_inc(v___x_15296_);
v___x_15321_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15308_, v___x_15320_);
lean_inc(v___x_15296_);
v___x_15322_ = l_Lean_Syntax_node3(v___x_15296_, v___x_15302_, v___x_15304_, v___x_15307_, v___x_15321_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15323_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15322_, v___x_15317_);
v___x_15324_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15));
v___x_15325_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__16));
lean_inc(v___x_15296_);
v___x_15326_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15326_, 0, v___x_15296_);
lean_ctor_set(v___x_15326_, 1, v___x_15325_);
v___x_15327_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__17));
v___x_15328_ = l_Lean_Syntax_SepArray_ofElems(v___x_15327_, v_doForDecls_15260_);
v___x_15329_ = l_Array_append___redArg(v___x_15316_, v___x_15328_);
lean_dec_ref(v___x_15328_);
lean_inc(v___x_15296_);
v___x_15330_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15330_, 0, v___x_15296_);
lean_ctor_set(v___x_15330_, 1, v___x_15289_);
lean_ctor_set(v___x_15330_, 2, v___x_15329_);
v___x_15331_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_15332_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_15296_);
v___x_15333_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15333_, 0, v___x_15296_);
lean_ctor_set(v___x_15333_, 1, v___x_15332_);
v___x_15334_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc(v___x_15296_);
v___x_15335_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15335_, 0, v___x_15296_);
lean_ctor_set(v___x_15335_, 1, v___x_15280_);
v___x_15336_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__19);
v___x_15337_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__22));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15338_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15337_, v_currMacroScope_15274_);
v___x_15339_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__24));
lean_inc(v___x_15296_);
v___x_15340_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15340_, 0, v___x_15296_);
lean_ctor_set(v___x_15340_, 1, v___x_15336_);
lean_ctor_set(v___x_15340_, 2, v___x_15338_);
lean_ctor_set(v___x_15340_, 3, v___x_15339_);
lean_inc(v___x_15296_);
v___x_15341_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15279_, v___x_15335_, v___x_15340_);
lean_inc(v___x_15296_);
v___x_15342_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15342_, 0, v___x_15296_);
lean_ctor_set(v___x_15342_, 1, v___x_15291_);
lean_inc(v___x_15296_);
v___x_15343_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15290_, v___x_15342_);
lean_inc_n(v___x_15343_, 2);
lean_inc(v___x_15296_);
v___x_15344_ = l_Lean_Syntax_node4(v___x_15296_, v___x_15289_, v___x_15343_, v___x_15343_, v___x_15343_, v___x_15314_);
lean_inc(v___x_15296_);
v___x_15345_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15278_, v___x_15341_, v___x_15344_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15346_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15334_, v___x_15317_, v___x_15345_);
lean_inc(v___x_15296_);
v___x_15347_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15346_);
v___x_15348_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_15296_);
v___x_15349_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15349_, 0, v___x_15296_);
lean_ctor_set(v___x_15349_, 1, v___x_15348_);
v___x_15350_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_15351_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_15352_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_15296_);
v___x_15353_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15353_, 0, v___x_15296_);
lean_ctor_set(v___x_15353_, 1, v___x_15352_);
v___x_15354_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_15355_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15356_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15355_, v_currMacroScope_15274_);
v___x_15357_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__15));
lean_inc(v___x_15296_);
v___x_15358_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15358_, 0, v___x_15296_);
lean_ctor_set(v___x_15358_, 1, v___x_15354_);
lean_ctor_set(v___x_15358_, 2, v___x_15356_);
lean_ctor_set(v___x_15358_, 3, v___x_15357_);
lean_inc(v___x_15296_);
v___x_15359_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15358_);
lean_inc(v___x_15296_);
v___x_15360_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15359_);
v___x_15361_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_15296_);
v___x_15362_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15362_, 0, v___x_15296_);
lean_ctor_set(v___x_15362_, 1, v___x_15361_);
v___x_15363_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
v___x_15364_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_breakToTerm___closed__4));
lean_inc(v___x_15296_);
v___x_15365_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15365_, 0, v___x_15296_);
lean_ctor_set(v___x_15365_, 1, v___x_15364_);
lean_inc(v___x_15296_);
v___x_15366_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15363_, v___x_15365_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15367_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15366_, v___x_15317_);
lean_inc(v___x_15296_);
v___x_15368_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15367_);
lean_inc(v___x_15296_);
v___x_15369_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15300_, v___x_15368_);
lean_inc_ref(v___x_15362_);
lean_inc_ref(v___x_15353_);
lean_inc(v___x_15296_);
v___x_15370_ = l_Lean_Syntax_node4(v___x_15296_, v___x_15351_, v___x_15353_, v___x_15360_, v___x_15362_, v___x_15369_);
v___x_15371_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19);
v___x_15372_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15373_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15372_, v_currMacroScope_15274_);
v___x_15374_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__24));
lean_inc(v___x_15296_);
v___x_15375_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15375_, 0, v___x_15296_);
lean_ctor_set(v___x_15375_, 1, v___x_15371_);
lean_ctor_set(v___x_15375_, 2, v___x_15373_);
lean_ctor_set(v___x_15375_, 3, v___x_15374_);
v___x_15376_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__26));
v___x_15377_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_15378_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_15296_);
v___x_15379_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15379_, 0, v___x_15296_);
lean_ctor_set(v___x_15379_, 1, v___x_15378_);
v___x_15380_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_15381_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_15382_ = lean_box(0);
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15383_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15382_, v_currMacroScope_15274_);
v___x_15384_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00__private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__4_spec__5___closed__8));
lean_inc(v___x_15296_);
v___x_15385_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15385_, 0, v___x_15296_);
lean_ctor_set(v___x_15385_, 1, v___x_15381_);
lean_ctor_set(v___x_15385_, 2, v___x_15383_);
lean_ctor_set(v___x_15385_, 3, v___x_15384_);
lean_inc(v___x_15296_);
v___x_15386_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15380_, v___x_15385_);
lean_inc(v___x_15296_);
v___x_15387_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15377_, v___x_15379_, v___x_15386_);
lean_inc(v___x_15296_);
v___x_15388_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15388_, 0, v___x_15296_);
lean_ctor_set(v___x_15388_, 1, v___x_15327_);
v___x_15389_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__28);
v___x_15390_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__29));
lean_inc(v_currMacroScope_15274_);
lean_inc(v_quotContext_15273_);
v___x_15391_ = l_Lean_addMacroScope(v_quotContext_15273_, v___x_15390_, v_currMacroScope_15274_);
lean_inc(v___x_15296_);
v___x_15392_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15392_, 0, v___x_15296_);
lean_ctor_set(v___x_15392_, 1, v___x_15389_);
lean_ctor_set(v___x_15392_, 2, v___x_15391_);
lean_ctor_set(v___x_15392_, 3, v___x_15285_);
lean_inc_ref(v___x_15392_);
lean_inc(v___x_15296_);
v___x_15393_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15392_);
lean_inc(v___x_15296_);
v___x_15394_ = l_Lean_Syntax_node3(v___x_15296_, v___x_15289_, v_y_15261_, v___x_15388_, v___x_15393_);
v___x_15395_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_15296_);
v___x_15396_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15396_, 0, v___x_15296_);
lean_ctor_set(v___x_15396_, 1, v___x_15395_);
lean_inc(v___x_15296_);
v___x_15397_ = l_Lean_Syntax_node3(v___x_15296_, v___x_15376_, v___x_15387_, v___x_15394_, v___x_15396_);
lean_inc(v___x_15296_);
v___x_15398_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15397_);
lean_inc(v___x_15296_);
v___x_15399_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15278_, v___x_15375_, v___x_15398_);
lean_inc(v___x_15296_);
v___x_15400_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15399_);
lean_inc(v___x_15296_);
v___x_15401_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15400_);
v___x_15402_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_15403_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
lean_inc_ref_n(v___x_15317_, 2);
lean_inc(v___x_15296_);
v___x_15404_ = l_Lean_Syntax_node5(v___x_15296_, v___x_15403_, v___x_15315_, v___x_15317_, v___x_15317_, v___x_15319_, v___x_15392_);
lean_inc(v___x_15296_);
v___x_15405_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15402_, v___x_15404_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15406_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15405_, v___x_15317_);
v___x_15407_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31));
lean_inc_ref(v___x_15299_);
lean_inc(v___x_15296_);
v___x_15408_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15407_, v___x_15299_, v_body_15262_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15409_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15408_, v___x_15317_);
lean_inc(v___x_15296_);
v___x_15410_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15289_, v___x_15406_, v___x_15409_);
lean_inc(v___x_15296_);
v___x_15411_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15300_, v___x_15410_);
lean_inc(v___x_15296_);
v___x_15412_ = l_Lean_Syntax_node4(v___x_15296_, v___x_15351_, v___x_15353_, v___x_15401_, v___x_15362_, v___x_15411_);
lean_inc(v___x_15296_);
v___x_15413_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15289_, v___x_15370_, v___x_15412_);
lean_inc(v___x_15296_);
v___x_15414_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15350_, v___x_15413_);
lean_inc_ref_n(v___x_15317_, 3);
lean_inc(v___x_15296_);
v___x_15415_ = l_Lean_Syntax_node7(v___x_15296_, v___x_15331_, v___x_15333_, v___x_15317_, v___x_15317_, v___x_15317_, v___x_15347_, v___x_15349_, v___x_15414_);
lean_inc_ref(v___x_15317_);
lean_inc(v___x_15296_);
v___x_15416_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15415_, v___x_15317_);
lean_inc(v___x_15296_);
v___x_15417_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15289_, v___x_15416_);
lean_inc(v___x_15296_);
v___x_15418_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15300_, v___x_15417_);
lean_inc_ref(v___x_15299_);
lean_inc(v___x_15296_);
v___x_15419_ = l_Lean_Syntax_node4(v___x_15296_, v___x_15324_, v___x_15326_, v___x_15330_, v___x_15299_, v___x_15418_);
lean_inc(v___x_15296_);
v___x_15420_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15301_, v___x_15419_, v___x_15317_);
lean_inc(v___x_15296_);
v___x_15421_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15289_, v___x_15323_, v___x_15420_);
lean_inc(v___x_15296_);
v___x_15422_ = l_Lean_Syntax_node1(v___x_15296_, v___x_15300_, v___x_15421_);
v___x_15423_ = l_Lean_Syntax_node2(v___x_15296_, v___x_15298_, v___x_15299_, v___x_15422_);
v___x_15424_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_15423_);
lean_dec(v___x_15423_);
v___x_15425_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15424_);
v___x_15426_ = l_List_appendTR___redArg(v___x_15425_, v_doElems_15263_);
v___x_15427_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_15426_, v___y_15264_, v___y_15265_, v___y_15266_, v___y_15267_, v___y_15268_, v___y_15269_, v___y_15270_);
return v___x_15427_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___boxed(lean_object* v_ys_15428_, lean_object* v_doForDecls_15429_, lean_object* v_y_15430_, lean_object* v_body_15431_, lean_object* v_doElems_15432_, lean_object* v___y_15433_, lean_object* v___y_15434_, lean_object* v___y_15435_, lean_object* v___y_15436_, lean_object* v___y_15437_, lean_object* v___y_15438_, lean_object* v___y_15439_, lean_object* v___y_15440_){
_start:
{
lean_object* v_res_15441_; 
v_res_15441_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2(v_ys_15428_, v_doForDecls_15429_, v_y_15430_, v_body_15431_, v_doElems_15432_, v___y_15433_, v___y_15434_, v___y_15435_, v___y_15436_, v___y_15437_, v___y_15438_, v___y_15439_);
lean_dec_ref(v_doForDecls_15429_);
return v_res_15441_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32(void){
_start:
{
lean_object* v___x_15443_; lean_object* v___x_15444_; 
v___x_15443_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__31));
v___x_15444_ = l_Lean_stringToMessageData(v___x_15443_);
return v___x_15444_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode(lean_object* v_doFor_15445_, lean_object* v_doElems_15446_, lean_object* v_a_15447_, lean_object* v_a_15448_, lean_object* v_a_15449_, lean_object* v_a_15450_, lean_object* v_a_15451_, lean_object* v_a_15452_, lean_object* v_a_15453_){
_start:
{
lean_object* v___y_15456_; lean_object* v___y_15457_; lean_object* v_forInTerm_15458_; lean_object* v___y_15459_; lean_object* v___y_15460_; lean_object* v___y_15461_; lean_object* v___y_15462_; lean_object* v___y_15463_; lean_object* v___y_15464_; lean_object* v___y_15465_; lean_object* v___x_15597_; lean_object* v___x_15598_; lean_object* v_doForDecls_15599_; lean_object* v___x_15600_; uint8_t v___x_15601_; lean_object* v___y_15603_; lean_object* v_forInTerm_15604_; lean_object* v___y_15605_; lean_object* v___y_15606_; lean_object* v___y_15607_; lean_object* v___y_15608_; lean_object* v___y_15609_; lean_object* v___y_15610_; lean_object* v_ref_15611_; lean_object* v_quotContext_15612_; lean_object* v_currMacroScope_15613_; lean_object* v___y_15614_; 
v___x_15597_ = lean_unsigned_to_nat(1u);
v___x_15598_ = l_Lean_Syntax_getArg(v_doFor_15445_, v___x_15597_);
v_doForDecls_15599_ = l_Lean_Syntax_getSepArgs(v___x_15598_);
lean_dec(v___x_15598_);
v___x_15600_ = lean_array_get_size(v_doForDecls_15599_);
v___x_15601_ = lean_nat_dec_lt(v___x_15597_, v___x_15600_);
if (v___x_15601_ == 0)
{
lean_object* v___x_15758_; lean_object* v___x_15759_; lean_object* v___x_15760_; lean_object* v___y_15762_; lean_object* v___x_16097_; uint8_t v___x_16098_; 
v___x_15758_ = lean_box(0);
v___x_15759_ = lean_unsigned_to_nat(0u);
v___x_15760_ = lean_array_get(v___x_15758_, v_doForDecls_15599_, v___x_15759_);
lean_dec_ref(v_doForDecls_15599_);
v___x_16097_ = l_Lean_Syntax_getArg(v___x_15760_, v___x_15759_);
v___x_16098_ = l_Lean_Syntax_isNone(v___x_16097_);
if (v___x_16098_ == 0)
{
lean_object* v___x_16099_; lean_object* v___x_16100_; 
v___x_16099_ = l_Lean_Syntax_getArg(v___x_16097_, v___x_15759_);
lean_dec(v___x_16097_);
v___x_16100_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16100_, 0, v___x_16099_);
v___y_15762_ = v___x_16100_;
goto v___jp_15761_;
}
else
{
lean_object* v___x_16101_; 
lean_dec(v___x_16097_);
v___x_16101_ = lean_box(0);
v___y_15762_ = v___x_16101_;
goto v___jp_15761_;
}
v___jp_15761_:
{
lean_object* v_fileName_15763_; lean_object* v_fileMap_15764_; lean_object* v_options_15765_; lean_object* v_currRecDepth_15766_; lean_object* v_maxRecDepth_15767_; lean_object* v_ref_15768_; lean_object* v_currNamespace_15769_; lean_object* v_openDecls_15770_; lean_object* v_initHeartbeats_15771_; lean_object* v_maxHeartbeats_15772_; lean_object* v_quotContext_15773_; lean_object* v_currMacroScope_15774_; uint8_t v_diag_15775_; lean_object* v_cancelTk_x3f_15776_; uint8_t v_suppressElabErrors_15777_; lean_object* v_inheritedTraceOptions_15778_; lean_object* v_x_15779_; lean_object* v_ref_15780_; lean_object* v___x_15781_; lean_object* v___x_15782_; 
v_fileName_15763_ = lean_ctor_get(v_a_15452_, 0);
lean_inc_ref(v_fileName_15763_);
v_fileMap_15764_ = lean_ctor_get(v_a_15452_, 1);
lean_inc_ref(v_fileMap_15764_);
v_options_15765_ = lean_ctor_get(v_a_15452_, 2);
lean_inc_ref(v_options_15765_);
v_currRecDepth_15766_ = lean_ctor_get(v_a_15452_, 3);
lean_inc(v_currRecDepth_15766_);
v_maxRecDepth_15767_ = lean_ctor_get(v_a_15452_, 4);
lean_inc(v_maxRecDepth_15767_);
v_ref_15768_ = lean_ctor_get(v_a_15452_, 5);
lean_inc(v_ref_15768_);
v_currNamespace_15769_ = lean_ctor_get(v_a_15452_, 6);
lean_inc(v_currNamespace_15769_);
v_openDecls_15770_ = lean_ctor_get(v_a_15452_, 7);
lean_inc(v_openDecls_15770_);
v_initHeartbeats_15771_ = lean_ctor_get(v_a_15452_, 8);
lean_inc(v_initHeartbeats_15771_);
v_maxHeartbeats_15772_ = lean_ctor_get(v_a_15452_, 9);
lean_inc(v_maxHeartbeats_15772_);
v_quotContext_15773_ = lean_ctor_get(v_a_15452_, 10);
lean_inc(v_quotContext_15773_);
v_currMacroScope_15774_ = lean_ctor_get(v_a_15452_, 11);
lean_inc(v_currMacroScope_15774_);
v_diag_15775_ = lean_ctor_get_uint8(v_a_15452_, sizeof(void*)*14);
v_cancelTk_x3f_15776_ = lean_ctor_get(v_a_15452_, 12);
lean_inc(v_cancelTk_x3f_15776_);
v_suppressElabErrors_15777_ = lean_ctor_get_uint8(v_a_15452_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_15778_ = lean_ctor_get(v_a_15452_, 13);
lean_inc_ref(v_inheritedTraceOptions_15778_);
lean_dec_ref(v_a_15452_);
v_x_15779_ = l_Lean_Syntax_getArg(v___x_15760_, v___x_15597_);
v_ref_15780_ = l_Lean_replaceRef(v_doFor_15445_, v_ref_15768_);
lean_dec(v_ref_15768_);
lean_inc_ref(v_inheritedTraceOptions_15778_);
lean_inc(v_cancelTk_x3f_15776_);
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
lean_inc(v_maxHeartbeats_15772_);
lean_inc(v_initHeartbeats_15771_);
lean_inc(v_openDecls_15770_);
lean_inc(v_currNamespace_15769_);
lean_inc(v_ref_15780_);
lean_inc(v_maxRecDepth_15767_);
lean_inc(v_currRecDepth_15766_);
lean_inc_ref(v_options_15765_);
lean_inc_ref(v_fileMap_15764_);
lean_inc_ref(v_fileName_15763_);
v___x_15781_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_15781_, 0, v_fileName_15763_);
lean_ctor_set(v___x_15781_, 1, v_fileMap_15764_);
lean_ctor_set(v___x_15781_, 2, v_options_15765_);
lean_ctor_set(v___x_15781_, 3, v_currRecDepth_15766_);
lean_ctor_set(v___x_15781_, 4, v_maxRecDepth_15767_);
lean_ctor_set(v___x_15781_, 5, v_ref_15780_);
lean_ctor_set(v___x_15781_, 6, v_currNamespace_15769_);
lean_ctor_set(v___x_15781_, 7, v_openDecls_15770_);
lean_ctor_set(v___x_15781_, 8, v_initHeartbeats_15771_);
lean_ctor_set(v___x_15781_, 9, v_maxHeartbeats_15772_);
lean_ctor_set(v___x_15781_, 10, v_quotContext_15773_);
lean_ctor_set(v___x_15781_, 11, v_currMacroScope_15774_);
lean_ctor_set(v___x_15781_, 12, v_cancelTk_x3f_15776_);
lean_ctor_set(v___x_15781_, 13, v_inheritedTraceOptions_15778_);
lean_ctor_set_uint8(v___x_15781_, sizeof(void*)*14, v_diag_15775_);
lean_ctor_set_uint8(v___x_15781_, sizeof(void*)*14 + 1, v_suppressElabErrors_15777_);
lean_inc(v_a_15453_);
lean_inc_ref(v___x_15781_);
lean_inc(v_a_15451_);
lean_inc_ref(v_a_15450_);
lean_inc(v_a_15449_);
lean_inc_ref(v_a_15448_);
lean_inc(v_x_15779_);
v___x_15782_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_x_15779_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15782_) == 0)
{
lean_object* v_a_15783_; lean_object* v_ref_15784_; lean_object* v___x_15785_; lean_object* v___x_15786_; 
v_a_15783_ = lean_ctor_get(v___x_15782_, 0);
lean_inc(v_a_15783_);
lean_dec_ref(v___x_15782_);
v_ref_15784_ = l_Lean_replaceRef(v_x_15779_, v_ref_15780_);
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15785_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_15785_, 0, v_fileName_15763_);
lean_ctor_set(v___x_15785_, 1, v_fileMap_15764_);
lean_ctor_set(v___x_15785_, 2, v_options_15765_);
lean_ctor_set(v___x_15785_, 3, v_currRecDepth_15766_);
lean_ctor_set(v___x_15785_, 4, v_maxRecDepth_15767_);
lean_ctor_set(v___x_15785_, 5, v_ref_15784_);
lean_ctor_set(v___x_15785_, 6, v_currNamespace_15769_);
lean_ctor_set(v___x_15785_, 7, v_openDecls_15770_);
lean_ctor_set(v___x_15785_, 8, v_initHeartbeats_15771_);
lean_ctor_set(v___x_15785_, 9, v_maxHeartbeats_15772_);
lean_ctor_set(v___x_15785_, 10, v_quotContext_15773_);
lean_ctor_set(v___x_15785_, 11, v_currMacroScope_15774_);
lean_ctor_set(v___x_15785_, 12, v_cancelTk_x3f_15776_);
lean_ctor_set(v___x_15785_, 13, v_inheritedTraceOptions_15778_);
lean_ctor_set_uint8(v___x_15785_, sizeof(void*)*14, v_diag_15775_);
lean_ctor_set_uint8(v___x_15785_, sizeof(void*)*14 + 1, v_suppressElabErrors_15777_);
v___x_15786_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_a_15783_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15785_, v_a_15453_);
lean_dec_ref(v___x_15785_);
lean_dec(v_a_15783_);
if (lean_obj_tag(v___x_15786_) == 0)
{
lean_object* v___x_15787_; lean_object* v___x_15788_; lean_object* v___x_15789_; lean_object* v___x_15790_; lean_object* v___x_15791_; 
lean_dec_ref(v___x_15786_);
v___x_15787_ = lean_unsigned_to_nat(3u);
v___x_15788_ = l_Lean_Syntax_getArg(v_doFor_15445_, v___x_15787_);
v___x_15789_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15788_);
v___x_15790_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___boxed), 9, 1);
lean_closure_set(v___x_15790_, 0, v___x_15789_);
lean_inc(v_a_15453_);
lean_inc_ref(v___x_15781_);
lean_inc(v_a_15451_);
lean_inc_ref(v_a_15450_);
lean_inc(v_a_15449_);
lean_inc_ref(v_a_15448_);
v___x_15791_ = l_Lean_Elab_Term_Do_ToCodeBlock_withFor___redArg(v___x_15790_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15791_) == 0)
{
lean_object* v_a_15792_; lean_object* v___x_15793_; 
v_a_15792_ = lean_ctor_get(v___x_15791_, 0);
lean_inc(v_a_15792_);
lean_dec_ref(v___x_15791_);
lean_inc_ref(v___x_15781_);
lean_inc_ref(v_a_15447_);
lean_inc(v_a_15792_);
v___x_15793_ = l_Lean_Elab_Term_Do_ToCodeBlock_mkForInBody___redArg(v_a_15792_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15793_) == 0)
{
lean_object* v_a_15794_; lean_object* v_uvars_15795_; lean_object* v_term_15796_; size_t v_sz_15797_; size_t v___x_15798_; lean_object* v___x_15799_; lean_object* v___x_15800_; lean_object* v___x_15801_; 
v_a_15794_ = lean_ctor_get(v___x_15793_, 0);
lean_inc(v_a_15794_);
lean_dec_ref(v___x_15793_);
v_uvars_15795_ = lean_ctor_get(v_a_15794_, 0);
lean_inc_ref(v_uvars_15795_);
v_term_15796_ = lean_ctor_get(v_a_15794_, 1);
lean_inc(v_term_15796_);
lean_dec(v_a_15794_);
v_sz_15797_ = lean_array_size(v_uvars_15795_);
v___x_15798_ = ((size_t)0ULL);
v___x_15799_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__12(v_a_15447_, v_sz_15797_, v___x_15798_, v_uvars_15795_);
lean_inc_ref(v___x_15799_);
v___x_15800_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple___boxed), 3, 1);
lean_closure_set(v___x_15800_, 0, v___x_15799_);
lean_inc_ref(v___x_15781_);
v___x_15801_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_15800_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15801_) == 0)
{
lean_object* v_a_15802_; lean_object* v_code_15803_; lean_object* v___x_15804_; uint8_t v___x_15805_; 
v_a_15802_ = lean_ctor_get(v___x_15801_, 0);
lean_inc(v_a_15802_);
lean_dec_ref(v___x_15801_);
v_code_15803_ = lean_ctor_get(v_a_15792_, 0);
lean_inc_ref(v_code_15803_);
lean_dec(v_a_15792_);
v___x_15804_ = l_Lean_Syntax_getArg(v___x_15760_, v___x_15787_);
lean_dec(v___x_15760_);
v___x_15805_ = l_Lean_Elab_Term_Do_hasReturn(v_code_15803_);
if (v___x_15805_ == 0)
{
lean_object* v___x_15806_; lean_object* v___f_15807_; lean_object* v___x_15808_; 
v___x_15806_ = lean_box(v___x_15805_);
v___f_15807_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0___boxed), 10, 1);
lean_closure_set(v___f_15807_, 0, v___x_15806_);
v___x_15808_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15805_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15808_) == 0)
{
lean_object* v_a_15809_; lean_object* v___x_15810_; lean_object* v___x_15811_; lean_object* v___x_15812_; lean_object* v___x_15813_; lean_object* v___x_15814_; lean_object* v___x_15815_; lean_object* v___x_15816_; 
v_a_15809_ = lean_ctor_get(v___x_15808_, 0);
lean_inc(v_a_15809_);
lean_dec_ref(v___x_15808_);
v___x_15810_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_15811_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
v___x_15812_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15811_, v_currMacroScope_15774_);
v___x_15813_ = lean_box(0);
lean_inc(v___x_15812_);
v___x_15814_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15814_, 0, v_a_15809_);
lean_ctor_set(v___x_15814_, 1, v___x_15810_);
lean_ctor_set(v___x_15814_, 2, v___x_15812_);
lean_ctor_set(v___x_15814_, 3, v___x_15813_);
v___x_15815_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple), 5, 3);
lean_closure_set(v___x_15815_, 0, v___x_15799_);
lean_closure_set(v___x_15815_, 1, v___x_15814_);
lean_closure_set(v___x_15815_, 2, v_term_15796_);
lean_inc_ref(v___x_15781_);
v___x_15816_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_15815_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15816_) == 0)
{
if (lean_obj_tag(v___y_15762_) == 1)
{
lean_object* v_a_15817_; lean_object* v_val_15818_; lean_object* v___x_15819_; 
v_a_15817_ = lean_ctor_get(v___x_15816_, 0);
lean_inc(v_a_15817_);
lean_dec_ref(v___x_15816_);
v_val_15818_ = lean_ctor_get(v___y_15762_, 0);
lean_inc(v_val_15818_);
lean_dec_ref(v___y_15762_);
v___x_15819_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15805_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
lean_dec(v_ref_15780_);
if (lean_obj_tag(v___x_15819_) == 0)
{
lean_object* v_a_15820_; lean_object* v___x_15821_; lean_object* v___x_15822_; lean_object* v___x_15823_; lean_object* v___x_15824_; lean_object* v___x_15825_; lean_object* v___x_15826_; lean_object* v___x_15827_; lean_object* v___x_15828_; lean_object* v___x_15829_; lean_object* v___x_15830_; lean_object* v___x_15831_; lean_object* v___x_15832_; lean_object* v___x_15833_; lean_object* v___x_15834_; lean_object* v___x_15835_; lean_object* v___x_15836_; lean_object* v___x_15837_; lean_object* v___x_15838_; 
v_a_15820_ = lean_ctor_get(v___x_15819_, 0);
lean_inc(v_a_15820_);
lean_dec_ref(v___x_15819_);
v___x_15821_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10));
v___x_15822_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__11));
lean_inc(v_a_15820_);
v___x_15823_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15823_, 0, v_a_15820_);
lean_ctor_set(v___x_15823_, 1, v___x_15822_);
v___x_15824_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_15825_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v_a_15820_);
v___x_15826_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15826_, 0, v_a_15820_);
lean_ctor_set(v___x_15826_, 1, v___x_15824_);
v___x_15827_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_15828_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v_a_15820_);
v___x_15829_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15829_, 0, v_a_15820_);
lean_ctor_set(v___x_15829_, 1, v___x_15810_);
lean_ctor_set(v___x_15829_, 2, v___x_15812_);
lean_ctor_set(v___x_15829_, 3, v___x_15813_);
lean_inc(v_a_15820_);
v___x_15830_ = l_Lean_Syntax_node3(v_a_15820_, v___x_15828_, v_x_15779_, v_val_15818_, v___x_15829_);
v___x_15831_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_15820_);
v___x_15832_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15832_, 0, v_a_15820_);
lean_ctor_set(v___x_15832_, 1, v___x_15828_);
lean_ctor_set(v___x_15832_, 2, v___x_15831_);
v___x_15833_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_15820_);
v___x_15834_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15834_, 0, v_a_15820_);
lean_ctor_set(v___x_15834_, 1, v___x_15833_);
lean_inc(v_a_15820_);
v___x_15835_ = l_Lean_Syntax_node4(v_a_15820_, v___x_15827_, v___x_15830_, v___x_15832_, v___x_15834_, v_a_15817_);
lean_inc(v_a_15820_);
v___x_15836_ = l_Lean_Syntax_node2(v_a_15820_, v___x_15825_, v___x_15826_, v___x_15835_);
lean_inc(v_a_15802_);
v___x_15837_ = l_Lean_Syntax_node4(v_a_15820_, v___x_15821_, v___x_15823_, v___x_15804_, v_a_15802_, v___x_15836_);
v___x_15838_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doFor_15445_, v___x_15837_, v___x_15781_);
if (lean_obj_tag(v___x_15838_) == 0)
{
lean_object* v_a_15839_; 
v_a_15839_ = lean_ctor_get(v___x_15838_, 0);
lean_inc(v_a_15839_);
lean_dec_ref(v___x_15838_);
v___y_15456_ = v_a_15802_;
v___y_15457_ = v___f_15807_;
v_forInTerm_15458_ = v_a_15839_;
v___y_15459_ = v_a_15447_;
v___y_15460_ = v_a_15448_;
v___y_15461_ = v_a_15449_;
v___y_15462_ = v_a_15450_;
v___y_15463_ = v_a_15451_;
v___y_15464_ = v___x_15781_;
v___y_15465_ = v_a_15453_;
goto v___jp_15455_;
}
else
{
lean_object* v_a_15840_; lean_object* v___x_15841_; 
lean_dec_ref(v___f_15807_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
v_a_15840_ = lean_ctor_get(v___x_15838_, 0);
lean_inc(v_a_15840_);
lean_dec_ref(v___x_15838_);
v___x_15841_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15841_, 0, v_a_15840_);
return v___x_15841_;
}
}
else
{
lean_object* v_a_15842_; lean_object* v___x_15843_; 
lean_dec(v_val_15818_);
lean_dec(v_a_15817_);
lean_dec(v___x_15812_);
lean_dec_ref(v___f_15807_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_x_15779_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_15842_ = lean_ctor_get(v___x_15819_, 0);
lean_inc(v_a_15842_);
lean_dec_ref(v___x_15819_);
v___x_15843_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15843_, 0, v_a_15842_);
return v___x_15843_;
}
}
else
{
lean_object* v_a_15844_; lean_object* v___x_15845_; 
lean_dec(v___y_15762_);
v_a_15844_ = lean_ctor_get(v___x_15816_, 0);
lean_inc(v_a_15844_);
lean_dec_ref(v___x_15816_);
v___x_15845_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15805_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
lean_dec(v_ref_15780_);
if (lean_obj_tag(v___x_15845_) == 0)
{
lean_object* v_a_15846_; lean_object* v___x_15847_; lean_object* v___x_15848_; lean_object* v___x_15849_; lean_object* v___x_15850_; lean_object* v___x_15851_; lean_object* v___x_15852_; lean_object* v___x_15853_; lean_object* v___x_15854_; lean_object* v___x_15855_; lean_object* v___x_15856_; lean_object* v___x_15857_; lean_object* v___x_15858_; lean_object* v___x_15859_; lean_object* v___x_15860_; lean_object* v___x_15861_; lean_object* v___x_15862_; lean_object* v___x_15863_; lean_object* v___x_15864_; 
v_a_15846_ = lean_ctor_get(v___x_15845_, 0);
lean_inc(v_a_15846_);
lean_dec_ref(v___x_15845_);
v___x_15847_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13));
v___x_15848_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__14));
lean_inc(v_a_15846_);
v___x_15849_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15849_, 0, v_a_15846_);
lean_ctor_set(v___x_15849_, 1, v___x_15848_);
v___x_15850_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_15851_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v_a_15846_);
v___x_15852_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15852_, 0, v_a_15846_);
lean_ctor_set(v___x_15852_, 1, v___x_15850_);
v___x_15853_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
v___x_15854_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v_a_15846_);
v___x_15855_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15855_, 0, v_a_15846_);
lean_ctor_set(v___x_15855_, 1, v___x_15810_);
lean_ctor_set(v___x_15855_, 2, v___x_15812_);
lean_ctor_set(v___x_15855_, 3, v___x_15813_);
lean_inc(v_a_15846_);
v___x_15856_ = l_Lean_Syntax_node2(v_a_15846_, v___x_15854_, v_x_15779_, v___x_15855_);
v___x_15857_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_15846_);
v___x_15858_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15858_, 0, v_a_15846_);
lean_ctor_set(v___x_15858_, 1, v___x_15854_);
lean_ctor_set(v___x_15858_, 2, v___x_15857_);
v___x_15859_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_15846_);
v___x_15860_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15860_, 0, v_a_15846_);
lean_ctor_set(v___x_15860_, 1, v___x_15859_);
lean_inc(v_a_15846_);
v___x_15861_ = l_Lean_Syntax_node4(v_a_15846_, v___x_15853_, v___x_15856_, v___x_15858_, v___x_15860_, v_a_15844_);
lean_inc(v_a_15846_);
v___x_15862_ = l_Lean_Syntax_node2(v_a_15846_, v___x_15851_, v___x_15852_, v___x_15861_);
lean_inc(v_a_15802_);
v___x_15863_ = l_Lean_Syntax_node4(v_a_15846_, v___x_15847_, v___x_15849_, v___x_15804_, v_a_15802_, v___x_15862_);
v___x_15864_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doFor_15445_, v___x_15863_, v___x_15781_);
if (lean_obj_tag(v___x_15864_) == 0)
{
lean_object* v_a_15865_; 
v_a_15865_ = lean_ctor_get(v___x_15864_, 0);
lean_inc(v_a_15865_);
lean_dec_ref(v___x_15864_);
v___y_15456_ = v_a_15802_;
v___y_15457_ = v___f_15807_;
v_forInTerm_15458_ = v_a_15865_;
v___y_15459_ = v_a_15447_;
v___y_15460_ = v_a_15448_;
v___y_15461_ = v_a_15449_;
v___y_15462_ = v_a_15450_;
v___y_15463_ = v_a_15451_;
v___y_15464_ = v___x_15781_;
v___y_15465_ = v_a_15453_;
goto v___jp_15455_;
}
else
{
lean_object* v_a_15866_; lean_object* v___x_15867_; 
lean_dec_ref(v___f_15807_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
v_a_15866_ = lean_ctor_get(v___x_15864_, 0);
lean_inc(v_a_15866_);
lean_dec_ref(v___x_15864_);
v___x_15867_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15867_, 0, v_a_15866_);
return v___x_15867_;
}
}
else
{
lean_object* v_a_15868_; lean_object* v___x_15869_; 
lean_dec(v_a_15844_);
lean_dec(v___x_15812_);
lean_dec_ref(v___f_15807_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_x_15779_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_15868_ = lean_ctor_get(v___x_15845_, 0);
lean_inc(v_a_15868_);
lean_dec_ref(v___x_15845_);
v___x_15869_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15869_, 0, v_a_15868_);
return v___x_15869_;
}
}
}
else
{
lean_object* v_a_15870_; lean_object* v___x_15871_; 
lean_dec(v___x_15812_);
lean_dec_ref(v___f_15807_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v___y_15762_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_15870_ = lean_ctor_get(v___x_15816_, 0);
lean_inc(v_a_15870_);
lean_dec_ref(v___x_15816_);
v___x_15871_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15871_, 0, v_a_15870_);
return v___x_15871_;
}
}
else
{
lean_object* v_a_15872_; lean_object* v___x_15873_; 
lean_dec_ref(v___f_15807_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15799_);
lean_dec(v_term_15796_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_15872_ = lean_ctor_get(v___x_15808_, 0);
lean_inc(v_a_15872_);
lean_dec_ref(v___x_15808_);
v___x_15873_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15873_, 0, v_a_15872_);
return v___x_15873_;
}
}
else
{
lean_object* v___x_15874_; 
v___x_15874_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15601_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15874_) == 0)
{
lean_object* v_a_15875_; lean_object* v___x_15876_; lean_object* v___x_15877_; lean_object* v___x_15878_; lean_object* v___x_15879_; lean_object* v___x_15880_; lean_object* v___x_15881_; lean_object* v___x_15882_; 
v_a_15875_ = lean_ctor_get(v___x_15874_, 0);
lean_inc(v_a_15875_);
lean_dec_ref(v___x_15874_);
v___x_15876_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_15877_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15878_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15877_, v_currMacroScope_15774_);
v___x_15879_ = lean_box(0);
lean_inc(v___x_15878_);
v___x_15880_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15880_, 0, v_a_15875_);
lean_ctor_set(v___x_15880_, 1, v___x_15876_);
lean_ctor_set(v___x_15880_, 2, v___x_15878_);
lean_ctor_set(v___x_15880_, 3, v___x_15879_);
v___x_15881_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple), 5, 3);
lean_closure_set(v___x_15881_, 0, v___x_15799_);
lean_closure_set(v___x_15881_, 1, v___x_15880_);
lean_closure_set(v___x_15881_, 2, v_term_15796_);
lean_inc_ref(v___x_15781_);
v___x_15882_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_15881_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15882_) == 0)
{
lean_object* v_a_15883_; lean_object* v___x_15884_; 
v_a_15883_ = lean_ctor_get(v___x_15882_, 0);
lean_inc(v_a_15883_);
lean_dec_ref(v___x_15882_);
v___x_15884_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15601_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15884_) == 0)
{
lean_object* v_a_15885_; lean_object* v___x_15886_; lean_object* v_returnType_15887_; lean_object* v___x_15888_; lean_object* v___x_15889_; lean_object* v___x_15890_; lean_object* v___x_15891_; lean_object* v___x_15892_; lean_object* v___x_15893_; lean_object* v___x_15894_; lean_object* v___x_15895_; 
v_a_15885_ = lean_ctor_get(v___x_15884_, 0);
lean_inc(v_a_15885_);
lean_dec_ref(v___x_15884_);
v___x_15886_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__15);
v_returnType_15887_ = lean_ctor_get(v_a_15447_, 2);
v___x_15888_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_15889_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__16));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15890_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15889_, v_currMacroScope_15774_);
v___x_15891_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__21));
lean_inc(v_a_15885_);
v___x_15892_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15892_, 0, v_a_15885_);
lean_ctor_set(v___x_15892_, 1, v___x_15886_);
lean_ctor_set(v___x_15892_, 2, v___x_15890_);
lean_ctor_set(v___x_15892_, 3, v___x_15891_);
v___x_15893_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
lean_inc(v_returnType_15887_);
lean_inc(v_a_15885_);
v___x_15894_ = l_Lean_Syntax_node1(v_a_15885_, v___x_15893_, v_returnType_15887_);
v___x_15895_ = l_Lean_Syntax_node2(v_a_15885_, v___x_15888_, v___x_15892_, v___x_15894_);
if (lean_obj_tag(v___y_15762_) == 1)
{
lean_object* v_val_15896_; lean_object* v___x_15897_; 
v_val_15896_ = lean_ctor_get(v___y_15762_, 0);
lean_inc(v_val_15896_);
lean_dec_ref(v___y_15762_);
v___x_15897_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15601_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15897_) == 0)
{
lean_object* v_a_15898_; lean_object* v___x_15899_; lean_object* v___x_15900_; lean_object* v___x_15901_; lean_object* v___x_15902_; lean_object* v___x_15903_; lean_object* v___x_15904_; lean_object* v___x_15905_; lean_object* v___x_15906_; lean_object* v___x_15907_; lean_object* v___x_15908_; lean_object* v___x_15909_; lean_object* v___x_15910_; lean_object* v___x_15911_; lean_object* v___x_15912_; lean_object* v___x_15913_; lean_object* v___x_15914_; lean_object* v___x_15915_; lean_object* v___x_15916_; lean_object* v___x_15917_; lean_object* v___x_15918_; lean_object* v___x_15919_; lean_object* v___x_15920_; lean_object* v___x_15921_; lean_object* v___x_15922_; lean_object* v___x_15923_; lean_object* v___x_15924_; lean_object* v___x_15925_; lean_object* v___x_15926_; lean_object* v___x_15927_; lean_object* v___x_15928_; lean_object* v___x_15929_; lean_object* v___x_15930_; lean_object* v___x_15931_; lean_object* v___x_15932_; lean_object* v___x_15933_; lean_object* v___x_15934_; lean_object* v___x_15935_; lean_object* v___x_15936_; lean_object* v___x_15937_; lean_object* v___x_15938_; lean_object* v___x_15939_; lean_object* v___x_15940_; lean_object* v___x_15941_; lean_object* v___x_15942_; lean_object* v___x_15943_; lean_object* v___x_15944_; lean_object* v___x_15945_; lean_object* v___x_15946_; lean_object* v___x_15947_; lean_object* v___x_15948_; lean_object* v___x_15949_; lean_object* v___x_15950_; lean_object* v___x_15951_; lean_object* v___x_15952_; lean_object* v___x_15953_; lean_object* v___x_15954_; lean_object* v___x_15955_; lean_object* v___x_15956_; lean_object* v___x_15957_; lean_object* v___x_15958_; lean_object* v___x_15959_; lean_object* v___x_15960_; lean_object* v___x_15961_; lean_object* v___x_15962_; lean_object* v___x_15963_; lean_object* v___x_15964_; lean_object* v___x_15965_; lean_object* v___x_15966_; lean_object* v___x_15967_; lean_object* v___x_15968_; lean_object* v___x_15969_; lean_object* v___x_15970_; lean_object* v___x_15971_; lean_object* v___x_15972_; lean_object* v___x_15973_; lean_object* v___x_15974_; lean_object* v___x_15975_; lean_object* v___x_15976_; lean_object* v___x_15977_; lean_object* v___x_15978_; lean_object* v___x_15979_; lean_object* v___x_15980_; lean_object* v___x_15981_; lean_object* v___x_15982_; lean_object* v___x_15983_; lean_object* v___x_15984_; 
v_a_15898_ = lean_ctor_get(v___x_15897_, 0);
lean_inc(v_a_15898_);
lean_dec_ref(v___x_15897_);
v___x_15899_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__10));
v___x_15900_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__11));
lean_inc(v_a_15898_);
v___x_15901_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15901_, 0, v_a_15898_);
lean_ctor_set(v___x_15901_, 1, v___x_15900_);
v___x_15902_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_15903_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_15904_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v_a_15898_);
v___x_15905_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15905_, 0, v_a_15898_);
lean_ctor_set(v___x_15905_, 1, v___x_15904_);
v___x_15906_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_15907_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_15908_ = lean_box(0);
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15909_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15908_, v_currMacroScope_15774_);
v___x_15910_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0));
lean_inc(v_a_15898_);
v___x_15911_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15911_, 0, v_a_15898_);
lean_ctor_set(v___x_15911_, 1, v___x_15907_);
lean_ctor_set(v___x_15911_, 2, v___x_15909_);
lean_ctor_set(v___x_15911_, 3, v___x_15910_);
lean_inc(v_a_15898_);
v___x_15912_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15906_, v___x_15911_);
lean_inc(v_a_15898_);
v___x_15913_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15903_, v___x_15905_, v___x_15912_);
v___x_15914_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_15915_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15916_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15915_, v_currMacroScope_15774_);
v___x_15917_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__24));
lean_inc(v_a_15898_);
v___x_15918_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15918_, 0, v_a_15898_);
lean_ctor_set(v___x_15918_, 1, v___x_15914_);
lean_ctor_set(v___x_15918_, 2, v___x_15916_);
lean_ctor_set(v___x_15918_, 3, v___x_15917_);
v___x_15919_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_15920_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_15921_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15922_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15921_, v_currMacroScope_15774_);
v___x_15923_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6));
lean_inc(v_a_15898_);
v___x_15924_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15924_, 0, v_a_15898_);
lean_ctor_set(v___x_15924_, 1, v___x_15920_);
lean_ctor_set(v___x_15924_, 2, v___x_15922_);
lean_ctor_set(v___x_15924_, 3, v___x_15923_);
v___x_15925_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v_a_15898_);
v___x_15926_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15926_, 0, v_a_15898_);
lean_ctor_set(v___x_15926_, 1, v___x_15925_);
lean_inc(v___x_15895_);
lean_inc(v_a_15898_);
v___x_15927_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15893_, v___x_15895_);
v___x_15928_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v_a_15898_);
v___x_15929_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15929_, 0, v_a_15898_);
lean_ctor_set(v___x_15929_, 1, v___x_15928_);
lean_inc_ref(v___x_15929_);
lean_inc_ref(v___x_15926_);
lean_inc(v___x_15913_);
lean_inc(v_a_15898_);
v___x_15930_ = l_Lean_Syntax_node5(v_a_15898_, v___x_15919_, v___x_15913_, v___x_15924_, v___x_15926_, v___x_15927_, v___x_15929_);
lean_inc(v_a_15802_);
lean_inc(v_a_15898_);
v___x_15931_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15893_, v___x_15930_, v_a_15802_);
lean_inc(v_a_15898_);
v___x_15932_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15888_, v___x_15918_, v___x_15931_);
lean_inc_ref(v___x_15929_);
lean_inc(v___x_15913_);
lean_inc(v_a_15898_);
v___x_15933_ = l_Lean_Syntax_node3(v_a_15898_, v___x_15902_, v___x_15913_, v___x_15932_, v___x_15929_);
v___x_15934_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_15935_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v_a_15898_);
v___x_15936_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15936_, 0, v_a_15898_);
lean_ctor_set(v___x_15936_, 1, v___x_15934_);
v___x_15937_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_a_15898_);
v___x_15938_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15938_, 0, v_a_15898_);
lean_ctor_set(v___x_15938_, 1, v___x_15876_);
lean_ctor_set(v___x_15938_, 2, v___x_15878_);
lean_ctor_set(v___x_15938_, 3, v___x_15879_);
v___x_15939_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25);
v___x_15940_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_15941_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_15940_, v_currMacroScope_15774_);
v___x_15942_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__30));
lean_inc(v_a_15898_);
v___x_15943_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15943_, 0, v_a_15898_);
lean_ctor_set(v___x_15943_, 1, v___x_15939_);
lean_ctor_set(v___x_15943_, 2, v___x_15941_);
lean_ctor_set(v___x_15943_, 3, v___x_15942_);
v___x_15944_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_15945_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_15898_);
v___x_15946_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15946_, 0, v_a_15898_);
lean_ctor_set(v___x_15946_, 1, v___x_15945_);
lean_inc(v_a_15898_);
v___x_15947_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15944_, v___x_15946_);
lean_inc(v_a_15898_);
v___x_15948_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15893_, v___x_15895_, v___x_15947_);
lean_inc(v_a_15898_);
v___x_15949_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15888_, v___x_15943_, v___x_15948_);
lean_inc(v_a_15898_);
v___x_15950_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15893_, v___x_15949_);
lean_inc_ref(v___x_15938_);
lean_inc(v_a_15898_);
v___x_15951_ = l_Lean_Syntax_node5(v_a_15898_, v___x_15919_, v___x_15913_, v___x_15938_, v___x_15926_, v___x_15950_, v___x_15929_);
lean_inc(v_a_15898_);
v___x_15952_ = l_Lean_Syntax_node3(v_a_15898_, v___x_15893_, v_x_15779_, v_val_15896_, v___x_15951_);
v___x_15953_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_15898_);
v___x_15954_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15954_, 0, v_a_15898_);
lean_ctor_set(v___x_15954_, 1, v___x_15893_);
lean_ctor_set(v___x_15954_, 2, v___x_15953_);
v___x_15955_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_15898_);
v___x_15956_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15956_, 0, v_a_15898_);
lean_ctor_set(v___x_15956_, 1, v___x_15955_);
v___x_15957_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_15958_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v_a_15898_);
v___x_15959_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15959_, 0, v_a_15898_);
lean_ctor_set(v___x_15959_, 1, v___x_15957_);
v___x_15960_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
lean_inc_ref(v___x_15954_);
lean_inc(v_a_15898_);
v___x_15961_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15960_, v___x_15954_);
v___x_15962_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_15963_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_15964_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc_ref(v___x_15938_);
lean_inc(v_a_15898_);
v___x_15965_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15964_, v___x_15938_);
v___x_15966_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v_a_15898_);
v___x_15967_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15967_, 0, v_a_15898_);
lean_ctor_set(v___x_15967_, 1, v___x_15966_);
v___x_15968_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_15969_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v_a_15898_);
v___x_15970_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15970_, 0, v_a_15898_);
lean_ctor_set(v___x_15970_, 1, v___x_15969_);
v___x_15971_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_15972_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v_a_15898_);
v___x_15973_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15973_, 0, v_a_15898_);
lean_ctor_set(v___x_15973_, 1, v___x_15972_);
lean_inc(v_a_15898_);
v___x_15974_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15971_, v___x_15973_);
lean_inc(v_a_15898_);
v___x_15975_ = l_Lean_Syntax_node3(v_a_15898_, v___x_15968_, v___x_15938_, v___x_15970_, v___x_15974_);
lean_inc_ref_n(v___x_15954_, 2);
lean_inc(v_a_15898_);
v___x_15976_ = l_Lean_Syntax_node5(v_a_15898_, v___x_15963_, v___x_15965_, v___x_15954_, v___x_15954_, v___x_15967_, v___x_15975_);
lean_inc(v_a_15898_);
v___x_15977_ = l_Lean_Syntax_node1(v_a_15898_, v___x_15962_, v___x_15976_);
v___x_15978_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v_a_15898_);
v___x_15979_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15979_, 0, v_a_15898_);
lean_ctor_set(v___x_15979_, 1, v___x_15978_);
lean_inc(v_a_15898_);
v___x_15980_ = l_Lean_Syntax_node5(v_a_15898_, v___x_15958_, v___x_15959_, v___x_15961_, v___x_15977_, v___x_15979_, v_a_15883_);
lean_inc(v_a_15898_);
v___x_15981_ = l_Lean_Syntax_node4(v_a_15898_, v___x_15937_, v___x_15952_, v___x_15954_, v___x_15956_, v___x_15980_);
lean_inc(v_a_15898_);
v___x_15982_ = l_Lean_Syntax_node2(v_a_15898_, v___x_15935_, v___x_15936_, v___x_15981_);
v___x_15983_ = l_Lean_Syntax_node4(v_a_15898_, v___x_15899_, v___x_15901_, v___x_15804_, v___x_15933_, v___x_15982_);
v___x_15984_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doFor_15445_, v___x_15983_, v___x_15781_);
if (lean_obj_tag(v___x_15984_) == 0)
{
lean_object* v_a_15985_; 
v_a_15985_ = lean_ctor_get(v___x_15984_, 0);
lean_inc(v_a_15985_);
lean_dec_ref(v___x_15984_);
v___y_15603_ = v_a_15802_;
v_forInTerm_15604_ = v_a_15985_;
v___y_15605_ = v_a_15447_;
v___y_15606_ = v_a_15448_;
v___y_15607_ = v_a_15449_;
v___y_15608_ = v_a_15450_;
v___y_15609_ = v_a_15451_;
v___y_15610_ = v___x_15781_;
v_ref_15611_ = v_ref_15780_;
v_quotContext_15612_ = v_quotContext_15773_;
v_currMacroScope_15613_ = v_currMacroScope_15774_;
v___y_15614_ = v_a_15453_;
goto v___jp_15602_;
}
else
{
lean_object* v_a_15986_; lean_object* v___x_15987_; 
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
v_a_15986_ = lean_ctor_get(v___x_15984_, 0);
lean_inc(v_a_15986_);
lean_dec_ref(v___x_15984_);
v___x_15987_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15987_, 0, v_a_15986_);
return v___x_15987_;
}
}
else
{
lean_object* v_a_15988_; lean_object* v___x_15989_; 
lean_dec(v_val_15896_);
lean_dec(v___x_15895_);
lean_dec(v_a_15883_);
lean_dec(v___x_15878_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_15988_ = lean_ctor_get(v___x_15897_, 0);
lean_inc(v_a_15988_);
lean_dec_ref(v___x_15897_);
v___x_15989_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15989_, 0, v_a_15988_);
return v___x_15989_;
}
}
else
{
lean_object* v___x_15990_; 
lean_dec(v___y_15762_);
v___x_15990_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__0(v___x_15601_, v_ref_15780_, v_a_15447_, v_a_15448_, v_a_15449_, v_a_15450_, v_a_15451_, v___x_15781_, v_a_15453_);
if (lean_obj_tag(v___x_15990_) == 0)
{
lean_object* v_a_15991_; lean_object* v___x_15992_; lean_object* v___x_15993_; lean_object* v___x_15994_; lean_object* v___x_15995_; lean_object* v___x_15996_; lean_object* v___x_15997_; lean_object* v___x_15998_; lean_object* v___x_15999_; lean_object* v___x_16000_; lean_object* v___x_16001_; lean_object* v___x_16002_; lean_object* v___x_16003_; lean_object* v___x_16004_; lean_object* v___x_16005_; lean_object* v___x_16006_; lean_object* v___x_16007_; lean_object* v___x_16008_; lean_object* v___x_16009_; lean_object* v___x_16010_; lean_object* v___x_16011_; lean_object* v___x_16012_; lean_object* v___x_16013_; lean_object* v___x_16014_; lean_object* v___x_16015_; lean_object* v___x_16016_; lean_object* v___x_16017_; lean_object* v___x_16018_; lean_object* v___x_16019_; lean_object* v___x_16020_; lean_object* v___x_16021_; lean_object* v___x_16022_; lean_object* v___x_16023_; lean_object* v___x_16024_; lean_object* v___x_16025_; lean_object* v___x_16026_; lean_object* v___x_16027_; lean_object* v___x_16028_; lean_object* v___x_16029_; lean_object* v___x_16030_; lean_object* v___x_16031_; lean_object* v___x_16032_; lean_object* v___x_16033_; lean_object* v___x_16034_; lean_object* v___x_16035_; lean_object* v___x_16036_; lean_object* v___x_16037_; lean_object* v___x_16038_; lean_object* v___x_16039_; lean_object* v___x_16040_; lean_object* v___x_16041_; lean_object* v___x_16042_; lean_object* v___x_16043_; lean_object* v___x_16044_; lean_object* v___x_16045_; lean_object* v___x_16046_; lean_object* v___x_16047_; lean_object* v___x_16048_; lean_object* v___x_16049_; lean_object* v___x_16050_; lean_object* v___x_16051_; lean_object* v___x_16052_; lean_object* v___x_16053_; lean_object* v___x_16054_; lean_object* v___x_16055_; lean_object* v___x_16056_; lean_object* v___x_16057_; lean_object* v___x_16058_; lean_object* v___x_16059_; lean_object* v___x_16060_; lean_object* v___x_16061_; lean_object* v___x_16062_; lean_object* v___x_16063_; lean_object* v___x_16064_; lean_object* v___x_16065_; lean_object* v___x_16066_; lean_object* v___x_16067_; lean_object* v___x_16068_; lean_object* v___x_16069_; lean_object* v___x_16070_; lean_object* v___x_16071_; lean_object* v___x_16072_; lean_object* v___x_16073_; lean_object* v___x_16074_; lean_object* v___x_16075_; lean_object* v___x_16076_; lean_object* v___x_16077_; 
v_a_15991_ = lean_ctor_get(v___x_15990_, 0);
lean_inc(v_a_15991_);
lean_dec_ref(v___x_15990_);
v___x_15992_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__13));
v___x_15993_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__14));
lean_inc(v_a_15991_);
v___x_15994_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15994_, 0, v_a_15991_);
lean_ctor_set(v___x_15994_, 1, v___x_15993_);
v___x_15995_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_15996_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_15997_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v_a_15991_);
v___x_15998_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15998_, 0, v_a_15991_);
lean_ctor_set(v___x_15998_, 1, v___x_15997_);
v___x_15999_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_16000_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_16001_ = lean_box(0);
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_16002_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_16001_, v_currMacroScope_15774_);
v___x_16003_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0));
lean_inc(v_a_15991_);
v___x_16004_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16004_, 0, v_a_15991_);
lean_ctor_set(v___x_16004_, 1, v___x_16000_);
lean_ctor_set(v___x_16004_, 2, v___x_16002_);
lean_ctor_set(v___x_16004_, 3, v___x_16003_);
lean_inc(v_a_15991_);
v___x_16005_ = l_Lean_Syntax_node1(v_a_15991_, v___x_15999_, v___x_16004_);
lean_inc(v_a_15991_);
v___x_16006_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15996_, v___x_15998_, v___x_16005_);
v___x_16007_ = lean_obj_once(&l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1, &l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1_once, _init_l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__1);
v___x_16008_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_foldrMUnsafe_fold___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkTuple_spec__0___closed__4));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_16009_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_16008_, v_currMacroScope_15774_);
v___x_16010_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__24));
lean_inc(v_a_15991_);
v___x_16011_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16011_, 0, v_a_15991_);
lean_ctor_set(v___x_16011_, 1, v___x_16007_);
lean_ctor_set(v___x_16011_, 2, v___x_16009_);
lean_ctor_set(v___x_16011_, 3, v___x_16010_);
v___x_16012_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__1));
v___x_16013_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_16014_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_16015_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_16014_, v_currMacroScope_15774_);
v___x_16016_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6));
lean_inc(v_a_15991_);
v___x_16017_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16017_, 0, v_a_15991_);
lean_ctor_set(v___x_16017_, 1, v___x_16013_);
lean_ctor_set(v___x_16017_, 2, v___x_16015_);
lean_ctor_set(v___x_16017_, 3, v___x_16016_);
v___x_16018_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v_a_15991_);
v___x_16019_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16019_, 0, v_a_15991_);
lean_ctor_set(v___x_16019_, 1, v___x_16018_);
lean_inc(v___x_15895_);
lean_inc(v_a_15991_);
v___x_16020_ = l_Lean_Syntax_node1(v_a_15991_, v___x_15893_, v___x_15895_);
v___x_16021_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v_a_15991_);
v___x_16022_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16022_, 0, v_a_15991_);
lean_ctor_set(v___x_16022_, 1, v___x_16021_);
lean_inc_ref(v___x_16022_);
lean_inc_ref(v___x_16019_);
lean_inc(v___x_16006_);
lean_inc(v_a_15991_);
v___x_16023_ = l_Lean_Syntax_node5(v_a_15991_, v___x_16012_, v___x_16006_, v___x_16017_, v___x_16019_, v___x_16020_, v___x_16022_);
lean_inc(v_a_15802_);
lean_inc(v_a_15991_);
v___x_16024_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15893_, v___x_16023_, v_a_15802_);
lean_inc(v_a_15991_);
v___x_16025_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15888_, v___x_16011_, v___x_16024_);
lean_inc_ref(v___x_16022_);
lean_inc(v___x_16006_);
lean_inc(v_a_15991_);
v___x_16026_ = l_Lean_Syntax_node3(v_a_15991_, v___x_15995_, v___x_16006_, v___x_16025_, v___x_16022_);
v___x_16027_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__10));
v___x_16028_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__11));
lean_inc(v_a_15991_);
v___x_16029_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16029_, 0, v_a_15991_);
lean_ctor_set(v___x_16029_, 1, v___x_16027_);
v___x_16030_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_actionTerminalToTerm___closed__7));
lean_inc(v_a_15991_);
v___x_16031_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16031_, 0, v_a_15991_);
lean_ctor_set(v___x_16031_, 1, v___x_15876_);
lean_ctor_set(v___x_16031_, 2, v___x_15878_);
lean_ctor_set(v___x_16031_, 3, v___x_15879_);
v___x_16032_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__25);
v___x_16033_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__26));
lean_inc(v_currMacroScope_15774_);
lean_inc(v_quotContext_15773_);
v___x_16034_ = l_Lean_addMacroScope(v_quotContext_15773_, v___x_16033_, v_currMacroScope_15774_);
v___x_16035_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__30));
lean_inc(v_a_15991_);
v___x_16036_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16036_, 0, v_a_15991_);
lean_ctor_set(v___x_16036_, 1, v___x_16032_);
lean_ctor_set(v___x_16036_, 2, v___x_16034_);
lean_ctor_set(v___x_16036_, 3, v___x_16035_);
v___x_16037_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_16038_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v_a_15991_);
v___x_16039_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16039_, 0, v_a_15991_);
lean_ctor_set(v___x_16039_, 1, v___x_16038_);
lean_inc(v_a_15991_);
v___x_16040_ = l_Lean_Syntax_node1(v_a_15991_, v___x_16037_, v___x_16039_);
lean_inc(v_a_15991_);
v___x_16041_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15893_, v___x_15895_, v___x_16040_);
lean_inc(v_a_15991_);
v___x_16042_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15888_, v___x_16036_, v___x_16041_);
lean_inc(v_a_15991_);
v___x_16043_ = l_Lean_Syntax_node1(v_a_15991_, v___x_15893_, v___x_16042_);
lean_inc_ref(v___x_16031_);
lean_inc(v_a_15991_);
v___x_16044_ = l_Lean_Syntax_node5(v_a_15991_, v___x_16012_, v___x_16006_, v___x_16031_, v___x_16019_, v___x_16043_, v___x_16022_);
lean_inc(v_a_15991_);
v___x_16045_ = l_Lean_Syntax_node2(v_a_15991_, v___x_15893_, v_x_15779_, v___x_16044_);
v___x_16046_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_15991_);
v___x_16047_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_16047_, 0, v_a_15991_);
lean_ctor_set(v___x_16047_, 1, v___x_15893_);
lean_ctor_set(v___x_16047_, 2, v___x_16046_);
v___x_16048_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v_a_15991_);
v___x_16049_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16049_, 0, v_a_15991_);
lean_ctor_set(v___x_16049_, 1, v___x_16048_);
v___x_16050_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
v___x_16051_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__5));
lean_inc(v_a_15991_);
v___x_16052_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16052_, 0, v_a_15991_);
lean_ctor_set(v___x_16052_, 1, v___x_16050_);
v___x_16053_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__4));
lean_inc_ref(v___x_16047_);
lean_inc(v_a_15991_);
v___x_16054_ = l_Lean_Syntax_node1(v_a_15991_, v___x_16053_, v___x_16047_);
v___x_16055_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__6));
v___x_16056_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__5));
v___x_16057_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc_ref(v___x_16031_);
lean_inc(v_a_15991_);
v___x_16058_ = l_Lean_Syntax_node1(v_a_15991_, v___x_16057_, v___x_16031_);
v___x_16059_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v_a_15991_);
v___x_16060_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16060_, 0, v_a_15991_);
lean_ctor_set(v___x_16060_, 1, v___x_16059_);
v___x_16061_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_16062_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v_a_15991_);
v___x_16063_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16063_, 0, v_a_15991_);
lean_ctor_set(v___x_16063_, 1, v___x_16062_);
v___x_16064_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_16065_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v_a_15991_);
v___x_16066_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16066_, 0, v_a_15991_);
lean_ctor_set(v___x_16066_, 1, v___x_16065_);
lean_inc(v_a_15991_);
v___x_16067_ = l_Lean_Syntax_node1(v_a_15991_, v___x_16064_, v___x_16066_);
lean_inc(v_a_15991_);
v___x_16068_ = l_Lean_Syntax_node3(v_a_15991_, v___x_16061_, v___x_16031_, v___x_16063_, v___x_16067_);
lean_inc_ref_n(v___x_16047_, 2);
lean_inc(v_a_15991_);
v___x_16069_ = l_Lean_Syntax_node5(v_a_15991_, v___x_16056_, v___x_16058_, v___x_16047_, v___x_16047_, v___x_16060_, v___x_16068_);
lean_inc(v_a_15991_);
v___x_16070_ = l_Lean_Syntax_node1(v_a_15991_, v___x_16055_, v___x_16069_);
v___x_16071_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v_a_15991_);
v___x_16072_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16072_, 0, v_a_15991_);
lean_ctor_set(v___x_16072_, 1, v___x_16071_);
lean_inc(v_a_15991_);
v___x_16073_ = l_Lean_Syntax_node5(v_a_15991_, v___x_16051_, v___x_16052_, v___x_16054_, v___x_16070_, v___x_16072_, v_a_15883_);
lean_inc(v_a_15991_);
v___x_16074_ = l_Lean_Syntax_node4(v_a_15991_, v___x_16030_, v___x_16045_, v___x_16047_, v___x_16049_, v___x_16073_);
lean_inc(v_a_15991_);
v___x_16075_ = l_Lean_Syntax_node2(v_a_15991_, v___x_16028_, v___x_16029_, v___x_16074_);
v___x_16076_ = l_Lean_Syntax_node4(v_a_15991_, v___x_15992_, v___x_15994_, v___x_15804_, v___x_16026_, v___x_16075_);
v___x_16077_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_doFor_15445_, v___x_16076_, v___x_15781_);
if (lean_obj_tag(v___x_16077_) == 0)
{
lean_object* v_a_16078_; 
v_a_16078_ = lean_ctor_get(v___x_16077_, 0);
lean_inc(v_a_16078_);
lean_dec_ref(v___x_16077_);
v___y_15603_ = v_a_15802_;
v_forInTerm_15604_ = v_a_16078_;
v___y_15605_ = v_a_15447_;
v___y_15606_ = v_a_15448_;
v___y_15607_ = v_a_15449_;
v___y_15608_ = v_a_15450_;
v___y_15609_ = v_a_15451_;
v___y_15610_ = v___x_15781_;
v_ref_15611_ = v_ref_15780_;
v_quotContext_15612_ = v_quotContext_15773_;
v_currMacroScope_15613_ = v_currMacroScope_15774_;
v___y_15614_ = v_a_15453_;
goto v___jp_15602_;
}
else
{
lean_object* v_a_16079_; lean_object* v___x_16080_; 
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
v_a_16079_ = lean_ctor_get(v___x_16077_, 0);
lean_inc(v_a_16079_);
lean_dec_ref(v___x_16077_);
v___x_16080_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16080_, 0, v_a_16079_);
return v___x_16080_;
}
}
else
{
lean_object* v_a_16081_; lean_object* v___x_16082_; 
lean_dec(v___x_15895_);
lean_dec(v_a_15883_);
lean_dec(v___x_15878_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16081_ = lean_ctor_get(v___x_15990_, 0);
lean_inc(v_a_16081_);
lean_dec_ref(v___x_15990_);
v___x_16082_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16082_, 0, v_a_16081_);
return v___x_16082_;
}
}
}
else
{
lean_object* v_a_16083_; lean_object* v___x_16084_; 
lean_dec(v_a_15883_);
lean_dec(v___x_15878_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16083_ = lean_ctor_get(v___x_15884_, 0);
lean_inc(v_a_16083_);
lean_dec_ref(v___x_15884_);
v___x_16084_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16084_, 0, v_a_16083_);
return v___x_16084_;
}
}
else
{
lean_object* v_a_16085_; lean_object* v___x_16086_; 
lean_dec(v___x_15878_);
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16085_ = lean_ctor_get(v___x_15882_, 0);
lean_inc(v_a_16085_);
lean_dec_ref(v___x_15882_);
v___x_16086_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16086_, 0, v_a_16085_);
return v___x_16086_;
}
}
else
{
lean_object* v_a_16087_; lean_object* v___x_16088_; 
lean_dec(v___x_15804_);
lean_dec(v_a_15802_);
lean_dec_ref(v___x_15799_);
lean_dec(v_term_15796_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16087_ = lean_ctor_get(v___x_15874_, 0);
lean_inc(v_a_16087_);
lean_dec_ref(v___x_15874_);
v___x_16088_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16088_, 0, v_a_16087_);
return v___x_16088_;
}
}
}
else
{
lean_object* v_a_16089_; lean_object* v___x_16090_; 
lean_dec_ref(v___x_15799_);
lean_dec(v_term_15796_);
lean_dec(v_a_15792_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v___x_15760_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16089_ = lean_ctor_get(v___x_15801_, 0);
lean_inc(v_a_16089_);
lean_dec_ref(v___x_15801_);
v___x_16090_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16090_, 0, v_a_16089_);
return v___x_16090_;
}
}
else
{
lean_object* v_a_16091_; lean_object* v___x_16092_; 
lean_dec(v_a_15792_);
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v___x_15760_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16091_ = lean_ctor_get(v___x_15793_, 0);
lean_inc(v_a_16091_);
lean_dec_ref(v___x_15793_);
v___x_16092_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16092_, 0, v_a_16091_);
return v___x_16092_;
}
}
else
{
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v___x_15760_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
return v___x_15791_;
}
}
else
{
lean_object* v_a_16093_; lean_object* v___x_16094_; 
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v___y_15762_);
lean_dec(v___x_15760_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16093_ = lean_ctor_get(v___x_15786_, 0);
lean_inc(v_a_16093_);
lean_dec_ref(v___x_15786_);
v___x_16094_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16094_, 0, v_a_16093_);
return v___x_16094_;
}
}
else
{
lean_object* v_a_16095_; lean_object* v___x_16096_; 
lean_dec_ref(v___x_15781_);
lean_dec(v_ref_15780_);
lean_dec(v_x_15779_);
lean_dec_ref(v_inheritedTraceOptions_15778_);
lean_dec(v_cancelTk_x3f_15776_);
lean_dec(v_currMacroScope_15774_);
lean_dec(v_quotContext_15773_);
lean_dec(v_maxHeartbeats_15772_);
lean_dec(v_initHeartbeats_15771_);
lean_dec(v_openDecls_15770_);
lean_dec(v_currNamespace_15769_);
lean_dec(v_maxRecDepth_15767_);
lean_dec(v_currRecDepth_15766_);
lean_dec_ref(v_options_15765_);
lean_dec_ref(v_fileMap_15764_);
lean_dec_ref(v_fileName_15763_);
lean_dec(v___y_15762_);
lean_dec(v___x_15760_);
lean_dec(v_a_15453_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16095_ = lean_ctor_get(v___x_15782_, 0);
lean_inc(v_a_16095_);
lean_dec_ref(v___x_15782_);
v___x_16096_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16096_, 0, v_a_16095_);
return v___x_16096_;
}
}
}
else
{
lean_object* v___x_16102_; lean_object* v_doForDecl_16103_; lean_object* v___y_16105_; lean_object* v___y_16106_; lean_object* v___y_16107_; lean_object* v___y_16108_; lean_object* v___y_16109_; lean_object* v___y_16110_; lean_object* v___y_16111_; lean_object* v___x_16119_; lean_object* v___x_16120_; uint8_t v___x_16121_; 
v___x_16102_ = lean_box(0);
v_doForDecl_16103_ = lean_array_get(v___x_16102_, v_doForDecls_15599_, v___x_15597_);
v___x_16119_ = lean_unsigned_to_nat(0u);
v___x_16120_ = l_Lean_Syntax_getArg(v_doForDecl_16103_, v___x_16119_);
v___x_16121_ = l_Lean_Syntax_isNone(v___x_16120_);
if (v___x_16121_ == 0)
{
lean_object* v___x_16122_; lean_object* v___x_16123_; 
v___x_16122_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32, &l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__32);
v___x_16123_ = l_Lean_throwErrorAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__5___redArg(v___x_16120_, v___x_16122_, v_a_15450_, v_a_15451_, v_a_15452_, v_a_15453_);
lean_dec(v___x_16120_);
if (lean_obj_tag(v___x_16123_) == 0)
{
lean_dec_ref(v___x_16123_);
v___y_16105_ = v_a_15447_;
v___y_16106_ = v_a_15448_;
v___y_16107_ = v_a_15449_;
v___y_16108_ = v_a_15450_;
v___y_16109_ = v_a_15451_;
v___y_16110_ = v_a_15452_;
v___y_16111_ = v_a_15453_;
goto v___jp_16104_;
}
else
{
lean_object* v_a_16124_; lean_object* v___x_16125_; 
lean_dec(v_doForDecl_16103_);
lean_dec_ref(v_doForDecls_15599_);
lean_dec(v_a_15453_);
lean_dec_ref(v_a_15452_);
lean_dec(v_a_15451_);
lean_dec_ref(v_a_15450_);
lean_dec(v_a_15449_);
lean_dec_ref(v_a_15448_);
lean_dec_ref(v_a_15447_);
lean_dec(v_doElems_15446_);
lean_dec(v_doFor_15445_);
v_a_16124_ = lean_ctor_get(v___x_16123_, 0);
lean_inc(v_a_16124_);
lean_dec_ref(v___x_16123_);
v___x_16125_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16125_, 0, v_a_16124_);
return v___x_16125_;
}
}
else
{
lean_dec(v___x_16120_);
v___y_16105_ = v_a_15447_;
v___y_16106_ = v_a_15448_;
v___y_16107_ = v_a_15449_;
v___y_16108_ = v_a_15450_;
v___y_16109_ = v_a_15451_;
v___y_16110_ = v_a_15452_;
v___y_16111_ = v_a_15453_;
goto v___jp_16104_;
}
v___jp_16104_:
{
lean_object* v_y_16112_; lean_object* v___x_16113_; lean_object* v_ys_16114_; lean_object* v_doForDecls_16115_; lean_object* v_body_16116_; lean_object* v___f_16117_; lean_object* v___x_16118_; 
v_y_16112_ = l_Lean_Syntax_getArg(v_doForDecl_16103_, v___x_15597_);
v___x_16113_ = lean_unsigned_to_nat(3u);
v_ys_16114_ = l_Lean_Syntax_getArg(v_doForDecl_16103_, v___x_16113_);
lean_dec(v_doForDecl_16103_);
v_doForDecls_16115_ = l_Array_eraseIdx___redArg(v_doForDecls_15599_, v___x_15597_);
v_body_16116_ = l_Lean_Syntax_getArg(v_doFor_15445_, v___x_16113_);
lean_dec(v_doFor_15445_);
v___f_16117_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___boxed), 13, 10);
lean_closure_set(v___f_16117_, 0, v_ys_16114_);
lean_closure_set(v___f_16117_, 1, v_doForDecls_16115_);
lean_closure_set(v___f_16117_, 2, v_y_16112_);
lean_closure_set(v___f_16117_, 3, v_body_16116_);
lean_closure_set(v___f_16117_, 4, v_doElems_15446_);
lean_closure_set(v___f_16117_, 5, v___y_16105_);
lean_closure_set(v___f_16117_, 6, v___y_16106_);
lean_closure_set(v___f_16117_, 7, v___y_16107_);
lean_closure_set(v___f_16117_, 8, v___y_16108_);
lean_closure_set(v___f_16117_, 9, v___y_16109_);
v___x_16118_ = l_Lean_Core_withFreshMacroScope___redArg(v___f_16117_, v___y_16110_, v___y_16111_);
return v___x_16118_;
}
}
v___jp_15455_:
{
uint8_t v___x_15466_; 
v___x_15466_ = l_List_isEmpty___redArg(v_doElems_15446_);
if (v___x_15466_ == 0)
{
lean_object* v_ref_15467_; lean_object* v_quotContext_15468_; lean_object* v_currMacroScope_15469_; lean_object* v___x_15470_; lean_object* v___x_15471_; lean_object* v___x_15472_; lean_object* v___x_15473_; lean_object* v___x_15474_; lean_object* v___x_15475_; lean_object* v___x_15476_; lean_object* v___x_15477_; lean_object* v___x_15478_; lean_object* v___x_15479_; lean_object* v___x_15480_; lean_object* v___x_15481_; lean_object* v___x_15482_; lean_object* v___x_15483_; lean_object* v___x_15484_; lean_object* v___x_15485_; lean_object* v___x_15486_; lean_object* v___x_15487_; lean_object* v___x_15488_; lean_object* v___x_15489_; lean_object* v___x_15490_; lean_object* v___x_15491_; lean_object* v___x_15492_; lean_object* v___x_15493_; lean_object* v___x_15494_; lean_object* v___x_15495_; lean_object* v___x_15496_; lean_object* v___x_15497_; lean_object* v___x_15498_; lean_object* v___x_15499_; lean_object* v___x_15500_; lean_object* v___x_15501_; lean_object* v___x_15502_; lean_object* v___x_15503_; lean_object* v___x_15504_; lean_object* v___x_15505_; lean_object* v___x_15506_; lean_object* v___x_15507_; lean_object* v___x_15508_; lean_object* v___x_15509_; lean_object* v___x_15510_; lean_object* v___x_15511_; 
lean_dec_ref(v___y_15457_);
v_ref_15467_ = lean_ctor_get(v___y_15464_, 5);
v_quotContext_15468_ = lean_ctor_get(v___y_15464_, 10);
v_currMacroScope_15469_ = lean_ctor_get(v___y_15464_, 11);
v___x_15470_ = l_Lean_SourceInfo_fromRef(v_ref_15467_, v___x_15466_);
v___x_15471_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_15472_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_15470_);
v___x_15473_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15473_, 0, v___x_15470_);
lean_ctor_set(v___x_15473_, 1, v___x_15471_);
v___x_15474_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_15475_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_15476_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_15477_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_15478_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_15470_);
v___x_15479_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15479_, 0, v___x_15470_);
lean_ctor_set(v___x_15479_, 1, v___x_15478_);
v___x_15480_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_15470_);
v___x_15481_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15481_, 0, v___x_15470_);
lean_ctor_set(v___x_15481_, 1, v___x_15475_);
lean_ctor_set(v___x_15481_, 2, v___x_15480_);
v___x_15482_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_15483_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_15484_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_15469_);
lean_inc(v_quotContext_15468_);
v___x_15485_ = l_Lean_addMacroScope(v_quotContext_15468_, v___x_15484_, v_currMacroScope_15469_);
v___x_15486_ = lean_box(0);
lean_inc(v___x_15470_);
v___x_15487_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15487_, 0, v___x_15470_);
lean_ctor_set(v___x_15487_, 1, v___x_15483_);
lean_ctor_set(v___x_15487_, 2, v___x_15485_);
lean_ctor_set(v___x_15487_, 3, v___x_15486_);
v___x_15488_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_15470_);
v___x_15489_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15489_, 0, v___x_15470_);
lean_ctor_set(v___x_15489_, 1, v___x_15488_);
v___x_15490_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_15470_);
v___x_15491_ = l_Lean_Syntax_node1(v___x_15470_, v___x_15490_, v_forInTerm_15458_);
lean_inc_ref(v___x_15481_);
lean_inc_ref(v___x_15487_);
lean_inc(v___x_15470_);
v___x_15492_ = l_Lean_Syntax_node4(v___x_15470_, v___x_15482_, v___x_15487_, v___x_15481_, v___x_15489_, v___x_15491_);
lean_inc_ref(v___x_15481_);
lean_inc(v___x_15470_);
v___x_15493_ = l_Lean_Syntax_node3(v___x_15470_, v___x_15477_, v___x_15479_, v___x_15481_, v___x_15492_);
v___x_15494_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_15470_);
v___x_15495_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15495_, 0, v___x_15470_);
lean_ctor_set(v___x_15495_, 1, v___x_15494_);
lean_inc(v___x_15470_);
v___x_15496_ = l_Lean_Syntax_node1(v___x_15470_, v___x_15475_, v___x_15495_);
lean_inc(v___x_15470_);
v___x_15497_ = l_Lean_Syntax_node2(v___x_15470_, v___x_15476_, v___x_15493_, v___x_15496_);
v___x_15498_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_15499_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_15500_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_15470_);
v___x_15501_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15501_, 0, v___x_15470_);
lean_ctor_set(v___x_15501_, 1, v___x_15500_);
lean_inc_ref_n(v___x_15481_, 2);
lean_inc(v___x_15470_);
v___x_15502_ = l_Lean_Syntax_node5(v___x_15470_, v___x_15499_, v___y_15456_, v___x_15481_, v___x_15481_, v___x_15501_, v___x_15487_);
lean_inc(v___x_15470_);
v___x_15503_ = l_Lean_Syntax_node1(v___x_15470_, v___x_15498_, v___x_15502_);
lean_inc(v___x_15470_);
v___x_15504_ = l_Lean_Syntax_node2(v___x_15470_, v___x_15476_, v___x_15503_, v___x_15481_);
lean_inc(v___x_15470_);
v___x_15505_ = l_Lean_Syntax_node2(v___x_15470_, v___x_15475_, v___x_15497_, v___x_15504_);
lean_inc(v___x_15470_);
v___x_15506_ = l_Lean_Syntax_node1(v___x_15470_, v___x_15474_, v___x_15505_);
v___x_15507_ = l_Lean_Syntax_node2(v___x_15470_, v___x_15472_, v___x_15473_, v___x_15506_);
v___x_15508_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_15507_);
lean_dec(v___x_15507_);
v___x_15509_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15508_);
v___x_15510_ = l_List_appendTR___redArg(v___x_15509_, v_doElems_15446_);
v___x_15511_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_15510_, v___y_15459_, v___y_15460_, v___y_15461_, v___y_15462_, v___y_15463_, v___y_15464_, v___y_15465_);
return v___x_15511_;
}
else
{
lean_object* v_ref_15512_; lean_object* v_quotContext_15513_; lean_object* v_currMacroScope_15514_; lean_object* v___x_15515_; 
lean_dec(v_doElems_15446_);
v_ref_15512_ = lean_ctor_get(v___y_15464_, 5);
v_quotContext_15513_ = lean_ctor_get(v___y_15464_, 10);
v_currMacroScope_15514_ = lean_ctor_get(v___y_15464_, 11);
lean_inc(v___y_15465_);
lean_inc_ref(v___y_15464_);
lean_inc(v___y_15463_);
lean_inc_ref(v___y_15462_);
lean_inc(v___y_15461_);
lean_inc_ref(v___y_15460_);
lean_inc_ref(v___y_15459_);
lean_inc(v_ref_15512_);
v___x_15515_ = lean_apply_9(v___y_15457_, v_ref_15512_, v___y_15459_, v___y_15460_, v___y_15461_, v___y_15462_, v___y_15463_, v___y_15464_, v___y_15465_, lean_box(0));
if (lean_obj_tag(v___x_15515_) == 0)
{
lean_object* v_a_15516_; lean_object* v___x_15517_; lean_object* v___x_15518_; lean_object* v___x_15519_; lean_object* v___x_15520_; lean_object* v___x_15521_; lean_object* v___x_15522_; lean_object* v___x_15523_; lean_object* v___x_15524_; lean_object* v___x_15525_; lean_object* v___x_15526_; lean_object* v___x_15527_; lean_object* v___x_15528_; lean_object* v___x_15529_; lean_object* v___x_15530_; lean_object* v___x_15531_; lean_object* v___x_15532_; lean_object* v___x_15533_; lean_object* v___x_15534_; lean_object* v___x_15535_; lean_object* v___x_15536_; lean_object* v___x_15537_; lean_object* v___x_15538_; lean_object* v___x_15539_; lean_object* v___x_15540_; lean_object* v___x_15541_; lean_object* v___x_15542_; lean_object* v___x_15543_; lean_object* v___x_15544_; lean_object* v___x_15545_; lean_object* v___x_15546_; lean_object* v___x_15547_; lean_object* v___x_15548_; lean_object* v___x_15549_; lean_object* v___x_15550_; lean_object* v___x_15551_; lean_object* v___x_15552_; lean_object* v___x_15553_; lean_object* v___x_15554_; lean_object* v___x_15555_; lean_object* v___x_15556_; lean_object* v___x_15557_; lean_object* v___x_15558_; lean_object* v___x_15559_; lean_object* v___x_15560_; lean_object* v___x_15561_; lean_object* v___x_15562_; lean_object* v___x_15563_; lean_object* v___x_15564_; lean_object* v___x_15565_; lean_object* v___x_15566_; lean_object* v___x_15567_; lean_object* v___x_15568_; lean_object* v___x_15569_; lean_object* v___x_15570_; lean_object* v___x_15571_; lean_object* v___x_15572_; lean_object* v___x_15573_; lean_object* v___x_15574_; lean_object* v___x_15575_; lean_object* v___x_15576_; lean_object* v___x_15577_; lean_object* v___x_15578_; lean_object* v___x_15579_; lean_object* v___x_15580_; lean_object* v___x_15581_; lean_object* v___x_15582_; lean_object* v___x_15583_; lean_object* v___x_15584_; lean_object* v___x_15585_; lean_object* v___x_15586_; lean_object* v___x_15587_; lean_object* v___x_15588_; lean_object* v___x_15589_; lean_object* v___x_15590_; lean_object* v___x_15591_; lean_object* v___x_15592_; lean_object* v___x_15593_; lean_object* v___x_15594_; 
v_a_15516_ = lean_ctor_get(v___x_15515_, 0);
lean_inc(v_a_15516_);
lean_dec_ref(v___x_15515_);
v___x_15517_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_15518_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v_a_15516_);
v___x_15519_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15519_, 0, v_a_15516_);
lean_ctor_set(v___x_15519_, 1, v___x_15517_);
v___x_15520_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_15521_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_15522_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_15523_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_15524_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v_a_15516_);
v___x_15525_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15525_, 0, v_a_15516_);
lean_ctor_set(v___x_15525_, 1, v___x_15524_);
v___x_15526_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v_a_15516_);
v___x_15527_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15527_, 0, v_a_15516_);
lean_ctor_set(v___x_15527_, 1, v___x_15521_);
lean_ctor_set(v___x_15527_, 2, v___x_15526_);
v___x_15528_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_15529_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_15530_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_15514_);
lean_inc(v_quotContext_15513_);
v___x_15531_ = l_Lean_addMacroScope(v_quotContext_15513_, v___x_15530_, v_currMacroScope_15514_);
v___x_15532_ = lean_box(0);
lean_inc(v_a_15516_);
v___x_15533_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15533_, 0, v_a_15516_);
lean_ctor_set(v___x_15533_, 1, v___x_15529_);
lean_ctor_set(v___x_15533_, 2, v___x_15531_);
lean_ctor_set(v___x_15533_, 3, v___x_15532_);
v___x_15534_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v_a_15516_);
v___x_15535_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15535_, 0, v_a_15516_);
lean_ctor_set(v___x_15535_, 1, v___x_15534_);
v___x_15536_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v_a_15516_);
v___x_15537_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15536_, v_forInTerm_15458_);
lean_inc_ref(v___x_15527_);
lean_inc_ref(v___x_15533_);
lean_inc(v_a_15516_);
v___x_15538_ = l_Lean_Syntax_node4(v_a_15516_, v___x_15528_, v___x_15533_, v___x_15527_, v___x_15535_, v___x_15537_);
lean_inc_ref(v___x_15527_);
lean_inc(v_a_15516_);
v___x_15539_ = l_Lean_Syntax_node3(v_a_15516_, v___x_15523_, v___x_15525_, v___x_15527_, v___x_15538_);
v___x_15540_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v_a_15516_);
v___x_15541_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15541_, 0, v_a_15516_);
lean_ctor_set(v___x_15541_, 1, v___x_15540_);
lean_inc(v_a_15516_);
v___x_15542_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15521_, v___x_15541_);
lean_inc(v___x_15542_);
lean_inc(v_a_15516_);
v___x_15543_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15522_, v___x_15539_, v___x_15542_);
v___x_15544_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_15545_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_15546_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v_a_15516_);
v___x_15547_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15547_, 0, v_a_15516_);
lean_ctor_set(v___x_15547_, 1, v___x_15546_);
lean_inc_ref_n(v___x_15527_, 2);
lean_inc(v_a_15516_);
v___x_15548_ = l_Lean_Syntax_node5(v_a_15516_, v___x_15545_, v___y_15456_, v___x_15527_, v___x_15527_, v___x_15547_, v___x_15533_);
lean_inc(v_a_15516_);
v___x_15549_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15544_, v___x_15548_);
lean_inc(v_a_15516_);
v___x_15550_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15522_, v___x_15549_, v___x_15542_);
v___x_15551_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_15552_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_15553_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_15514_);
lean_inc(v_quotContext_15513_);
v___x_15554_ = l_Lean_addMacroScope(v_quotContext_15513_, v___x_15553_, v_currMacroScope_15514_);
v___x_15555_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v_a_15516_);
v___x_15556_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15556_, 0, v_a_15516_);
lean_ctor_set(v___x_15556_, 1, v___x_15552_);
lean_ctor_set(v___x_15556_, 2, v___x_15554_);
lean_ctor_set(v___x_15556_, 3, v___x_15555_);
v___x_15557_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_15558_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_15559_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v_a_15516_);
v___x_15560_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15560_, 0, v_a_15516_);
lean_ctor_set(v___x_15560_, 1, v___x_15559_);
v___x_15561_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_15562_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_15563_ = lean_box(0);
lean_inc(v_currMacroScope_15514_);
lean_inc(v_quotContext_15513_);
v___x_15564_ = l_Lean_addMacroScope(v_quotContext_15513_, v___x_15563_, v_currMacroScope_15514_);
v___x_15565_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0));
lean_inc(v_a_15516_);
v___x_15566_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15566_, 0, v_a_15516_);
lean_ctor_set(v___x_15566_, 1, v___x_15562_);
lean_ctor_set(v___x_15566_, 2, v___x_15564_);
lean_ctor_set(v___x_15566_, 3, v___x_15565_);
lean_inc(v_a_15516_);
v___x_15567_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15561_, v___x_15566_);
lean_inc(v_a_15516_);
v___x_15568_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15558_, v___x_15560_, v___x_15567_);
v___x_15569_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1));
v___x_15570_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2));
lean_inc(v_a_15516_);
v___x_15571_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15571_, 0, v_a_15516_);
lean_ctor_set(v___x_15571_, 1, v___x_15570_);
v___x_15572_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4));
v___x_15573_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__1));
lean_inc(v_a_15516_);
v___x_15574_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15574_, 0, v_a_15516_);
lean_ctor_set(v___x_15574_, 1, v___x_15573_);
lean_inc(v_a_15516_);
v___x_15575_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15572_, v___x_15574_);
v___x_15576_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3);
v___x_15577_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4));
lean_inc(v_currMacroScope_15514_);
lean_inc(v_quotContext_15513_);
v___x_15578_ = l_Lean_addMacroScope(v_quotContext_15513_, v___x_15577_, v_currMacroScope_15514_);
v___x_15579_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__4));
lean_inc(v_a_15516_);
v___x_15580_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15580_, 0, v_a_15516_);
lean_ctor_set(v___x_15580_, 1, v___x_15576_);
lean_ctor_set(v___x_15580_, 2, v___x_15578_);
lean_ctor_set(v___x_15580_, 3, v___x_15579_);
lean_inc(v_a_15516_);
v___x_15581_ = l_Lean_Syntax_node3(v_a_15516_, v___x_15569_, v___x_15571_, v___x_15575_, v___x_15580_);
v___x_15582_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v_a_15516_);
v___x_15583_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15583_, 0, v_a_15516_);
lean_ctor_set(v___x_15583_, 1, v___x_15582_);
lean_inc(v_a_15516_);
v___x_15584_ = l_Lean_Syntax_node3(v_a_15516_, v___x_15557_, v___x_15568_, v___x_15581_, v___x_15583_);
lean_inc(v_a_15516_);
v___x_15585_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15521_, v___x_15584_);
lean_inc(v_a_15516_);
v___x_15586_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15551_, v___x_15556_, v___x_15585_);
lean_inc(v_a_15516_);
v___x_15587_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15536_, v___x_15586_);
lean_inc(v_a_15516_);
v___x_15588_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15522_, v___x_15587_, v___x_15527_);
lean_inc(v_a_15516_);
v___x_15589_ = l_Lean_Syntax_node3(v_a_15516_, v___x_15521_, v___x_15543_, v___x_15550_, v___x_15588_);
lean_inc(v_a_15516_);
v___x_15590_ = l_Lean_Syntax_node1(v_a_15516_, v___x_15520_, v___x_15589_);
v___x_15591_ = l_Lean_Syntax_node2(v_a_15516_, v___x_15518_, v___x_15519_, v___x_15590_);
v___x_15592_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_15591_);
lean_dec(v___x_15591_);
v___x_15593_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15592_);
v___x_15594_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_15593_, v___y_15459_, v___y_15460_, v___y_15461_, v___y_15462_, v___y_15463_, v___y_15464_, v___y_15465_);
return v___x_15594_;
}
else
{
lean_object* v_a_15595_; lean_object* v___x_15596_; 
lean_dec(v___y_15465_);
lean_dec_ref(v___y_15464_);
lean_dec(v___y_15463_);
lean_dec_ref(v___y_15462_);
lean_dec(v___y_15461_);
lean_dec_ref(v___y_15460_);
lean_dec_ref(v___y_15459_);
lean_dec(v_forInTerm_15458_);
lean_dec(v___y_15456_);
v_a_15595_ = lean_ctor_get(v___x_15515_, 0);
lean_inc(v_a_15595_);
lean_dec_ref(v___x_15515_);
v___x_15596_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_15596_, 0, v_a_15595_);
return v___x_15596_;
}
}
}
v___jp_15602_:
{
lean_object* v___x_15615_; lean_object* v___x_15616_; lean_object* v___x_15617_; lean_object* v___x_15618_; lean_object* v___x_15619_; lean_object* v___x_15620_; lean_object* v___x_15621_; lean_object* v___x_15622_; lean_object* v___x_15623_; lean_object* v___x_15624_; lean_object* v___x_15625_; lean_object* v___x_15626_; lean_object* v___x_15627_; lean_object* v___x_15628_; lean_object* v___x_15629_; lean_object* v___x_15630_; lean_object* v___x_15631_; lean_object* v___x_15632_; lean_object* v___x_15633_; lean_object* v___x_15634_; lean_object* v___x_15635_; lean_object* v___x_15636_; lean_object* v___x_15637_; lean_object* v___x_15638_; lean_object* v___x_15639_; lean_object* v___x_15640_; lean_object* v___x_15641_; lean_object* v___x_15642_; lean_object* v___x_15643_; lean_object* v___x_15644_; lean_object* v___x_15645_; lean_object* v___x_15646_; lean_object* v___x_15647_; lean_object* v___x_15648_; lean_object* v___x_15649_; lean_object* v___x_15650_; lean_object* v___x_15651_; lean_object* v___x_15652_; lean_object* v___x_15653_; lean_object* v___x_15654_; lean_object* v___x_15655_; lean_object* v___x_15656_; lean_object* v___x_15657_; lean_object* v___x_15658_; lean_object* v___x_15659_; lean_object* v___x_15660_; lean_object* v___x_15661_; lean_object* v___x_15662_; lean_object* v___x_15663_; lean_object* v___x_15664_; lean_object* v___x_15665_; lean_object* v___x_15666_; lean_object* v___x_15667_; lean_object* v___x_15668_; lean_object* v___x_15669_; lean_object* v___x_15670_; lean_object* v___x_15671_; lean_object* v___x_15672_; lean_object* v___x_15673_; lean_object* v___x_15674_; lean_object* v___x_15675_; lean_object* v___x_15676_; lean_object* v___x_15677_; lean_object* v___x_15678_; lean_object* v___x_15679_; lean_object* v___x_15680_; lean_object* v___x_15681_; lean_object* v___x_15682_; lean_object* v___x_15683_; lean_object* v___x_15684_; lean_object* v___x_15685_; lean_object* v___x_15686_; lean_object* v___x_15687_; lean_object* v___x_15688_; lean_object* v___x_15689_; lean_object* v___x_15690_; lean_object* v___x_15691_; lean_object* v___x_15692_; lean_object* v___x_15693_; lean_object* v___x_15694_; lean_object* v___x_15695_; lean_object* v___x_15696_; lean_object* v___x_15697_; lean_object* v___x_15698_; lean_object* v___x_15699_; lean_object* v___x_15700_; lean_object* v___x_15701_; lean_object* v___x_15702_; lean_object* v___x_15703_; lean_object* v___x_15704_; lean_object* v___x_15705_; lean_object* v___x_15706_; lean_object* v___x_15707_; lean_object* v___x_15708_; lean_object* v___x_15709_; lean_object* v___x_15710_; lean_object* v___x_15711_; lean_object* v___x_15712_; lean_object* v___x_15713_; lean_object* v___x_15714_; lean_object* v___x_15715_; lean_object* v___x_15716_; lean_object* v___x_15717_; lean_object* v___x_15718_; lean_object* v___x_15719_; lean_object* v___x_15720_; lean_object* v___x_15721_; lean_object* v___x_15722_; lean_object* v___x_15723_; lean_object* v___x_15724_; lean_object* v___x_15725_; lean_object* v___x_15726_; lean_object* v___x_15727_; lean_object* v___x_15728_; lean_object* v___x_15729_; lean_object* v___x_15730_; lean_object* v___x_15731_; lean_object* v___x_15732_; lean_object* v___x_15733_; lean_object* v___x_15734_; lean_object* v___x_15735_; lean_object* v___x_15736_; lean_object* v___x_15737_; lean_object* v___x_15738_; lean_object* v___x_15739_; lean_object* v___x_15740_; lean_object* v___x_15741_; lean_object* v___x_15742_; lean_object* v___x_15743_; lean_object* v___x_15744_; lean_object* v___x_15745_; lean_object* v___x_15746_; lean_object* v___x_15747_; lean_object* v___x_15748_; lean_object* v___x_15749_; lean_object* v___x_15750_; lean_object* v___x_15751_; lean_object* v___x_15752_; lean_object* v___x_15753_; lean_object* v___x_15754_; lean_object* v___x_15755_; lean_object* v___x_15756_; lean_object* v___x_15757_; 
v___x_15615_ = l_Lean_SourceInfo_fromRef(v_ref_15611_, v___x_15601_);
lean_dec(v_ref_15611_);
v___x_15616_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_15617_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_15615_);
v___x_15618_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15618_, 0, v___x_15615_);
lean_ctor_set(v___x_15618_, 1, v___x_15616_);
v___x_15619_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_15620_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_15621_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_15622_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_15623_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_15615_);
v___x_15624_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15624_, 0, v___x_15615_);
lean_ctor_set(v___x_15624_, 1, v___x_15623_);
v___x_15625_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_15615_);
v___x_15626_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_15626_, 0, v___x_15615_);
lean_ctor_set(v___x_15626_, 1, v___x_15620_);
lean_ctor_set(v___x_15626_, 2, v___x_15625_);
v___x_15627_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_15628_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_15629_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15630_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15629_, v_currMacroScope_15613_);
v___x_15631_ = lean_box(0);
lean_inc(v___x_15615_);
v___x_15632_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15632_, 0, v___x_15615_);
lean_ctor_set(v___x_15632_, 1, v___x_15628_);
lean_ctor_set(v___x_15632_, 2, v___x_15630_);
lean_ctor_set(v___x_15632_, 3, v___x_15631_);
v___x_15633_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_15615_);
v___x_15634_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15634_, 0, v___x_15615_);
lean_ctor_set(v___x_15634_, 1, v___x_15633_);
v___x_15635_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
lean_inc(v___x_15615_);
v___x_15636_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15635_, v_forInTerm_15604_);
lean_inc_ref(v___x_15626_);
lean_inc_ref(v___x_15632_);
lean_inc(v___x_15615_);
v___x_15637_ = l_Lean_Syntax_node4(v___x_15615_, v___x_15627_, v___x_15632_, v___x_15626_, v___x_15634_, v___x_15636_);
lean_inc_ref(v___x_15626_);
lean_inc(v___x_15615_);
v___x_15638_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15622_, v___x_15624_, v___x_15626_, v___x_15637_);
v___x_15639_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_15615_);
v___x_15640_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15640_, 0, v___x_15615_);
lean_ctor_set(v___x_15640_, 1, v___x_15639_);
lean_inc(v___x_15615_);
v___x_15641_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15640_);
lean_inc(v___x_15641_);
lean_inc(v___x_15615_);
v___x_15642_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15621_, v___x_15638_, v___x_15641_);
v___x_15643_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_15644_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__1));
v___x_15645_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_15615_);
v___x_15646_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15646_, 0, v___x_15615_);
lean_ctor_set(v___x_15646_, 1, v___x_15645_);
v___x_15647_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__8));
v___x_15648_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__9));
lean_inc(v___x_15615_);
v___x_15649_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15649_, 0, v___x_15615_);
lean_ctor_set(v___x_15649_, 1, v___x_15648_);
v___x_15650_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__11));
v___x_15651_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__14));
lean_inc(v___x_15615_);
v___x_15652_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15652_, 0, v___x_15615_);
lean_ctor_set(v___x_15652_, 1, v___x_15651_);
lean_inc(v___x_15615_);
v___x_15653_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15650_, v___x_15652_);
lean_inc_ref(v___x_15649_);
lean_inc_ref(v___x_15632_);
lean_inc(v___x_15615_);
v___x_15654_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15647_, v___x_15632_, v___x_15649_, v___x_15653_);
lean_inc_ref_n(v___x_15626_, 2);
lean_inc(v___x_15615_);
v___x_15655_ = l_Lean_Syntax_node5(v___x_15615_, v___x_15644_, v___y_15603_, v___x_15626_, v___x_15626_, v___x_15646_, v___x_15654_);
lean_inc(v___x_15615_);
v___x_15656_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15643_, v___x_15655_);
lean_inc(v___x_15615_);
v___x_15657_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15621_, v___x_15656_, v___x_15641_);
v___x_15658_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_15659_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_15615_);
v___x_15660_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15660_, 0, v___x_15615_);
lean_ctor_set(v___x_15660_, 1, v___x_15659_);
v___x_15661_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
v___x_15662_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__12));
lean_inc(v___x_15615_);
v___x_15663_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15663_, 0, v___x_15615_);
lean_ctor_set(v___x_15663_, 1, v___x_15662_);
lean_inc(v___x_15615_);
v___x_15664_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15650_, v___x_15663_);
lean_inc(v___x_15615_);
v___x_15665_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15647_, v___x_15632_, v___x_15649_, v___x_15664_);
lean_inc_ref(v___x_15626_);
lean_inc(v___x_15615_);
v___x_15666_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15661_, v___x_15626_, v___x_15665_);
lean_inc(v___x_15615_);
v___x_15667_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15666_);
v___x_15668_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_15615_);
v___x_15669_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15669_, 0, v___x_15615_);
lean_ctor_set(v___x_15669_, 1, v___x_15668_);
v___x_15670_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_15671_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_15672_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_15615_);
v___x_15673_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15673_, 0, v___x_15615_);
lean_ctor_set(v___x_15673_, 1, v___x_15672_);
v___x_15674_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11, &l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11_once, _init_l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__11);
v___x_15675_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_continueToTerm___closed__12));
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15676_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15675_, v_currMacroScope_15613_);
v___x_15677_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__6));
lean_inc(v___x_15615_);
v___x_15678_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15678_, 0, v___x_15615_);
lean_ctor_set(v___x_15678_, 1, v___x_15674_);
lean_ctor_set(v___x_15678_, 2, v___x_15676_);
lean_ctor_set(v___x_15678_, 3, v___x_15677_);
lean_inc(v___x_15615_);
v___x_15679_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15678_);
lean_inc(v___x_15615_);
v___x_15680_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15679_);
v___x_15681_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_15615_);
v___x_15682_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15682_, 0, v___x_15615_);
lean_ctor_set(v___x_15682_, 1, v___x_15681_);
v___x_15683_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__1));
v___x_15684_ = lean_obj_once(&l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3, &l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3_once, _init_l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__3);
v___x_15685_ = ((lean_object*)(l_Lean_Elab_Term_Do_pullExitPointsAux___lam__0___closed__6));
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15686_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15685_, v_currMacroScope_15613_);
v___x_15687_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__26));
lean_inc(v___x_15615_);
v___x_15688_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15688_, 0, v___x_15615_);
lean_ctor_set(v___x_15688_, 1, v___x_15684_);
lean_ctor_set(v___x_15688_, 2, v___x_15686_);
lean_ctor_set(v___x_15688_, 3, v___x_15687_);
v___x_15689_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__1));
v___x_15690_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__3));
v___x_15691_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__4));
lean_inc(v___x_15615_);
v___x_15692_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15692_, 0, v___x_15615_);
lean_ctor_set(v___x_15692_, 1, v___x_15691_);
v___x_15693_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__6));
v___x_15694_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__7);
v___x_15695_ = lean_box(0);
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15696_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15695_, v_currMacroScope_15613_);
v___x_15697_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__0));
lean_inc(v___x_15615_);
v___x_15698_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15698_, 0, v___x_15615_);
lean_ctor_set(v___x_15698_, 1, v___x_15694_);
lean_ctor_set(v___x_15698_, 2, v___x_15696_);
lean_ctor_set(v___x_15698_, 3, v___x_15697_);
lean_inc(v___x_15615_);
v___x_15699_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15693_, v___x_15698_);
lean_inc(v___x_15615_);
v___x_15700_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15690_, v___x_15692_, v___x_15699_);
v___x_15701_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__1));
v___x_15702_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__2));
lean_inc(v___x_15615_);
v___x_15703_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15703_, 0, v___x_15615_);
lean_ctor_set(v___x_15703_, 1, v___x_15702_);
v___x_15704_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__7___closed__4));
v___x_15705_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__1));
lean_inc(v___x_15615_);
v___x_15706_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15706_, 0, v___x_15615_);
lean_ctor_set(v___x_15706_, 1, v___x_15705_);
lean_inc(v___x_15615_);
v___x_15707_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15704_, v___x_15706_);
v___x_15708_ = lean_obj_once(&l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3, &l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3_once, _init_l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__3);
v___x_15709_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkPureUnit___closed__4));
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15710_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15709_, v_currMacroScope_15613_);
v___x_15711_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__4));
lean_inc(v___x_15615_);
v___x_15712_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15712_, 0, v___x_15615_);
lean_ctor_set(v___x_15712_, 1, v___x_15708_);
lean_ctor_set(v___x_15712_, 2, v___x_15710_);
lean_ctor_set(v___x_15712_, 3, v___x_15711_);
lean_inc(v___x_15707_);
lean_inc_ref(v___x_15703_);
lean_inc(v___x_15615_);
v___x_15713_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15701_, v___x_15703_, v___x_15707_, v___x_15712_);
v___x_15714_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__37));
lean_inc(v___x_15615_);
v___x_15715_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15715_, 0, v___x_15615_);
lean_ctor_set(v___x_15715_, 1, v___x_15714_);
lean_inc(v___x_15615_);
v___x_15716_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15689_, v___x_15700_, v___x_15713_, v___x_15715_);
lean_inc(v___x_15615_);
v___x_15717_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15716_);
lean_inc(v___x_15615_);
v___x_15718_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15683_, v___x_15688_, v___x_15717_);
lean_inc(v___x_15615_);
v___x_15719_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15635_, v___x_15718_);
lean_inc_ref(v___x_15626_);
lean_inc(v___x_15615_);
v___x_15720_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15621_, v___x_15719_, v___x_15626_);
lean_inc(v___x_15615_);
v___x_15721_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15720_);
lean_inc(v___x_15615_);
v___x_15722_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15619_, v___x_15721_);
lean_inc_ref(v___x_15682_);
lean_inc_ref(v___x_15673_);
lean_inc(v___x_15615_);
v___x_15723_ = l_Lean_Syntax_node4(v___x_15615_, v___x_15671_, v___x_15673_, v___x_15680_, v___x_15682_, v___x_15722_);
v___x_15724_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19, &l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19_once, _init_l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__19);
v___x_15725_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__20));
lean_inc(v_currMacroScope_15613_);
lean_inc(v_quotContext_15612_);
v___x_15726_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15725_, v_currMacroScope_15613_);
v___x_15727_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___closed__8));
lean_inc(v___x_15615_);
v___x_15728_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15728_, 0, v___x_15615_);
lean_ctor_set(v___x_15728_, 1, v___x_15724_);
lean_ctor_set(v___x_15728_, 2, v___x_15726_);
lean_ctor_set(v___x_15728_, 3, v___x_15727_);
v___x_15729_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__23);
v___x_15730_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__24));
v___x_15731_ = l_Lean_addMacroScope(v_quotContext_15612_, v___x_15730_, v_currMacroScope_15613_);
lean_inc(v___x_15615_);
v___x_15732_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_15732_, 0, v___x_15615_);
lean_ctor_set(v___x_15732_, 1, v___x_15729_);
lean_ctor_set(v___x_15732_, 2, v___x_15731_);
lean_ctor_set(v___x_15732_, 3, v___x_15631_);
lean_inc_ref(v___x_15732_);
lean_inc(v___x_15615_);
v___x_15733_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15732_);
lean_inc(v___x_15615_);
v___x_15734_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15683_, v___x_15728_, v___x_15733_);
lean_inc(v___x_15615_);
v___x_15735_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15734_);
lean_inc(v___x_15615_);
v___x_15736_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15735_);
v___x_15737_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
v___x_15738_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_returnToTerm___closed__30));
lean_inc(v___x_15615_);
v___x_15739_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_15739_, 0, v___x_15615_);
lean_ctor_set(v___x_15739_, 1, v___x_15738_);
lean_inc(v___x_15615_);
v___x_15740_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15701_, v___x_15703_, v___x_15707_, v___x_15732_);
lean_inc(v___x_15615_);
v___x_15741_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15740_);
lean_inc(v___x_15615_);
v___x_15742_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15737_, v___x_15739_, v___x_15741_);
lean_inc_ref(v___x_15626_);
lean_inc(v___x_15615_);
v___x_15743_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15621_, v___x_15742_, v___x_15626_);
lean_inc(v___x_15615_);
v___x_15744_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15620_, v___x_15743_);
lean_inc(v___x_15615_);
v___x_15745_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15619_, v___x_15744_);
lean_inc(v___x_15615_);
v___x_15746_ = l_Lean_Syntax_node4(v___x_15615_, v___x_15671_, v___x_15673_, v___x_15736_, v___x_15682_, v___x_15745_);
lean_inc(v___x_15615_);
v___x_15747_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15620_, v___x_15723_, v___x_15746_);
lean_inc(v___x_15615_);
v___x_15748_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15670_, v___x_15747_);
lean_inc_ref_n(v___x_15626_, 3);
lean_inc(v___x_15615_);
v___x_15749_ = l_Lean_Syntax_node7(v___x_15615_, v___x_15658_, v___x_15660_, v___x_15626_, v___x_15626_, v___x_15626_, v___x_15667_, v___x_15669_, v___x_15748_);
lean_inc(v___x_15615_);
v___x_15750_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15621_, v___x_15749_, v___x_15626_);
lean_inc(v___x_15615_);
v___x_15751_ = l_Lean_Syntax_node3(v___x_15615_, v___x_15620_, v___x_15642_, v___x_15657_, v___x_15750_);
lean_inc(v___x_15615_);
v___x_15752_ = l_Lean_Syntax_node1(v___x_15615_, v___x_15619_, v___x_15751_);
v___x_15753_ = l_Lean_Syntax_node2(v___x_15615_, v___x_15617_, v___x_15618_, v___x_15752_);
v___x_15754_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_15753_);
lean_dec(v___x_15753_);
v___x_15755_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_15754_);
v___x_15756_ = l_List_appendTR___redArg(v___x_15755_, v_doElems_15446_);
v___x_15757_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_15756_, v___y_15605_, v___y_15606_, v___y_15607_, v___y_15608_, v___y_15609_, v___y_15610_, v___y_15614_);
return v___x_15757_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___boxed(lean_object* v_doFor_16126_, lean_object* v_doElems_16127_, lean_object* v_a_16128_, lean_object* v_a_16129_, lean_object* v_a_16130_, lean_object* v_a_16131_, lean_object* v_a_16132_, lean_object* v_a_16133_, lean_object* v_a_16134_, lean_object* v_a_16135_){
_start:
{
lean_object* v_res_16136_; 
v_res_16136_ = l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode(v_doFor_16126_, v_doElems_16127_, v_a_16128_, v_a_16129_, v_a_16130_, v_a_16131_, v_a_16132_, v_a_16133_, v_a_16134_);
return v_res_16136_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode(lean_object* v_doUnless_16137_, lean_object* v_doElems_16138_, lean_object* v_a_16139_, lean_object* v_a_16140_, lean_object* v_a_16141_, lean_object* v_a_16142_, lean_object* v_a_16143_, lean_object* v_a_16144_, lean_object* v_a_16145_){
_start:
{
lean_object* v_fileName_16147_; lean_object* v_fileMap_16148_; lean_object* v_options_16149_; lean_object* v_currRecDepth_16150_; lean_object* v_maxRecDepth_16151_; lean_object* v_ref_16152_; lean_object* v_currNamespace_16153_; lean_object* v_openDecls_16154_; lean_object* v_initHeartbeats_16155_; lean_object* v_maxHeartbeats_16156_; lean_object* v_quotContext_16157_; lean_object* v_currMacroScope_16158_; uint8_t v_diag_16159_; lean_object* v_cancelTk_x3f_16160_; uint8_t v_suppressElabErrors_16161_; lean_object* v_inheritedTraceOptions_16162_; lean_object* v___x_16163_; lean_object* v_doSeq_16164_; lean_object* v___x_16165_; lean_object* v_ref_16166_; lean_object* v___x_16167_; lean_object* v___x_16168_; 
v_fileName_16147_ = lean_ctor_get(v_a_16144_, 0);
v_fileMap_16148_ = lean_ctor_get(v_a_16144_, 1);
v_options_16149_ = lean_ctor_get(v_a_16144_, 2);
v_currRecDepth_16150_ = lean_ctor_get(v_a_16144_, 3);
v_maxRecDepth_16151_ = lean_ctor_get(v_a_16144_, 4);
v_ref_16152_ = lean_ctor_get(v_a_16144_, 5);
v_currNamespace_16153_ = lean_ctor_get(v_a_16144_, 6);
v_openDecls_16154_ = lean_ctor_get(v_a_16144_, 7);
v_initHeartbeats_16155_ = lean_ctor_get(v_a_16144_, 8);
v_maxHeartbeats_16156_ = lean_ctor_get(v_a_16144_, 9);
v_quotContext_16157_ = lean_ctor_get(v_a_16144_, 10);
v_currMacroScope_16158_ = lean_ctor_get(v_a_16144_, 11);
v_diag_16159_ = lean_ctor_get_uint8(v_a_16144_, sizeof(void*)*14);
v_cancelTk_x3f_16160_ = lean_ctor_get(v_a_16144_, 12);
v_suppressElabErrors_16161_ = lean_ctor_get_uint8(v_a_16144_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_16162_ = lean_ctor_get(v_a_16144_, 13);
v___x_16163_ = lean_unsigned_to_nat(3u);
v_doSeq_16164_ = l_Lean_Syntax_getArg(v_doUnless_16137_, v___x_16163_);
v___x_16165_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_doSeq_16164_);
v_ref_16166_ = l_Lean_replaceRef(v_doUnless_16137_, v_ref_16152_);
lean_inc_ref(v_inheritedTraceOptions_16162_);
lean_inc(v_cancelTk_x3f_16160_);
lean_inc(v_currMacroScope_16158_);
lean_inc(v_quotContext_16157_);
lean_inc(v_maxHeartbeats_16156_);
lean_inc(v_initHeartbeats_16155_);
lean_inc(v_openDecls_16154_);
lean_inc(v_currNamespace_16153_);
lean_inc(v_maxRecDepth_16151_);
lean_inc(v_currRecDepth_16150_);
lean_inc_ref(v_options_16149_);
lean_inc_ref(v_fileMap_16148_);
lean_inc_ref(v_fileName_16147_);
v___x_16167_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_16167_, 0, v_fileName_16147_);
lean_ctor_set(v___x_16167_, 1, v_fileMap_16148_);
lean_ctor_set(v___x_16167_, 2, v_options_16149_);
lean_ctor_set(v___x_16167_, 3, v_currRecDepth_16150_);
lean_ctor_set(v___x_16167_, 4, v_maxRecDepth_16151_);
lean_ctor_set(v___x_16167_, 5, v_ref_16166_);
lean_ctor_set(v___x_16167_, 6, v_currNamespace_16153_);
lean_ctor_set(v___x_16167_, 7, v_openDecls_16154_);
lean_ctor_set(v___x_16167_, 8, v_initHeartbeats_16155_);
lean_ctor_set(v___x_16167_, 9, v_maxHeartbeats_16156_);
lean_ctor_set(v___x_16167_, 10, v_quotContext_16157_);
lean_ctor_set(v___x_16167_, 11, v_currMacroScope_16158_);
lean_ctor_set(v___x_16167_, 12, v_cancelTk_x3f_16160_);
lean_ctor_set(v___x_16167_, 13, v_inheritedTraceOptions_16162_);
lean_ctor_set_uint8(v___x_16167_, sizeof(void*)*14, v_diag_16159_);
lean_ctor_set_uint8(v___x_16167_, sizeof(void*)*14 + 1, v_suppressElabErrors_16161_);
lean_inc(v_a_16145_);
lean_inc_ref(v___x_16167_);
lean_inc(v_a_16143_);
lean_inc_ref(v_a_16142_);
lean_inc(v_a_16141_);
lean_inc_ref(v_a_16140_);
lean_inc_ref(v_a_16139_);
v___x_16168_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16165_, v_a_16139_, v_a_16140_, v_a_16141_, v_a_16142_, v_a_16143_, v___x_16167_, v_a_16145_);
if (lean_obj_tag(v___x_16168_) == 0)
{
lean_object* v_a_16169_; lean_object* v___x_16170_; lean_object* v_cond_16171_; lean_object* v___x_16172_; lean_object* v___x_16173_; 
v_a_16169_ = lean_ctor_get(v___x_16168_, 0);
lean_inc(v_a_16169_);
lean_dec_ref(v___x_16168_);
v___x_16170_ = lean_unsigned_to_nat(1u);
v_cond_16171_ = l_Lean_Syntax_getArg(v_doUnless_16137_, v___x_16170_);
v___x_16172_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkUnless___boxed), 4, 2);
lean_closure_set(v___x_16172_, 0, v_cond_16171_);
lean_closure_set(v___x_16172_, 1, v_a_16169_);
lean_inc_ref(v___x_16167_);
v___x_16173_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_16172_, v_a_16139_, v_a_16140_, v_a_16141_, v_a_16142_, v_a_16143_, v___x_16167_, v_a_16145_);
if (lean_obj_tag(v___x_16173_) == 0)
{
lean_object* v_a_16174_; lean_object* v___x_16175_; 
v_a_16174_ = lean_ctor_get(v___x_16173_, 0);
lean_inc(v_a_16174_);
lean_dec_ref(v___x_16173_);
v___x_16175_ = l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(v_a_16174_, v_doElems_16138_, v_a_16139_, v_a_16140_, v_a_16141_, v_a_16142_, v_a_16143_, v___x_16167_, v_a_16145_);
return v___x_16175_;
}
else
{
lean_dec_ref(v___x_16167_);
lean_dec(v_a_16145_);
lean_dec(v_a_16143_);
lean_dec_ref(v_a_16142_);
lean_dec(v_a_16141_);
lean_dec_ref(v_a_16140_);
lean_dec_ref(v_a_16139_);
lean_dec(v_doElems_16138_);
return v___x_16173_;
}
}
else
{
lean_dec_ref(v___x_16167_);
lean_dec(v_a_16145_);
lean_dec(v_a_16143_);
lean_dec_ref(v_a_16142_);
lean_dec(v_a_16141_);
lean_dec_ref(v_a_16140_);
lean_dec_ref(v_a_16139_);
lean_dec(v_doElems_16138_);
return v___x_16168_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode(lean_object* v_doIf_16176_, lean_object* v_doElems_16177_, lean_object* v_a_16178_, lean_object* v_a_16179_, lean_object* v_a_16180_, lean_object* v_a_16181_, lean_object* v_a_16182_, lean_object* v_a_16183_, lean_object* v_a_16184_){
_start:
{
lean_object* v_view_16186_; lean_object* v_ref_16187_; lean_object* v_optIdent_16188_; lean_object* v_cond_16189_; lean_object* v_thenBranch_16190_; lean_object* v_elseBranch_16191_; lean_object* v___x_16192_; lean_object* v___x_16193_; 
v_view_16186_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkDoIfView(v_doIf_16176_);
v_ref_16187_ = lean_ctor_get(v_view_16186_, 0);
lean_inc(v_ref_16187_);
v_optIdent_16188_ = lean_ctor_get(v_view_16186_, 1);
lean_inc(v_optIdent_16188_);
v_cond_16189_ = lean_ctor_get(v_view_16186_, 2);
lean_inc(v_cond_16189_);
v_thenBranch_16190_ = lean_ctor_get(v_view_16186_, 3);
lean_inc(v_thenBranch_16190_);
v_elseBranch_16191_ = lean_ctor_get(v_view_16186_, 4);
lean_inc(v_elseBranch_16191_);
lean_dec_ref(v_view_16186_);
v___x_16192_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_thenBranch_16190_);
lean_inc(v_a_16184_);
lean_inc_ref(v_a_16183_);
lean_inc(v_a_16182_);
lean_inc_ref(v_a_16181_);
lean_inc(v_a_16180_);
lean_inc_ref(v_a_16179_);
lean_inc_ref(v_a_16178_);
v___x_16193_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16192_, v_a_16178_, v_a_16179_, v_a_16180_, v_a_16181_, v_a_16182_, v_a_16183_, v_a_16184_);
if (lean_obj_tag(v___x_16193_) == 0)
{
lean_object* v_a_16194_; lean_object* v___x_16195_; lean_object* v___x_16196_; 
v_a_16194_ = lean_ctor_get(v___x_16193_, 0);
lean_inc(v_a_16194_);
lean_dec_ref(v___x_16193_);
v___x_16195_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_elseBranch_16191_);
lean_inc(v_a_16184_);
lean_inc_ref(v_a_16183_);
lean_inc(v_a_16182_);
lean_inc_ref(v_a_16181_);
lean_inc(v_a_16180_);
lean_inc_ref(v_a_16179_);
lean_inc_ref(v_a_16178_);
v___x_16196_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16195_, v_a_16178_, v_a_16179_, v_a_16180_, v_a_16181_, v_a_16182_, v_a_16183_, v_a_16184_);
if (lean_obj_tag(v___x_16196_) == 0)
{
lean_object* v_a_16197_; lean_object* v___x_16198_; 
v_a_16197_ = lean_ctor_get(v___x_16196_, 0);
lean_inc(v_a_16197_);
lean_dec_ref(v___x_16196_);
lean_inc(v_a_16184_);
lean_inc_ref(v_a_16183_);
lean_inc(v_a_16182_);
lean_inc_ref(v_a_16181_);
lean_inc(v_a_16180_);
lean_inc_ref(v_a_16179_);
v___x_16198_ = l_Lean_Elab_Term_Do_mkIte(v_ref_16187_, v_optIdent_16188_, v_cond_16189_, v_a_16194_, v_a_16197_, v_a_16179_, v_a_16180_, v_a_16181_, v_a_16182_, v_a_16183_, v_a_16184_);
if (lean_obj_tag(v___x_16198_) == 0)
{
lean_object* v_a_16199_; lean_object* v___x_16200_; 
v_a_16199_ = lean_ctor_get(v___x_16198_, 0);
lean_inc(v_a_16199_);
lean_dec_ref(v___x_16198_);
v___x_16200_ = l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(v_a_16199_, v_doElems_16177_, v_a_16178_, v_a_16179_, v_a_16180_, v_a_16181_, v_a_16182_, v_a_16183_, v_a_16184_);
return v___x_16200_;
}
else
{
lean_dec(v_a_16184_);
lean_dec_ref(v_a_16183_);
lean_dec(v_a_16182_);
lean_dec_ref(v_a_16181_);
lean_dec(v_a_16180_);
lean_dec_ref(v_a_16179_);
lean_dec_ref(v_a_16178_);
lean_dec(v_doElems_16177_);
return v___x_16198_;
}
}
else
{
lean_dec(v_a_16194_);
lean_dec(v_cond_16189_);
lean_dec(v_optIdent_16188_);
lean_dec(v_ref_16187_);
lean_dec(v_a_16184_);
lean_dec_ref(v_a_16183_);
lean_dec(v_a_16182_);
lean_dec_ref(v_a_16181_);
lean_dec(v_a_16180_);
lean_dec_ref(v_a_16179_);
lean_dec_ref(v_a_16178_);
lean_dec(v_doElems_16177_);
return v___x_16196_;
}
}
else
{
lean_dec(v_elseBranch_16191_);
lean_dec(v_cond_16189_);
lean_dec(v_optIdent_16188_);
lean_dec(v_ref_16187_);
lean_dec(v_a_16184_);
lean_dec_ref(v_a_16183_);
lean_dec(v_a_16182_);
lean_dec_ref(v_a_16181_);
lean_dec(v_a_16180_);
lean_dec_ref(v_a_16179_);
lean_dec_ref(v_a_16178_);
lean_dec(v_doElems_16177_);
return v___x_16193_;
}
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0(void){
_start:
{
lean_object* v___x_16201_; lean_object* v___x_16202_; 
v___x_16201_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__2));
v___x_16202_ = l_Lean_stringToMessageData(v___x_16201_);
return v___x_16202_;
}
}
static lean_object* _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2(void){
_start:
{
lean_object* v___x_16204_; lean_object* v___x_16205_; 
v___x_16204_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__1));
v___x_16205_ = l_Lean_stringToMessageData(v___x_16204_);
return v___x_16205_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0___boxed(lean_object* v_doElems_16206_, lean_object* v_auxDo_16207_, lean_object* v___y_16208_, lean_object* v___y_16209_, lean_object* v___y_16210_, lean_object* v___y_16211_, lean_object* v___y_16212_, lean_object* v___y_16213_, lean_object* v___y_16214_, lean_object* v___y_16215_){
_start:
{
lean_object* v_res_16216_; 
v_res_16216_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0(v_doElems_16206_, v_auxDo_16207_, v___y_16208_, v___y_16209_, v___y_16210_, v___y_16211_, v___y_16212_, v___y_16213_, v___y_16214_);
lean_dec(v_auxDo_16207_);
return v_res_16216_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode(lean_object* v_doReassignArrow_16217_, lean_object* v_doElems_16218_, lean_object* v_a_16219_, lean_object* v_a_16220_, lean_object* v_a_16221_, lean_object* v_a_16222_, lean_object* v_a_16223_, lean_object* v_a_16224_, lean_object* v_a_16225_){
_start:
{
lean_object* v___x_16227_; lean_object* v_decl_16228_; lean_object* v___x_16229_; lean_object* v___x_16230_; lean_object* v___x_16231_; lean_object* v___x_16232_; lean_object* v___x_16233_; uint8_t v___x_16234_; 
v___x_16227_ = lean_unsigned_to_nat(0u);
v_decl_16228_ = l_Lean_Syntax_getArg(v_doReassignArrow_16217_, v___x_16227_);
lean_inc(v_decl_16228_);
v___x_16229_ = l_Lean_Syntax_getKind(v_decl_16228_);
v___x_16230_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0));
v___x_16231_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1));
v___x_16232_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2));
v___x_16233_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_16234_ = lean_name_eq(v___x_16229_, v___x_16233_);
if (v___x_16234_ == 0)
{
lean_object* v___x_16235_; uint8_t v___x_16236_; 
v___x_16235_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1));
v___x_16236_ = lean_name_eq(v___x_16229_, v___x_16235_);
lean_dec(v___x_16229_);
if (v___x_16236_ == 0)
{
lean_object* v___x_16237_; lean_object* v___x_16238_; 
lean_dec(v_decl_16228_);
lean_dec(v_a_16221_);
lean_dec_ref(v_a_16220_);
lean_dec_ref(v_a_16219_);
lean_dec(v_doElems_16218_);
v___x_16237_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__0);
v___x_16238_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_16237_, v_a_16222_, v_a_16223_, v_a_16224_, v_a_16225_);
lean_dec(v_a_16225_);
lean_dec_ref(v_a_16224_);
lean_dec(v_a_16223_);
lean_dec_ref(v_a_16222_);
return v___x_16238_;
}
else
{
lean_object* v___x_16239_; lean_object* v_optElse_16240_; uint8_t v___x_16241_; 
v___x_16239_ = lean_unsigned_to_nat(4u);
v_optElse_16240_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16239_);
v___x_16241_ = l_Lean_Syntax_isNone(v_optElse_16240_);
lean_dec(v_optElse_16240_);
if (v___x_16241_ == 0)
{
lean_object* v___x_16242_; lean_object* v___x_16243_; 
lean_dec(v_decl_16228_);
lean_dec(v_a_16221_);
lean_dec_ref(v_a_16220_);
lean_dec_ref(v_a_16219_);
lean_dec(v_doElems_16218_);
v___x_16242_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___closed__2);
v___x_16243_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_16242_, v_a_16222_, v_a_16223_, v_a_16224_, v_a_16225_);
lean_dec(v_a_16225_);
lean_dec_ref(v_a_16224_);
lean_dec(v_a_16223_);
lean_dec_ref(v_a_16222_);
return v___x_16243_;
}
else
{
lean_object* v___f_16244_; lean_object* v_pattern_16245_; lean_object* v___x_16246_; lean_object* v_optType_16247_; lean_object* v___x_16248_; lean_object* v_doElem_16249_; uint8_t v___x_16250_; lean_object* v___x_16251_; lean_object* v___x_16252_; lean_object* v___f_16253_; lean_object* v___x_16254_; 
v___f_16244_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0___boxed), 10, 1);
lean_closure_set(v___f_16244_, 0, v_doElems_16218_);
v_pattern_16245_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16227_);
v___x_16246_ = lean_unsigned_to_nat(1u);
v_optType_16247_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16246_);
v___x_16248_ = lean_unsigned_to_nat(3u);
v_doElem_16249_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16248_);
lean_dec(v_decl_16228_);
v___x_16250_ = l_Lean_Syntax_isNone(v_optType_16247_);
v___x_16251_ = lean_box(v___x_16250_);
v___x_16252_ = lean_box(v___x_16234_);
v___f_16253_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___boxed), 20, 17);
lean_closure_set(v___f_16253_, 0, v___x_16251_);
lean_closure_set(v___f_16253_, 1, v_optType_16247_);
lean_closure_set(v___f_16253_, 2, v___x_16227_);
lean_closure_set(v___f_16253_, 3, v___x_16246_);
lean_closure_set(v___f_16253_, 4, v___x_16252_);
lean_closure_set(v___f_16253_, 5, v___x_16230_);
lean_closure_set(v___f_16253_, 6, v___x_16231_);
lean_closure_set(v___f_16253_, 7, v___x_16232_);
lean_closure_set(v___f_16253_, 8, v___x_16233_);
lean_closure_set(v___f_16253_, 9, v_doElem_16249_);
lean_closure_set(v___f_16253_, 10, v_pattern_16245_);
lean_closure_set(v___f_16253_, 11, v___f_16244_);
lean_closure_set(v___f_16253_, 12, v_a_16219_);
lean_closure_set(v___f_16253_, 13, v_a_16220_);
lean_closure_set(v___f_16253_, 14, v_a_16221_);
lean_closure_set(v___f_16253_, 15, v_a_16222_);
lean_closure_set(v___f_16253_, 16, v_a_16223_);
v___x_16254_ = l_Lean_Core_withFreshMacroScope___redArg(v___f_16253_, v_a_16224_, v_a_16225_);
return v___x_16254_;
}
}
}
else
{
lean_object* v_ref_16255_; lean_object* v_quotContext_16256_; lean_object* v_currMacroScope_16257_; lean_object* v___x_16258_; lean_object* v_doElem_16259_; lean_object* v_y_16260_; uint8_t v___x_16261_; lean_object* v___x_16262_; lean_object* v___x_16263_; lean_object* v___x_16264_; lean_object* v___x_16265_; lean_object* v___x_16266_; lean_object* v___x_16267_; lean_object* v___x_16268_; lean_object* v___x_16269_; lean_object* v___x_16270_; lean_object* v___x_16271_; lean_object* v___x_16272_; lean_object* v___x_16273_; lean_object* v___x_16274_; lean_object* v___x_16275_; lean_object* v___x_16276_; lean_object* v___x_16277_; lean_object* v___x_16278_; lean_object* v___x_16279_; lean_object* v___x_16280_; lean_object* v___x_16281_; lean_object* v___x_16282_; lean_object* v___x_16283_; lean_object* v___x_16284_; lean_object* v___x_16285_; lean_object* v___x_16286_; lean_object* v___x_16287_; lean_object* v___x_16288_; lean_object* v___x_16289_; lean_object* v___x_16290_; lean_object* v___x_16291_; lean_object* v___x_16292_; lean_object* v___x_16293_; lean_object* v___x_16294_; lean_object* v___x_16295_; lean_object* v___x_16296_; lean_object* v___x_16297_; lean_object* v___x_16298_; lean_object* v___x_16299_; lean_object* v___x_16300_; lean_object* v___x_16301_; lean_object* v___x_16302_; 
lean_dec(v___x_16229_);
v_ref_16255_ = lean_ctor_get(v_a_16224_, 5);
v_quotContext_16256_ = lean_ctor_get(v_a_16224_, 10);
v_currMacroScope_16257_ = lean_ctor_get(v_a_16224_, 11);
v___x_16258_ = lean_unsigned_to_nat(3u);
v_doElem_16259_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16258_);
v_y_16260_ = l_Lean_Syntax_getArg(v_decl_16228_, v___x_16227_);
lean_dec(v_decl_16228_);
v___x_16261_ = 0;
v___x_16262_ = l_Lean_SourceInfo_fromRef(v_ref_16255_, v___x_16261_);
v___x_16263_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_16264_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_16262_);
v___x_16265_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16265_, 0, v___x_16262_);
lean_ctor_set(v___x_16265_, 1, v___x_16263_);
v___x_16266_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_16267_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_16268_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_16269_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_16270_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_16262_);
v___x_16271_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16271_, 0, v___x_16262_);
lean_ctor_set(v___x_16271_, 1, v___x_16270_);
v___x_16272_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_16262_);
v___x_16273_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_16273_, 0, v___x_16262_);
lean_ctor_set(v___x_16273_, 1, v___x_16267_);
lean_ctor_set(v___x_16273_, 2, v___x_16272_);
v___x_16274_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3, &l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3_once, _init_l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__3);
v___x_16275_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__4));
lean_inc(v_currMacroScope_16257_);
lean_inc(v_quotContext_16256_);
v___x_16276_ = l_Lean_addMacroScope(v_quotContext_16256_, v___x_16275_, v_currMacroScope_16257_);
v___x_16277_ = lean_box(0);
lean_inc(v___x_16262_);
v___x_16278_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16278_, 0, v___x_16262_);
lean_ctor_set(v___x_16278_, 1, v___x_16274_);
lean_ctor_set(v___x_16278_, 2, v___x_16276_);
lean_ctor_set(v___x_16278_, 3, v___x_16277_);
v___x_16279_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_16262_);
v___x_16280_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16280_, 0, v___x_16262_);
lean_ctor_set(v___x_16280_, 1, v___x_16279_);
lean_inc_ref(v___x_16273_);
lean_inc_ref(v___x_16278_);
lean_inc(v___x_16262_);
v___x_16281_ = l_Lean_Syntax_node4(v___x_16262_, v___x_16233_, v___x_16278_, v___x_16273_, v___x_16280_, v_doElem_16259_);
lean_inc_ref(v___x_16273_);
lean_inc(v___x_16262_);
v___x_16282_ = l_Lean_Syntax_node3(v___x_16262_, v___x_16269_, v___x_16271_, v___x_16273_, v___x_16281_);
v___x_16283_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_16262_);
v___x_16284_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16284_, 0, v___x_16262_);
lean_ctor_set(v___x_16284_, 1, v___x_16283_);
lean_inc(v___x_16262_);
v___x_16285_ = l_Lean_Syntax_node1(v___x_16262_, v___x_16267_, v___x_16284_);
lean_inc(v___x_16262_);
v___x_16286_ = l_Lean_Syntax_node2(v___x_16262_, v___x_16268_, v___x_16282_, v___x_16285_);
v___x_16287_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_16288_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_letDeclArgHasBinders___closed__7));
v___x_16289_ = ((lean_object*)(l_Lean_Elab_Term_Do_getLetIdVars___closed__1));
lean_inc(v___x_16262_);
v___x_16290_ = l_Lean_Syntax_node1(v___x_16262_, v___x_16289_, v_y_16260_);
v___x_16291_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__15));
lean_inc(v___x_16262_);
v___x_16292_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16292_, 0, v___x_16262_);
lean_ctor_set(v___x_16292_, 1, v___x_16291_);
lean_inc_ref_n(v___x_16273_, 2);
lean_inc(v___x_16262_);
v___x_16293_ = l_Lean_Syntax_node5(v___x_16262_, v___x_16288_, v___x_16290_, v___x_16273_, v___x_16273_, v___x_16292_, v___x_16278_);
lean_inc(v___x_16262_);
v___x_16294_ = l_Lean_Syntax_node1(v___x_16262_, v___x_16287_, v___x_16293_);
lean_inc(v___x_16262_);
v___x_16295_ = l_Lean_Syntax_node2(v___x_16262_, v___x_16268_, v___x_16294_, v___x_16273_);
lean_inc(v___x_16262_);
v___x_16296_ = l_Lean_Syntax_node2(v___x_16262_, v___x_16267_, v___x_16286_, v___x_16295_);
lean_inc(v___x_16262_);
v___x_16297_ = l_Lean_Syntax_node1(v___x_16262_, v___x_16266_, v___x_16296_);
v___x_16298_ = l_Lean_Syntax_node2(v___x_16262_, v___x_16264_, v___x_16265_, v___x_16297_);
v___x_16299_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v___x_16298_);
lean_dec(v___x_16298_);
v___x_16300_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_16299_);
v___x_16301_ = l_List_appendTR___redArg(v___x_16300_, v_doElems_16218_);
v___x_16302_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16301_, v_a_16219_, v_a_16220_, v_a_16221_, v_a_16222_, v_a_16223_, v_a_16224_, v_a_16225_);
return v___x_16302_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode(lean_object* v_doLetElse_16303_, lean_object* v_doElems_16304_, lean_object* v_a_16305_, lean_object* v_a_16306_, lean_object* v_a_16307_, lean_object* v_a_16308_, lean_object* v_a_16309_, lean_object* v_a_16310_, lean_object* v_a_16311_){
_start:
{
lean_object* v___x_16313_; lean_object* v_pattern_16314_; lean_object* v___x_16315_; lean_object* v_val_16316_; lean_object* v___x_16317_; lean_object* v_elseSeq_16318_; lean_object* v_contSeq_16320_; lean_object* v___y_16321_; lean_object* v___y_16322_; lean_object* v___y_16323_; lean_object* v___y_16324_; lean_object* v___y_16325_; lean_object* v___y_16326_; lean_object* v___y_16327_; lean_object* v___x_16364_; lean_object* v___x_16365_; lean_object* v___x_16366_; lean_object* v_bodySeq_16367_; uint8_t v___x_16368_; 
v___x_16313_ = lean_unsigned_to_nat(2u);
v_pattern_16314_ = l_Lean_Syntax_getArg(v_doLetElse_16303_, v___x_16313_);
v___x_16315_ = lean_unsigned_to_nat(4u);
v_val_16316_ = l_Lean_Syntax_getArg(v_doLetElse_16303_, v___x_16315_);
v___x_16317_ = lean_unsigned_to_nat(6u);
v_elseSeq_16318_ = l_Lean_Syntax_getArg(v_doLetElse_16303_, v___x_16317_);
v___x_16364_ = lean_unsigned_to_nat(7u);
v___x_16365_ = l_Lean_Syntax_getArg(v_doLetElse_16303_, v___x_16364_);
v___x_16366_ = lean_unsigned_to_nat(0u);
v_bodySeq_16367_ = l_Lean_Syntax_getArg(v___x_16365_, v___x_16366_);
lean_dec(v___x_16365_);
v___x_16368_ = l_Lean_Elab_Term_Do_isMutableLet(v_doLetElse_16303_);
if (v___x_16368_ == 0)
{
lean_object* v___x_16369_; lean_object* v___x_16370_; 
v___x_16369_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_bodySeq_16367_);
v___x_16370_ = lean_array_mk(v___x_16369_);
v_contSeq_16320_ = v___x_16370_;
v___y_16321_ = v_a_16305_;
v___y_16322_ = v_a_16306_;
v___y_16323_ = v_a_16307_;
v___y_16324_ = v_a_16308_;
v___y_16325_ = v_a_16309_;
v___y_16326_ = v_a_16310_;
v___y_16327_ = v_a_16311_;
goto v___jp_16319_;
}
else
{
lean_object* v___x_16371_; 
lean_inc(v_a_16311_);
lean_inc_ref(v_a_16310_);
lean_inc(v_a_16309_);
lean_inc_ref(v_a_16308_);
lean_inc(v_a_16307_);
lean_inc_ref(v_a_16306_);
lean_inc(v_pattern_16314_);
v___x_16371_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_pattern_16314_, v_a_16306_, v_a_16307_, v_a_16308_, v_a_16309_, v_a_16310_, v_a_16311_);
if (lean_obj_tag(v___x_16371_) == 0)
{
lean_object* v_a_16372_; size_t v_sz_16373_; size_t v___x_16374_; lean_object* v___x_16375_; 
v_a_16372_ = lean_ctor_get(v___x_16371_, 0);
lean_inc(v_a_16372_);
lean_dec_ref(v___x_16371_);
v_sz_16373_ = lean_array_size(v_a_16372_);
v___x_16374_ = ((size_t)0ULL);
v___x_16375_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg(v_sz_16373_, v___x_16374_, v_a_16372_, v_a_16310_);
if (lean_obj_tag(v___x_16375_) == 0)
{
lean_object* v_a_16376_; lean_object* v___x_16377_; lean_object* v___x_16378_; lean_object* v___x_16379_; 
v_a_16376_ = lean_ctor_get(v___x_16375_, 0);
lean_inc(v_a_16376_);
lean_dec_ref(v___x_16375_);
v___x_16377_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_bodySeq_16367_);
v___x_16378_ = lean_array_mk(v___x_16377_);
v___x_16379_ = l_Array_append___redArg(v_a_16376_, v___x_16378_);
lean_dec_ref(v___x_16378_);
v_contSeq_16320_ = v___x_16379_;
v___y_16321_ = v_a_16305_;
v___y_16322_ = v_a_16306_;
v___y_16323_ = v_a_16307_;
v___y_16324_ = v_a_16308_;
v___y_16325_ = v_a_16309_;
v___y_16326_ = v_a_16310_;
v___y_16327_ = v_a_16311_;
goto v___jp_16319_;
}
else
{
lean_object* v_a_16380_; lean_object* v___x_16381_; 
lean_dec(v_bodySeq_16367_);
lean_dec(v_elseSeq_16318_);
lean_dec(v_val_16316_);
lean_dec(v_pattern_16314_);
lean_dec(v_a_16311_);
lean_dec_ref(v_a_16310_);
lean_dec(v_a_16309_);
lean_dec_ref(v_a_16308_);
lean_dec(v_a_16307_);
lean_dec_ref(v_a_16306_);
lean_dec_ref(v_a_16305_);
lean_dec(v_doElems_16304_);
v_a_16380_ = lean_ctor_get(v___x_16375_, 0);
lean_inc(v_a_16380_);
lean_dec_ref(v___x_16375_);
v___x_16381_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16381_, 0, v_a_16380_);
return v___x_16381_;
}
}
else
{
lean_object* v_a_16382_; lean_object* v___x_16383_; 
lean_dec(v_bodySeq_16367_);
lean_dec(v_elseSeq_16318_);
lean_dec(v_val_16316_);
lean_dec(v_pattern_16314_);
lean_dec(v_a_16311_);
lean_dec_ref(v_a_16310_);
lean_dec(v_a_16309_);
lean_dec_ref(v_a_16308_);
lean_dec(v_a_16307_);
lean_dec_ref(v_a_16306_);
lean_dec_ref(v_a_16305_);
lean_dec(v_doElems_16304_);
v_a_16382_ = lean_ctor_get(v___x_16371_, 0);
lean_inc(v_a_16382_);
lean_dec_ref(v___x_16371_);
v___x_16383_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16383_, 0, v_a_16382_);
return v___x_16383_;
}
}
v___jp_16319_:
{
lean_object* v_ref_16328_; lean_object* v_contSeq_16329_; uint8_t v___x_16330_; lean_object* v___x_16331_; lean_object* v___x_16332_; lean_object* v___x_16333_; lean_object* v___x_16334_; lean_object* v___x_16335_; lean_object* v___x_16336_; lean_object* v___x_16337_; lean_object* v___x_16338_; lean_object* v___x_16339_; lean_object* v___x_16340_; lean_object* v___x_16341_; lean_object* v___x_16342_; lean_object* v___x_16343_; lean_object* v___x_16344_; lean_object* v___x_16345_; lean_object* v___x_16346_; lean_object* v___x_16347_; lean_object* v___x_16348_; lean_object* v___x_16349_; lean_object* v___x_16350_; lean_object* v___x_16351_; lean_object* v___x_16352_; lean_object* v___x_16353_; lean_object* v___x_16354_; lean_object* v___x_16355_; lean_object* v___x_16356_; lean_object* v___x_16357_; lean_object* v___x_16358_; lean_object* v___x_16359_; lean_object* v___x_16360_; lean_object* v___x_16361_; lean_object* v___x_16362_; lean_object* v___x_16363_; 
v_ref_16328_ = lean_ctor_get(v___y_16326_, 5);
v_contSeq_16329_ = l_Lean_Elab_Term_Do_mkDoSeq(v_contSeq_16320_);
v___x_16330_ = 0;
v___x_16331_ = l_Lean_SourceInfo_fromRef(v_ref_16328_, v___x_16330_);
v___x_16332_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_16333_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
lean_inc(v___x_16331_);
v___x_16334_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16334_, 0, v___x_16331_);
lean_ctor_set(v___x_16334_, 1, v___x_16333_);
v___x_16335_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_16336_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_16331_);
v___x_16337_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_16337_, 0, v___x_16331_);
lean_ctor_set(v___x_16337_, 1, v___x_16335_);
lean_ctor_set(v___x_16337_, 2, v___x_16336_);
v___x_16338_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_16337_);
lean_inc(v___x_16331_);
v___x_16339_ = l_Lean_Syntax_node2(v___x_16331_, v___x_16338_, v___x_16337_, v_val_16316_);
lean_inc(v___x_16331_);
v___x_16340_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16335_, v___x_16339_);
v___x_16341_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_16331_);
v___x_16342_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16342_, 0, v___x_16331_);
lean_ctor_set(v___x_16342_, 1, v___x_16341_);
v___x_16343_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_16344_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_16345_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_16331_);
v___x_16346_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16346_, 0, v___x_16331_);
lean_ctor_set(v___x_16346_, 1, v___x_16345_);
lean_inc(v___x_16331_);
v___x_16347_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16335_, v_pattern_16314_);
lean_inc(v___x_16331_);
v___x_16348_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16335_, v___x_16347_);
v___x_16349_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_16331_);
v___x_16350_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16350_, 0, v___x_16331_);
lean_ctor_set(v___x_16350_, 1, v___x_16349_);
lean_inc_ref(v___x_16350_);
lean_inc_ref(v___x_16346_);
lean_inc(v___x_16331_);
v___x_16351_ = l_Lean_Syntax_node4(v___x_16331_, v___x_16344_, v___x_16346_, v___x_16348_, v___x_16350_, v_contSeq_16329_);
v___x_16352_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_16353_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_16331_);
v___x_16354_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16354_, 0, v___x_16331_);
lean_ctor_set(v___x_16354_, 1, v___x_16353_);
lean_inc(v___x_16331_);
v___x_16355_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16352_, v___x_16354_);
lean_inc(v___x_16331_);
v___x_16356_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16335_, v___x_16355_);
lean_inc(v___x_16331_);
v___x_16357_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16335_, v___x_16356_);
lean_inc(v___x_16331_);
v___x_16358_ = l_Lean_Syntax_node4(v___x_16331_, v___x_16344_, v___x_16346_, v___x_16357_, v___x_16350_, v_elseSeq_16318_);
lean_inc(v___x_16331_);
v___x_16359_ = l_Lean_Syntax_node2(v___x_16331_, v___x_16335_, v___x_16351_, v___x_16358_);
lean_inc(v___x_16331_);
v___x_16360_ = l_Lean_Syntax_node1(v___x_16331_, v___x_16343_, v___x_16359_);
lean_inc_ref_n(v___x_16337_, 2);
v___x_16361_ = l_Lean_Syntax_node7(v___x_16331_, v___x_16332_, v___x_16334_, v___x_16337_, v___x_16337_, v___x_16337_, v___x_16340_, v___x_16342_, v___x_16360_);
v___x_16362_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_16362_, 0, v___x_16361_);
lean_ctor_set(v___x_16362_, 1, v_doElems_16304_);
v___x_16363_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16362_, v___y_16321_, v___y_16322_, v___y_16323_, v___y_16324_, v___y_16325_, v___y_16326_, v___y_16327_);
return v___x_16363_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode(lean_object* v_doLetArrow_16384_, lean_object* v_doElems_16385_, lean_object* v_a_16386_, lean_object* v_a_16387_, lean_object* v_a_16388_, lean_object* v_a_16389_, lean_object* v_a_16390_, lean_object* v_a_16391_, lean_object* v_a_16392_){
_start:
{
lean_object* v_auxDo_16395_; lean_object* v___y_16396_; lean_object* v___y_16397_; lean_object* v___y_16398_; lean_object* v___y_16399_; lean_object* v___y_16400_; lean_object* v___y_16401_; lean_object* v___y_16402_; lean_object* v___x_16407_; lean_object* v_decl_16408_; lean_object* v___x_16409_; lean_object* v___x_16410_; lean_object* v___x_16411_; lean_object* v___x_16412_; lean_object* v___x_16413_; uint8_t v___x_16414_; 
v___x_16407_ = lean_unsigned_to_nat(2u);
v_decl_16408_ = l_Lean_Syntax_getArg(v_doLetArrow_16384_, v___x_16407_);
lean_inc(v_decl_16408_);
v___x_16409_ = l_Lean_Syntax_getKind(v_decl_16408_);
v___x_16410_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__0));
v___x_16411_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__1));
v___x_16412_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__2));
v___x_16413_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__4));
v___x_16414_ = lean_name_eq(v___x_16409_, v___x_16413_);
if (v___x_16414_ == 0)
{
lean_object* v___x_16415_; uint8_t v___x_16416_; 
v___x_16415_ = ((lean_object*)(l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__1));
v___x_16416_ = lean_name_eq(v___x_16409_, v___x_16415_);
lean_dec(v___x_16409_);
if (v___x_16416_ == 0)
{
lean_object* v___x_16417_; lean_object* v___x_16418_; 
lean_dec(v_decl_16408_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
lean_dec(v_doLetArrow_16384_);
v___x_16417_ = lean_obj_once(&l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3, &l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3_once, _init_l_Lean_Elab_Term_Do_getDoLetArrowVars___closed__3);
v___x_16418_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_16417_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
return v___x_16418_;
}
else
{
lean_object* v___x_16419_; lean_object* v_pattern_16420_; lean_object* v___x_16421_; lean_object* v_optType_16422_; lean_object* v___x_16423_; lean_object* v_doElem_16424_; lean_object* v___x_16425_; lean_object* v_optElse_16426_; uint8_t v___x_16427_; 
v___x_16419_ = lean_unsigned_to_nat(0u);
v_pattern_16420_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16419_);
v___x_16421_ = lean_unsigned_to_nat(1u);
v_optType_16422_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16421_);
v___x_16423_ = lean_unsigned_to_nat(3u);
v_doElem_16424_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16423_);
v___x_16425_ = lean_unsigned_to_nat(4u);
v_optElse_16426_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16425_);
lean_dec(v_decl_16408_);
v___x_16427_ = l_Lean_Syntax_isNone(v_optElse_16426_);
if (v___x_16427_ == 0)
{
lean_object* v_elseSeq_16428_; lean_object* v_contSeq_16430_; lean_object* v___y_16431_; lean_object* v___y_16432_; lean_object* v___y_16433_; lean_object* v___y_16434_; lean_object* v___y_16435_; lean_object* v___y_16436_; lean_object* v___y_16437_; lean_object* v___x_16567_; lean_object* v_contSeq_16568_; uint8_t v___x_16569_; 
v_elseSeq_16428_ = l_Lean_Syntax_getArg(v_optElse_16426_, v___x_16421_);
v___x_16567_ = l_Lean_Syntax_getArg(v_optElse_16426_, v___x_16407_);
lean_dec(v_optElse_16426_);
v_contSeq_16568_ = l_Lean_Syntax_getArg(v___x_16567_, v___x_16419_);
lean_dec(v___x_16567_);
lean_inc(v_doLetArrow_16384_);
v___x_16569_ = l_Lean_Elab_Term_Do_isMutableLet(v_doLetArrow_16384_);
if (v___x_16569_ == 0)
{
lean_object* v___x_16570_; lean_object* v___x_16571_; 
v___x_16570_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_contSeq_16568_);
v___x_16571_ = lean_array_mk(v___x_16570_);
v_contSeq_16430_ = v___x_16571_;
v___y_16431_ = v_a_16386_;
v___y_16432_ = v_a_16387_;
v___y_16433_ = v_a_16388_;
v___y_16434_ = v_a_16389_;
v___y_16435_ = v_a_16390_;
v___y_16436_ = v_a_16391_;
v___y_16437_ = v_a_16392_;
goto v___jp_16429_;
}
else
{
lean_object* v___x_16572_; 
lean_inc(v_a_16392_);
lean_inc_ref(v_a_16391_);
lean_inc(v_a_16390_);
lean_inc_ref(v_a_16389_);
lean_inc(v_a_16388_);
lean_inc_ref(v_a_16387_);
lean_inc(v_pattern_16420_);
v___x_16572_ = l_Lean_Elab_Term_Do_getPatternVarsEx(v_pattern_16420_, v_a_16387_, v_a_16388_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
if (lean_obj_tag(v___x_16572_) == 0)
{
lean_object* v_a_16573_; size_t v_sz_16574_; size_t v___x_16575_; lean_object* v___x_16576_; 
v_a_16573_ = lean_ctor_get(v___x_16572_, 0);
lean_inc(v_a_16573_);
lean_dec_ref(v___x_16572_);
v_sz_16574_ = lean_array_size(v_a_16573_);
v___x_16575_ = ((size_t)0ULL);
v___x_16576_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg(v___x_16427_, v_sz_16574_, v___x_16575_, v_a_16573_, v_a_16391_);
if (lean_obj_tag(v___x_16576_) == 0)
{
lean_object* v_a_16577_; lean_object* v___x_16578_; lean_object* v___x_16579_; lean_object* v___x_16580_; 
v_a_16577_ = lean_ctor_get(v___x_16576_, 0);
lean_inc(v_a_16577_);
lean_dec_ref(v___x_16576_);
v___x_16578_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v_contSeq_16568_);
v___x_16579_ = lean_array_mk(v___x_16578_);
v___x_16580_ = l_Array_append___redArg(v_a_16577_, v___x_16579_);
lean_dec_ref(v___x_16579_);
v_contSeq_16430_ = v___x_16580_;
v___y_16431_ = v_a_16386_;
v___y_16432_ = v_a_16387_;
v___y_16433_ = v_a_16388_;
v___y_16434_ = v_a_16389_;
v___y_16435_ = v_a_16390_;
v___y_16436_ = v_a_16391_;
v___y_16437_ = v_a_16392_;
goto v___jp_16429_;
}
else
{
lean_object* v_a_16581_; lean_object* v___x_16582_; 
lean_dec(v_contSeq_16568_);
lean_dec(v_elseSeq_16428_);
lean_dec(v_doElem_16424_);
lean_dec(v_optType_16422_);
lean_dec(v_pattern_16420_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
lean_dec(v_doLetArrow_16384_);
v_a_16581_ = lean_ctor_get(v___x_16576_, 0);
lean_inc(v_a_16581_);
lean_dec_ref(v___x_16576_);
v___x_16582_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16582_, 0, v_a_16581_);
return v___x_16582_;
}
}
else
{
lean_object* v_a_16583_; lean_object* v___x_16584_; 
lean_dec(v_contSeq_16568_);
lean_dec(v_elseSeq_16428_);
lean_dec(v_doElem_16424_);
lean_dec(v_optType_16422_);
lean_dec(v_pattern_16420_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
lean_dec(v_doLetArrow_16384_);
v_a_16583_ = lean_ctor_get(v___x_16572_, 0);
lean_inc(v_a_16583_);
lean_dec_ref(v___x_16572_);
v___x_16584_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16584_, 0, v_a_16583_);
return v___x_16584_;
}
}
v___jp_16429_:
{
lean_object* v_contSeq_16438_; uint8_t v___x_16439_; 
v_contSeq_16438_ = l_Lean_Elab_Term_Do_mkDoSeq(v_contSeq_16430_);
v___x_16439_ = l_Lean_Syntax_isNone(v_optType_16422_);
if (v___x_16439_ == 0)
{
lean_object* v_ref_16440_; lean_object* v_quotContext_16441_; lean_object* v_currMacroScope_16442_; lean_object* v___x_16443_; lean_object* v_ty_16444_; lean_object* v___x_16445_; lean_object* v___x_16446_; lean_object* v___x_16447_; lean_object* v___x_16448_; lean_object* v___x_16449_; lean_object* v___x_16450_; lean_object* v___x_16451_; lean_object* v___x_16452_; lean_object* v___x_16453_; lean_object* v___x_16454_; lean_object* v___x_16455_; lean_object* v___x_16456_; lean_object* v___x_16457_; lean_object* v___x_16458_; lean_object* v___x_16459_; lean_object* v___x_16460_; lean_object* v___x_16461_; lean_object* v___x_16462_; lean_object* v___x_16463_; lean_object* v___x_16464_; lean_object* v___x_16465_; lean_object* v___x_16466_; lean_object* v___x_16467_; lean_object* v___x_16468_; lean_object* v___x_16469_; lean_object* v___x_16470_; lean_object* v___x_16471_; lean_object* v___x_16472_; lean_object* v___x_16473_; lean_object* v___x_16474_; lean_object* v___x_16475_; lean_object* v___x_16476_; lean_object* v___x_16477_; lean_object* v___x_16478_; lean_object* v___x_16479_; lean_object* v___x_16480_; lean_object* v___x_16481_; lean_object* v___x_16482_; lean_object* v___x_16483_; lean_object* v___x_16484_; lean_object* v___x_16485_; lean_object* v___x_16486_; lean_object* v___x_16487_; lean_object* v___x_16488_; lean_object* v___x_16489_; lean_object* v___x_16490_; lean_object* v___x_16491_; lean_object* v___x_16492_; lean_object* v___x_16493_; lean_object* v___x_16494_; lean_object* v___x_16495_; lean_object* v___x_16496_; lean_object* v___x_16497_; lean_object* v___x_16498_; lean_object* v___x_16499_; lean_object* v___x_16500_; lean_object* v___x_16501_; lean_object* v___x_16502_; lean_object* v___x_16503_; lean_object* v___x_16504_; lean_object* v___x_16505_; lean_object* v___x_16506_; 
v_ref_16440_ = lean_ctor_get(v___y_16436_, 5);
v_quotContext_16441_ = lean_ctor_get(v___y_16436_, 10);
v_currMacroScope_16442_ = lean_ctor_get(v___y_16436_, 11);
v___x_16443_ = l_Lean_Syntax_getArg(v_optType_16422_, v___x_16419_);
lean_dec(v_optType_16422_);
v_ty_16444_ = l_Lean_Syntax_getArg(v___x_16443_, v___x_16421_);
lean_dec(v___x_16443_);
v___x_16445_ = l_Lean_SourceInfo_fromRef(v_ref_16440_, v___x_16439_);
v___x_16446_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_16447_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_16445_);
v___x_16448_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16448_, 0, v___x_16445_);
lean_ctor_set(v___x_16448_, 1, v___x_16446_);
v___x_16449_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_16450_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_16451_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_16452_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_16453_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_16384_, v___x_16416_);
lean_dec(v_doLetArrow_16384_);
v___x_16454_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_16453_);
v___x_16455_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16455_, 0, v___x_16453_);
lean_ctor_set(v___x_16455_, 1, v___x_16454_);
v___x_16456_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_16445_);
v___x_16457_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_16457_, 0, v___x_16445_);
lean_ctor_set(v___x_16457_, 1, v___x_16450_);
lean_ctor_set(v___x_16457_, 2, v___x_16456_);
v___x_16458_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_16459_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_16442_);
lean_inc(v_quotContext_16441_);
v___x_16460_ = l_Lean_addMacroScope(v_quotContext_16441_, v___x_16459_, v_currMacroScope_16442_);
v___x_16461_ = lean_box(0);
lean_inc(v___x_16445_);
v___x_16462_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16462_, 0, v___x_16445_);
lean_ctor_set(v___x_16462_, 1, v___x_16458_);
lean_ctor_set(v___x_16462_, 2, v___x_16460_);
lean_ctor_set(v___x_16462_, 3, v___x_16461_);
v___x_16463_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_mkJoinPoint___closed__3));
v___x_16464_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_mkUnit___closed__29));
lean_inc(v___x_16445_);
v___x_16465_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16465_, 0, v___x_16445_);
lean_ctor_set(v___x_16465_, 1, v___x_16464_);
lean_inc(v___x_16445_);
v___x_16466_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16463_, v___x_16465_, v_ty_16444_);
lean_inc(v___x_16445_);
v___x_16467_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16466_);
v___x_16468_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_16445_);
v___x_16469_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16469_, 0, v___x_16445_);
lean_ctor_set(v___x_16469_, 1, v___x_16468_);
lean_inc_ref(v___x_16462_);
lean_inc(v___x_16445_);
v___x_16470_ = l_Lean_Syntax_node4(v___x_16445_, v___x_16413_, v___x_16462_, v___x_16467_, v___x_16469_, v_doElem_16424_);
lean_inc_ref(v___x_16457_);
lean_inc(v___x_16445_);
v___x_16471_ = l_Lean_Syntax_node3(v___x_16445_, v___x_16452_, v___x_16455_, v___x_16457_, v___x_16470_);
v___x_16472_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_16445_);
v___x_16473_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16473_, 0, v___x_16445_);
lean_ctor_set(v___x_16473_, 1, v___x_16472_);
lean_inc(v___x_16445_);
v___x_16474_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16473_);
lean_inc(v___x_16445_);
v___x_16475_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16451_, v___x_16471_, v___x_16474_);
v___x_16476_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_16477_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
v___x_16478_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16478_, 0, v___x_16453_);
lean_ctor_set(v___x_16478_, 1, v___x_16477_);
v___x_16479_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_16457_);
lean_inc(v___x_16445_);
v___x_16480_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16479_, v___x_16457_, v___x_16462_);
lean_inc(v___x_16445_);
v___x_16481_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16480_);
v___x_16482_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_16445_);
v___x_16483_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16483_, 0, v___x_16445_);
lean_ctor_set(v___x_16483_, 1, v___x_16482_);
v___x_16484_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_16485_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_16486_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_16445_);
v___x_16487_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16487_, 0, v___x_16445_);
lean_ctor_set(v___x_16487_, 1, v___x_16486_);
lean_inc(v___x_16445_);
v___x_16488_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v_pattern_16420_);
lean_inc(v___x_16445_);
v___x_16489_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16488_);
v___x_16490_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_16445_);
v___x_16491_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16491_, 0, v___x_16445_);
lean_ctor_set(v___x_16491_, 1, v___x_16490_);
lean_inc_ref(v___x_16491_);
lean_inc_ref(v___x_16487_);
lean_inc(v___x_16445_);
v___x_16492_ = l_Lean_Syntax_node4(v___x_16445_, v___x_16485_, v___x_16487_, v___x_16489_, v___x_16491_, v_contSeq_16438_);
v___x_16493_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_16494_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_16445_);
v___x_16495_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16495_, 0, v___x_16445_);
lean_ctor_set(v___x_16495_, 1, v___x_16494_);
lean_inc(v___x_16445_);
v___x_16496_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16493_, v___x_16495_);
lean_inc(v___x_16445_);
v___x_16497_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16496_);
lean_inc(v___x_16445_);
v___x_16498_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16450_, v___x_16497_);
lean_inc(v___x_16445_);
v___x_16499_ = l_Lean_Syntax_node4(v___x_16445_, v___x_16485_, v___x_16487_, v___x_16498_, v___x_16491_, v_elseSeq_16428_);
lean_inc(v___x_16445_);
v___x_16500_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16450_, v___x_16492_, v___x_16499_);
lean_inc(v___x_16445_);
v___x_16501_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16484_, v___x_16500_);
lean_inc_ref_n(v___x_16457_, 3);
lean_inc(v___x_16445_);
v___x_16502_ = l_Lean_Syntax_node7(v___x_16445_, v___x_16476_, v___x_16478_, v___x_16457_, v___x_16457_, v___x_16457_, v___x_16481_, v___x_16483_, v___x_16501_);
lean_inc(v___x_16445_);
v___x_16503_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16451_, v___x_16502_, v___x_16457_);
lean_inc(v___x_16445_);
v___x_16504_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16450_, v___x_16475_, v___x_16503_);
lean_inc(v___x_16445_);
v___x_16505_ = l_Lean_Syntax_node1(v___x_16445_, v___x_16449_, v___x_16504_);
v___x_16506_ = l_Lean_Syntax_node2(v___x_16445_, v___x_16447_, v___x_16448_, v___x_16505_);
v_auxDo_16395_ = v___x_16506_;
v___y_16396_ = v___y_16431_;
v___y_16397_ = v___y_16432_;
v___y_16398_ = v___y_16433_;
v___y_16399_ = v___y_16434_;
v___y_16400_ = v___y_16435_;
v___y_16401_ = v___y_16436_;
v___y_16402_ = v___y_16437_;
goto v___jp_16394_;
}
else
{
lean_object* v_ref_16507_; lean_object* v_quotContext_16508_; lean_object* v_currMacroScope_16509_; lean_object* v___x_16510_; lean_object* v___x_16511_; lean_object* v___x_16512_; lean_object* v___x_16513_; lean_object* v___x_16514_; lean_object* v___x_16515_; lean_object* v___x_16516_; lean_object* v___x_16517_; lean_object* v___x_16518_; lean_object* v___x_16519_; lean_object* v___x_16520_; lean_object* v___x_16521_; lean_object* v___x_16522_; lean_object* v___x_16523_; lean_object* v___x_16524_; lean_object* v___x_16525_; lean_object* v___x_16526_; lean_object* v___x_16527_; lean_object* v___x_16528_; lean_object* v___x_16529_; lean_object* v___x_16530_; lean_object* v___x_16531_; lean_object* v___x_16532_; lean_object* v___x_16533_; lean_object* v___x_16534_; lean_object* v___x_16535_; lean_object* v___x_16536_; lean_object* v___x_16537_; lean_object* v___x_16538_; lean_object* v___x_16539_; lean_object* v___x_16540_; lean_object* v___x_16541_; lean_object* v___x_16542_; lean_object* v___x_16543_; lean_object* v___x_16544_; lean_object* v___x_16545_; lean_object* v___x_16546_; lean_object* v___x_16547_; lean_object* v___x_16548_; lean_object* v___x_16549_; lean_object* v___x_16550_; lean_object* v___x_16551_; lean_object* v___x_16552_; lean_object* v___x_16553_; lean_object* v___x_16554_; lean_object* v___x_16555_; lean_object* v___x_16556_; lean_object* v___x_16557_; lean_object* v___x_16558_; lean_object* v___x_16559_; lean_object* v___x_16560_; lean_object* v___x_16561_; lean_object* v___x_16562_; lean_object* v___x_16563_; lean_object* v___x_16564_; lean_object* v___x_16565_; lean_object* v___x_16566_; 
lean_dec(v_optType_16422_);
v_ref_16507_ = lean_ctor_get(v___y_16436_, 5);
v_quotContext_16508_ = lean_ctor_get(v___y_16436_, 10);
v_currMacroScope_16509_ = lean_ctor_get(v___y_16436_, 11);
v___x_16510_ = l_Lean_SourceInfo_fromRef(v_ref_16507_, v___x_16427_);
v___x_16511_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__8));
v___x_16512_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodDelimiter___closed__9));
lean_inc(v___x_16510_);
v___x_16513_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16513_, 0, v___x_16510_);
lean_ctor_set(v___x_16513_, 1, v___x_16511_);
v___x_16514_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems___closed__6));
v___x_16515_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__1));
v___x_16516_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__25));
v___x_16517_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_16518_ = l_Lean_SourceInfo_fromRef(v_doLetArrow_16384_, v___x_16416_);
lean_dec(v_doLetArrow_16384_);
v___x_16519_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__4));
lean_inc(v___x_16518_);
v___x_16520_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16520_, 0, v___x_16518_);
lean_ctor_set(v___x_16520_, 1, v___x_16519_);
v___x_16521_ = lean_obj_once(&l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2, &l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2_once, _init_l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__2);
lean_inc(v___x_16510_);
v___x_16522_ = lean_alloc_ctor(1, 3, 0);
lean_ctor_set(v___x_16522_, 0, v___x_16510_);
lean_ctor_set(v___x_16522_, 1, v___x_16515_);
lean_ctor_set(v___x_16522_, 2, v___x_16521_);
v___x_16523_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1, &l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__1);
v___x_16524_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__1___closed__2));
lean_inc(v_currMacroScope_16509_);
lean_inc(v_quotContext_16508_);
v___x_16525_ = l_Lean_addMacroScope(v_quotContext_16508_, v___x_16524_, v_currMacroScope_16509_);
v___x_16526_ = lean_box(0);
lean_inc(v___x_16510_);
v___x_16527_ = lean_alloc_ctor(3, 4, 0);
lean_ctor_set(v___x_16527_, 0, v___x_16510_);
lean_ctor_set(v___x_16527_, 1, v___x_16523_);
lean_ctor_set(v___x_16527_, 2, v___x_16525_);
lean_ctor_set(v___x_16527_, 3, v___x_16526_);
v___x_16528_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__8));
lean_inc(v___x_16510_);
v___x_16529_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16529_, 0, v___x_16510_);
lean_ctor_set(v___x_16529_, 1, v___x_16528_);
lean_inc_ref(v___x_16522_);
lean_inc_ref(v___x_16527_);
lean_inc(v___x_16510_);
v___x_16530_ = l_Lean_Syntax_node4(v___x_16510_, v___x_16413_, v___x_16527_, v___x_16522_, v___x_16529_, v_doElem_16424_);
lean_inc_ref(v___x_16522_);
lean_inc(v___x_16510_);
v___x_16531_ = l_Lean_Syntax_node3(v___x_16510_, v___x_16517_, v___x_16520_, v___x_16522_, v___x_16530_);
v___x_16532_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_destructTuple_destruct___closed__13));
lean_inc(v___x_16510_);
v___x_16533_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16533_, 0, v___x_16510_);
lean_ctor_set(v___x_16533_, 1, v___x_16532_);
lean_inc(v___x_16510_);
v___x_16534_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v___x_16533_);
lean_inc(v___x_16510_);
v___x_16535_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16516_, v___x_16531_, v___x_16534_);
v___x_16536_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_16537_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__15));
v___x_16538_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16538_, 0, v___x_16518_);
lean_ctor_set(v___x_16538_, 1, v___x_16537_);
v___x_16539_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__17));
lean_inc_ref(v___x_16522_);
lean_inc(v___x_16510_);
v___x_16540_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16539_, v___x_16522_, v___x_16527_);
lean_inc(v___x_16510_);
v___x_16541_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v___x_16540_);
v___x_16542_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__18));
lean_inc(v___x_16510_);
v___x_16543_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16543_, 0, v___x_16510_);
lean_ctor_set(v___x_16543_, 1, v___x_16542_);
v___x_16544_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__13));
v___x_16545_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__20));
v___x_16546_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__21));
lean_inc(v___x_16510_);
v___x_16547_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16547_, 0, v___x_16510_);
lean_ctor_set(v___x_16547_, 1, v___x_16546_);
lean_inc(v___x_16510_);
v___x_16548_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v_pattern_16420_);
lean_inc(v___x_16510_);
v___x_16549_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v___x_16548_);
v___x_16550_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__22));
lean_inc(v___x_16510_);
v___x_16551_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16551_, 0, v___x_16510_);
lean_ctor_set(v___x_16551_, 1, v___x_16550_);
lean_inc_ref(v___x_16551_);
lean_inc_ref(v___x_16547_);
lean_inc(v___x_16510_);
v___x_16552_ = l_Lean_Syntax_node4(v___x_16510_, v___x_16545_, v___x_16547_, v___x_16549_, v___x_16551_, v_contSeq_16438_);
v___x_16553_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00Lean_Elab_Term_Do_AltExpr_vars_spec__0___closed__1));
v___x_16554_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__23));
lean_inc(v___x_16510_);
v___x_16555_ = lean_alloc_ctor(2, 2, 0);
lean_ctor_set(v___x_16555_, 0, v___x_16510_);
lean_ctor_set(v___x_16555_, 1, v___x_16554_);
lean_inc(v___x_16510_);
v___x_16556_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16553_, v___x_16555_);
lean_inc(v___x_16510_);
v___x_16557_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v___x_16556_);
lean_inc(v___x_16510_);
v___x_16558_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16515_, v___x_16557_);
lean_inc(v___x_16510_);
v___x_16559_ = l_Lean_Syntax_node4(v___x_16510_, v___x_16545_, v___x_16547_, v___x_16558_, v___x_16551_, v_elseSeq_16428_);
lean_inc(v___x_16510_);
v___x_16560_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16515_, v___x_16552_, v___x_16559_);
lean_inc(v___x_16510_);
v___x_16561_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16544_, v___x_16560_);
lean_inc_ref_n(v___x_16522_, 3);
lean_inc(v___x_16510_);
v___x_16562_ = l_Lean_Syntax_node7(v___x_16510_, v___x_16536_, v___x_16538_, v___x_16522_, v___x_16522_, v___x_16522_, v___x_16541_, v___x_16543_, v___x_16561_);
lean_inc(v___x_16510_);
v___x_16563_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16516_, v___x_16562_, v___x_16522_);
lean_inc(v___x_16510_);
v___x_16564_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16515_, v___x_16535_, v___x_16563_);
lean_inc(v___x_16510_);
v___x_16565_ = l_Lean_Syntax_node1(v___x_16510_, v___x_16514_, v___x_16564_);
v___x_16566_ = l_Lean_Syntax_node2(v___x_16510_, v___x_16512_, v___x_16513_, v___x_16565_);
v_auxDo_16395_ = v___x_16566_;
v___y_16396_ = v___y_16431_;
v___y_16397_ = v___y_16432_;
v___y_16398_ = v___y_16433_;
v___y_16399_ = v___y_16434_;
v___y_16400_ = v___y_16435_;
v___y_16401_ = v___y_16436_;
v___y_16402_ = v___y_16437_;
goto v___jp_16394_;
}
}
}
else
{
lean_object* v___f_16585_; uint8_t v___x_16586_; lean_object* v___x_16587_; lean_object* v___x_16588_; lean_object* v___x_16589_; lean_object* v___f_16590_; lean_object* v___x_16591_; 
lean_dec(v_optElse_16426_);
v___f_16585_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0___boxed), 10, 1);
lean_closure_set(v___f_16585_, 0, v_doElems_16385_);
v___x_16586_ = l_Lean_Syntax_isNone(v_optType_16422_);
v___x_16587_ = lean_box(v___x_16586_);
v___x_16588_ = lean_box(v___x_16416_);
v___x_16589_ = lean_box(v___x_16414_);
v___f_16590_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___lam__1___boxed), 22, 19);
lean_closure_set(v___f_16590_, 0, v___x_16587_);
lean_closure_set(v___f_16590_, 1, v_optType_16422_);
lean_closure_set(v___f_16590_, 2, v___x_16419_);
lean_closure_set(v___f_16590_, 3, v___x_16421_);
lean_closure_set(v___f_16590_, 4, v_doLetArrow_16384_);
lean_closure_set(v___f_16590_, 5, v___x_16410_);
lean_closure_set(v___f_16590_, 6, v___x_16411_);
lean_closure_set(v___f_16590_, 7, v___x_16412_);
lean_closure_set(v___f_16590_, 8, v___x_16588_);
lean_closure_set(v___f_16590_, 9, v___x_16413_);
lean_closure_set(v___f_16590_, 10, v_doElem_16424_);
lean_closure_set(v___f_16590_, 11, v_pattern_16420_);
lean_closure_set(v___f_16590_, 12, v___f_16585_);
lean_closure_set(v___f_16590_, 13, v_a_16386_);
lean_closure_set(v___f_16590_, 14, v_a_16387_);
lean_closure_set(v___f_16590_, 15, v_a_16388_);
lean_closure_set(v___f_16590_, 16, v_a_16389_);
lean_closure_set(v___f_16590_, 17, v_a_16390_);
lean_closure_set(v___f_16590_, 18, v___x_16589_);
v___x_16591_ = l_Lean_Core_withFreshMacroScope___redArg(v___f_16590_, v_a_16391_, v_a_16392_);
return v___x_16591_;
}
}
}
else
{
lean_object* v___x_16592_; lean_object* v_y_16593_; lean_object* v___x_16594_; lean_object* v___x_16595_; lean_object* v___x_16596_; lean_object* v___x_16597_; 
lean_dec(v___x_16409_);
v___x_16592_ = lean_unsigned_to_nat(0u);
v_y_16593_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16592_);
v___x_16594_ = lean_unsigned_to_nat(1u);
v___x_16595_ = lean_mk_empty_array_with_capacity(v___x_16594_);
lean_inc(v_y_16593_);
v___x_16596_ = lean_array_push(v___x_16595_, v_y_16593_);
v___x_16597_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v___x_16596_, v_a_16386_, v_a_16387_, v_a_16388_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
if (lean_obj_tag(v___x_16597_) == 0)
{
uint8_t v___x_16598_; lean_object* v___x_16599_; lean_object* v___x_16600_; 
lean_dec_ref(v___x_16597_);
lean_inc(v_doLetArrow_16384_);
v___x_16598_ = l_Lean_Elab_Term_Do_isMutableLet(v_doLetArrow_16384_);
lean_inc(v_doElems_16385_);
v___x_16599_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___boxed), 9, 1);
lean_closure_set(v___x_16599_, 0, v_doElems_16385_);
lean_inc(v_a_16392_);
lean_inc_ref(v_a_16391_);
lean_inc(v_a_16390_);
lean_inc_ref(v_a_16389_);
lean_inc(v_a_16388_);
lean_inc_ref(v_a_16387_);
lean_inc_ref(v_a_16386_);
v___x_16600_ = l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(v___x_16596_, v___x_16598_, v___x_16599_, v_a_16386_, v_a_16387_, v_a_16388_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
if (lean_obj_tag(v___x_16600_) == 0)
{
lean_object* v_a_16601_; lean_object* v___x_16602_; lean_object* v___x_16603_; lean_object* v___x_16604_; 
v_a_16601_ = lean_ctor_get(v___x_16600_, 0);
lean_inc(v_a_16601_);
lean_dec_ref(v___x_16600_);
v___x_16602_ = lean_unsigned_to_nat(3u);
v___x_16603_ = l_Lean_Syntax_getArg(v_decl_16408_, v___x_16602_);
lean_dec(v_decl_16408_);
lean_inc(v___x_16603_);
v___x_16604_ = l_Lean_Elab_Term_Do_isDoExpr_x3f(v___x_16603_);
if (lean_obj_tag(v___x_16604_) == 0)
{
lean_object* v___x_16605_; 
lean_dec_ref(v___x_16596_);
lean_dec(v_doLetArrow_16384_);
lean_inc(v___x_16603_);
v___x_16605_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg(v___x_16603_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
if (lean_obj_tag(v___x_16605_) == 0)
{
lean_object* v___x_16606_; lean_object* v___x_16607_; lean_object* v___x_16608_; 
lean_dec_ref(v___x_16605_);
v___x_16606_ = lean_box(0);
v___x_16607_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_16607_, 0, v___x_16603_);
lean_ctor_set(v___x_16607_, 1, v___x_16606_);
lean_inc(v_a_16392_);
lean_inc_ref(v_a_16391_);
lean_inc(v_a_16390_);
lean_inc_ref(v_a_16389_);
lean_inc(v_a_16388_);
lean_inc_ref(v_a_16387_);
v___x_16608_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16607_, v_a_16386_, v_a_16387_, v_a_16388_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
if (lean_obj_tag(v___x_16608_) == 0)
{
if (lean_obj_tag(v_doElems_16385_) == 0)
{
lean_dec(v_a_16601_);
lean_dec(v_y_16593_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
return v___x_16608_;
}
else
{
lean_object* v_a_16609_; lean_object* v_head_16610_; lean_object* v___x_16611_; lean_object* v___x_16612_; 
v_a_16609_ = lean_ctor_get(v___x_16608_, 0);
lean_inc(v_a_16609_);
lean_dec_ref(v___x_16608_);
v_head_16610_ = lean_ctor_get(v_doElems_16385_, 0);
lean_inc(v_head_16610_);
lean_dec_ref(v_doElems_16385_);
v___x_16611_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16611_, 0, v_y_16593_);
v___x_16612_ = l_Lean_Elab_Term_Do_concat(v_a_16609_, v_head_16610_, v___x_16611_, v_a_16601_, v_a_16387_, v_a_16388_, v_a_16389_, v_a_16390_, v_a_16391_, v_a_16392_);
lean_dec(v_head_16610_);
return v___x_16612_;
}
}
else
{
lean_dec(v_a_16601_);
lean_dec(v_y_16593_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec(v_doElems_16385_);
return v___x_16608_;
}
}
else
{
lean_object* v_a_16613_; lean_object* v___x_16614_; 
lean_dec(v___x_16603_);
lean_dec(v_a_16601_);
lean_dec(v_y_16593_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
v_a_16613_ = lean_ctor_get(v___x_16605_, 0);
lean_inc(v_a_16613_);
lean_dec_ref(v___x_16605_);
v___x_16614_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16614_, 0, v_a_16613_);
return v___x_16614_;
}
}
else
{
lean_object* v___x_16615_; lean_object* v___x_16616_; 
lean_dec_ref(v___x_16604_);
lean_dec(v___x_16603_);
lean_dec(v_y_16593_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
v___x_16615_ = l_Lean_Elab_Term_Do_mkVarDeclCore(v___x_16596_, v_doLetArrow_16384_, v_a_16601_);
v___x_16616_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16616_, 0, v___x_16615_);
return v___x_16616_;
}
}
else
{
lean_dec_ref(v___x_16596_);
lean_dec(v_y_16593_);
lean_dec(v_decl_16408_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
lean_dec(v_doLetArrow_16384_);
return v___x_16600_;
}
}
else
{
lean_object* v_a_16617_; lean_object* v___x_16618_; 
lean_dec_ref(v___x_16596_);
lean_dec(v_y_16593_);
lean_dec(v_decl_16408_);
lean_dec(v_a_16392_);
lean_dec_ref(v_a_16391_);
lean_dec(v_a_16390_);
lean_dec_ref(v_a_16389_);
lean_dec(v_a_16388_);
lean_dec_ref(v_a_16387_);
lean_dec_ref(v_a_16386_);
lean_dec(v_doElems_16385_);
lean_dec(v_doLetArrow_16384_);
v_a_16617_ = lean_ctor_get(v___x_16597_, 0);
lean_inc(v_a_16617_);
lean_dec_ref(v___x_16597_);
v___x_16618_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16618_, 0, v_a_16617_);
return v___x_16618_;
}
}
v___jp_16394_:
{
lean_object* v___x_16403_; lean_object* v___x_16404_; lean_object* v___x_16405_; lean_object* v___x_16406_; 
v___x_16403_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v_auxDo_16395_);
lean_dec(v_auxDo_16395_);
v___x_16404_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_16403_);
v___x_16405_ = l_List_appendTR___redArg(v___x_16404_, v_doElems_16385_);
v___x_16406_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16405_, v___y_16396_, v___y_16397_, v___y_16398_, v___y_16399_, v___y_16400_, v___y_16401_, v___y_16402_);
return v___x_16406_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(lean_object* v_x_16619_, lean_object* v_a_16620_, lean_object* v_a_16621_, lean_object* v_a_16622_, lean_object* v_a_16623_, lean_object* v_a_16624_, lean_object* v_a_16625_, lean_object* v_a_16626_){
_start:
{
if (lean_obj_tag(v_x_16619_) == 0)
{
lean_object* v___x_16628_; lean_object* v___x_16629_; 
v___x_16628_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_mkPureUnitAction), 2, 0);
v___x_16629_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_16628_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v_a_16625_, v_a_16626_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
return v___x_16629_;
}
else
{
lean_object* v_head_16630_; lean_object* v_tail_16631_; lean_object* v_doElem_16633_; lean_object* v___y_16634_; lean_object* v___y_16635_; lean_object* v___y_16636_; lean_object* v___y_16637_; lean_object* v___y_16638_; lean_object* v___y_16639_; lean_object* v___y_16640_; lean_object* v_fileName_16643_; lean_object* v_fileMap_16644_; lean_object* v_options_16645_; lean_object* v_currRecDepth_16646_; lean_object* v_maxRecDepth_16647_; lean_object* v_ref_16648_; lean_object* v_currNamespace_16649_; lean_object* v_openDecls_16650_; lean_object* v_initHeartbeats_16651_; lean_object* v_maxHeartbeats_16652_; lean_object* v_quotContext_16653_; lean_object* v_currMacroScope_16654_; uint8_t v_diag_16655_; lean_object* v_cancelTk_x3f_16656_; uint8_t v_suppressElabErrors_16657_; lean_object* v_inheritedTraceOptions_16658_; uint8_t v___x_16659_; 
v_head_16630_ = lean_ctor_get(v_x_16619_, 0);
lean_inc(v_head_16630_);
v_tail_16631_ = lean_ctor_get(v_x_16619_, 1);
lean_inc(v_tail_16631_);
lean_dec_ref(v_x_16619_);
v_fileName_16643_ = lean_ctor_get(v_a_16625_, 0);
lean_inc_ref(v_fileName_16643_);
v_fileMap_16644_ = lean_ctor_get(v_a_16625_, 1);
lean_inc_ref(v_fileMap_16644_);
v_options_16645_ = lean_ctor_get(v_a_16625_, 2);
lean_inc_ref(v_options_16645_);
v_currRecDepth_16646_ = lean_ctor_get(v_a_16625_, 3);
lean_inc(v_currRecDepth_16646_);
v_maxRecDepth_16647_ = lean_ctor_get(v_a_16625_, 4);
lean_inc(v_maxRecDepth_16647_);
v_ref_16648_ = lean_ctor_get(v_a_16625_, 5);
lean_inc(v_ref_16648_);
v_currNamespace_16649_ = lean_ctor_get(v_a_16625_, 6);
lean_inc(v_currNamespace_16649_);
v_openDecls_16650_ = lean_ctor_get(v_a_16625_, 7);
lean_inc(v_openDecls_16650_);
v_initHeartbeats_16651_ = lean_ctor_get(v_a_16625_, 8);
lean_inc(v_initHeartbeats_16651_);
v_maxHeartbeats_16652_ = lean_ctor_get(v_a_16625_, 9);
lean_inc(v_maxHeartbeats_16652_);
v_quotContext_16653_ = lean_ctor_get(v_a_16625_, 10);
lean_inc(v_quotContext_16653_);
v_currMacroScope_16654_ = lean_ctor_get(v_a_16625_, 11);
lean_inc(v_currMacroScope_16654_);
v_diag_16655_ = lean_ctor_get_uint8(v_a_16625_, sizeof(void*)*14);
v_cancelTk_x3f_16656_ = lean_ctor_get(v_a_16625_, 12);
lean_inc(v_cancelTk_x3f_16656_);
v_suppressElabErrors_16657_ = lean_ctor_get_uint8(v_a_16625_, sizeof(void*)*14 + 1);
v_inheritedTraceOptions_16658_ = lean_ctor_get(v_a_16625_, 13);
lean_inc_ref(v_inheritedTraceOptions_16658_);
lean_dec_ref(v_a_16625_);
v___x_16659_ = lean_nat_dec_eq(v_currRecDepth_16646_, v_maxRecDepth_16647_);
if (v___x_16659_ == 0)
{
lean_object* v___x_16660_; lean_object* v___x_16661_; lean_object* v___x_16662_; lean_object* v_ref_16663_; lean_object* v___x_16664_; lean_object* v___x_16665_; 
v___x_16660_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__0));
v___x_16661_ = lean_unsigned_to_nat(1u);
v___x_16662_ = lean_nat_add(v_currRecDepth_16646_, v___x_16661_);
lean_dec(v_currRecDepth_16646_);
v_ref_16663_ = l_Lean_replaceRef(v_head_16630_, v_ref_16648_);
lean_dec(v_ref_16648_);
v___x_16664_ = lean_alloc_ctor(0, 14, 2);
lean_ctor_set(v___x_16664_, 0, v_fileName_16643_);
lean_ctor_set(v___x_16664_, 1, v_fileMap_16644_);
lean_ctor_set(v___x_16664_, 2, v_options_16645_);
lean_ctor_set(v___x_16664_, 3, v___x_16662_);
lean_ctor_set(v___x_16664_, 4, v_maxRecDepth_16647_);
lean_ctor_set(v___x_16664_, 5, v_ref_16663_);
lean_ctor_set(v___x_16664_, 6, v_currNamespace_16649_);
lean_ctor_set(v___x_16664_, 7, v_openDecls_16650_);
lean_ctor_set(v___x_16664_, 8, v_initHeartbeats_16651_);
lean_ctor_set(v___x_16664_, 9, v_maxHeartbeats_16652_);
lean_ctor_set(v___x_16664_, 10, v_quotContext_16653_);
lean_ctor_set(v___x_16664_, 11, v_currMacroScope_16654_);
lean_ctor_set(v___x_16664_, 12, v_cancelTk_x3f_16656_);
lean_ctor_set(v___x_16664_, 13, v_inheritedTraceOptions_16658_);
lean_ctor_set_uint8(v___x_16664_, sizeof(void*)*14, v_diag_16655_);
lean_ctor_set_uint8(v___x_16664_, sizeof(void*)*14 + 1, v_suppressElabErrors_16657_);
v___x_16665_ = l_Lean_Core_checkSystem(v___x_16660_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16665_) == 0)
{
lean_object* v___x_16666_; lean_object* v___x_16667_; 
lean_dec_ref(v___x_16665_);
lean_inc(v_head_16630_);
v___x_16666_ = lean_alloc_closure((void*)(l_Lean_Macro_expandMacro_x3f), 3, 1);
lean_closure_set(v___x_16666_, 0, v_head_16630_);
lean_inc_ref(v___x_16664_);
v___x_16667_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_16666_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16667_) == 0)
{
lean_object* v_a_16668_; 
v_a_16668_ = lean_ctor_get(v___x_16667_, 0);
lean_inc(v_a_16668_);
lean_dec_ref(v___x_16667_);
if (lean_obj_tag(v_a_16668_) == 0)
{
lean_object* v___x_16669_; lean_object* v___x_16670_; 
lean_inc(v_head_16630_);
v___x_16669_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f), 3, 1);
lean_closure_set(v___x_16669_, 0, v_head_16630_);
lean_inc_ref(v___x_16664_);
v___x_16670_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_16669_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16670_) == 0)
{
lean_object* v_a_16671_; 
v_a_16671_ = lean_ctor_get(v___x_16670_, 0);
lean_inc(v_a_16671_);
lean_dec_ref(v___x_16670_);
if (lean_obj_tag(v_a_16671_) == 0)
{
lean_object* v___x_16672_; lean_object* v___x_16673_; 
lean_inc(v_tail_16631_);
lean_inc(v_head_16630_);
v___x_16672_ = lean_alloc_closure((void*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___boxed), 4, 2);
lean_closure_set(v___x_16672_, 0, v_head_16630_);
lean_closure_set(v___x_16672_, 1, v_tail_16631_);
lean_inc_ref(v___x_16664_);
v___x_16673_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0___redArg(v___x_16672_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16673_) == 0)
{
lean_object* v_a_16674_; 
v_a_16674_ = lean_ctor_get(v___x_16673_, 0);
lean_inc(v_a_16674_);
lean_dec_ref(v___x_16673_);
if (lean_obj_tag(v_a_16674_) == 0)
{
lean_object* v___x_16675_; 
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
lean_inc_ref(v_a_16620_);
v___x_16675_ = l_Lean_Elab_Term_Do_ToCodeBlock_expandLiftMethod(v_head_16630_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16675_) == 0)
{
lean_object* v_a_16676_; lean_object* v_fst_16677_; lean_object* v_snd_16678_; uint8_t v___x_16685_; 
v_a_16676_ = lean_ctor_get(v___x_16675_, 0);
lean_inc(v_a_16676_);
lean_dec_ref(v___x_16675_);
v_fst_16677_ = lean_ctor_get(v_a_16676_, 0);
lean_inc(v_fst_16677_);
v_snd_16678_ = lean_ctor_get(v_a_16676_, 1);
lean_inc(v_snd_16678_);
lean_dec(v_a_16676_);
v___x_16685_ = l_List_isEmpty___redArg(v_fst_16677_);
if (v___x_16685_ == 0)
{
goto v___jp_16679_;
}
else
{
if (v___x_16659_ == 0)
{
lean_object* v___x_16686_; lean_object* v___x_16687_; uint8_t v___x_16688_; 
lean_dec(v_fst_16677_);
lean_inc(v_snd_16678_);
v___x_16686_ = l_Lean_Syntax_getKind(v_snd_16678_);
v___x_16687_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__7));
v___x_16688_ = lean_name_eq(v___x_16686_, v___x_16687_);
if (v___x_16688_ == 0)
{
lean_object* v___x_16689_; uint8_t v___x_16690_; 
v___x_16689_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_declToTerm___closed__1));
v___x_16690_ = lean_name_eq(v___x_16686_, v___x_16689_);
if (v___x_16690_ == 0)
{
lean_object* v___x_16691_; uint8_t v___x_16692_; 
v___x_16691_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__1));
v___x_16692_ = lean_name_eq(v___x_16686_, v___x_16691_);
if (v___x_16692_ == 0)
{
lean_object* v___x_16693_; uint8_t v___x_16694_; 
v___x_16693_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_reassignToTerm___closed__1));
v___x_16694_ = lean_name_eq(v___x_16686_, v___x_16693_);
if (v___x_16694_ == 0)
{
lean_object* v___x_16695_; uint8_t v___x_16696_; 
v___x_16695_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_liftMethodForbiddenBinder___closed__9));
v___x_16696_ = lean_name_eq(v___x_16686_, v___x_16695_);
if (v___x_16696_ == 0)
{
lean_object* v___x_16697_; uint8_t v___x_16698_; 
v___x_16697_ = ((lean_object*)(l_Lean_Elab_Term_Do_isMutableLet___closed__1));
v___x_16698_ = lean_name_eq(v___x_16686_, v___x_16697_);
if (v___x_16698_ == 0)
{
lean_object* v___x_16699_; uint8_t v___x_16700_; 
v___x_16699_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_checkLetArrowRHS___redArg___closed__5));
v___x_16700_ = lean_name_eq(v___x_16686_, v___x_16699_);
if (v___x_16700_ == 0)
{
lean_object* v___x_16701_; uint8_t v___x_16702_; 
v___x_16701_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__1));
v___x_16702_ = lean_name_eq(v___x_16686_, v___x_16701_);
if (v___x_16702_ == 0)
{
lean_object* v___x_16703_; uint8_t v___x_16704_; 
v___x_16703_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__2));
v___x_16704_ = lean_name_eq(v___x_16686_, v___x_16703_);
if (v___x_16704_ == 0)
{
lean_object* v___x_16705_; uint8_t v___x_16706_; 
v___x_16705_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__15));
v___x_16706_ = lean_name_eq(v___x_16686_, v___x_16705_);
if (v___x_16706_ == 0)
{
lean_object* v___x_16707_; uint8_t v___x_16708_; 
v___x_16707_ = ((lean_object*)(l___private_Init_Data_Array_Basic_0__Array_forIn_x27Unsafe_loop___at___00__private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoIf_x3f_spec__3___closed__14));
v___x_16708_ = lean_name_eq(v___x_16686_, v___x_16707_);
if (v___x_16708_ == 0)
{
lean_object* v___x_16709_; uint8_t v___x_16710_; 
v___x_16709_ = ((lean_object*)(l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_Do_expandDoLetExpr_x3f___closed__7));
v___x_16710_ = lean_name_eq(v___x_16686_, v___x_16709_);
if (v___x_16710_ == 0)
{
lean_object* v___x_16711_; uint8_t v___x_16712_; 
v___x_16711_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__4));
v___x_16712_ = lean_name_eq(v___x_16686_, v___x_16711_);
if (v___x_16712_ == 0)
{
lean_object* v___x_16713_; uint8_t v___x_16714_; 
v___x_16713_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__13));
v___x_16714_ = lean_name_eq(v___x_16686_, v___x_16713_);
if (v___x_16714_ == 0)
{
lean_object* v___x_16715_; uint8_t v___x_16716_; 
v___x_16715_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__17));
v___x_16716_ = lean_name_eq(v___x_16686_, v___x_16715_);
if (v___x_16716_ == 0)
{
lean_object* v___x_16717_; uint8_t v___x_16718_; 
v___x_16717_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_matchNestedTermResult___closed__19));
v___x_16718_ = lean_name_eq(v___x_16686_, v___x_16717_);
if (v___x_16718_ == 0)
{
lean_object* v___x_16719_; uint8_t v___x_16720_; 
v___x_16719_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__1));
v___x_16720_ = lean_name_eq(v___x_16686_, v___x_16719_);
if (v___x_16720_ == 0)
{
lean_object* v___x_16721_; uint8_t v___x_16722_; 
v___x_16721_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__3));
v___x_16722_ = lean_name_eq(v___x_16686_, v___x_16721_);
if (v___x_16722_ == 0)
{
lean_object* v___x_16723_; uint8_t v___x_16724_; 
v___x_16723_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToTerm_seqToTerm___closed__5));
v___x_16724_ = lean_name_eq(v___x_16686_, v___x_16723_);
if (v___x_16724_ == 0)
{
lean_object* v___x_16725_; uint8_t v___x_16726_; 
v___x_16725_ = ((lean_object*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___lam__2___closed__31));
v___x_16726_ = lean_name_eq(v___x_16686_, v___x_16725_);
if (v___x_16726_ == 0)
{
lean_object* v___x_16727_; uint8_t v___x_16728_; 
v___x_16727_ = ((lean_object*)(l_Lean_Elab_Term_Do_mkAuxDeclFor___redArg___lam__0___closed__10));
v___x_16728_ = lean_name_eq(v___x_16686_, v___x_16727_);
if (v___x_16728_ == 0)
{
lean_object* v___x_16729_; lean_object* v___x_16730_; lean_object* v___x_16731_; lean_object* v___x_16732_; lean_object* v___x_16733_; lean_object* v___x_16734_; lean_object* v___x_16735_; lean_object* v___x_16736_; 
lean_dec(v_tail_16631_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v___x_16729_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6, &l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__6);
v___x_16730_ = l_Lean_MessageData_ofName(v___x_16686_);
v___x_16731_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_16731_, 0, v___x_16729_);
lean_ctor_set(v___x_16731_, 1, v___x_16730_);
v___x_16732_ = lean_obj_once(&l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8, &l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8_once, _init_l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___closed__8);
v___x_16733_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_16733_, 0, v___x_16731_);
lean_ctor_set(v___x_16733_, 1, v___x_16732_);
v___x_16734_ = l_Lean_MessageData_ofSyntax(v_snd_16678_);
v___x_16735_ = lean_alloc_ctor(7, 2, 0);
lean_ctor_set(v___x_16735_, 0, v___x_16733_);
lean_ctor_set(v___x_16735_, 1, v___x_16734_);
v___x_16736_ = l_Lean_throwError___at___00Lean_Elab_Term_Do_ToCodeBlock_checkReassignable_spec__0___redArg(v___x_16735_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec(v_a_16626_);
lean_dec_ref(v___x_16664_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
return v___x_16736_;
}
else
{
lean_object* v___x_16737_; lean_object* v___x_16738_; uint8_t v___x_16739_; 
lean_dec(v___x_16686_);
v___x_16737_ = lean_unsigned_to_nat(0u);
v___x_16738_ = l_Lean_Syntax_getArg(v_snd_16678_, v___x_16737_);
lean_dec(v_snd_16678_);
v___x_16739_ = l_List_isEmpty___redArg(v_tail_16631_);
if (v___x_16739_ == 0)
{
lean_object* v___x_16740_; 
v___x_16740_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16740_) == 0)
{
lean_object* v_a_16741_; lean_object* v___x_16742_; lean_object* v___x_16743_; 
v_a_16741_ = lean_ctor_get(v___x_16740_, 0);
lean_inc(v_a_16741_);
lean_dec_ref(v___x_16740_);
v___x_16742_ = l_Lean_Elab_Term_Do_mkSeq(v___x_16738_, v_a_16741_);
lean_dec(v_a_16741_);
v___x_16743_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16743_, 0, v___x_16742_);
return v___x_16743_;
}
else
{
lean_dec(v___x_16738_);
return v___x_16740_;
}
}
else
{
lean_object* v___x_16744_; lean_object* v___x_16745_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v___x_16744_ = l_Lean_Elab_Term_Do_mkTerminalAction(v___x_16738_);
v___x_16745_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16745_, 0, v___x_16744_);
return v___x_16745_;
}
}
}
else
{
lean_object* v___x_16746_; lean_object* v___x_16747_; lean_object* v___x_16748_; 
lean_dec(v___x_16686_);
v___x_16746_ = l_Lean_Syntax_getArg(v_snd_16678_, v___x_16661_);
lean_dec(v_snd_16678_);
v___x_16747_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_16746_);
v___x_16748_ = l_List_appendTR___redArg(v___x_16747_, v_tail_16631_);
v_x_16619_ = v___x_16748_;
v_a_16625_ = v___x_16664_;
goto _start;
}
}
else
{
lean_object* v___x_16750_; 
lean_dec(v___x_16686_);
v___x_16750_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16750_) == 0)
{
lean_object* v_a_16751_; lean_object* v___x_16752_; lean_object* v___x_16753_; 
v_a_16751_ = lean_ctor_get(v___x_16750_, 0);
lean_inc(v_a_16751_);
lean_dec_ref(v___x_16750_);
v___x_16752_ = l_Lean_Elab_Term_Do_mkSeq(v_snd_16678_, v_a_16751_);
lean_dec(v_a_16751_);
v___x_16753_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16753_, 0, v___x_16752_);
return v___x_16753_;
}
else
{
lean_dec(v_snd_16678_);
return v___x_16750_;
}
}
}
else
{
lean_object* v___x_16754_; 
lean_dec(v___x_16686_);
v___x_16754_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16754_) == 0)
{
lean_object* v_a_16755_; lean_object* v___x_16756_; lean_object* v___x_16757_; 
v_a_16755_ = lean_ctor_get(v___x_16754_, 0);
lean_inc(v_a_16755_);
lean_dec_ref(v___x_16754_);
v___x_16756_ = l_Lean_Elab_Term_Do_mkSeq(v_snd_16678_, v_a_16755_);
lean_dec(v_a_16755_);
v___x_16757_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16757_, 0, v___x_16756_);
return v___x_16757_;
}
else
{
lean_dec(v_snd_16678_);
return v___x_16754_;
}
}
}
else
{
lean_object* v___x_16758_; 
lean_dec(v___x_16686_);
v___x_16758_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16758_) == 0)
{
lean_object* v_a_16759_; lean_object* v___x_16760_; lean_object* v___x_16761_; 
v_a_16759_ = lean_ctor_get(v___x_16758_, 0);
lean_inc(v_a_16759_);
lean_dec_ref(v___x_16758_);
v___x_16760_ = l_Lean_Elab_Term_Do_mkSeq(v_snd_16678_, v_a_16759_);
lean_dec(v_a_16759_);
v___x_16761_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16761_, 0, v___x_16760_);
return v___x_16761_;
}
else
{
lean_dec(v_snd_16678_);
return v___x_16758_;
}
}
}
else
{
lean_object* v___x_16762_; 
lean_dec(v___x_16686_);
v___x_16762_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReturnToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec(v_a_16626_);
lean_dec_ref(v___x_16664_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
lean_dec(v_tail_16631_);
lean_dec(v_snd_16678_);
return v___x_16762_;
}
}
else
{
lean_object* v___x_16763_; 
lean_dec(v___x_16686_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
v___x_16763_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(v_a_16620_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec_ref(v_a_16620_);
if (lean_obj_tag(v___x_16763_) == 0)
{
lean_object* v___x_16764_; 
lean_dec_ref(v___x_16763_);
v___x_16764_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(v_tail_16631_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec(v_a_16626_);
lean_dec_ref(v___x_16664_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_tail_16631_);
if (lean_obj_tag(v___x_16764_) == 0)
{
lean_object* v___x_16765_; lean_object* v___x_16766_; 
lean_dec_ref(v___x_16764_);
v___x_16765_ = l_Lean_Elab_Term_Do_mkContinue(v_snd_16678_);
v___x_16766_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16766_, 0, v___x_16765_);
return v___x_16766_;
}
else
{
lean_object* v_a_16767_; lean_object* v___x_16768_; 
lean_dec(v_snd_16678_);
v_a_16767_ = lean_ctor_get(v___x_16764_, 0);
lean_inc(v_a_16767_);
lean_dec_ref(v___x_16764_);
v___x_16768_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16768_, 0, v_a_16767_);
return v___x_16768_;
}
}
else
{
lean_object* v_a_16769_; lean_object* v___x_16770_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
v_a_16769_ = lean_ctor_get(v___x_16763_, 0);
lean_inc(v_a_16769_);
lean_dec_ref(v___x_16763_);
v___x_16770_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16770_, 0, v_a_16769_);
return v___x_16770_;
}
}
}
else
{
lean_object* v___x_16771_; 
lean_dec(v___x_16686_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
v___x_16771_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureInsideFor___redArg(v_a_16620_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec_ref(v_a_16620_);
if (lean_obj_tag(v___x_16771_) == 0)
{
lean_object* v___x_16772_; 
lean_dec_ref(v___x_16771_);
v___x_16772_ = l_Lean_Elab_Term_Do_ToCodeBlock_ensureEOS___redArg(v_tail_16631_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec(v_a_16626_);
lean_dec_ref(v___x_16664_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_tail_16631_);
if (lean_obj_tag(v___x_16772_) == 0)
{
lean_object* v___x_16773_; lean_object* v___x_16774_; 
lean_dec_ref(v___x_16772_);
v___x_16773_ = l_Lean_Elab_Term_Do_mkBreak(v_snd_16678_);
v___x_16774_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16774_, 0, v___x_16773_);
return v___x_16774_;
}
else
{
lean_object* v_a_16775_; lean_object* v___x_16776_; 
lean_dec(v_snd_16678_);
v_a_16775_ = lean_ctor_get(v___x_16772_, 0);
lean_inc(v_a_16775_);
lean_dec_ref(v___x_16772_);
v___x_16776_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16776_, 0, v_a_16775_);
return v___x_16776_;
}
}
else
{
lean_object* v_a_16777_; lean_object* v___x_16778_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
v_a_16777_ = lean_ctor_get(v___x_16771_, 0);
lean_inc(v_a_16777_);
lean_dec_ref(v___x_16771_);
v___x_16778_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16778_, 0, v_a_16777_);
return v___x_16778_;
}
}
}
else
{
lean_object* v___x_16779_; 
lean_dec(v___x_16686_);
v___x_16779_ = l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16779_;
}
}
else
{
lean_object* v___x_16780_; 
lean_dec(v___x_16686_);
v___x_16780_ = l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16780_;
}
}
else
{
lean_object* v___x_16781_; 
lean_dec(v___x_16686_);
v___x_16781_ = l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16781_;
}
}
else
{
lean_object* v___x_16782_; lean_object* v___x_16783_; 
lean_dec(v___x_16686_);
v___x_16782_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doForToCode___boxed), 10, 7);
lean_closure_set(v___x_16782_, 0, v_snd_16678_);
lean_closure_set(v___x_16782_, 1, v_tail_16631_);
lean_closure_set(v___x_16782_, 2, v_a_16620_);
lean_closure_set(v___x_16782_, 3, v_a_16621_);
lean_closure_set(v___x_16782_, 4, v_a_16622_);
lean_closure_set(v___x_16782_, 5, v_a_16623_);
lean_closure_set(v___x_16782_, 6, v_a_16624_);
v___x_16783_ = l_Lean_Core_withFreshMacroScope___redArg(v___x_16782_, v___x_16664_, v_a_16626_);
return v___x_16783_;
}
}
else
{
lean_object* v___x_16784_; 
lean_dec(v___x_16686_);
v___x_16784_ = l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec_ref(v___x_16664_);
lean_dec(v_snd_16678_);
return v___x_16784_;
}
}
else
{
lean_object* v___x_16785_; 
lean_dec(v___x_16686_);
v___x_16785_ = l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16785_;
}
}
else
{
lean_object* v___x_16786_; 
lean_dec(v___x_16686_);
v___x_16786_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
lean_dec(v_snd_16678_);
return v___x_16786_;
}
}
else
{
lean_object* v___x_16787_; 
lean_dec(v___x_16686_);
v___x_16787_ = l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16787_;
}
}
else
{
lean_object* v___x_16788_; 
lean_dec(v___x_16686_);
v___x_16788_ = l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode(v_snd_16678_, v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16788_;
}
}
else
{
lean_object* v___x_16789_; 
lean_dec(v___x_16686_);
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
v___x_16789_ = l_Lean_Elab_Term_Do_getDoReassignVars(v_snd_16678_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16789_) == 0)
{
lean_object* v_a_16790_; lean_object* v___x_16791_; 
v_a_16790_ = lean_ctor_get(v___x_16789_, 0);
lean_inc(v_a_16790_);
lean_dec_ref(v___x_16789_);
v___x_16791_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkReassignable(v_a_16790_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16791_) == 0)
{
lean_object* v___x_16792_; 
lean_dec_ref(v___x_16791_);
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
v___x_16792_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16792_) == 0)
{
lean_object* v_a_16793_; lean_object* v___x_16794_; 
v_a_16793_ = lean_ctor_get(v___x_16792_, 0);
lean_inc(v_a_16793_);
lean_dec_ref(v___x_16792_);
v___x_16794_ = l_Lean_Elab_Term_Do_mkReassignCore(v_a_16790_, v_snd_16678_, v_a_16793_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
return v___x_16794_;
}
else
{
lean_dec(v_a_16790_);
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
return v___x_16792_;
}
}
else
{
lean_object* v_a_16795_; lean_object* v___x_16796_; 
lean_dec(v_a_16790_);
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16795_ = lean_ctor_get(v___x_16791_, 0);
lean_inc(v_a_16795_);
lean_dec_ref(v___x_16791_);
v___x_16796_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16796_, 0, v_a_16795_);
return v___x_16796_;
}
}
else
{
lean_object* v_a_16797_; lean_object* v___x_16798_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16797_ = lean_ctor_get(v___x_16789_, 0);
lean_inc(v_a_16797_);
lean_dec_ref(v___x_16789_);
v___x_16798_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16798_, 0, v_a_16797_);
return v___x_16798_;
}
}
}
else
{
lean_object* v___x_16799_; 
lean_dec(v___x_16686_);
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
v___x_16799_ = l_Lean_Elab_Term_Do_getDoLetRecVars(v_snd_16678_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16799_) == 0)
{
lean_object* v_a_16800_; lean_object* v___x_16801_; 
v_a_16800_ = lean_ctor_get(v___x_16799_, 0);
lean_inc(v_a_16800_);
lean_dec_ref(v___x_16799_);
v___x_16801_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_a_16800_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16801_) == 0)
{
lean_object* v___x_16802_; 
lean_dec_ref(v___x_16801_);
v___x_16802_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16802_) == 0)
{
lean_object* v_a_16803_; lean_object* v___x_16804_; lean_object* v___x_16805_; 
v_a_16803_ = lean_ctor_get(v___x_16802_, 0);
lean_inc(v_a_16803_);
lean_dec_ref(v___x_16802_);
v___x_16804_ = l_Lean_Elab_Term_Do_mkVarDeclCore(v_a_16800_, v_snd_16678_, v_a_16803_);
v___x_16805_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16805_, 0, v___x_16804_);
return v___x_16805_;
}
else
{
lean_dec(v_a_16800_);
lean_dec(v_snd_16678_);
return v___x_16802_;
}
}
else
{
lean_object* v_a_16806_; lean_object* v___x_16807_; 
lean_dec(v_a_16800_);
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16806_ = lean_ctor_get(v___x_16801_, 0);
lean_inc(v_a_16806_);
lean_dec_ref(v___x_16801_);
v___x_16807_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16807_, 0, v_a_16806_);
return v___x_16807_;
}
}
else
{
lean_object* v_a_16808_; lean_object* v___x_16809_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16808_ = lean_ctor_get(v___x_16799_, 0);
lean_inc(v_a_16808_);
lean_dec_ref(v___x_16799_);
v___x_16809_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16809_, 0, v_a_16808_);
return v___x_16809_;
}
}
}
else
{
lean_object* v___x_16810_; 
lean_dec(v___x_16686_);
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
v___x_16810_ = l_Lean_Elab_Term_Do_getDoHaveVars(v_snd_16678_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16810_) == 0)
{
lean_object* v_a_16811_; lean_object* v___x_16812_; 
v_a_16811_ = lean_ctor_get(v___x_16810_, 0);
lean_inc(v_a_16811_);
lean_dec_ref(v___x_16810_);
v___x_16812_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_a_16811_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16812_) == 0)
{
lean_object* v___x_16813_; 
lean_dec_ref(v___x_16812_);
v___x_16813_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v_tail_16631_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16813_) == 0)
{
lean_object* v_a_16814_; lean_object* v___x_16815_; lean_object* v___x_16816_; 
v_a_16814_ = lean_ctor_get(v___x_16813_, 0);
lean_inc(v_a_16814_);
lean_dec_ref(v___x_16813_);
v___x_16815_ = l_Lean_Elab_Term_Do_mkVarDeclCore(v_a_16811_, v_snd_16678_, v_a_16814_);
v___x_16816_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16816_, 0, v___x_16815_);
return v___x_16816_;
}
else
{
lean_dec(v_a_16811_);
lean_dec(v_snd_16678_);
return v___x_16813_;
}
}
else
{
lean_object* v_a_16817_; lean_object* v___x_16818_; 
lean_dec(v_a_16811_);
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16817_ = lean_ctor_get(v___x_16812_, 0);
lean_inc(v_a_16817_);
lean_dec_ref(v___x_16812_);
v___x_16818_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16818_, 0, v_a_16817_);
return v___x_16818_;
}
}
else
{
lean_object* v_a_16819_; lean_object* v___x_16820_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16819_ = lean_ctor_get(v___x_16810_, 0);
lean_inc(v_a_16819_);
lean_dec_ref(v___x_16810_);
v___x_16820_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16820_, 0, v_a_16819_);
return v___x_16820_;
}
}
}
else
{
lean_object* v___x_16821_; 
lean_dec(v___x_16686_);
lean_inc(v_a_16626_);
lean_inc_ref(v___x_16664_);
lean_inc(v_a_16624_);
lean_inc_ref(v_a_16623_);
lean_inc(v_a_16622_);
lean_inc_ref(v_a_16621_);
v___x_16821_ = l_Lean_Elab_Term_Do_getDoLetVars(v_snd_16678_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16821_) == 0)
{
lean_object* v_a_16822_; lean_object* v___x_16823_; 
v_a_16822_ = lean_ctor_get(v___x_16821_, 0);
lean_inc(v_a_16822_);
lean_dec_ref(v___x_16821_);
v___x_16823_ = l_Lean_Elab_Term_Do_ToCodeBlock_checkNotShadowingMutable(v_a_16822_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16823_) == 0)
{
uint8_t v___x_16824_; lean_object* v___x_16825_; lean_object* v___x_16826_; 
lean_dec_ref(v___x_16823_);
lean_inc(v_snd_16678_);
v___x_16824_ = l_Lean_Elab_Term_Do_isMutableLet(v_snd_16678_);
v___x_16825_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode___boxed), 9, 1);
lean_closure_set(v___x_16825_, 0, v_tail_16631_);
v___x_16826_ = l_Lean_Elab_Term_Do_ToCodeBlock_withNewMutableVars___redArg(v_a_16822_, v___x_16824_, v___x_16825_, v_a_16620_, v_a_16621_, v_a_16622_, v_a_16623_, v_a_16624_, v___x_16664_, v_a_16626_);
if (lean_obj_tag(v___x_16826_) == 0)
{
lean_object* v_a_16827_; lean_object* v___x_16828_; lean_object* v___x_16829_; 
v_a_16827_ = lean_ctor_get(v___x_16826_, 0);
lean_inc(v_a_16827_);
lean_dec_ref(v___x_16826_);
v___x_16828_ = l_Lean_Elab_Term_Do_mkVarDeclCore(v_a_16822_, v_snd_16678_, v_a_16827_);
v___x_16829_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_16829_, 0, v___x_16828_);
return v___x_16829_;
}
else
{
lean_dec(v_a_16822_);
lean_dec(v_snd_16678_);
return v___x_16826_;
}
}
else
{
lean_object* v_a_16830_; lean_object* v___x_16831_; 
lean_dec(v_a_16822_);
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16830_ = lean_ctor_get(v___x_16823_, 0);
lean_inc(v_a_16830_);
lean_dec_ref(v___x_16823_);
v___x_16831_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16831_, 0, v_a_16830_);
return v___x_16831_;
}
}
else
{
lean_object* v_a_16832_; lean_object* v___x_16833_; 
lean_dec(v_snd_16678_);
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16832_ = lean_ctor_get(v___x_16821_, 0);
lean_inc(v_a_16832_);
lean_dec_ref(v___x_16821_);
v___x_16833_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16833_, 0, v_a_16832_);
return v___x_16833_;
}
}
}
else
{
goto v___jp_16679_;
}
}
v___jp_16679_:
{
lean_object* v___x_16680_; lean_object* v___x_16681_; lean_object* v___x_16682_; lean_object* v___x_16683_; 
v___x_16680_ = lean_box(0);
v___x_16681_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_16681_, 0, v_snd_16678_);
lean_ctor_set(v___x_16681_, 1, v___x_16680_);
v___x_16682_ = l_List_appendTR___redArg(v_fst_16677_, v___x_16681_);
v___x_16683_ = l_List_appendTR___redArg(v___x_16682_, v_tail_16631_);
v_x_16619_ = v___x_16683_;
v_a_16625_ = v___x_16664_;
goto _start;
}
}
else
{
lean_object* v_a_16834_; lean_object* v___x_16835_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16834_ = lean_ctor_get(v___x_16675_, 0);
lean_inc(v_a_16834_);
lean_dec_ref(v___x_16675_);
v___x_16835_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16835_, 0, v_a_16834_);
return v___x_16835_;
}
}
else
{
lean_object* v_val_16836_; lean_object* v___x_16837_; lean_object* v___x_16838_; 
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
v_val_16836_ = lean_ctor_get(v_a_16674_, 0);
lean_inc(v_val_16836_);
lean_dec_ref(v_a_16674_);
v___x_16837_ = lean_box(0);
v___x_16838_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_16838_, 0, v_val_16836_);
lean_ctor_set(v___x_16838_, 1, v___x_16837_);
v_x_16619_ = v___x_16838_;
v_a_16625_ = v___x_16664_;
goto _start;
}
}
else
{
lean_object* v_a_16840_; lean_object* v___x_16841_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16840_ = lean_ctor_get(v___x_16673_, 0);
lean_inc(v_a_16840_);
lean_dec_ref(v___x_16673_);
v___x_16841_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16841_, 0, v_a_16840_);
return v___x_16841_;
}
}
else
{
lean_object* v_val_16842_; 
lean_dec(v_head_16630_);
v_val_16842_ = lean_ctor_get(v_a_16671_, 0);
lean_inc(v_val_16842_);
lean_dec_ref(v_a_16671_);
v_doElem_16633_ = v_val_16842_;
v___y_16634_ = v_a_16620_;
v___y_16635_ = v_a_16621_;
v___y_16636_ = v_a_16622_;
v___y_16637_ = v_a_16623_;
v___y_16638_ = v_a_16624_;
v___y_16639_ = v___x_16664_;
v___y_16640_ = v_a_16626_;
goto v___jp_16632_;
}
}
else
{
lean_object* v_a_16843_; lean_object* v___x_16844_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16843_ = lean_ctor_get(v___x_16670_, 0);
lean_inc(v_a_16843_);
lean_dec_ref(v___x_16670_);
v___x_16844_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16844_, 0, v_a_16843_);
return v___x_16844_;
}
}
else
{
lean_object* v_val_16845_; 
lean_dec(v_head_16630_);
v_val_16845_ = lean_ctor_get(v_a_16668_, 0);
lean_inc(v_val_16845_);
lean_dec_ref(v_a_16668_);
v_doElem_16633_ = v_val_16845_;
v___y_16634_ = v_a_16620_;
v___y_16635_ = v_a_16621_;
v___y_16636_ = v_a_16622_;
v___y_16637_ = v_a_16623_;
v___y_16638_ = v_a_16624_;
v___y_16639_ = v___x_16664_;
v___y_16640_ = v_a_16626_;
goto v___jp_16632_;
}
}
else
{
lean_object* v_a_16846_; lean_object* v___x_16847_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16846_ = lean_ctor_get(v___x_16667_, 0);
lean_inc(v_a_16846_);
lean_dec_ref(v___x_16667_);
v___x_16847_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16847_, 0, v_a_16846_);
return v___x_16847_;
}
}
else
{
lean_object* v_a_16848_; lean_object* v___x_16849_; 
lean_dec_ref(v___x_16664_);
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v_a_16848_ = lean_ctor_get(v___x_16665_, 0);
lean_inc(v_a_16848_);
lean_dec_ref(v___x_16665_);
v___x_16849_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_16849_, 0, v_a_16848_);
return v___x_16849_;
}
}
else
{
lean_object* v___x_16850_; 
lean_dec_ref(v_inheritedTraceOptions_16658_);
lean_dec(v_cancelTk_x3f_16656_);
lean_dec(v_currMacroScope_16654_);
lean_dec(v_quotContext_16653_);
lean_dec(v_maxHeartbeats_16652_);
lean_dec(v_initHeartbeats_16651_);
lean_dec(v_openDecls_16650_);
lean_dec(v_currNamespace_16649_);
lean_dec(v_maxRecDepth_16647_);
lean_dec(v_currRecDepth_16646_);
lean_dec_ref(v_options_16645_);
lean_dec_ref(v_fileMap_16644_);
lean_dec_ref(v_fileName_16643_);
lean_dec(v_tail_16631_);
lean_dec(v_head_16630_);
lean_dec(v_a_16626_);
lean_dec(v_a_16624_);
lean_dec_ref(v_a_16623_);
lean_dec(v_a_16622_);
lean_dec_ref(v_a_16621_);
lean_dec_ref(v_a_16620_);
v___x_16850_ = l_Lean_throwMaxRecDepthAt___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_ToCodeBlock_mkForInBody_spec__0_spec__6___redArg(v_ref_16648_);
return v___x_16850_;
}
v___jp_16632_:
{
lean_object* v___x_16641_; 
v___x_16641_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_16641_, 0, v_doElem_16633_);
lean_ctor_set(v___x_16641_, 1, v_tail_16631_);
v_x_16619_ = v___x_16641_;
v_a_16620_ = v___y_16634_;
v_a_16621_ = v___y_16635_;
v_a_16622_ = v___y_16636_;
v_a_16623_ = v___y_16637_;
v_a_16624_ = v___y_16638_;
v_a_16625_ = v___y_16639_;
v_a_16626_ = v___y_16640_;
goto _start;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___lam__0(lean_object* v_doElems_16851_, lean_object* v_auxDo_16852_, lean_object* v___y_16853_, lean_object* v___y_16854_, lean_object* v___y_16855_, lean_object* v___y_16856_, lean_object* v___y_16857_, lean_object* v___y_16858_, lean_object* v___y_16859_){
_start:
{
lean_object* v___x_16861_; lean_object* v___x_16862_; lean_object* v___x_16863_; lean_object* v___x_16864_; 
v___x_16861_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v_auxDo_16852_);
v___x_16862_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_16861_);
v___x_16863_ = l_List_appendTR___redArg(v___x_16862_, v_doElems_16851_);
v___x_16864_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_16863_, v___y_16853_, v___y_16854_, v___y_16855_, v___y_16856_, v___y_16857_, v___y_16858_, v___y_16859_);
return v___x_16864_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_concatWith___boxed(lean_object* v_c_16865_, lean_object* v_doElems_16866_, lean_object* v_a_16867_, lean_object* v_a_16868_, lean_object* v_a_16869_, lean_object* v_a_16870_, lean_object* v_a_16871_, lean_object* v_a_16872_, lean_object* v_a_16873_, lean_object* v_a_16874_){
_start:
{
lean_object* v_res_16875_; 
v_res_16875_ = l_Lean_Elab_Term_Do_ToCodeBlock_concatWith(v_c_16865_, v_doElems_16866_, v_a_16867_, v_a_16868_, v_a_16869_, v_a_16870_, v_a_16871_, v_a_16872_, v_a_16873_);
return v_res_16875_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode___boxed(lean_object* v_doIf_16876_, lean_object* v_doElems_16877_, lean_object* v_a_16878_, lean_object* v_a_16879_, lean_object* v_a_16880_, lean_object* v_a_16881_, lean_object* v_a_16882_, lean_object* v_a_16883_, lean_object* v_a_16884_, lean_object* v_a_16885_){
_start:
{
lean_object* v_res_16886_; 
v_res_16886_ = l_Lean_Elab_Term_Do_ToCodeBlock_doIfToCode(v_doIf_16876_, v_doElems_16877_, v_a_16878_, v_a_16879_, v_a_16880_, v_a_16881_, v_a_16882_, v_a_16883_, v_a_16884_);
return v_res_16886_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode___boxed(lean_object* v_doUnless_16887_, lean_object* v_doElems_16888_, lean_object* v_a_16889_, lean_object* v_a_16890_, lean_object* v_a_16891_, lean_object* v_a_16892_, lean_object* v_a_16893_, lean_object* v_a_16894_, lean_object* v_a_16895_, lean_object* v_a_16896_){
_start:
{
lean_object* v_res_16897_; 
v_res_16897_ = l_Lean_Elab_Term_Do_ToCodeBlock_doUnlessToCode(v_doUnless_16887_, v_doElems_16888_, v_a_16889_, v_a_16890_, v_a_16891_, v_a_16892_, v_a_16893_, v_a_16894_, v_a_16895_);
lean_dec_ref(v_a_16894_);
lean_dec(v_doUnless_16887_);
return v_res_16897_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode___boxed(lean_object* v_doMatchExpr_16898_, lean_object* v_doElems_16899_, lean_object* v_a_16900_, lean_object* v_a_16901_, lean_object* v_a_16902_, lean_object* v_a_16903_, lean_object* v_a_16904_, lean_object* v_a_16905_, lean_object* v_a_16906_, lean_object* v_a_16907_){
_start:
{
lean_object* v_res_16908_; 
v_res_16908_ = l_Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode(v_doMatchExpr_16898_, v_doElems_16899_, v_a_16900_, v_a_16901_, v_a_16902_, v_a_16903_, v_a_16904_, v_a_16905_, v_a_16906_);
return v_res_16908_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6___boxed(lean_object* v_doMatchExpr_16909_, lean_object* v_sz_16910_, lean_object* v_i_16911_, lean_object* v_bs_16912_, lean_object* v___y_16913_, lean_object* v___y_16914_, lean_object* v___y_16915_, lean_object* v___y_16916_, lean_object* v___y_16917_, lean_object* v___y_16918_, lean_object* v___y_16919_, lean_object* v___y_16920_){
_start:
{
size_t v_sz_boxed_16921_; size_t v_i_boxed_16922_; lean_object* v_res_16923_; 
v_sz_boxed_16921_ = lean_unbox_usize(v_sz_16910_);
lean_dec(v_sz_16910_);
v_i_boxed_16922_ = lean_unbox_usize(v_i_16911_);
lean_dec(v_i_16911_);
v_res_16923_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchExprToCode_spec__6(v_doMatchExpr_16909_, v_sz_boxed_16921_, v_i_boxed_16922_, v_bs_16912_, v___y_16913_, v___y_16914_, v___y_16915_, v___y_16916_, v___y_16917_, v___y_16918_, v___y_16919_);
return v_res_16923_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8___boxed(lean_object* v_sz_16924_, lean_object* v_i_16925_, lean_object* v_bs_16926_, lean_object* v___y_16927_, lean_object* v___y_16928_, lean_object* v___y_16929_, lean_object* v___y_16930_, lean_object* v___y_16931_, lean_object* v___y_16932_, lean_object* v___y_16933_, lean_object* v___y_16934_){
_start:
{
size_t v_sz_boxed_16935_; size_t v_i_boxed_16936_; lean_object* v_res_16937_; 
v_sz_boxed_16935_ = lean_unbox_usize(v_sz_16924_);
lean_dec(v_sz_16924_);
v_i_boxed_16936_ = lean_unbox_usize(v_i_16925_);
lean_dec(v_i_16925_);
v_res_16937_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__8(v_sz_boxed_16935_, v_i_boxed_16936_, v_bs_16926_, v___y_16927_, v___y_16928_, v___y_16929_, v___y_16930_, v___y_16931_, v___y_16932_, v___y_16933_);
return v_res_16937_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode___boxed(lean_object* v_doMatch_16938_, lean_object* v_doElems_16939_, lean_object* v_a_16940_, lean_object* v_a_16941_, lean_object* v_a_16942_, lean_object* v_a_16943_, lean_object* v_a_16944_, lean_object* v_a_16945_, lean_object* v_a_16946_, lean_object* v_a_16947_){
_start:
{
lean_object* v_res_16948_; 
v_res_16948_ = l_Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode(v_doMatch_16938_, v_doElems_16939_, v_a_16940_, v_a_16941_, v_a_16942_, v_a_16943_, v_a_16944_, v_a_16945_, v_a_16946_);
return v_res_16948_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode___boxed(lean_object* v_doLetElse_16949_, lean_object* v_doElems_16950_, lean_object* v_a_16951_, lean_object* v_a_16952_, lean_object* v_a_16953_, lean_object* v_a_16954_, lean_object* v_a_16955_, lean_object* v_a_16956_, lean_object* v_a_16957_, lean_object* v_a_16958_){
_start:
{
lean_object* v_res_16959_; 
v_res_16959_ = l_Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode(v_doLetElse_16949_, v_doElems_16950_, v_a_16951_, v_a_16952_, v_a_16953_, v_a_16954_, v_a_16955_, v_a_16956_, v_a_16957_);
return v_res_16959_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode___boxed(lean_object* v_doReassignArrow_16960_, lean_object* v_doElems_16961_, lean_object* v_a_16962_, lean_object* v_a_16963_, lean_object* v_a_16964_, lean_object* v_a_16965_, lean_object* v_a_16966_, lean_object* v_a_16967_, lean_object* v_a_16968_, lean_object* v_a_16969_){
_start:
{
lean_object* v_res_16970_; 
v_res_16970_ = l_Lean_Elab_Term_Do_ToCodeBlock_doReassignArrowToCode(v_doReassignArrow_16960_, v_doElems_16961_, v_a_16962_, v_a_16963_, v_a_16964_, v_a_16965_, v_a_16966_, v_a_16967_, v_a_16968_);
lean_dec(v_doReassignArrow_16960_);
return v_res_16970_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2___boxed(lean_object* v_sz_16971_, lean_object* v_i_16972_, lean_object* v_bs_16973_, lean_object* v___y_16974_, lean_object* v___y_16975_, lean_object* v___y_16976_, lean_object* v___y_16977_, lean_object* v___y_16978_, lean_object* v___y_16979_, lean_object* v___y_16980_, lean_object* v___y_16981_){
_start:
{
size_t v_sz_boxed_16982_; size_t v_i_boxed_16983_; lean_object* v_res_16984_; 
v_sz_boxed_16982_ = lean_unbox_usize(v_sz_16971_);
lean_dec(v_sz_16971_);
v_i_boxed_16983_ = lean_unbox_usize(v_i_16972_);
lean_dec(v_i_16972_);
v_res_16984_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__2(v_sz_boxed_16982_, v_i_boxed_16983_, v_bs_16973_, v___y_16974_, v___y_16975_, v___y_16976_, v___y_16977_, v___y_16978_, v___y_16979_, v___y_16980_);
return v_res_16984_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode___boxed(lean_object* v_doTry_16985_, lean_object* v_doElems_16986_, lean_object* v_a_16987_, lean_object* v_a_16988_, lean_object* v_a_16989_, lean_object* v_a_16990_, lean_object* v_a_16991_, lean_object* v_a_16992_, lean_object* v_a_16993_, lean_object* v_a_16994_){
_start:
{
lean_object* v_res_16995_; 
v_res_16995_ = l_Lean_Elab_Term_Do_ToCodeBlock_doTryToCode(v_doTry_16985_, v_doElems_16986_, v_a_16987_, v_a_16988_, v_a_16989_, v_a_16990_, v_a_16991_, v_a_16992_, v_a_16993_);
return v_res_16995_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode___boxed(lean_object* v_doLetArrow_16996_, lean_object* v_doElems_16997_, lean_object* v_a_16998_, lean_object* v_a_16999_, lean_object* v_a_17000_, lean_object* v_a_17001_, lean_object* v_a_17002_, lean_object* v_a_17003_, lean_object* v_a_17004_, lean_object* v_a_17005_){
_start:
{
lean_object* v_res_17006_; 
v_res_17006_ = l_Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode(v_doLetArrow_16996_, v_doElems_16997_, v_a_16998_, v_a_16999_, v_a_17000_, v_a_17001_, v_a_17002_, v_a_17003_, v_a_17004_);
return v_res_17006_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3(lean_object* v_ref_17007_, lean_object* v_term_17008_, lean_object* v___y_17009_, lean_object* v___y_17010_, lean_object* v___y_17011_, lean_object* v___y_17012_, lean_object* v___y_17013_, lean_object* v___y_17014_, lean_object* v___y_17015_){
_start:
{
lean_object* v___x_17017_; 
v___x_17017_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___redArg(v_ref_17007_, v_term_17008_, v___y_17014_);
return v___x_17017_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3___boxed(lean_object* v_ref_17018_, lean_object* v_term_17019_, lean_object* v___y_17020_, lean_object* v___y_17021_, lean_object* v___y_17022_, lean_object* v___y_17023_, lean_object* v___y_17024_, lean_object* v___y_17025_, lean_object* v___y_17026_, lean_object* v___y_17027_){
_start:
{
lean_object* v_res_17028_; 
v_res_17028_ = l_Lean_Elab_Term_Do_annotate___at___00Lean_Elab_Term_Do_ToCodeBlock_doTryToCode_spec__3(v_ref_17018_, v_term_17019_, v___y_17020_, v___y_17021_, v___y_17022_, v___y_17023_, v___y_17024_, v___y_17025_, v___y_17026_);
lean_dec(v___y_17026_);
lean_dec_ref(v___y_17025_);
lean_dec(v___y_17024_);
lean_dec_ref(v___y_17023_);
lean_dec(v___y_17022_);
lean_dec_ref(v___y_17021_);
lean_dec_ref(v___y_17020_);
return v_res_17028_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9(lean_object* v_as_17029_, size_t v_i_17030_, size_t v_stop_17031_, lean_object* v_b_17032_, lean_object* v___y_17033_, lean_object* v___y_17034_, lean_object* v___y_17035_, lean_object* v___y_17036_, lean_object* v___y_17037_, lean_object* v___y_17038_, lean_object* v___y_17039_){
_start:
{
lean_object* v___x_17041_; 
v___x_17041_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___redArg(v_as_17029_, v_i_17030_, v_stop_17031_, v_b_17032_);
return v___x_17041_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9___boxed(lean_object* v_as_17042_, lean_object* v_i_17043_, lean_object* v_stop_17044_, lean_object* v_b_17045_, lean_object* v___y_17046_, lean_object* v___y_17047_, lean_object* v___y_17048_, lean_object* v___y_17049_, lean_object* v___y_17050_, lean_object* v___y_17051_, lean_object* v___y_17052_, lean_object* v___y_17053_){
_start:
{
size_t v_i_boxed_17054_; size_t v_stop_boxed_17055_; lean_object* v_res_17056_; 
v_i_boxed_17054_ = lean_unbox_usize(v_i_17043_);
lean_dec(v_i_17043_);
v_stop_boxed_17055_ = lean_unbox_usize(v_stop_17044_);
lean_dec(v_stop_17044_);
v_res_17056_ = l___private_Init_Data_Array_Basic_0__Array_foldlMUnsafe_fold___at___00Lean_Elab_Term_Do_ToCodeBlock_doMatchToCode_spec__9(v_as_17042_, v_i_boxed_17054_, v_stop_boxed_17055_, v_b_17045_, v___y_17046_, v___y_17047_, v___y_17048_, v___y_17049_, v___y_17050_, v___y_17051_, v___y_17052_);
lean_dec(v___y_17052_);
lean_dec_ref(v___y_17051_);
lean_dec(v___y_17050_);
lean_dec_ref(v___y_17049_);
lean_dec(v___y_17048_);
lean_dec_ref(v___y_17047_);
lean_dec_ref(v___y_17046_);
lean_dec_ref(v_as_17042_);
return v_res_17056_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11(lean_object* v_00_u03b4_17057_, lean_object* v_t_17058_, lean_object* v_k_17059_, lean_object* v_fallback_17060_){
_start:
{
lean_object* v___x_17061_; 
v___x_17061_ = l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___redArg(v_t_17058_, v_k_17059_, v_fallback_17060_);
return v___x_17061_;
}
}
LEAN_EXPORT lean_object* l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11___boxed(lean_object* v_00_u03b4_17062_, lean_object* v_t_17063_, lean_object* v_k_17064_, lean_object* v_fallback_17065_){
_start:
{
lean_object* v_res_17066_; 
v_res_17066_ = l_Std_DTreeMap_Internal_Impl_Const_getD___at___00Lean_Elab_Term_Do_ToCodeBlock_doForToCode_spec__11(v_00_u03b4_17062_, v_t_17063_, v_k_17064_, v_fallback_17065_);
lean_dec(v_fallback_17065_);
lean_dec(v_k_17064_);
lean_dec(v_t_17063_);
return v_res_17066_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17(size_t v_sz_17067_, size_t v_i_17068_, lean_object* v_bs_17069_, lean_object* v___y_17070_, lean_object* v___y_17071_, lean_object* v___y_17072_, lean_object* v___y_17073_, lean_object* v___y_17074_, lean_object* v___y_17075_, lean_object* v___y_17076_){
_start:
{
lean_object* v___x_17078_; 
v___x_17078_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___redArg(v_sz_17067_, v_i_17068_, v_bs_17069_, v___y_17075_);
return v___x_17078_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17___boxed(lean_object* v_sz_17079_, lean_object* v_i_17080_, lean_object* v_bs_17081_, lean_object* v___y_17082_, lean_object* v___y_17083_, lean_object* v___y_17084_, lean_object* v___y_17085_, lean_object* v___y_17086_, lean_object* v___y_17087_, lean_object* v___y_17088_, lean_object* v___y_17089_){
_start:
{
size_t v_sz_boxed_17090_; size_t v_i_boxed_17091_; lean_object* v_res_17092_; 
v_sz_boxed_17090_ = lean_unbox_usize(v_sz_17079_);
lean_dec(v_sz_17079_);
v_i_boxed_17091_ = lean_unbox_usize(v_i_17080_);
lean_dec(v_i_17080_);
v_res_17092_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetElseToCode_spec__17(v_sz_boxed_17090_, v_i_boxed_17091_, v_bs_17081_, v___y_17082_, v___y_17083_, v___y_17084_, v___y_17085_, v___y_17086_, v___y_17087_, v___y_17088_);
lean_dec(v___y_17088_);
lean_dec_ref(v___y_17087_);
lean_dec(v___y_17086_);
lean_dec_ref(v___y_17085_);
lean_dec(v___y_17084_);
lean_dec_ref(v___y_17083_);
lean_dec_ref(v___y_17082_);
return v_res_17092_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19(uint8_t v___x_17093_, size_t v_sz_17094_, size_t v_i_17095_, lean_object* v_bs_17096_, lean_object* v___y_17097_, lean_object* v___y_17098_, lean_object* v___y_17099_, lean_object* v___y_17100_, lean_object* v___y_17101_, lean_object* v___y_17102_, lean_object* v___y_17103_){
_start:
{
lean_object* v___x_17105_; 
v___x_17105_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___redArg(v___x_17093_, v_sz_17094_, v_i_17095_, v_bs_17096_, v___y_17102_);
return v___x_17105_;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19___boxed(lean_object* v___x_17106_, lean_object* v_sz_17107_, lean_object* v_i_17108_, lean_object* v_bs_17109_, lean_object* v___y_17110_, lean_object* v___y_17111_, lean_object* v___y_17112_, lean_object* v___y_17113_, lean_object* v___y_17114_, lean_object* v___y_17115_, lean_object* v___y_17116_, lean_object* v___y_17117_){
_start:
{
uint8_t v___x_277488__boxed_17118_; size_t v_sz_boxed_17119_; size_t v_i_boxed_17120_; lean_object* v_res_17121_; 
v___x_277488__boxed_17118_ = lean_unbox(v___x_17106_);
v_sz_boxed_17119_ = lean_unbox_usize(v_sz_17107_);
lean_dec(v_sz_17107_);
v_i_boxed_17120_ = lean_unbox_usize(v_i_17108_);
lean_dec(v_i_17108_);
v_res_17121_ = l___private_Init_Data_Array_Basic_0__Array_mapMUnsafe_map___at___00Lean_Elab_Term_Do_ToCodeBlock_doLetArrowToCode_spec__19(v___x_277488__boxed_17118_, v_sz_boxed_17119_, v_i_boxed_17120_, v_bs_17109_, v___y_17110_, v___y_17111_, v___y_17112_, v___y_17113_, v___y_17114_, v___y_17115_, v___y_17116_);
lean_dec(v___y_17116_);
lean_dec_ref(v___y_17115_);
lean_dec(v___y_17114_);
lean_dec_ref(v___y_17113_);
lean_dec(v___y_17112_);
lean_dec_ref(v___y_17111_);
lean_dec_ref(v___y_17110_);
return v_res_17121_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_run(lean_object* v_doStx_17122_, lean_object* v_m_17123_, lean_object* v_returnType_17124_, lean_object* v_a_17125_, lean_object* v_a_17126_, lean_object* v_a_17127_, lean_object* v_a_17128_, lean_object* v_a_17129_, lean_object* v_a_17130_){
_start:
{
lean_object* v___x_17132_; lean_object* v___x_17133_; lean_object* v___x_17134_; uint8_t v___x_17135_; lean_object* v___x_17136_; lean_object* v___x_17137_; 
v___x_17132_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeq(v_doStx_17122_);
v___x_17133_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_getDoSeqElems(v___x_17132_);
v___x_17134_ = lean_box(1);
v___x_17135_ = 0;
v___x_17136_ = lean_alloc_ctor(0, 4, 1);
lean_ctor_set(v___x_17136_, 0, v_doStx_17122_);
lean_ctor_set(v___x_17136_, 1, v_m_17123_);
lean_ctor_set(v___x_17136_, 2, v_returnType_17124_);
lean_ctor_set(v___x_17136_, 3, v___x_17134_);
lean_ctor_set_uint8(v___x_17136_, sizeof(void*)*4, v___x_17135_);
v___x_17137_ = l_Lean_Elab_Term_Do_ToCodeBlock_doSeqToCode(v___x_17133_, v___x_17136_, v_a_17125_, v_a_17126_, v_a_17127_, v_a_17128_, v_a_17129_, v_a_17130_);
return v___x_17137_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_ToCodeBlock_run___boxed(lean_object* v_doStx_17138_, lean_object* v_m_17139_, lean_object* v_returnType_17140_, lean_object* v_a_17141_, lean_object* v_a_17142_, lean_object* v_a_17143_, lean_object* v_a_17144_, lean_object* v_a_17145_, lean_object* v_a_17146_, lean_object* v_a_17147_){
_start:
{
lean_object* v_res_17148_; 
v_res_17148_ = l_Lean_Elab_Term_Do_ToCodeBlock_run(v_doStx_17138_, v_m_17139_, v_returnType_17140_, v_a_17141_, v_a_17142_, v_a_17143_, v_a_17144_, v_a_17145_, v_a_17146_);
return v_res_17148_;
}
}
static lean_object* _init_l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0(void){
_start:
{
lean_object* v___x_17149_; lean_object* v___x_17150_; lean_object* v___x_17151_; 
v___x_17149_ = lean_unsigned_to_nat(32u);
v___x_17150_ = lean_mk_empty_array_with_capacity(v___x_17149_);
v___x_17151_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17151_, 0, v___x_17150_);
return v___x_17151_;
}
}
static lean_object* _init_l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1(void){
_start:
{
size_t v___x_17152_; lean_object* v___x_17153_; lean_object* v___x_17154_; lean_object* v___x_17155_; lean_object* v___x_17156_; lean_object* v___x_17157_; 
v___x_17152_ = ((size_t)5ULL);
v___x_17153_ = lean_unsigned_to_nat(0u);
v___x_17154_ = lean_unsigned_to_nat(32u);
v___x_17155_ = lean_mk_empty_array_with_capacity(v___x_17154_);
v___x_17156_ = lean_obj_once(&l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0, &l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0_once, _init_l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__0);
v___x_17157_ = lean_alloc_ctor(0, 4, sizeof(size_t)*1);
lean_ctor_set(v___x_17157_, 0, v___x_17156_);
lean_ctor_set(v___x_17157_, 1, v___x_17155_);
lean_ctor_set(v___x_17157_, 2, v___x_17153_);
lean_ctor_set(v___x_17157_, 3, v___x_17153_);
lean_ctor_set_usize(v___x_17157_, 4, v___x_17152_);
return v___x_17157_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg(lean_object* v___y_17158_){
_start:
{
lean_object* v___x_17160_; lean_object* v_infoState_17161_; lean_object* v_trees_17162_; lean_object* v___x_17163_; lean_object* v_infoState_17164_; lean_object* v_env_17165_; lean_object* v_nextMacroScope_17166_; lean_object* v_ngen_17167_; lean_object* v_auxDeclNGen_17168_; lean_object* v_traceState_17169_; lean_object* v_cache_17170_; lean_object* v_messages_17171_; lean_object* v_snapshotTasks_17172_; uint8_t v_enabled_17173_; lean_object* v_assignment_17174_; lean_object* v_lazyAssignment_17175_; lean_object* v___x_17176_; lean_object* v___x_17177_; lean_object* v___x_17178_; lean_object* v___x_17179_; lean_object* v___x_17180_; 
v___x_17160_ = lean_st_ref_get(v___y_17158_);
v_infoState_17161_ = lean_ctor_get(v___x_17160_, 7);
lean_inc_ref(v_infoState_17161_);
lean_dec(v___x_17160_);
v_trees_17162_ = lean_ctor_get(v_infoState_17161_, 2);
lean_inc_ref(v_trees_17162_);
lean_dec_ref(v_infoState_17161_);
v___x_17163_ = lean_st_ref_take(v___y_17158_);
v_infoState_17164_ = lean_ctor_get(v___x_17163_, 7);
lean_inc_ref(v_infoState_17164_);
v_env_17165_ = lean_ctor_get(v___x_17163_, 0);
lean_inc_ref(v_env_17165_);
v_nextMacroScope_17166_ = lean_ctor_get(v___x_17163_, 1);
lean_inc(v_nextMacroScope_17166_);
v_ngen_17167_ = lean_ctor_get(v___x_17163_, 2);
lean_inc_ref(v_ngen_17167_);
v_auxDeclNGen_17168_ = lean_ctor_get(v___x_17163_, 3);
lean_inc_ref(v_auxDeclNGen_17168_);
v_traceState_17169_ = lean_ctor_get(v___x_17163_, 4);
lean_inc_ref(v_traceState_17169_);
v_cache_17170_ = lean_ctor_get(v___x_17163_, 5);
lean_inc_ref(v_cache_17170_);
v_messages_17171_ = lean_ctor_get(v___x_17163_, 6);
lean_inc_ref(v_messages_17171_);
v_snapshotTasks_17172_ = lean_ctor_get(v___x_17163_, 8);
lean_inc_ref(v_snapshotTasks_17172_);
lean_dec(v___x_17163_);
v_enabled_17173_ = lean_ctor_get_uint8(v_infoState_17164_, sizeof(void*)*3);
v_assignment_17174_ = lean_ctor_get(v_infoState_17164_, 0);
lean_inc_ref(v_assignment_17174_);
v_lazyAssignment_17175_ = lean_ctor_get(v_infoState_17164_, 1);
lean_inc_ref(v_lazyAssignment_17175_);
lean_dec_ref(v_infoState_17164_);
v___x_17176_ = lean_obj_once(&l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1, &l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1_once, _init_l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___closed__1);
v___x_17177_ = lean_alloc_ctor(0, 3, 1);
lean_ctor_set(v___x_17177_, 0, v_assignment_17174_);
lean_ctor_set(v___x_17177_, 1, v_lazyAssignment_17175_);
lean_ctor_set(v___x_17177_, 2, v___x_17176_);
lean_ctor_set_uint8(v___x_17177_, sizeof(void*)*3, v_enabled_17173_);
v___x_17178_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_17178_, 0, v_env_17165_);
lean_ctor_set(v___x_17178_, 1, v_nextMacroScope_17166_);
lean_ctor_set(v___x_17178_, 2, v_ngen_17167_);
lean_ctor_set(v___x_17178_, 3, v_auxDeclNGen_17168_);
lean_ctor_set(v___x_17178_, 4, v_traceState_17169_);
lean_ctor_set(v___x_17178_, 5, v_cache_17170_);
lean_ctor_set(v___x_17178_, 6, v_messages_17171_);
lean_ctor_set(v___x_17178_, 7, v___x_17177_);
lean_ctor_set(v___x_17178_, 8, v_snapshotTasks_17172_);
v___x_17179_ = lean_st_ref_set(v___y_17158_, v___x_17178_);
v___x_17180_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17180_, 0, v_trees_17162_);
return v___x_17180_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg___boxed(lean_object* v___y_17181_, lean_object* v___y_17182_){
_start:
{
lean_object* v_res_17183_; 
v_res_17183_ = l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg(v___y_17181_);
lean_dec(v___y_17181_);
return v_res_17183_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0(lean_object* v___y_17184_, lean_object* v_mkInfoTree_17185_, lean_object* v___y_17186_, lean_object* v___y_17187_, lean_object* v___y_17188_, lean_object* v___y_17189_, lean_object* v___y_17190_, lean_object* v_a_17191_, lean_object* v_a_x3f_17192_){
_start:
{
lean_object* v___x_17194_; lean_object* v_infoState_17195_; lean_object* v_trees_17196_; lean_object* v___x_17197_; 
v___x_17194_ = lean_st_ref_get(v___y_17184_);
v_infoState_17195_ = lean_ctor_get(v___x_17194_, 7);
lean_inc_ref(v_infoState_17195_);
lean_dec(v___x_17194_);
v_trees_17196_ = lean_ctor_get(v_infoState_17195_, 2);
lean_inc_ref(v_trees_17196_);
lean_dec_ref(v_infoState_17195_);
lean_inc(v___y_17184_);
v___x_17197_ = lean_apply_8(v_mkInfoTree_17185_, v_trees_17196_, v___y_17186_, v___y_17187_, v___y_17188_, v___y_17189_, v___y_17190_, v___y_17184_, lean_box(0));
if (lean_obj_tag(v___x_17197_) == 0)
{
lean_object* v_a_17198_; lean_object* v___x_17199_; lean_object* v_infoState_17200_; lean_object* v_env_17201_; lean_object* v_nextMacroScope_17202_; lean_object* v_ngen_17203_; lean_object* v_auxDeclNGen_17204_; lean_object* v_traceState_17205_; lean_object* v_cache_17206_; lean_object* v_messages_17207_; lean_object* v_snapshotTasks_17208_; uint8_t v_enabled_17209_; lean_object* v_assignment_17210_; lean_object* v_lazyAssignment_17211_; lean_object* v___x_17212_; lean_object* v___x_17213_; lean_object* v___x_17214_; lean_object* v___x_17215_; lean_object* v___x_17216_; lean_object* v___x_17217_; 
v_a_17198_ = lean_ctor_get(v___x_17197_, 0);
lean_inc(v_a_17198_);
lean_dec_ref(v___x_17197_);
v___x_17199_ = lean_st_ref_take(v___y_17184_);
v_infoState_17200_ = lean_ctor_get(v___x_17199_, 7);
lean_inc_ref(v_infoState_17200_);
v_env_17201_ = lean_ctor_get(v___x_17199_, 0);
lean_inc_ref(v_env_17201_);
v_nextMacroScope_17202_ = lean_ctor_get(v___x_17199_, 1);
lean_inc(v_nextMacroScope_17202_);
v_ngen_17203_ = lean_ctor_get(v___x_17199_, 2);
lean_inc_ref(v_ngen_17203_);
v_auxDeclNGen_17204_ = lean_ctor_get(v___x_17199_, 3);
lean_inc_ref(v_auxDeclNGen_17204_);
v_traceState_17205_ = lean_ctor_get(v___x_17199_, 4);
lean_inc_ref(v_traceState_17205_);
v_cache_17206_ = lean_ctor_get(v___x_17199_, 5);
lean_inc_ref(v_cache_17206_);
v_messages_17207_ = lean_ctor_get(v___x_17199_, 6);
lean_inc_ref(v_messages_17207_);
v_snapshotTasks_17208_ = lean_ctor_get(v___x_17199_, 8);
lean_inc_ref(v_snapshotTasks_17208_);
lean_dec(v___x_17199_);
v_enabled_17209_ = lean_ctor_get_uint8(v_infoState_17200_, sizeof(void*)*3);
v_assignment_17210_ = lean_ctor_get(v_infoState_17200_, 0);
lean_inc_ref(v_assignment_17210_);
v_lazyAssignment_17211_ = lean_ctor_get(v_infoState_17200_, 1);
lean_inc_ref(v_lazyAssignment_17211_);
lean_dec_ref(v_infoState_17200_);
v___x_17212_ = l_Lean_PersistentArray_push___redArg(v_a_17191_, v_a_17198_);
v___x_17213_ = lean_alloc_ctor(0, 3, 1);
lean_ctor_set(v___x_17213_, 0, v_assignment_17210_);
lean_ctor_set(v___x_17213_, 1, v_lazyAssignment_17211_);
lean_ctor_set(v___x_17213_, 2, v___x_17212_);
lean_ctor_set_uint8(v___x_17213_, sizeof(void*)*3, v_enabled_17209_);
v___x_17214_ = lean_alloc_ctor(0, 9, 0);
lean_ctor_set(v___x_17214_, 0, v_env_17201_);
lean_ctor_set(v___x_17214_, 1, v_nextMacroScope_17202_);
lean_ctor_set(v___x_17214_, 2, v_ngen_17203_);
lean_ctor_set(v___x_17214_, 3, v_auxDeclNGen_17204_);
lean_ctor_set(v___x_17214_, 4, v_traceState_17205_);
lean_ctor_set(v___x_17214_, 5, v_cache_17206_);
lean_ctor_set(v___x_17214_, 6, v_messages_17207_);
lean_ctor_set(v___x_17214_, 7, v___x_17213_);
lean_ctor_set(v___x_17214_, 8, v_snapshotTasks_17208_);
v___x_17215_ = lean_st_ref_set(v___y_17184_, v___x_17214_);
lean_dec(v___y_17184_);
v___x_17216_ = lean_box(0);
v___x_17217_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17217_, 0, v___x_17216_);
return v___x_17217_;
}
else
{
lean_object* v_a_17218_; lean_object* v___x_17219_; 
lean_dec_ref(v_a_17191_);
lean_dec(v___y_17184_);
v_a_17218_ = lean_ctor_get(v___x_17197_, 0);
lean_inc(v_a_17218_);
lean_dec_ref(v___x_17197_);
v___x_17219_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17219_, 0, v_a_17218_);
return v___x_17219_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0___boxed(lean_object* v___y_17220_, lean_object* v_mkInfoTree_17221_, lean_object* v___y_17222_, lean_object* v___y_17223_, lean_object* v___y_17224_, lean_object* v___y_17225_, lean_object* v___y_17226_, lean_object* v_a_17227_, lean_object* v_a_x3f_17228_, lean_object* v___y_17229_){
_start:
{
lean_object* v_res_17230_; 
v_res_17230_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0(v___y_17220_, v_mkInfoTree_17221_, v___y_17222_, v___y_17223_, v___y_17224_, v___y_17225_, v___y_17226_, v_a_17227_, v_a_x3f_17228_);
lean_dec(v_a_x3f_17228_);
return v_res_17230_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg(lean_object* v_x_17231_, lean_object* v_mkInfoTree_17232_, lean_object* v___y_17233_, lean_object* v___y_17234_, lean_object* v___y_17235_, lean_object* v___y_17236_, lean_object* v___y_17237_, lean_object* v___y_17238_){
_start:
{
lean_object* v___x_17240_; lean_object* v_infoState_17241_; uint8_t v_enabled_17242_; 
v___x_17240_ = lean_st_ref_get(v___y_17238_);
v_infoState_17241_ = lean_ctor_get(v___x_17240_, 7);
lean_inc_ref(v_infoState_17241_);
lean_dec(v___x_17240_);
v_enabled_17242_ = lean_ctor_get_uint8(v_infoState_17241_, sizeof(void*)*3);
lean_dec_ref(v_infoState_17241_);
if (v_enabled_17242_ == 0)
{
lean_object* v___x_17243_; 
lean_dec_ref(v_mkInfoTree_17232_);
v___x_17243_ = lean_apply_7(v_x_17231_, v___y_17233_, v___y_17234_, v___y_17235_, v___y_17236_, v___y_17237_, v___y_17238_, lean_box(0));
return v___x_17243_;
}
else
{
lean_object* v___x_17244_; lean_object* v_a_17245_; lean_object* v_r_17246_; 
v___x_17244_ = l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg(v___y_17238_);
v_a_17245_ = lean_ctor_get(v___x_17244_, 0);
lean_inc(v_a_17245_);
lean_dec_ref(v___x_17244_);
lean_inc(v___y_17238_);
lean_inc_ref(v___y_17237_);
lean_inc(v___y_17236_);
lean_inc_ref(v___y_17235_);
lean_inc(v___y_17234_);
lean_inc_ref(v___y_17233_);
v_r_17246_ = lean_apply_7(v_x_17231_, v___y_17233_, v___y_17234_, v___y_17235_, v___y_17236_, v___y_17237_, v___y_17238_, lean_box(0));
if (lean_obj_tag(v_r_17246_) == 0)
{
lean_object* v_a_17247_; lean_object* v___x_17248_; lean_object* v___x_17249_; 
v_a_17247_ = lean_ctor_get(v_r_17246_, 0);
lean_inc(v_a_17247_);
lean_dec_ref(v_r_17246_);
lean_inc(v_a_17247_);
v___x_17248_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17248_, 0, v_a_17247_);
v___x_17249_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0(v___y_17238_, v_mkInfoTree_17232_, v___y_17233_, v___y_17234_, v___y_17235_, v___y_17236_, v___y_17237_, v_a_17245_, v___x_17248_);
lean_dec_ref(v___x_17248_);
if (lean_obj_tag(v___x_17249_) == 0)
{
lean_object* v___x_17250_; 
lean_dec_ref(v___x_17249_);
v___x_17250_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17250_, 0, v_a_17247_);
return v___x_17250_;
}
else
{
lean_object* v_a_17251_; lean_object* v___x_17252_; 
lean_dec(v_a_17247_);
v_a_17251_ = lean_ctor_get(v___x_17249_, 0);
lean_inc(v_a_17251_);
lean_dec_ref(v___x_17249_);
v___x_17252_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17252_, 0, v_a_17251_);
return v___x_17252_;
}
}
else
{
lean_object* v_a_17253_; lean_object* v___x_17254_; lean_object* v___x_17255_; 
v_a_17253_ = lean_ctor_get(v_r_17246_, 0);
lean_inc(v_a_17253_);
lean_dec_ref(v_r_17246_);
v___x_17254_ = lean_box(0);
v___x_17255_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___lam__0(v___y_17238_, v_mkInfoTree_17232_, v___y_17233_, v___y_17234_, v___y_17235_, v___y_17236_, v___y_17237_, v_a_17245_, v___x_17254_);
if (lean_obj_tag(v___x_17255_) == 0)
{
lean_object* v___x_17256_; 
lean_dec_ref(v___x_17255_);
v___x_17256_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17256_, 0, v_a_17253_);
return v___x_17256_;
}
else
{
lean_object* v_a_17257_; lean_object* v___x_17258_; 
lean_dec(v_a_17253_);
v_a_17257_ = lean_ctor_get(v___x_17255_, 0);
lean_inc(v_a_17257_);
lean_dec_ref(v___x_17255_);
v___x_17258_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17258_, 0, v_a_17257_);
return v___x_17258_;
}
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg___boxed(lean_object* v_x_17259_, lean_object* v_mkInfoTree_17260_, lean_object* v___y_17261_, lean_object* v___y_17262_, lean_object* v___y_17263_, lean_object* v___y_17264_, lean_object* v___y_17265_, lean_object* v___y_17266_, lean_object* v___y_17267_){
_start:
{
lean_object* v_res_17268_; 
v_res_17268_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg(v_x_17259_, v_mkInfoTree_17260_, v___y_17261_, v___y_17262_, v___y_17263_, v___y_17264_, v___y_17265_, v___y_17266_);
return v_res_17268_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0(lean_object* v_stx_17269_, lean_object* v_output_17270_, lean_object* v_trees_17271_, lean_object* v___y_17272_, lean_object* v___y_17273_, lean_object* v___y_17274_, lean_object* v___y_17275_, lean_object* v___y_17276_, lean_object* v___y_17277_){
_start:
{
lean_object* v_lctx_17279_; lean_object* v___x_17280_; lean_object* v___x_17281_; lean_object* v___x_17282_; lean_object* v___x_17283_; 
v_lctx_17279_ = lean_ctor_get(v___y_17274_, 2);
lean_inc_ref(v_lctx_17279_);
v___x_17280_ = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(v___x_17280_, 0, v_lctx_17279_);
lean_ctor_set(v___x_17280_, 1, v_stx_17269_);
lean_ctor_set(v___x_17280_, 2, v_output_17270_);
v___x_17281_ = lean_alloc_ctor(4, 1, 0);
lean_ctor_set(v___x_17281_, 0, v___x_17280_);
v___x_17282_ = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(v___x_17282_, 0, v___x_17281_);
lean_ctor_set(v___x_17282_, 1, v_trees_17271_);
v___x_17283_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17283_, 0, v___x_17282_);
return v___x_17283_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0___boxed(lean_object* v_stx_17284_, lean_object* v_output_17285_, lean_object* v_trees_17286_, lean_object* v___y_17287_, lean_object* v___y_17288_, lean_object* v___y_17289_, lean_object* v___y_17290_, lean_object* v___y_17291_, lean_object* v___y_17292_, lean_object* v___y_17293_){
_start:
{
lean_object* v_res_17294_; 
v_res_17294_ = l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0(v_stx_17284_, v_output_17285_, v_trees_17286_, v___y_17287_, v___y_17288_, v___y_17289_, v___y_17290_, v___y_17291_, v___y_17292_);
lean_dec(v___y_17292_);
lean_dec_ref(v___y_17291_);
lean_dec(v___y_17290_);
lean_dec_ref(v___y_17289_);
lean_dec(v___y_17288_);
lean_dec_ref(v___y_17287_);
return v_res_17294_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg(lean_object* v_stx_17295_, lean_object* v_output_17296_, lean_object* v_x_17297_, lean_object* v___y_17298_, lean_object* v___y_17299_, lean_object* v___y_17300_, lean_object* v___y_17301_, lean_object* v___y_17302_, lean_object* v___y_17303_){
_start:
{
lean_object* v___f_17305_; lean_object* v___x_17306_; 
v___f_17305_ = lean_alloc_closure((void*)(l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___lam__0___boxed), 10, 2);
lean_closure_set(v___f_17305_, 0, v_stx_17295_);
lean_closure_set(v___f_17305_, 1, v_output_17296_);
v___x_17306_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg(v_x_17297_, v___f_17305_, v___y_17298_, v___y_17299_, v___y_17300_, v___y_17301_, v___y_17302_, v___y_17303_);
return v___x_17306_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg___boxed(lean_object* v_stx_17307_, lean_object* v_output_17308_, lean_object* v_x_17309_, lean_object* v___y_17310_, lean_object* v___y_17311_, lean_object* v___y_17312_, lean_object* v___y_17313_, lean_object* v___y_17314_, lean_object* v___y_17315_, lean_object* v___y_17316_){
_start:
{
lean_object* v_res_17317_; 
v_res_17317_ = l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg(v_stx_17307_, v_output_17308_, v_x_17309_, v___y_17310_, v___y_17311_, v___y_17312_, v___y_17313_, v___y_17314_, v___y_17315_);
return v_res_17317_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg(lean_object* v_beforeStx_17318_, lean_object* v_afterStx_17319_, lean_object* v_x_17320_, lean_object* v___y_17321_, lean_object* v___y_17322_, lean_object* v___y_17323_, lean_object* v___y_17324_, lean_object* v___y_17325_, lean_object* v___y_17326_){
_start:
{
lean_object* v___x_17328_; lean_object* v___x_17329_; 
lean_inc(v_afterStx_17319_);
lean_inc(v_beforeStx_17318_);
v___x_17328_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_withPushMacroExpansionStack___boxed), 11, 4);
lean_closure_set(v___x_17328_, 0, lean_box(0));
lean_closure_set(v___x_17328_, 1, v_beforeStx_17318_);
lean_closure_set(v___x_17328_, 2, v_afterStx_17319_);
lean_closure_set(v___x_17328_, 3, v_x_17320_);
v___x_17329_ = l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg(v_beforeStx_17318_, v_afterStx_17319_, v___x_17328_, v___y_17321_, v___y_17322_, v___y_17323_, v___y_17324_, v___y_17325_, v___y_17326_);
if (lean_obj_tag(v___x_17329_) == 0)
{
lean_object* v_a_17330_; lean_object* v___x_17331_; 
v_a_17330_ = lean_ctor_get(v___x_17329_, 0);
lean_inc(v_a_17330_);
lean_dec_ref(v___x_17329_);
v___x_17331_ = lean_alloc_ctor(0, 1, 0);
lean_ctor_set(v___x_17331_, 0, v_a_17330_);
return v___x_17331_;
}
else
{
lean_object* v_a_17332_; lean_object* v___x_17333_; 
v_a_17332_ = lean_ctor_get(v___x_17329_, 0);
lean_inc(v_a_17332_);
lean_dec_ref(v___x_17329_);
v___x_17333_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17333_, 0, v_a_17332_);
return v___x_17333_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg___boxed(lean_object* v_beforeStx_17334_, lean_object* v_afterStx_17335_, lean_object* v_x_17336_, lean_object* v___y_17337_, lean_object* v___y_17338_, lean_object* v___y_17339_, lean_object* v___y_17340_, lean_object* v___y_17341_, lean_object* v___y_17342_, lean_object* v___y_17343_){
_start:
{
lean_object* v_res_17344_; 
v_res_17344_ = l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg(v_beforeStx_17334_, v_afterStx_17335_, v_x_17336_, v___y_17337_, v___y_17338_, v___y_17339_, v___y_17340_, v___y_17341_, v___y_17342_);
return v_res_17344_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_elabDo(lean_object* v_stx_17348_, lean_object* v_expectedType_x3f_17349_, lean_object* v_a_17350_, lean_object* v_a_17351_, lean_object* v_a_17352_, lean_object* v_a_17353_, lean_object* v_a_17354_, lean_object* v_a_17355_){
_start:
{
lean_object* v___x_17357_; 
lean_inc(v_a_17355_);
lean_inc_ref(v_a_17354_);
lean_inc(v_a_17353_);
lean_inc_ref(v_a_17352_);
lean_inc(v_expectedType_x3f_17349_);
v___x_17357_ = l_Lean_Elab_Term_tryPostponeIfNoneOrMVar(v_expectedType_x3f_17349_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17357_) == 0)
{
lean_object* v___x_17358_; 
lean_dec_ref(v___x_17357_);
lean_inc(v_a_17355_);
lean_inc_ref(v_a_17354_);
lean_inc(v_a_17353_);
lean_inc_ref(v_a_17352_);
lean_inc_ref(v_a_17350_);
v___x_17358_ = l___private_Lean_Elab_Do_Legacy_0__Lean_Elab_Term_extractBind(v_expectedType_x3f_17349_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17358_) == 0)
{
lean_object* v_a_17359_; lean_object* v_m_17360_; lean_object* v_returnType_17361_; lean_object* v_expectedType_17362_; lean_object* v___x_17363_; 
v_a_17359_ = lean_ctor_get(v___x_17358_, 0);
lean_inc(v_a_17359_);
lean_dec_ref(v___x_17358_);
v_m_17360_ = lean_ctor_get(v_a_17359_, 0);
lean_inc_ref(v_m_17360_);
v_returnType_17361_ = lean_ctor_get(v_a_17359_, 1);
lean_inc_ref(v_returnType_17361_);
v_expectedType_17362_ = lean_ctor_get(v_a_17359_, 2);
lean_inc_ref(v_expectedType_17362_);
lean_dec(v_a_17359_);
lean_inc(v_a_17355_);
lean_inc_ref(v_a_17354_);
lean_inc(v_a_17353_);
lean_inc_ref(v_a_17352_);
lean_inc(v_a_17351_);
lean_inc_ref(v_a_17350_);
v___x_17363_ = l_Lean_Elab_Term_exprToSyntax(v_m_17360_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17363_) == 0)
{
lean_object* v_a_17364_; lean_object* v___x_17365_; 
v_a_17364_ = lean_ctor_get(v___x_17363_, 0);
lean_inc(v_a_17364_);
lean_dec_ref(v___x_17363_);
lean_inc(v_a_17355_);
lean_inc_ref(v_a_17354_);
lean_inc(v_a_17353_);
lean_inc_ref(v_a_17352_);
lean_inc(v_a_17351_);
lean_inc_ref(v_a_17350_);
v___x_17365_ = l_Lean_Elab_Term_exprToSyntax(v_returnType_17361_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17365_) == 0)
{
lean_object* v_a_17366_; lean_object* v___x_17367_; 
v_a_17366_ = lean_ctor_get(v___x_17365_, 0);
lean_inc(v_a_17366_);
lean_dec_ref(v___x_17365_);
lean_inc(v_a_17355_);
lean_inc_ref(v_a_17354_);
lean_inc(v_a_17353_);
lean_inc_ref(v_a_17352_);
lean_inc(v_a_17351_);
lean_inc_ref(v_a_17350_);
lean_inc(v_a_17366_);
lean_inc(v_a_17364_);
lean_inc(v_stx_17348_);
v___x_17367_ = l_Lean_Elab_Term_Do_ToCodeBlock_run(v_stx_17348_, v_a_17364_, v_a_17366_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17367_) == 0)
{
lean_object* v_a_17368_; lean_object* v_code_17369_; lean_object* v___x_17370_; uint8_t v___x_17371_; lean_object* v___x_17372_; lean_object* v___x_17373_; lean_object* v___x_17374_; 
v_a_17368_ = lean_ctor_get(v___x_17367_, 0);
lean_inc(v_a_17368_);
lean_dec_ref(v___x_17367_);
v_code_17369_ = lean_ctor_get(v_a_17368_, 0);
lean_inc_ref(v_code_17369_);
lean_dec(v_a_17368_);
v___x_17370_ = ((lean_object*)(l_Lean_Elab_Term_Do_AltExpr_vars___redArg___closed__0));
v___x_17371_ = 0;
v___x_17372_ = lean_box(v___x_17371_);
v___x_17373_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_Do_ToTerm_run___boxed), 7, 5);
lean_closure_set(v___x_17373_, 0, v_code_17369_);
lean_closure_set(v___x_17373_, 1, v_a_17364_);
lean_closure_set(v___x_17373_, 2, v_a_17366_);
lean_closure_set(v___x_17373_, 3, v___x_17370_);
lean_closure_set(v___x_17373_, 4, v___x_17372_);
lean_inc_ref(v_a_17354_);
lean_inc_ref(v_a_17350_);
v___x_17374_ = l_Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0___redArg(v___x_17373_, v_a_17350_, v_a_17351_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17374_) == 0)
{
lean_object* v_a_17375_; lean_object* v___y_17377_; lean_object* v___y_17378_; lean_object* v___y_17379_; lean_object* v___y_17380_; lean_object* v___y_17381_; lean_object* v___y_17382_; lean_object* v___x_17390_; lean_object* v___x_17391_; lean_object* v_a_17392_; uint8_t v___x_17393_; 
v_a_17375_ = lean_ctor_get(v___x_17374_, 0);
lean_inc(v_a_17375_);
lean_dec_ref(v___x_17374_);
v___x_17390_ = ((lean_object*)(l_Lean_Elab_Term_Do_elabDo___closed__0));
v___x_17391_ = l_Lean_isTracingEnabledFor___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__0___redArg(v___x_17390_, v_a_17354_);
v_a_17392_ = lean_ctor_get(v___x_17391_, 0);
lean_inc(v_a_17392_);
lean_dec_ref(v___x_17391_);
v___x_17393_ = lean_unbox(v_a_17392_);
lean_dec(v_a_17392_);
if (v___x_17393_ == 0)
{
v___y_17377_ = v_a_17350_;
v___y_17378_ = v_a_17351_;
v___y_17379_ = v_a_17352_;
v___y_17380_ = v_a_17353_;
v___y_17381_ = v_a_17354_;
v___y_17382_ = v_a_17355_;
goto v___jp_17376_;
}
else
{
lean_object* v___x_17394_; lean_object* v___x_17395_; 
lean_inc(v_a_17375_);
v___x_17394_ = l_Lean_MessageData_ofSyntax(v_a_17375_);
v___x_17395_ = l_Lean_addTrace___at___00Lean_Elab_liftMacroM___at___00Lean_Elab_Term_Do_concat_spec__0_spec__1___redArg(v___x_17390_, v___x_17394_, v_a_17352_, v_a_17353_, v_a_17354_, v_a_17355_);
if (lean_obj_tag(v___x_17395_) == 0)
{
lean_dec_ref(v___x_17395_);
v___y_17377_ = v_a_17350_;
v___y_17378_ = v_a_17351_;
v___y_17379_ = v_a_17352_;
v___y_17380_ = v_a_17353_;
v___y_17381_ = v_a_17354_;
v___y_17382_ = v_a_17355_;
goto v___jp_17376_;
}
else
{
lean_object* v_a_17396_; lean_object* v___x_17397_; 
lean_dec(v_a_17375_);
lean_dec_ref(v_expectedType_17362_);
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17396_ = lean_ctor_get(v___x_17395_, 0);
lean_inc(v_a_17396_);
lean_dec_ref(v___x_17395_);
v___x_17397_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17397_, 0, v_a_17396_);
return v___x_17397_;
}
}
v___jp_17376_:
{
lean_object* v___x_17383_; uint8_t v___x_17384_; lean_object* v___x_17385_; lean_object* v___x_17386_; lean_object* v___x_17387_; lean_object* v___x_17388_; lean_object* v___x_17389_; 
v___x_17383_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17383_, 0, v_expectedType_17362_);
v___x_17384_ = 1;
v___x_17385_ = lean_box(0);
v___x_17386_ = lean_box(v___x_17384_);
v___x_17387_ = lean_box(v___x_17384_);
lean_inc(v_a_17375_);
v___x_17388_ = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabTermEnsuringType___boxed), 12, 5);
lean_closure_set(v___x_17388_, 0, v_a_17375_);
lean_closure_set(v___x_17388_, 1, v___x_17383_);
lean_closure_set(v___x_17388_, 2, v___x_17386_);
lean_closure_set(v___x_17388_, 3, v___x_17387_);
lean_closure_set(v___x_17388_, 4, v___x_17385_);
v___x_17389_ = l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg(v_stx_17348_, v_a_17375_, v___x_17388_, v___y_17377_, v___y_17378_, v___y_17379_, v___y_17380_, v___y_17381_, v___y_17382_);
return v___x_17389_;
}
}
else
{
lean_object* v_a_17398_; lean_object* v___x_17399_; 
lean_dec_ref(v_expectedType_17362_);
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17398_ = lean_ctor_get(v___x_17374_, 0);
lean_inc(v_a_17398_);
lean_dec_ref(v___x_17374_);
v___x_17399_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17399_, 0, v_a_17398_);
return v___x_17399_;
}
}
else
{
lean_object* v_a_17400_; lean_object* v___x_17401_; 
lean_dec(v_a_17366_);
lean_dec(v_a_17364_);
lean_dec_ref(v_expectedType_17362_);
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17400_ = lean_ctor_get(v___x_17367_, 0);
lean_inc(v_a_17400_);
lean_dec_ref(v___x_17367_);
v___x_17401_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17401_, 0, v_a_17400_);
return v___x_17401_;
}
}
else
{
lean_object* v_a_17402_; lean_object* v___x_17403_; 
lean_dec(v_a_17364_);
lean_dec_ref(v_expectedType_17362_);
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17402_ = lean_ctor_get(v___x_17365_, 0);
lean_inc(v_a_17402_);
lean_dec_ref(v___x_17365_);
v___x_17403_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17403_, 0, v_a_17402_);
return v___x_17403_;
}
}
else
{
lean_object* v_a_17404_; lean_object* v___x_17405_; 
lean_dec_ref(v_expectedType_17362_);
lean_dec_ref(v_returnType_17361_);
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17404_ = lean_ctor_get(v___x_17363_, 0);
lean_inc(v_a_17404_);
lean_dec_ref(v___x_17363_);
v___x_17405_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17405_, 0, v_a_17404_);
return v___x_17405_;
}
}
else
{
lean_object* v_a_17406_; lean_object* v___x_17407_; 
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_stx_17348_);
v_a_17406_ = lean_ctor_get(v___x_17358_, 0);
lean_inc(v_a_17406_);
lean_dec_ref(v___x_17358_);
v___x_17407_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17407_, 0, v_a_17406_);
return v___x_17407_;
}
}
else
{
lean_object* v_a_17408_; lean_object* v___x_17409_; 
lean_dec(v_a_17355_);
lean_dec_ref(v_a_17354_);
lean_dec(v_a_17353_);
lean_dec_ref(v_a_17352_);
lean_dec(v_a_17351_);
lean_dec_ref(v_a_17350_);
lean_dec(v_expectedType_x3f_17349_);
lean_dec(v_stx_17348_);
v_a_17408_ = lean_ctor_get(v___x_17357_, 0);
lean_inc(v_a_17408_);
lean_dec_ref(v___x_17357_);
v___x_17409_ = lean_alloc_ctor(1, 1, 0);
lean_ctor_set(v___x_17409_, 0, v_a_17408_);
return v___x_17409_;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_Do_elabDo___boxed(lean_object* v_stx_17410_, lean_object* v_expectedType_x3f_17411_, lean_object* v_a_17412_, lean_object* v_a_17413_, lean_object* v_a_17414_, lean_object* v_a_17415_, lean_object* v_a_17416_, lean_object* v_a_17417_, lean_object* v_a_17418_){
_start:
{
lean_object* v_res_17419_; 
v_res_17419_ = l_Lean_Elab_Term_Do_elabDo(v_stx_17410_, v_expectedType_x3f_17411_, v_a_17412_, v_a_17413_, v_a_17414_, v_a_17415_, v_a_17416_, v_a_17417_);
return v_res_17419_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0(lean_object* v_00_u03b1_17420_, lean_object* v_beforeStx_17421_, lean_object* v_afterStx_17422_, lean_object* v_x_17423_, lean_object* v___y_17424_, lean_object* v___y_17425_, lean_object* v___y_17426_, lean_object* v___y_17427_, lean_object* v___y_17428_, lean_object* v___y_17429_){
_start:
{
lean_object* v___x_17431_; 
v___x_17431_ = l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___redArg(v_beforeStx_17421_, v_afterStx_17422_, v_x_17423_, v___y_17424_, v___y_17425_, v___y_17426_, v___y_17427_, v___y_17428_, v___y_17429_);
return v___x_17431_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0___boxed(lean_object* v_00_u03b1_17432_, lean_object* v_beforeStx_17433_, lean_object* v_afterStx_17434_, lean_object* v_x_17435_, lean_object* v___y_17436_, lean_object* v___y_17437_, lean_object* v___y_17438_, lean_object* v___y_17439_, lean_object* v___y_17440_, lean_object* v___y_17441_, lean_object* v___y_17442_){
_start:
{
lean_object* v_res_17443_; 
v_res_17443_ = l_Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0(v_00_u03b1_17432_, v_beforeStx_17433_, v_afterStx_17434_, v_x_17435_, v___y_17436_, v___y_17437_, v___y_17438_, v___y_17439_, v___y_17440_, v___y_17441_);
return v_res_17443_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0(lean_object* v_00_u03b1_17444_, lean_object* v_stx_17445_, lean_object* v_output_17446_, lean_object* v_x_17447_, lean_object* v___y_17448_, lean_object* v___y_17449_, lean_object* v___y_17450_, lean_object* v___y_17451_, lean_object* v___y_17452_, lean_object* v___y_17453_){
_start:
{
lean_object* v___x_17455_; 
v___x_17455_ = l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___redArg(v_stx_17445_, v_output_17446_, v_x_17447_, v___y_17448_, v___y_17449_, v___y_17450_, v___y_17451_, v___y_17452_, v___y_17453_);
return v___x_17455_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0___boxed(lean_object* v_00_u03b1_17456_, lean_object* v_stx_17457_, lean_object* v_output_17458_, lean_object* v_x_17459_, lean_object* v___y_17460_, lean_object* v___y_17461_, lean_object* v___y_17462_, lean_object* v___y_17463_, lean_object* v___y_17464_, lean_object* v___y_17465_, lean_object* v___y_17466_){
_start:
{
lean_object* v_res_17467_; 
v_res_17467_ = l_Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0(v_00_u03b1_17456_, v_stx_17457_, v_output_17458_, v_x_17459_, v___y_17460_, v___y_17461_, v___y_17462_, v___y_17463_, v___y_17464_, v___y_17465_);
return v_res_17467_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2(lean_object* v___y_17468_, lean_object* v___y_17469_, lean_object* v___y_17470_, lean_object* v___y_17471_, lean_object* v___y_17472_, lean_object* v___y_17473_){
_start:
{
lean_object* v___x_17475_; 
v___x_17475_ = l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___redArg(v___y_17473_);
return v___x_17475_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2___boxed(lean_object* v___y_17476_, lean_object* v___y_17477_, lean_object* v___y_17478_, lean_object* v___y_17479_, lean_object* v___y_17480_, lean_object* v___y_17481_, lean_object* v___y_17482_){
_start:
{
lean_object* v_res_17483_; 
v_res_17483_ = l_Lean_Elab_getResetInfoTrees___at___00Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1_spec__2(v___y_17476_, v___y_17477_, v___y_17478_, v___y_17479_, v___y_17480_, v___y_17481_);
lean_dec(v___y_17481_);
lean_dec_ref(v___y_17480_);
lean_dec(v___y_17479_);
lean_dec_ref(v___y_17478_);
lean_dec(v___y_17477_);
lean_dec_ref(v___y_17476_);
return v_res_17483_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1(lean_object* v_00_u03b1_17484_, lean_object* v_x_17485_, lean_object* v_mkInfoTree_17486_, lean_object* v___y_17487_, lean_object* v___y_17488_, lean_object* v___y_17489_, lean_object* v___y_17490_, lean_object* v___y_17491_, lean_object* v___y_17492_){
_start:
{
lean_object* v___x_17494_; 
v___x_17494_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___redArg(v_x_17485_, v_mkInfoTree_17486_, v___y_17487_, v___y_17488_, v___y_17489_, v___y_17490_, v___y_17491_, v___y_17492_);
return v___x_17494_;
}
}
LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1___boxed(lean_object* v_00_u03b1_17495_, lean_object* v_x_17496_, lean_object* v_mkInfoTree_17497_, lean_object* v___y_17498_, lean_object* v___y_17499_, lean_object* v___y_17500_, lean_object* v___y_17501_, lean_object* v___y_17502_, lean_object* v___y_17503_, lean_object* v___y_17504_){
_start:
{
lean_object* v_res_17505_; 
v_res_17505_ = l_Lean_Elab_withInfoTreeContext___at___00Lean_Elab_withMacroExpansionInfo___at___00Lean_Elab_Term_withMacroExpansion___at___00Lean_Elab_Term_Do_elabDo_spec__0_spec__0_spec__1(v_00_u03b1_17495_, v_x_17496_, v_mkInfoTree_17497_, v___y_17498_, v___y_17499_, v___y_17500_, v___y_17501_, v___y_17502_, v___y_17503_);
return v_res_17505_;
}
}
lean_object* runtime_initialize_Lean_Elab_BindersUtil(uint8_t builtin);
lean_object* runtime_initialize_Lean_Elab_PatternVar(uint8_t builtin);
lean_object* runtime_initialize_Lean_Elab_Quotation_Util(uint8_t builtin);
lean_object* runtime_initialize_Init_Omega(uint8_t builtin);
static bool _G_runtime_initialized = false;
LEAN_EXPORT lean_object* runtime_initialize_Lean_Elab_Do_Legacy(uint8_t builtin) {
lean_object * res;
if (_G_runtime_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_runtime_initialized = true;
res = runtime_initialize_Lean_Elab_BindersUtil(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = runtime_initialize_Lean_Elab_PatternVar(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = runtime_initialize_Lean_Elab_Quotation_Util(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = runtime_initialize_Init_Omega(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_Lean_Elab_Term_Do_ToTerm_instInhabitedKind = _init_l_Lean_Elab_Term_Do_ToTerm_instInhabitedKind();
return lean_io_result_mk_ok(lean_box(0));
}
lean_object* runtime_initialize_Lean_Parser_Do(uint8_t builtin);
static bool _G_meta_initialized = false;
LEAN_EXPORT lean_object* meta_initialize_Lean_Elab_Do_Legacy(uint8_t builtin) {
lean_object * res;
if (_G_meta_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_meta_initialized = true;
res = runtime_initialize_Lean_Parser_Do(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
return lean_io_result_mk_ok(lean_box(0));
}
lean_object* initialize_Lean_Elab_BindersUtil(uint8_t builtin);
lean_object* initialize_Lean_Elab_PatternVar(uint8_t builtin);
lean_object* initialize_Lean_Elab_Quotation_Util(uint8_t builtin);
lean_object* initialize_Lean_Parser_Do(uint8_t builtin);
lean_object* initialize_Init_Omega(uint8_t builtin);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab_Do_Legacy(uint8_t builtin) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Lean_Elab_BindersUtil(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_PatternVar(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_Quotation_Util(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Parser_Do(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_Omega(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = runtime_initialize_Lean_Elab_Do_Legacy(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = meta_initialize_Lean_Elab_Do_Legacy(builtin);
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
return initialize_Lean_Elab_Do_Legacy(builtin);
}
#ifdef __cplusplus
}
#endif
