aboutsummaryrefslogtreecommitdiff
path: root/generated_definitions/ast/riscv-ast-raw.txt
blob: 3a34ad841be67be8d7cbbcb412e9cb1097f9ddd6 (plain)
1
Defs([(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_default(DT_aux(DT_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("abs_int"),TODO: pp-raw l),[(Id_aux(Id("abs_int_atom"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_option"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("is_none"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("is_some"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("eq_unit"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("neq_int"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("neq_bool"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("=="),TODO: pp-raw l),[(Id_aux(Id("eq_int"),TODO: pp-raw l));(Id_aux(Id("eq_bit"),TODO: pp-raw l));(Id_aux(Id("eq_bool"),TODO: pp-raw l));(Id_aux(Id("eq_unit"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("!="),TODO: pp-raw l),[(Id_aux(Id("neq_int"),TODO: pp-raw l));(Id_aux(Id("neq_bool"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("|"),TODO: pp-raw l),[(Id_aux(Id("or_bool"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("&"),TODO: pp-raw l),[(Id_aux(Id("and_bool"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("<="),TODO: pp-raw l),[(Id_aux(Id("lteq_int"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("<"),TODO: pp-raw l),[(Id_aux(Id("lt_int"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator(">="),TODO: pp-raw l),[(Id_aux(Id("gteq_int"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator(">"),TODO: pp-raw l),[(Id_aux(Id("gt_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("atom"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("__id"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("__size"),TODO: pp-raw l),[(Id_aux(Id("__id"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("+"),TODO: pp-raw l),[(Id_aux(Id("add_atom"),TODO: pp-raw l));(Id_aux(Id("add_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("-"),TODO: pp-raw l),[(Id_aux(Id("sub_atom"),TODO: pp-raw l));(Id_aux(Id("sub_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("negate"),TODO: pp-raw l),[(Id_aux(Id("negate_atom"),TODO: pp-raw l));(Id_aux(Id("negate_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("*"),TODO: pp-raw l),[(Id_aux(Id("mult_atom"),TODO: pp-raw l));(Id_aux(Id("mult_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("shl_int"),TODO: pp-raw l),[(Id_aux(Id("_shl8"),TODO: pp-raw l));(Id_aux(Id("_shl32"),TODO: pp-raw l));(Id_aux(Id("_shl_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("shr_int"),TODO: pp-raw l),[(Id_aux(Id("_shr32"),TODO: pp-raw l));(Id_aux(Id("_shr_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("abs_int"),TODO: pp-raw l),[(Id_aux(Id("abs_int_plain"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("=="),TODO: pp-raw l),[(Id_aux(Id("eq_string"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("concat_str_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("concat_str_dec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("=="),TODO: pp-raw l),[(Id_aux(Id("eq_bit"),TODO: pp-raw l));(Id_aux(Id("eq_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("neq_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Operator("!="),TODO: pp-raw l),[(Id_aux(Id("neq_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("length"),TODO: pp-raw l),[(Id_aux(Id("bitvector_length"),TODO: pp-raw l));(Id_aux(Id("vector_length"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("sail_mask"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Operator("^"),TODO: pp-raw l),[(Id_aux(Id("sail_mask"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("append"),TODO: pp-raw l),[(Id_aux(Id("bitvector_concat"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("vector_access"),TODO: pp-raw l),[(Id_aux(Id("bitvector_access"),TODO: pp-raw l));(Id_aux(Id("plain_vector_access"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("vector_update"),TODO: pp-raw l),[(Id_aux(Id("bitvector_update"),TODO: pp-raw l));(Id_aux(Id("plain_vector_update"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("+"),TODO: pp-raw l),[(Id_aux(Id("add_bits"),TODO: pp-raw l));(Id_aux(Id("add_bits_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("&"),TODO: pp-raw l),[(Id_aux(Id("and_vec"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("|"),TODO: pp-raw l),[(Id_aux(Id("or_vec"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("sail_ones"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("slice_mask"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("__size"),TODO: pp-raw l),[(Id_aux(Id("__id"),TODO: pp-raw l));(Id_aux(Id("bitvector_length"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_regfp"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_niafp"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_diafp"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("read_kind_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_read_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_read_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("write_kind_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_write_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_write_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("a64_barrier_domain_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_a64_barrier_domain"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_a64_barrier_domain"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("a64_barrier_type_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_a64_barrier_type"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_a64_barrier_type"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_barrier_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("trans_kind_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_trans_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_trans_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("cache_op_kind_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_cache_op_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_cache_op_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_instruction_kind"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("=="),TODO: pp-raw l),[(Id_aux(Id("eq_string"),TODO: pp-raw l));(Id_aux(Id("eq_anything"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("vector_update"),TODO: pp-raw l),[(Id_aux(Id("any_vector_update"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("append"),TODO: pp-raw l),[(Id_aux(Id("vector_concat"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("~"),TODO: pp-raw l),[(Id_aux(Id("not_bool"),TODO: pp-raw l));(Id_aux(Id("not_vec"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("neq_vec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("neq_anything"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Operator("!="),TODO: pp-raw l),[(Id_aux(Id("neq_vec"),TODO: pp-raw l));(Id_aux(Id("neq_anything"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("&"),TODO: pp-raw l),[(Id_aux(Id("and_vec"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("|"),TODO: pp-raw l),[(Id_aux(Id("or_vec"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("string_of_bit"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("BitStr"),TODO: pp-raw l),[(Id_aux(Id("string_of_bits"),TODO: pp-raw l));(Id_aux(Id("string_of_bit"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("^"),TODO: pp-raw l),[(Id_aux(Id("xor_vec"),TODO: pp-raw l));(Id_aux(Id("int_power"),TODO: pp-raw l));(Id_aux(Id("concat_str"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("-"),TODO: pp-raw l),[(Id_aux(Id("sub_vec"),TODO: pp-raw l));(Id_aux(Id("sub_vec_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator("%"),TODO: pp-raw l),[(Id_aux(Id("emod_int"),TODO: pp-raw l));(Id_aux(Id("mod"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Id("min"),TODO: pp-raw l),[(Id_aux(Id("min_nat"),TODO: pp-raw l));(Id_aux(Id("min_int"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("max"),TODO: pp-raw l),[(Id_aux(Id("max_nat"),TODO: pp-raw l));(Id_aux(Id("max_int"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_config_print_instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_config_print_reg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_config_print_mem"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_config_print_platform"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("EXTS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("EXTZ"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("zeros_implicit"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("zeros"),TODO: pp-raw l),[(Id_aux(Id("zeros_implicit"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ones"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("bool_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("bit_to_bool"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fixity(Infix,4,Id_aux(Id("<_s"),TODO: pp-raw l)));(DEF_fixity(Infix,4,Id_aux(Id(">=_s"),TODO: pp-raw l)));(DEF_fixity(Infix,4,Id_aux(Id("<_u"),TODO: pp-raw l)));(DEF_fixity(Infix,4,Id_aux(Id(">=_u"),TODO: pp-raw l)));(DEF_fixity(Infix,4,Id_aux(Id("<=_u"),TODO: pp-raw l)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Operator("<_s"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Operator(">=_s"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Operator("<_u"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Operator(">=_u"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Operator("<=_u"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fixity(Infix,7,Id_aux(Id(">>"),TODO: pp-raw l)));(DEF_fixity(Infix,7,Id_aux(Id("<<"),TODO: pp-raw l)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_overload(Id_aux(Operator(">>"),TODO: pp-raw l),[(Id_aux(Id("shift_bits_right"),TODO: pp-raw l));(Id_aux(Id("shiftr"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Operator("<<"),TODO: pp-raw l),[(Id_aux(Id("shift_bits_left"),TODO: pp-raw l));(Id_aux(Id("shiftl"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("shift_right_arith64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(32),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("shift_right_arith32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("n_leading_spaces"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("spc_forwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("spc_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("spc_matches_prefix"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("opt_spc_forwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("opt_spc_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("opt_spc_matches_prefix"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("def_spc_forwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("def_spc_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("def_spc_matches_prefix"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_1_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_1_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_1_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_2_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_2_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_2_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_3_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_3_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_3_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_4_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_4_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_4_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_5_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_5_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_5_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_6_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_6_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_6_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_7_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_7_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_7_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_8_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_8_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_8_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_9_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_9_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_9_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_10_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_10_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_10_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_11_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_11_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_11_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_12_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_12_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_12_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_13_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_13_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_13_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_14_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_14_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_14_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_15_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_15_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_15_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_16_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_16_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_16_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_17_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_17_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_17_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_18_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_18_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_18_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_19_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_19_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_19_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_20_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_20_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_20_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_21_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_21_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_21_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_22_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_22_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_22_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_23_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_23_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_23_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_24_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_24_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_24_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_25_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_25_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_25_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_26_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_26_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_26_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_27_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_27_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_27_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_28_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_28_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_28_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_29_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_29_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_29_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_30_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_30_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_30_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_31_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_31_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_31_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_32_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_32_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_32_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_33_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_33_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_33_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_48_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_48_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_48_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_64_forwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_64_backwards_matches"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("hex_bits_64_backwards"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("mem_meta"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("default_meta"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("__WriteRAM_Meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("__ReadRAM_Meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("write_ram"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("write_ram_ea"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("read_ram"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_type(TODO:pp-raw type_def));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("ext_ptw"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("init_ext_ptw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("ext_exc_type"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_translate_exception"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("xlen_val"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("xlen_max_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("sub_atom"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("pow2"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(1),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("xlen_max_signed"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("sub_atom"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("pow2"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("sub_atom"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(1),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(1),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("xlen_min_signed"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("sub_atom"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(0),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("pow2"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("sub_atom"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(1),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("regidx_to_regno"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("creg2reg_idx"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("ra"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_bin("00001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("sp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Architecture_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_Architecture"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Architecture"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("Architecture"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("architecture"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("arch_xlen"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("arch_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Privilege_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_Privilege"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Privilege"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("privLevel_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("privLevel_of_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("privLevel_to_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("privLevel_to_str"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Retired_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_Retired"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Retired"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_AccessType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("word_width_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_word_width"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_word_width"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("InterruptType_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_InterruptType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_InterruptType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("interruptType_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_ExceptionType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("exceptionType_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_ExceptionType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("exceptionType_to_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("exceptionType_to_str"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_exception"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("not_implemented"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("internal_error"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("TrapVectorMode_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_TrapVectorMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_TrapVectorMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("trapVectorMode_of_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ExtStatus_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_ExtStatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_ExtStatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("extStatus_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("extStatus_of_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("SATPMode_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_SATPMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SATPMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("SATPMode"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("satp64Mode_of_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("uop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_uop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_uop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("bop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_bop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_bop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("iop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_iop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_iop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("sop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_sop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_sop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_rop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_rop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ropw_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_ropw"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_ropw"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("sopw_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_sopw"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_sopw"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("amoop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_amoop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_amoop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("csrop_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_csrop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_csrop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("sep"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string(","),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("def_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bool_bits"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bool_not_bits"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("size_bits"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("BYTE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("HALF"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("WORD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("DOUBLE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("BYTE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("b"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("HALF"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("h"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("WORD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("w"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("DOUBLE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("d"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("ext_access_type"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("Data"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("ext_access_type"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("default_write_acc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_id(Id_aux(Id("Data"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("accessType_to_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("accessType_to_str"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("zero_reg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("RegStr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("regval_from_reg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("regval_into_reg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("PC"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("nextPC"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("instbits"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("vector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(32),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("Xs"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x1"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x2"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x3"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x4"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x5"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x6"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x7"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x8"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x9"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x10"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x11"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x12"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x13"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x14"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x15"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x16"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x17"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x18"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x19"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x20"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x21"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x22"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x23"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x24"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x25"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x26"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x27"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x28"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x29"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x30"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("regtype"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("x31"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rX"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rvfi_wX"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("wX"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rX_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("wX_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("X"),TODO: pp-raw l),[(Id_aux(Id("rX_bits"),TODO: pp-raw l));(Id_aux(Id("wX_bits"),TODO: pp-raw l));(Id_aux(Id("rX"),TODO: pp-raw l));(Id_aux(Id("wX"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("reg_name_abi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("reg_name_abi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("reg_name"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("zero"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ra"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("gp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("tp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("fp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a6"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a7"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s6"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s7"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s8"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s9"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s10"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s11"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("t6"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("creg_name"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("s1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("a5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_base_regs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_arch_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_next_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_next_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("tick_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Privilege"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("cur_privilege"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("cur_inst"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Misa"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Misa"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_MXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_MXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_MXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MXL"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_MXL"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MXL"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_MXL"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_MXL"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_Z"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_Z"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_Z"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Z"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_Z"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Z"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_Z"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_Z"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_Y"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_Y"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_Y"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Y"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_Y"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Y"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_Y"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_Y"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_X"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_X"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_X"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_X"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_X"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_W"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_W"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_W"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_W"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_W"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_V"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_V"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_V"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_V"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_V"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_U"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_U"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_U"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_U"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_U"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_T"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_T"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_T"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_T"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_T"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_T"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_T"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_T"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_S"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_S"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_S"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_S"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_S"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_S"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_S"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_S"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_R"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_R"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_R"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_R"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_R"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_Q"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_Q"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_Q"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Q"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_Q"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Q"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_Q"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_Q"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_P"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_P"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_P"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_P"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_P"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_P"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_P"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_P"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_O"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_O"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_O"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_O"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_O"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_O"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_O"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_O"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_N"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_N"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_N"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_N"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_N"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_N"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_N"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_N"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_M"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_M"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_M"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_M"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_M"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_M"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_M"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_M"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_L"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_L"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_L"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_L"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_L"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_K"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_K"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_K"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_K"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_K"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_K"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_K"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_K"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_J"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_J"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_J"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_J"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_J"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_J"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_J"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_J"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_I"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_I"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_I"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_I"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_I"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_I"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_I"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_I"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_H"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_H"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_H"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_H"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_H"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_H"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_H"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_H"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_G"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_G"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_G"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_G"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_G"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_F"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_F"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_F"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_F"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_F"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_F"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_F"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_F"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_E"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_E"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_E"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_E"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_E"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_E"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_E"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_E"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_D"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_D"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_D"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_D"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_D"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_C"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_C"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_C"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_C"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_C"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_C"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_C"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_C"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_B"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_B"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_B"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_B"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_B"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_B"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_B"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_B"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Misa_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Misa_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Misa_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_A"),TODO: pp-raw l),[(Id_aux(Id("_update_Misa_A"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_A"),TODO: pp-raw l),[(Id_aux(Id("_get_Misa_A"),TODO: pp-raw l));(Id_aux(Id("_set_Misa_A"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Misa"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("misa"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Misa"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_misa"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveAtomics"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveRVC"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveMulDiv"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveSupMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveUsrMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("haveNExt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Mstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Mstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SD"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_SD"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SD"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_SD"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_SD"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_TSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_TSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_TSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_TSR"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_TSR"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_TSR"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_TSR"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_TSR"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_TW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_TW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_TW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_TW"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_TW"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_TW"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_TW"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_TW"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_TVM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_TVM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_TVM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_TVM"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_TVM"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_TVM"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_TVM"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_TVM"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MXR"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_MXR"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MXR"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_MXR"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_MXR"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SUM"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_SUM"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SUM"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_SUM"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_SUM"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_MPRV"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_MPRV"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_MPRV"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MPRV"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_MPRV"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MPRV"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_MPRV"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_MPRV"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_XS"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_XS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_XS"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_XS"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_XS"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_FS"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_FS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_FS"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_FS"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_FS"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_MPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_MPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_MPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MPP"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_MPP"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MPP"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_MPP"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_MPP"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SPP"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_SPP"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SPP"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_SPP"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_SPP"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_MPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_MPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_MPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_MPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_MPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_MPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_SPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_SPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_SPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_UPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_UPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_UPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_MIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_MIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_MIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_MIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_MIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_MIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_SIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_SIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_SIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Mstatus_UIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Mstatus_UIE"),TODO: pp-raw l));(Id_aux(Id("_set_Mstatus_UIE"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mstatus"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Privilege"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("effectivePrivilege"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("arch_xlen"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_mstatus_SXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_mstatus_SXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("arch_xlen"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_mstatus_UXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_mstatus_UXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_mstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Architecture"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("cur_Architecture"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("in32BitMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Minterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Minterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_MEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_MEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_MEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_MEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_MEI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_MEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_SEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_SEI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_SEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_UEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_UEI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_UEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_MTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_MTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_MTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MTI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_MTI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MTI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_MTI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_MTI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_STI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_STI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_STI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_STI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_STI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UTI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_UTI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UTI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_UTI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_UTI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_MSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_MSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_MSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MSI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_MSI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MSI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_MSI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_MSI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SSI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_SSI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SSI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_SSI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_SSI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Minterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Minterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Minterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_USI"),TODO: pp-raw l),[(Id_aux(Id("_update_Minterrupts_USI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_USI"),TODO: pp-raw l),[(Id_aux(Id("_get_Minterrupts_USI"),TODO: pp-raw l));(Id_aux(Id("_set_Minterrupts_USI"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mip"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mie"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mideleg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_mip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_mie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_mideleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Medeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Medeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SAMO_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SAMO_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_SAMO_Page_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Load_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Load_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Load_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Load_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Load_Page_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Load_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Load_Page_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Load_Page_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Fetch_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Fetch_Page_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Fetch_Page_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_MEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_MEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_MEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_MEnvCall"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_MEnvCall"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_MEnvCall"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_SEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_SEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_SEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_SEnvCall"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_SEnvCall"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_SEnvCall"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_UEnvCall"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_UEnvCall"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_UEnvCall"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SAMO_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SAMO_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_SAMO_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SAMO_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SAMO_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_SAMO_Addr_Align"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Load_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Load_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Load_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Load_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Load_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Load_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Load_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Load_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Load_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Load_Addr_Align"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Breakpoint"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Breakpoint"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Breakpoint"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Breakpoint"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Breakpoint"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Illegal_Instr"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Illegal_Instr"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Illegal_Instr"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Illegal_Instr"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Illegal_Instr"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Fetch_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Fetch_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Fetch_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Fetch_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Fetch_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Medeleg_Fetch_Addr_Align"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Medeleg"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("medeleg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Medeleg"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_medeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Mtvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Mtvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mtvec_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mtvec_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mtvec_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Mtvec_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Mtvec_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Mtvec_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mtvec_Base"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mtvec_Base"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mtvec_Base"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Base"),TODO: pp-raw l),[(Id_aux(Id("_update_Mtvec_Base"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Base"),TODO: pp-raw l),[(Id_aux(Id("_get_Mtvec_Base"),TODO: pp-raw l));(Id_aux(Id("_set_Mtvec_Base"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mtvec_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mtvec_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mtvec_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Mode"),TODO: pp-raw l),[(Id_aux(Id("_update_Mtvec_Mode"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Mode"),TODO: pp-raw l),[(Id_aux(Id("_get_Mtvec_Mode"),TODO: pp-raw l));(Id_aux(Id("_set_Mtvec_Mode"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mtvec"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mtvec"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mtvec"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_tvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Mcause"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Mcause"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mcause_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mcause_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mcause_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Mcause_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Mcause_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Mcause_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mcause_IsInterrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mcause_IsInterrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mcause_IsInterrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_IsInterrupt"),TODO: pp-raw l),[(Id_aux(Id("_update_Mcause_IsInterrupt"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_IsInterrupt"),TODO: pp-raw l),[(Id_aux(Id("_get_Mcause_IsInterrupt"),TODO: pp-raw l));(Id_aux(Id("_set_Mcause_IsInterrupt"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Mcause_Cause"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Mcause_Cause"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Mcause_Cause"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Cause"),TODO: pp-raw l),[(Id_aux(Id("_update_Mcause_Cause"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Cause"),TODO: pp-raw l),[(Id_aux(Id("_get_Mcause_Cause"),TODO: pp-raw l));(Id_aux(Id("_set_Mcause_Cause"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mcause"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mcause"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("tvec_addr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mepc"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_xepc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pc_alignment_mask"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mtval"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mscratch"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Counteren"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Counteren"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Counteren_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Counteren_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Counteren_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Counteren_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Counteren_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Counteren_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Counteren_HPM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Counteren_HPM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Counteren_HPM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_HPM"),TODO: pp-raw l),[(Id_aux(Id("_update_Counteren_HPM"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_HPM"),TODO: pp-raw l),[(Id_aux(Id("_get_Counteren_HPM"),TODO: pp-raw l));(Id_aux(Id("_set_Counteren_HPM"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Counteren_IR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Counteren_IR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Counteren_IR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_IR"),TODO: pp-raw l),[(Id_aux(Id("_update_Counteren_IR"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_IR"),TODO: pp-raw l),[(Id_aux(Id("_get_Counteren_IR"),TODO: pp-raw l));(Id_aux(Id("_set_Counteren_IR"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Counteren_TM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Counteren_TM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Counteren_TM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_TM"),TODO: pp-raw l),[(Id_aux(Id("_update_Counteren_TM"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_TM"),TODO: pp-raw l),[(Id_aux(Id("_get_Counteren_TM"),TODO: pp-raw l));(Id_aux(Id("_set_Counteren_TM"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Counteren_CY"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Counteren_CY"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Counteren_CY"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_CY"),TODO: pp-raw l),[(Id_aux(Id("_update_Counteren_CY"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_CY"),TODO: pp-raw l),[(Id_aux(Id("_get_Counteren_CY"),TODO: pp-raw l));(Id_aux(Id("_set_Counteren_CY"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Counteren"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mcounteren"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Counteren"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("scounteren"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Counteren"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_mcounteren"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Counteren"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_scounteren"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("mcycle"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("mtime"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("minstret"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("minstret_written"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("retire_instruction"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(32),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("mvendorid"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mimpid"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("marchid"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("mhartid"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Sstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Sstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_SD"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SD"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_SD"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SD"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_SD"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_SD"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_MXR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_MXR"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_MXR"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_MXR"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_MXR"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_MXR"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_SUM"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SUM"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_SUM"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SUM"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_SUM"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_SUM"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_XS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_XS"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_XS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_XS"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_XS"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_XS"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_FS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_FS"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_FS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_FS"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_FS"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_FS"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_SPP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SPP"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_SPP"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SPP"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_SPP"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_SPP"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_SPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_SPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_SPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_SPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_UPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_UPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_UPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_SIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_SIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_SIE"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_SIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sstatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Sstatus_UIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Sstatus_UIE"),TODO: pp-raw l));(Id_aux(Id("_set_Sstatus_UIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("arch_xlen"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_sstatus_UXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_sstatus_UXL"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_mstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_sstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_sstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Sedeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Sedeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_UEnvCall"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_UEnvCall"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UEnvCall"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_UEnvCall"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_UEnvCall"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SAMO_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SAMO_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_SAMO_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SAMO_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SAMO_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_SAMO_Addr_Align"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Load_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Load_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Load_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Load_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Load_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Load_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Load_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Load_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Load_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Load_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Load_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Load_Addr_Align"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Breakpoint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Breakpoint"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Breakpoint"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Breakpoint"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Breakpoint"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Breakpoint"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Illegal_Instr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Illegal_Instr"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Illegal_Instr"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Illegal_Instr"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Illegal_Instr"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Illegal_Instr"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Fetch_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Fetch_Access_Fault"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Fetch_Access_Fault"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Fetch_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_update_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Fetch_Addr_Align"),TODO: pp-raw l),[(Id_aux(Id("_get_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l));(Id_aux(Id("_set_Sedeleg_Fetch_Addr_Align"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sedeleg"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("sedeleg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sedeleg"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_sedeleg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Sinterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Sinterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_SEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_SEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_SEI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_SEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_UEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_UEI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_UEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_STI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_STI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_STI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_STI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_STI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_STI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UTI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_UTI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UTI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_UTI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_UTI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_SSI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_SSI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_SSI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_SSI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_SSI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_SSI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Sinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Sinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Sinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_USI"),TODO: pp-raw l),[(Id_aux(Id("_update_Sinterrupts_USI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_USI"),TODO: pp-raw l),[(Id_aux(Id("_get_Sinterrupts_USI"),TODO: pp-raw l));(Id_aux(Id("_set_Sinterrupts_USI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_mip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_mie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_sip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_sip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_sie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Minterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_sie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("sideleg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mtvec"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("stvec"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("sscratch"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("sepc"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mcause"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("scause"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("stval"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Satp64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Satp64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp64_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp64_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp64_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp64_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp64_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Satp64_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp64_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp64_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp64_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Mode"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp64_Mode"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Mode"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp64_Mode"),TODO: pp-raw l));(Id_aux(Id("_set_Satp64_Mode"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp64_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp64_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp64_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Asid"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp64_Asid"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Asid"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp64_Asid"),TODO: pp-raw l));(Id_aux(Id("_set_Satp64_Asid"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp64_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp64_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp64_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPN"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp64_PPN"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPN"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp64_PPN"),TODO: pp-raw l));(Id_aux(Id("_set_Satp64_PPN"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_satp64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Satp32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Satp32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp32_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp32_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp32_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp32_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp32_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Satp32_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp32_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp32_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp32_Mode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Mode"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp32_Mode"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Mode"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp32_Mode"),TODO: pp-raw l));(Id_aux(Id("_set_Satp32_Mode"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp32_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp32_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp32_Asid"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Asid"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp32_Asid"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Asid"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp32_Asid"),TODO: pp-raw l));(Id_aux(Id("_set_Satp32_Asid"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Satp32_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Satp32_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Satp32_PPN"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPN"),TODO: pp-raw l),[(Id_aux(Id("_update_Satp32_PPN"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPN"),TODO: pp-raw l),[(Id_aux(Id("_get_Satp32_PPN"),TODO: pp-raw l));(Id_aux(Id("_set_Satp32_PPN"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(32),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_satp32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("tselect"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("PmpAddrMatchType_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_PmpAddrMatchType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_PmpAddrMatchType"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpAddrMatchType_of_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpAddrMatchType_to_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Pmpcfg_ent"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Pmpcfg_ent"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_L"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_L"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_L"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_L"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_L"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_L"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_A"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_A"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_A"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_A"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_A"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_X"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_X"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_X"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_X"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_X"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_W"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_W"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_W"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_W"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_W"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Pmpcfg_ent_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Pmpcfg_ent_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Pmpcfg_ent_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_R"),TODO: pp-raw l),[(Id_aux(Id("_update_Pmpcfg_ent_R"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_R"),TODO: pp-raw l),[(Id_aux(Id("_get_Pmpcfg_ent_R"),TODO: pp-raw l));(Id_aux(Id("_set_Pmpcfg_ent_R"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp0cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp1cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp2cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp3cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp4cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp5cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp6cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp7cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp8cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp9cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp10cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp11cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp12cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp13cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp14cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmp15cfg"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr0"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr1"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr2"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr3"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr4"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr5"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr6"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr7"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr8"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr9"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr10"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr11"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr12"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr13"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr14"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("pmpaddr15"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpReadCfgReg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Pmpcfg_ent"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpWriteCfg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpWriteCfgReg"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpWriteAddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("pmp_addr_range"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpAddrRange"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpCheckRWX"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpCheckPerms"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpAddrMatch_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_pmpAddrMatch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_pmpAddrMatch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("pmpAddrMatch"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpMatchAddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpMatch_of_num"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("num_of_pmpMatch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_pmpMatch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("pmpMatch"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpMatchEntry"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_bounded_gt(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_constant(0),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("ExceptionType"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmpCheck"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_pmp"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_init_regs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_rvfi_init"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_check_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_check_CSR_fail"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Ext_FetchAddr_Check"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Ext_ControlAddr_Check"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Ext_DataAddr_Check"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("Ext_FetchAddr_Check"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("ext_fetch_addr_error"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_fetch_check_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_handle_fetch_check_error"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("Ext_ControlAddr_Check"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("ext_control_addr_error"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_control_check_addr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("Ext_ControlAddr_Check"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("ext_control_addr_error"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_control_check_pc"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_handle_control_check_error"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("Ext_DataAddr_Check"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("ext_data_addr_error"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_data_get_addr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_handle_data_check_error"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_veto_disable_C"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ustatus"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("004"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("uie"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("005"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("utvec"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("040"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("uscratch"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("041"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("uepc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("042"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ucause"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("043"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("utval"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("044"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("uip"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("fflags"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("002"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("frm"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("003"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("fcsr"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C00"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("cycle"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C01"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("time"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C02"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("instret"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C80"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("cycleh"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C81"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("timeh"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("C82"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("instreth"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sstatus"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("102"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sedeleg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("103"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sideleg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("104"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sie"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("105"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("stvec"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("106"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("scounteren"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("140"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sscratch"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("141"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sepc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("142"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("scause"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("143"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("stval"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("144"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sip"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("180"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("satp"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("F11"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mvendorid"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("F12"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("marchid"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("F13"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mimpid"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("F14"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mhartid"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("300"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mstatus"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("301"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("misa"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("302"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("medeleg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("303"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mideleg"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("304"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mie"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("305"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mtvec"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("306"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mcounteren"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("340"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mscratch"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("341"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mepc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("342"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mcause"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("343"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mtval"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("344"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mip"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3A0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpcfg0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3A1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpcfg1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3A2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpcfg2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3A3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpcfg3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr4"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr5"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B6"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr6"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B7"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr7"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B8"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr8"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3B9"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr9"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BA"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr10"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BB"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr11"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BC"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr12"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr13"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr14"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("3BF"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("pmpaddr15"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("B00"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mcycle"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("B02"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("minstret"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("B80"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mcycleh"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("B82"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("minstreth"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("7a0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("tselect"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("7a1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("tdata1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("7a2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("tdata2"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("csr_name_map"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_hex("7a3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("tdata3"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("csr_name"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("csr_name"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Ustatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Ustatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Ustatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Ustatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Ustatus_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Ustatus_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Ustatus_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Ustatus_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Ustatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Ustatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Ustatus_UPIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Ustatus_UPIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UPIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Ustatus_UPIE"),TODO: pp-raw l));(Id_aux(Id("_set_Ustatus_UPIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Ustatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Ustatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Ustatus_UIE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UIE"),TODO: pp-raw l),[(Id_aux(Id("_update_Ustatus_UIE"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UIE"),TODO: pp-raw l),[(Id_aux(Id("_get_Ustatus_UIE"),TODO: pp-raw l));(Id_aux(Id("_set_Ustatus_UIE"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Ustatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_sstatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_ustatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mstatus"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_ustatus"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_Uinterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_Uinterrupts"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Uinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Uinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Uinterrupts_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_Uinterrupts_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_Uinterrupts_bits"),TODO: pp-raw l));(Id_aux(Id("_set_Uinterrupts_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Uinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Uinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Uinterrupts_UEI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UEI"),TODO: pp-raw l),[(Id_aux(Id("_update_Uinterrupts_UEI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UEI"),TODO: pp-raw l),[(Id_aux(Id("_get_Uinterrupts_UEI"),TODO: pp-raw l));(Id_aux(Id("_set_Uinterrupts_UEI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Uinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Uinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Uinterrupts_UTI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_UTI"),TODO: pp-raw l),[(Id_aux(Id("_update_Uinterrupts_UTI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_UTI"),TODO: pp-raw l),[(Id_aux(Id("_get_Uinterrupts_UTI"),TODO: pp-raw l));(Id_aux(Id("_set_Uinterrupts_UTI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_Uinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_Uinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_Uinterrupts_USI"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_USI"),TODO: pp-raw l),[(Id_aux(Id("_update_Uinterrupts_USI"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_USI"),TODO: pp-raw l),[(Id_aux(Id("_get_Uinterrupts_USI"),TODO: pp-raw l));(Id_aux(Id("_set_Uinterrupts_USI"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Uinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_sip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Uinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lower_sie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_uip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_uip"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lift_uie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Sinterrupts"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_uie"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mtvec"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("utvec"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("uscratch"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("uepc"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Mcause"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("ucause"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("utval"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_check_xret_priv"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_fail_xret_priv"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("handle_trap_extension"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("prepare_trap_vector"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_xret_target"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_xret_target"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("prepare_xret_target"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_mtvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_stvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("get_utvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_mtvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_stvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("set_utvec"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_sync_exception"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_read_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("ext_write_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("csrRW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("csrAccess"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("priv_level"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("csrPriv"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("is_CSR_defined"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("check_CSR_access"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("check_TVM_SATP"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("check_Counteren"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("check_CSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("Privilege"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("exception_delegatee"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("InterruptType"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("findPendingInterrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_interrupt_set"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("interrupt_set"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("processPending"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("Privilege"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("getPendingSet"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("InterruptType"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("Privilege"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("dispatchInterrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_ctl_result"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("tval"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rvfi_trap"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("trap_handler"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("exception_handler"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("handle_mem_exception"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("handle_interrupt"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_sys"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_MemoryOpResult"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("MemoryOpResult_add_meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("MemoryOpResult_drop_meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("plat_htif_tohost"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("phys_mem_segments"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_phys_mem"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_clint"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_htif_writable"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_htif_readable"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("mtimecmp"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("MSIP_BASE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("00000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("MTIMECMP_BASE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("04000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("MTIMECMP_BASE_HI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("04004"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("MTIME_BASE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("0bff8"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("MTIME_BASE_HI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("EXTZ"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_hex("0bffc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("clint_load"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("clint_dispatch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("clint_store"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("tick_clock"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_htif_cmd"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_htif_cmd"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_htif_cmd_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_htif_cmd_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_htif_cmd_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_htif_cmd_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_htif_cmd_bits"),TODO: pp-raw l));(Id_aux(Id("_set_htif_cmd_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_htif_cmd_device"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_htif_cmd_device"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_htif_cmd_device"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_device"),TODO: pp-raw l),[(Id_aux(Id("_update_htif_cmd_device"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_device"),TODO: pp-raw l),[(Id_aux(Id("_get_htif_cmd_device"),TODO: pp-raw l));(Id_aux(Id("_set_htif_cmd_device"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_htif_cmd_cmd"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_htif_cmd_cmd"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_htif_cmd_cmd"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_cmd"),TODO: pp-raw l),[(Id_aux(Id("_update_htif_cmd_cmd"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_cmd"),TODO: pp-raw l),[(Id_aux(Id("_get_htif_cmd_cmd"),TODO: pp-raw l));(Id_aux(Id("_set_htif_cmd_cmd"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_htif_cmd_payload"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_htif_cmd_payload"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_htif_cmd_payload"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_payload"),TODO: pp-raw l),[(Id_aux(Id("_update_htif_cmd_payload"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_payload"),TODO: pp-raw l),[(Id_aux(Id("_get_htif_cmd_payload"),TODO: pp-raw l));(Id_aux(Id("_set_htif_cmd_payload"),TODO: pp-raw l))]));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("htif_tohost"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("htif_done"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(64),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("htif_exit_code"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("htif_load"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("htif_store"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("htif_tick"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_mmio_readable"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("within_mmio_writable"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_times(Nexp_aux(Nexp_constant(8),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mmio_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mmio_write"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_platform"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("tick_platform"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("handle_illegal"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("platform_wfi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("is_aligned_addr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("read_kind"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("read_kind_of_flags"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_times(Nexp_aux(Nexp_constant(8),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("mem_meta"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("phys_mem_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_times(Nexp_aux(Nexp_constant(8),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("mem_meta"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("checked_mem_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_times(Nexp_aux(Nexp_constant(8),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("mem_meta"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmp_mem_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rvfi_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mem_read"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mem_read_meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mem_write_ea"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("rvfi_write"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("phys_mem_write"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("checked_mem_write"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_tq([(QI_aux(QI_id(KOpt_aux(KOpt_kind(K_aux(K_int,TODO: pp-raw l),Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l));(QI_aux(QI_constraint(NC_aux(NC_and(NC_aux(NC_bounded_lt(Nexp_aux(Nexp_constant(0),TODO: pp-raw l),Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),NC_aux(NC_bounded_le(Nexp_aux(Nexp_var(Kid_aux(Var("'n"),TODO: pp-raw l)),TODO: pp-raw l),Nexp_aux(Nexp_id(Id_aux(Id("max_mem_access"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("MemoryOpResult"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("pmp_mem_write"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mem_write_value_meta"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("mem_write_value"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_PTE_Bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_PTE_Bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_bits"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_D"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_D"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_D"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_D"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_D"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_D"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_A"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_A"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_A"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_A"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_A"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_A"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_G"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_G"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_G"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_G"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_G"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_G"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_U"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_U"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_U"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_U"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_U"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_U"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_X"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_X"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_X"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_X"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_X"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_X"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_W"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_W"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_W"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_W"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_W"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_W"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_R"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_R"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_R"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_R"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_R"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_R"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_PTE_Bits_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_PTE_Bits_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_PTE_Bits_V"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_V"),TODO: pp-raw l),[(Id_aux(Id("_update_PTE_Bits_V"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_V"),TODO: pp-raw l),[(Id_aux(Id("_get_PTE_Bits_V"),TODO: pp-raw l));(Id_aux(Id("_set_PTE_Bits_V"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("isPTEPtr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("isInvalidPTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_PTE_Check"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("PTE_Check"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("to_pte_check"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("PTE_Check"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("checkPTEPermission"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("PTE_Bits"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("extPte"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("update_PTE_Bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_PTW_Error"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ptw_error_to_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("ptw_error_to_str"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("ExceptionType"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("translationException"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PAGESIZE_BITS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(12),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("asid32"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("curAsid32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("paddr32"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("curPTB32"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV32_LEVEL_BITS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(10),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV32_LEVELS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(2),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE32_LOG_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(2),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE32_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(4),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV32_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV32_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Vaddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Vaddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Vaddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Vaddr_VPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Vaddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV32_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV32_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Paddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Paddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Paddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Paddr_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_Paddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV32_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV32_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_PTE_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_PTE_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_PTE_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_PTE_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_PTE_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_PTE_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_RSW"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_PTE_RSW"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_RSW"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_PTE_RSW"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_PTE_RSW"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV32_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV32_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV32_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_BITS"),TODO: pp-raw l),[(Id_aux(Id("_update_SV32_PTE_BITS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_BITS"),TODO: pp-raw l),[(Id_aux(Id("_get_SV32_PTE_BITS"),TODO: pp-raw l));(Id_aux(Id("_set_SV32_PTE_BITS"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("asid64"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("curAsid64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("paddr64"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("curPTB64"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV39_LEVEL_BITS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(9),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV39_LEVELS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(3),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE39_LOG_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(3),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE39_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV39_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV39_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Vaddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Vaddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Vaddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Vaddr_VPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Vaddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV39_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV39_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Paddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Paddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Paddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Paddr_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_Paddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV39_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV39_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_PTE_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_PTE_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_PTE_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Ext"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_PTE_Ext"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Ext"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_PTE_Ext"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_PTE_Ext"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_PTE_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_PTE_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_PTE_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_RSW"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_PTE_RSW"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_RSW"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_PTE_RSW"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_PTE_RSW"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV39_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV39_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV39_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_BITS"),TODO: pp-raw l),[(Id_aux(Id("_update_SV39_PTE_BITS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_BITS"),TODO: pp-raw l),[(Id_aux(Id("_get_SV39_PTE_BITS"),TODO: pp-raw l));(Id_aux(Id("_set_SV39_PTE_BITS"),TODO: pp-raw l))]));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV48_LEVEL_BITS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(9),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("SV48_LEVELS"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(4),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE48_LOG_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(3),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("PTE48_SIZE"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV48_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV48_Vaddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Vaddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Vaddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Vaddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Vaddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Vaddr_VPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_VPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Vaddr_VPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Vaddr_VPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Vaddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Vaddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Vaddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV48_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV48_Paddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Paddr_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Paddr_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Paddr_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Paddr_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Paddr_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Paddr_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Paddr_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_Paddr_PgOfs"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PgOfs"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_Paddr_PgOfs"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_Paddr_PgOfs"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_SV48_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("Mk_SV48_PTE"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_PTE_bits"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_bits"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_PTE_bits"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_bits"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_PTE_bits"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_PTE_bits"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_PTE_Ext"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_Ext"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_PTE_Ext"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_Ext"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_PTE_Ext"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_PTE_Ext"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_PTE_PPNi"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_PTE_PPNi"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_PPNi"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_PTE_PPNi"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_PTE_PPNi"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_PTE_RSW"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_RSW"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_PTE_RSW"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_RSW"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_PTE_RSW"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_PTE_RSW"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_get_SV48_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_set_SV48_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("_update_SV48_PTE_BITS"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("update_BITS"),TODO: pp-raw l),[(Id_aux(Id("_update_SV48_PTE_BITS"),TODO: pp-raw l))]));(DEF_overload(Id_aux(Id("_mod_BITS"),TODO: pp-raw l),[(Id_aux(Id("_get_SV48_PTE_BITS"),TODO: pp-raw l));(Id_aux(Id("_set_SV48_PTE_BITS"),TODO: pp-raw l))]));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_PTW_Result"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_TR_Result"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_TLB_Entry"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("make_TLB_Entry"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("match_TLB_Entry"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("flush_TLB_Entry"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("walk39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("TLB39_Entry"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("tlb39"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lookup_TLB39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("add_to_TLB39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("write_TLB39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("flush_TLB39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("translate39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_vmem_sv39"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("walk48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("option"),TODO: pp-raw l),[(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("TLB48_Entry"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("tlb48"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lookup_TLB48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("add_to_TLB48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("write_TLB48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("flush_TLB48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("translate48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_vmem_sv48"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_reg_dec(DEC_aux(DEC_reg(Effect_aux(Effect_set([(BE_aux(BE_rreg,TODO: pp-raw l))]),TODO: pp-raw l),Effect_aux(Effect_set([(BE_aux(BE_wreg,TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("satp"),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("legalize_satp"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("translationMode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("translateAddr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("flush_TLB"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_vmem"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_variant(Id_aux(Id("ast"),TODO: pp-raw l),TypQ_aux(TypQ_no_forall,TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_spec(val_spec));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(20),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("uop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("UTYPE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_uop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("uop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(7),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_LUI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0110111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_AUIPC"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0010111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("UTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(20),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("encdec_uop"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("utype_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("uop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_LUI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("lui"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_AUIPC"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("auipc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("UTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("utype_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_20"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(21),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("RISCV_JAL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RISCV_JAL"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_19"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_7_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_18_13"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_12_9"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_19"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_18_13"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_12_9"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm_7_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1101111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RISCV_JAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("jal"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_21"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("RISCV_JALR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RISCV_JALR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1100111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RISCV_JALR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("jalr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(13),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("BTYPE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_bop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BEQ"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BNE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BLT"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BGE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BLTU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BGEU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("BTYPE"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7_6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7_5_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5_4_1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7_6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7_5_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("encdec_bop"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5_4_1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5_0"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1100011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("btype_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BEQ"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("beq"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BNE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("bne"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BLT"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("blt"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BGE"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("bge"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BLTU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("bltu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_BGEU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("bgeu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("BTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("btype_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_13"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("iop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("ITYPE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_iop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("iop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ADDI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLTI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLTIU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ANDI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ORI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_XORI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ITYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("encdec_iop"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0010011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("itype_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("iop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ADDI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("addi"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLTI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("slti"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLTIU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sltiu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_XORI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("xori"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ORI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ori"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ANDI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("andi"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ITYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("itype_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("sop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("SHIFTIOP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_sop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("sop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRAI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SHIFTIOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLLI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0010011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_bit"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_access"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(5),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_zero,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SHIFTIOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRLI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0010011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_bit"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_access"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(5),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_zero,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SHIFTIOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRAI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("010000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0010011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_bit"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_access"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(5),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_zero,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("shiftiop_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("sop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("slli"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srli"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRAI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srai"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SHIFTIOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("shiftiop_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("rop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("RTYPE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_ADD"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLT"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLTU"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_AND"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_OR"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_XOR"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLL"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRL"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SUB"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRA"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("rtype_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("rop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ADD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("add"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLT"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("slt"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLTU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sltu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_AND"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("and"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_OR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("or"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_XOR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("xor"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLL"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sll"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRL"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srl"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SUB"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sub"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRA"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sra"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("RTYPE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("rtype_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("LOAD"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("LOAD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("lt_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("not_bool"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_cast(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0000011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("lt_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("not_bool"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_cast(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("extend_value"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("process_load"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("check_misaligned"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("maybe_aq"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(".aq"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("maybe_rl"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(".rl"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("maybe_u"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("u"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("LOAD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("l"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_u"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("is_unsigned"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_aq"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_rl"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("("),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string(")"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("STORE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("STORE"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(7),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(7),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0100011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("STORE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("s"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_aq"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_rl"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("("),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("opt_spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string(")"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("ADDIW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("ADDIW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("ADDIW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("addiw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("sop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("SHIFTW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLLI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRLI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRAI"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("shiftw_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("sop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("slli"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRLI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srli"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRAI"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srai"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("shiftw_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_5"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("ropw"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("RTYPEW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_ADDW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SUBW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLLW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRLW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRAW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("rtypew_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("ropw"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_ADDW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("addw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SUBW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("subw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLLW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sllw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRLW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srlw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRAW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sraw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("RTYPEW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("rtypew_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("sopw"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("SHIFTIWOP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTIWOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SLLIW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTIWOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRLIW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTIWOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("RISCV_SRAIW"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0100000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0011011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("shiftiwop_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("sopw"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SLLIW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("slliw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRLIW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("srliw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("RISCV_SRAIW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sraiw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("SHIFTIWOP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("shiftiwop_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_5"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("FENCE"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0001111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bit_maybe_r"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("r"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bit_maybe_w"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("w"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bit_maybe_i"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("i"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("bit_maybe_o"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("o"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("fence_bits"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("o"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("r"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("w"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("bit_maybe_i"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("i"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bit_maybe_o"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("o"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bit_maybe_r"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("r"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bit_maybe_w"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("w"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCE"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("fence"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("fence_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("fence_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("FENCE_TSO"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCE_TSO"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("1000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0001111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCE_TSO"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("fence.tso"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("fence_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("pred"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("fence_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("succ"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("FENCEI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCEI"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000000000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0001111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("FENCEI"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("fence.i"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("ECALL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ECALL"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000000000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ECALL"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ecall"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("MRET"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("MRET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0011000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("MRET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mret"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("SRET"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SRET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0001000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SRET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("sret"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("EBREAK"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("EBREAK"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000000000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("EBREAK"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("ebreak"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("WFI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("WFI"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000100000101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("WFI"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("wfi"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("SFENCE_VMA"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SFENCE_VMA"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0001001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("SFENCE_VMA"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("sfence.vma"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("aqrl_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("lrsc_width_str"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("LOADRES"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("LOADRES"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0101111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("process_loadres"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("LOADRES"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("lr."),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_aq"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_rl"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("STORECON"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("STORECON"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("00011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0101111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("STORECON"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("sc."),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_aq"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_rl"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("amoop"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("word_width"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("AMO"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_amoop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("amoop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOSWAP"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOADD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOXOR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("00100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOAND"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOOR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMIN"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMAX"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMINU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMAXU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11100"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("AMO"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_app(Id_aux(Id("encdec_amoop"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0101111"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("lteq_int"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("word_width_bytes"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("size"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(8),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("amo_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("amoop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOSWAP"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amoswap"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOADD"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amoadd"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOXOR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amoxor"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOAND"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amoand"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOOR"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amoor"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMIN"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amomin"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMAX"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amomax"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMINU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amominu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("AMOMAXU"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("amomaxu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("AMO"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("width"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("amo_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("."),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("size_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("width"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_aq"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("aq"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_rl"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rl"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("("),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string(")"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("C_NOP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_NOP"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_NOP"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("c.nop"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADDI4SPN"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI4SPN"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz96"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz54"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz3"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz96"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz54"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz3"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nz2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("00000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz54"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz96"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nz3"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz96"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz54"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nz3"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nz2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("00000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI4SPN"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("nzimm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzimm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("00000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.addi4spn"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_10"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzimm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzimm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("00000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_LW"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_LW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.lw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_7"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LD"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LD"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.ld"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rdc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_8"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SW"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.sw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_7"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SD"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SD"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsc2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.sd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsc2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_8"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADDI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzi40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzi40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("nzi"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.addi"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("nzi"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(11),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_JAL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JAL"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i11"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i10"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i98"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i31"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(32),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i11"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i98"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i10"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i31"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(32),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(32),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.jal"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_12"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(11),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(32),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADDIW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDIW"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDIW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.addiw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.li"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADDI16SP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI16SP"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi9"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi87"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi9"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi87"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi6"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzi4"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi9"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi87"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi9"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi87"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi6"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzi5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzi4"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDI16SP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.addi16sp"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LUI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LUI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm17"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm1612"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("sp"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm17"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("imm1612"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm17"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("imm1612"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("sp"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm17"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("imm1612"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LUI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("sp"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.lui"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("sp"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SRLI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SRLI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SRLI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.srli"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SRAI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SRAI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SRAI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.srai"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ANDI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_ANDI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_ANDI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.andi"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SUB"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SUB"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SUB"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.sub"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_XOR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_XOR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_XOR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.xor"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_OR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_OR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_OR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.or"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_AND"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_AND"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_AND"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.and"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SUBW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SUBW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SUBW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.subw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADDW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADDW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.addw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(11),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_J"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_J"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i11"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i10"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i98"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i31"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("101"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i11"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i4"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i98"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i10"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i6"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i7"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i31"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_J"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.j"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_11"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_BEQZ"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_BEQZ"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i21"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i21"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_BEQZ"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.beqz"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_8"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(8),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_BNEZ"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_BNEZ"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i21"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i8"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("cregidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i21"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("i5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_BNEZ"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.bnez"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("creg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_8"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SLLI"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SLLI"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("bitvector_concat"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("nzui40"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("or_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("nzui5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SLLI"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.slli"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("shamt"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_bin("000000"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LWSP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LWSP"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui42"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui42"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LWSP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.lwsp"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_LDSP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LDSP"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui86"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui5"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(1),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui43"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui86"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_LDSP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.ldsp"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SWSP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SWSP"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui52"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("110"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui52"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(4),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui76"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_SWSP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.swsp"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(6),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_SDSP"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SDSP"),TODO: pp-raw l),[(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui86"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("111"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui53"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("ui86"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_SDSP"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.sdsp"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_6"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("uimm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("C_JR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.jr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("C_JALR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JALR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_JALR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.jalr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_MV"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_MV"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_MV"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.mv"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("C_EBREAK"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_EBREAK"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_EBREAK"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("c.ebreak"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("C_ADD"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("100"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("C_ADD"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.add"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("and_bool"),TODO: pp-raw l),[(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rsd"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(E_aux(E_app(Id_aux(Id("neq_bits"),TODO: pp-raw l),[(E_aux(E_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_id(Id_aux(Id("zreg"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("MUL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_mul_op"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("001"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("010"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("011"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("MUL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("high"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_app(Id_aux(Id("encdec_mul_op"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("high"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(3),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("mul_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mul"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mulh"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mulhsu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_tup([(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("mulhu"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("MUL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("high"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("mul_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("high"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("signed2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("DIV"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("DIV"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_not_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("maybe_not_u"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("u"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("DIV"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("div"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_not_u"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("REM"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("REM"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_not_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("REM"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("rem"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_not_u"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("MULW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("MULW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("MULW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("mulw"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("DIVW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("DIVW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_not_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("DIVW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("div"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_not_u"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("w"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("REMW"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("REMW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000001"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_not_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("0111011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_when(MP_aux(MP_app(Id_aux(Id("REMW"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_when(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("rem"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("maybe_not_u"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("w"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs2"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("eq_int"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_num(64),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_tup([(Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regidx"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("csrop"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),Id_aux(Id("CSR"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("encdec_csrop"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("csrop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_app(Id_aux(Id("bits"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(2),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("01"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRS"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("10"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRC"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_bin("11"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("CSR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("is_imm"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(12),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("bool_bits"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("is_imm"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("encdec_csrop"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_typ(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot),Typ_aux(Typ_app(Id_aux(Id("bitvector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(5),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("xlenbits"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("readCSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("writeCSR"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("maybe_i"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("i"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string(""),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_mapdef(MD_aux(MD_mapping(Id_aux(Id("csr_mnemonic"),TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_bidir(Typ_aux(Typ_id(Id_aux(Id("csrop"),TODO: pp-raw l)),TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),[(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRW"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("csrrw"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRS"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("csrrs"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot));(MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("CSRRC"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("csrrc"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("CSR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_true,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("csr_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_string("i"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_5"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("csr_name_map"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("CSR"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_false,TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_app(Id_aux(Id("csr_mnemonic"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("op"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rd"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("reg_name"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("rs1"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("sep"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("csr_name_map"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("csr"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("URET"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("URET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_vector_concat([(MP_aux(MP_lit(L_aux(L_bin("0000000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00010"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("00000"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_lit(L_aux(L_bin("1110011"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("URET"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_lit(L_aux(L_string("uret"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("word"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("ILLEGAL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ILLEGAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("ILLEGAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("illegal"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_32"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_unioncl(Id_aux(Id("ast"),TODO: pp-raw l),Tu_aux(Tu_ty_id(Typ_aux(Typ_id(Id_aux(Id("half"),TODO: pp-raw l)),TODO: pp-raw l),Id_aux(Id("C_ILLEGAL"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("encdec_compressed"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_ILLEGAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_funcl(FCL_aux(FCL_Funcl(Id_aux(Id("execute"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_scattered(SD_aux(SD_mapcl(Id_aux(Id("assembly"),TODO: pp-raw l),MCL_aux(MCL_bidir(MPat_aux(MPat_pat(MP_aux(MP_app(Id_aux(Id("C_ILLEGAL"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot),MPat_aux(MPat_pat(MP_aux(MP_string_append([(MP_aux(MP_lit(L_aux(L_string("c.illegal"),TODO: pp-raw l)),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("spc"),TODO: pp-raw l),[(MP_aux(MP_lit(L_aux(L_unit,TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot));(MP_aux(MP_app(Id_aux(Id("hex_bits_16"),TODO: pp-raw l),[(MP_aux(MP_id(Id_aux(Id("s"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("print_insn"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_overload(Id_aux(Id("to_str"),TODO: pp-raw l),[(Id_aux(Id("print_insn"),TODO: pp-raw l))]));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("decode"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("decodeCompressed"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_type(TODO:pp-raw type_def));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("undefined_FetchResult"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_init"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("FetchResult"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_fetch_hook"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_pre_step_hook"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_post_step_hook"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("ext_post_decode_hook"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("isRVC"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("FetchResult"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("fetch"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("bool"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("step"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("loop"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("unit"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("init_model"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_typ(Typ_aux(Typ_app(Id_aux(Id("vector"),TODO: pp-raw l),[(A_aux(A_nexp(Nexp_aux(Nexp_constant(32),TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_order(Ord_aux(Ord_dec,TODO: pp-raw l)),TODO: pp-raw l));(A_aux(A_typ(Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l),P_aux(P_id(Id_aux(Id("GPRstrs"),TODO: pp-raw l)),TODO: pp-raw annot)),TODO: pp-raw annot),E_aux(E_vector([(E_aux(E_lit(L_aux(L_string("x31"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x30"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x29"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x28"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x27"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x26"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x25"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x24"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x23"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x22"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x21"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x20"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x19"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x18"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x17"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x16"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x15"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x14"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x13"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x12"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x11"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x10"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x9"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x8"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x7"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x6"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x5"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x4"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x3"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x2"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x1"),TODO: pp-raw l)),TODO: pp-raw annot));(E_aux(E_lit(L_aux(L_string("x0"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_id(Id_aux(Id("string"),TODO: pp-raw l)),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("GPRstr"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("CIA_fp"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("RFull"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_string("CIA"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_val(LB_aux(LB_val(P_aux(P_id(Id_aux(Id("NIA_fp"),TODO: pp-raw l)),TODO: pp-raw annot),E_aux(E_app(Id_aux(Id("RFull"),TODO: pp-raw l),[(E_aux(E_lit(L_aux(L_string("NIA"),TODO: pp-raw l)),TODO: pp-raw annot))]),TODO: pp-raw annot)),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_some(TypQ_aux(TypQ_no_forall,TODO: pp-raw l),Typ_aux(Typ_tup([(Typ_aux(Typ_id(Id_aux(Id("regfps"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regfps"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("regfps"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("niafps"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("diafp"),TODO: pp-raw l)),TODO: pp-raw l));(Typ_aux(Typ_id(Id_aux(Id("instruction_kind"),TODO: pp-raw l)),TODO: pp-raw l))]),TODO: pp-raw l)),TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("initial_analysis"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)));(DEF_spec(val_spec));(DEF_fundef(FD_aux(FD_function(Rec_aux(Rec_nonrec,TODO: pp-raw l),Typ_annot_opt_aux(Typ_annot_opt_none,TODO: pp-raw l),Effect_opt_aux(Effect_opt_none,TODO: pp-raw l),[(FCL_aux(FCL_Funcl(Id_aux(Id("initialize_registers"),TODO: pp-raw l),TODO:pexp_funcl),TODO: pp-raw annot))]),TODO: pp-raw annot)))])