/*
**
** The C code is generated by ATS/Anairiats
** The compilation time is: 2020-11-6:  1h:52m
**
*/

/* include some .h files */
#ifndef _ATS_HEADER_NONE
#include "ats_config.h"
#include "ats_basics.h"
#include "ats_types.h"
#include "ats_exception.h"
#include "ats_memory.h"
#endif /* _ATS_HEADER_NONE */

/* include some .cats files */
#ifndef _ATS_PRELUDE_NONE
#include "prelude/CATS/basics.cats"
#include "prelude/CATS/bool.cats"
#include "prelude/CATS/char.cats"
#include "prelude/CATS/byte.cats"
#include "prelude/CATS/float.cats"
#include "prelude/CATS/integer.cats"
#include "prelude/CATS/integer_ptr.cats"
#include "prelude/CATS/integer_fixed.cats"
#include "prelude/CATS/sizetype.cats"
#include "prelude/CATS/pointer.cats"
#include "prelude/CATS/reference.cats"
#include "prelude/CATS/string.cats"
#include "prelude/CATS/lazy.cats"
#include "prelude/CATS/lazy_vt.cats"
#include "prelude/CATS/printf.cats"
#include "prelude/CATS/list.cats"
#include "prelude/CATS/option.cats"
#include "prelude/CATS/array.cats"
#include "prelude/CATS/matrix.cats"
#endif /* _ATS_PRELUDE_NONE */
/* prologues from statically loaded files */

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"
/* external codes at top */
/* type definitions */
typedef
struct {
ats_ptr_type atslab_3 ;
ats_ptr_type atslab_4 ;
} anairiats_rec_0 ;

typedef
struct {
ats_ptr_type atslab_s2qua_svs ;
ats_ptr_type atslab_s2qua_sps ;
} anairiats_rec_1 ;

typedef
struct {
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_rec_2 ;

typedef struct {
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_3 ;

typedef
struct {
ats_ptr_type atslab_i0de_loc ;
ats_ptr_type atslab_i0de_sym ;
} anairiats_rec_4 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_5 ;

typedef struct {
ats_ptr_type atslab_0 ;
} anairiats_sum_6 ;

typedef
struct {
ats_ptr_type atslab_d1ecl_loc ;
ats_ptr_type atslab_d1ecl_node ;
} anairiats_rec_7 ;

typedef
struct {
ats_ptr_type atslab_dqi0de_loc ;
ats_ptr_type atslab_dqi0de_qua ;
ats_ptr_type atslab_dqi0de_sym ;
} anairiats_rec_8 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
} anairiats_sum_9 ;

typedef struct {
ats_int_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_10 ;

typedef
struct {
ats_ptr_type atslab_d1atsrtcon_loc ;
ats_ptr_type atslab_d1atsrtcon_sym ;
ats_ptr_type atslab_d1atsrtcon_arg ;
} anairiats_rec_11 ;

typedef
struct {
ats_ptr_type atslab_d1atsrtdec_loc ;
ats_ptr_type atslab_d1atsrtdec_sym ;
ats_ptr_type atslab_d1atsrtdec_con ;
} anairiats_rec_12 ;

typedef struct {
anairiats_rec_2 atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_13 ;

typedef
struct {
ats_ptr_type atslab_s1rtdef_loc ;
ats_ptr_type atslab_s1rtdef_sym ;
ats_ptr_type atslab_s1rtdef_def ;
} anairiats_rec_14 ;

typedef
struct {
ats_ptr_type atslab_s1tacst_loc ;
ats_ptr_type atslab_s1tacst_sym ;
ats_ptr_type atslab_s1tacst_fil ;
ats_ptr_type atslab_s1tacst_arg ;
ats_ptr_type atslab_s1tacst_res ;
ats_ptr_type atslab_s1tacst_extdef ;
} anairiats_rec_15 ;

typedef
struct {
ats_ptr_type atslab_s1tacon_loc ;
ats_ptr_type atslab_s1tacon_sym ;
ats_ptr_type atslab_s1tacon_fil ;
ats_ptr_type atslab_s1tacon_arg ;
ats_ptr_type atslab_s1tacon_def ;
} anairiats_rec_16 ;

typedef
struct {
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_rec_17 ;

typedef struct {
anairiats_rec_17 atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_18 ;

typedef
struct {
ats_ptr_type atslab_t1kindef_loc ;
ats_ptr_type atslab_t1kindef_sym ;
ats_ptr_type atslab_t1kindef_loc_id ;
ats_ptr_type atslab_t1kindef_def ;
} anairiats_rec_19 ;

typedef
struct {
ats_ptr_type atslab_s1marg_loc ;
ats_ptr_type atslab_s1marg_arg ;
} anairiats_rec_20 ;

typedef
struct {
ats_ptr_type atslab_s1expdef_loc ;
ats_ptr_type atslab_s1expdef_sym ;
ats_ptr_type atslab_s1expdef_loc_id ;
ats_ptr_type atslab_s1expdef_arg ;
ats_ptr_type atslab_s1expdef_res ;
ats_ptr_type atslab_s1expdef_def ;
} anairiats_rec_21 ;

typedef
struct {
ats_ptr_type atslab_s2exp_srt ;
ats_ptr_type atslab_s2exp_node ;
} anairiats_rec_22 ;

typedef
struct {
ats_ptr_type atslab_s1aspdec_loc ;
ats_ptr_type atslab_s1aspdec_qid ;
ats_ptr_type atslab_s1aspdec_arg ;
ats_ptr_type atslab_s1aspdec_res ;
ats_ptr_type atslab_s1aspdec_def ;
} anairiats_rec_23 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_24 ;

typedef
struct {
ats_ptr_type atslab_sqi0de_loc ;
ats_ptr_type atslab_sqi0de_qua ;
ats_ptr_type atslab_sqi0de_sym ;
} anairiats_rec_25 ;

typedef
struct {
ats_ptr_type atslab_d1atdec_loc ;
ats_ptr_type atslab_d1atdec_fil ;
ats_ptr_type atslab_d1atdec_sym ;
ats_ptr_type atslab_d1atdec_arg ;
ats_ptr_type atslab_d1atdec_con ;
} anairiats_rec_26 ;

typedef struct {
anairiats_rec_17 atslab_0 ;
} anairiats_sum_27 ;

typedef
struct {
ats_ptr_type atslab_e1xndec_loc ;
ats_ptr_type atslab_e1xndec_fil ;
ats_ptr_type atslab_e1xndec_sym ;
ats_ptr_type atslab_e1xndec_qua ;
ats_int_type atslab_e1xndec_npf ;
ats_ptr_type atslab_e1xndec_arg ;
} anairiats_rec_28 ;

typedef struct {
anairiats_rec_1 atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_29 ;

typedef
struct {
ats_ptr_type atslab_d1cstdec_loc ;
ats_ptr_type atslab_d1cstdec_fil ;
ats_ptr_type atslab_d1cstdec_sym ;
ats_ptr_type atslab_d1cstdec_type ;
ats_ptr_type atslab_d1cstdec_extdef ;
} anairiats_rec_30 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_int_type atslab_1 ;
ats_ptr_type atslab_2 ;
ats_int_type atslab_3 ;
ats_ptr_type atslab_4 ;
ats_ptr_type atslab_5 ;
} anairiats_sum_31 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
} anairiats_sum_32 ;

typedef
struct {
ats_ptr_type atslab_m1acdef_loc ;
ats_ptr_type atslab_m1acdef_sym ;
ats_ptr_type atslab_m1acdef_arg ;
ats_ptr_type atslab_m1acdef_def ;
} anairiats_rec_33 ;

typedef
struct {
ats_ptr_type atslab_m1acarg_loc ;
ats_ptr_type atslab_m1acarg_node ;
} anairiats_rec_34 ;

typedef
struct {
ats_ptr_type atslab_s1arg_loc ;
ats_ptr_type atslab_s1arg_sym ;
ats_ptr_type atslab_s1arg_srt ;
} anairiats_rec_35 ;

typedef
struct {
ats_ptr_type atslab_f1undec_loc ;
ats_ptr_type atslab_f1undec_sym ;
ats_ptr_type atslab_f1undec_sym_loc ;
ats_ptr_type atslab_f1undec_def ;
ats_ptr_type atslab_f1undec_ann ;
} anairiats_rec_36 ;

typedef
struct {
ats_ptr_type atslab_d2exp_loc ;
ats_ptr_type atslab_d2exp_node ;
} anairiats_rec_37 ;

typedef
struct {
ats_ptr_type atslab_v1aldec_loc ;
ats_ptr_type atslab_v1aldec_pat ;
ats_ptr_type atslab_v1aldec_def ;
ats_ptr_type atslab_v1aldec_ann ;
} anairiats_rec_38 ;

typedef
struct {
ats_ptr_type atslab_v1ardec_loc ;
ats_int_type atslab_v1ardec_knd ;
ats_ptr_type atslab_v1ardec_sym ;
ats_ptr_type atslab_v1ardec_sym_loc ;
ats_ptr_type atslab_v1ardec_pfat ;
ats_ptr_type atslab_v1ardec_type ;
ats_ptr_type atslab_v1ardec_init ;
} anairiats_rec_39 ;

typedef
struct {
ats_ptr_type atslab_v2ardec_loc ;
ats_int_type atslab_v2ardec_knd ;
ats_ptr_type atslab_v2ardec_svar ;
ats_ptr_type atslab_v2ardec_dvar ;
ats_ptr_type atslab_v2ardec_pfat ;
ats_ptr_type atslab_v2ardec_type ;
ats_ptr_type atslab_v2ardec_init ;
ats_ptr_type atslab_v2ardec_dvaropt ;
} anairiats_rec_40 ;

typedef
struct {
ats_ptr_type atslab_prv2ardec_loc ;
ats_ptr_type atslab_prv2ardec_dvar ;
ats_ptr_type atslab_prv2ardec_type ;
ats_ptr_type atslab_prv2ardec_init ;
} anairiats_rec_41 ;

typedef
struct {
ats_ptr_type atslab_d2ecl_loc ;
ats_ptr_type atslab_d2ecl_node ;
} anairiats_rec_42 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_int_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_43 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_44 ;

typedef
struct {
ats_ptr_type atslab_i2mpdec_loc ;
ats_ptr_type atslab_i2mpdec_locid ;
ats_ptr_type atslab_i2mpdec_cst ;
ats_ptr_type atslab_i2mpdec_imparg ;
ats_ptr_type atslab_i2mpdec_tmparg ;
ats_ptr_type atslab_i2mpdec_tmpgua ;
ats_ptr_type atslab_i2mpdec_def ;
} anairiats_rec_45 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_int_type atslab_2 ;
} anairiats_sum_46 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_47 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
ats_int_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_48 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
ats_ptr_type atslab_3 ;
} anairiats_sum_49 ;

typedef struct {
int tag ;
ats_int_type atslab_0 ;
ats_bool_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_50 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_bool_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_sum_51 ;

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_int_type atslab_2 ;
ats_ptr_type atslab_3 ;
} anairiats_sum_52 ;

/* external typedefs */
/* external dynamic constructor declarations */
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__list_cons_0) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__list_nil_1) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__None_0) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__Some_1) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__list_vt_cons_0) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__list_vt_nil_1) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__None_vt_0) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__Some_vt_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__FK_fun_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__DCKfun_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__DCSTEXTDEFnone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__M1ACARGdyn_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__M1ACARGsta_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTBASdef_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTbas_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTfun_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2ITMcst_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2ITMe1xp_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2ITMfilenv_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2TEsrt_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2Efun_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2Emetfun_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2Eexi_27) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2Euni_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cnone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Clist_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cpackname_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Csymintr_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Csymelim_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Coverload_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ce1xpdef_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ce1xpundef_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cpragma_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ccodegen_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cdatsrts_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Csrtdefs_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cstacsts_12) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cstacons_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ctkindef_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Csexpdefs_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Csaspdec_16) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Creassume_17) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cexndecs_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cdatdecs_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cclassdec_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cextype_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cextype_22) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cextvar_23) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cextcode_24) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cdcstdecs_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cmacdefs_26) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cimpdec_27) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cfundecs_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cvaldecs_29) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cvardecs_30) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cinclude_31) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cstaload_32) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cstaloadnm_33) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cstaloadloc_34) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Cdynload_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Clocal_36) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2PITM_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMe1xp_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMsymdef_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__M2ACARGsta_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__M2ACARGdyn_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Csymintr_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Coverload_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Cinclude_23) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_s1expdef_tr_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_s1aspdec_tr_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_s1aspdec_tr_arg_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_s1aspdec_tr_res_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_re1assume_tr_22) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1atdec_tr_24) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_f1undec_tr_32) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1cstdec_tr_33) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1ecl_tr_impdec_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1ecl_tr_overload_38) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1ecl_tr_overload_def_39) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1ecl_tr_staloadnm_40) ;

/* external dynamic constant declarations */
ATSextern_fun(ats_void_type, atspre_vbox_make_view_ptr) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_prerr_newline) () ;
ATSextern_fun(ats_bool_type, atspre_neg_bool) (ats_bool_type) ;
ATSextern_fun(ats_int_type, atspre_add_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_lt_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_lte_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_gt_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_gte_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_isucc) (ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_iadd) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_isub) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_idiv) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_ilt) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_igt) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_igte) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_size1_of_int1) (ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_add_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_sub_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_mul2_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_lt_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_gt_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_neq_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, atspre_ptr_alloc_tsz) (ats_size_type) ;
ATSextern_fun(ats_void_type, atspre_ptr_zero_tsz) (ats_ref_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, atspre_ref_make_elt_tsz) (ats_ref_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atspre_prerr_string) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ListSubscriptException_make) () ;
ATSextern_fun(ats_ptr_type, atspre_array_ptr_alloc_tsz) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atspre_array_ptr_free) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_array_ptr_initialize_funenv_tsz) (ats_ref_type, ats_size_type, ats_ptr_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_array_ptr_initialize_cloenv_tsz) (ats_ref_type, ats_size_type, ats_ref_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, atspre_array_ptr_split_tsz) (ats_ptr_type, ats_size_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, atspre_array_ptr_takeout_tsz) (ats_ptr_type, ats_size_type, ats_size_type) ;
ATSextern_fun(anairiats_rec_0, atspre_array_ptr_takeout2_tsz) (ats_ptr_type, ats_size_type, ats_size_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atspre_array_ptr_foreach_funenv_tsz) (ats_ref_type, ats_ptr_type, ats_size_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_array_ptr_iforeach_funenv_tsz) (ats_ref_type, ats_ptr_type, ats_size_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, atspre_array2_ptr_takeout_tsz) (ats_ptr_type, ats_size_type, ats_size_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atslib_qsort) (ats_ref_type, ats_size_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_get) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_set) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_proof) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_recursive) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_mutailrec) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__dcstkind_is_proof) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, patsopt_prerrf_ifdebug) (ats_ptr_type, ...) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_empty) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_EQEQ) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__neq_symbol_symbol) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_get_fullname) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_dqi0de) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_make) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_set_sconlst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_addr) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_bool) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_cls) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_tkind) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_impred) (ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_fun) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_is_prf) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_is_lin) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_ltmat1) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_bool_type, ats_bool_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make_dat) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_srt) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_islst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dconlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_dconlst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_add_supcls) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_dstag) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_extdef) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_is_abstr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_srt) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_id_srt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_get_arity_real) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_set_tag) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_var) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_lam_srt) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_lamlst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_is_FUNCLOfun) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2aspdec_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_namespace_2esats__the_namespace_add) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__s2exp_hnfize) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__s2cstref_get_cst) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__the_exception_vtype) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_prf) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_nonprf) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isprf) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_decarg) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_addr) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_arglst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_make) (ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_set_def) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__f2undec_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__v2aldec_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__v2ardec_make) (ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prv2ardec_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_list) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_symintr) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_symelim) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_overload) (ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_pragma) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_codegen) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_stacsts) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_stacons) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_saspdec) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_reassume) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extype) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extvar) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extcode) (ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_datdecs) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_exndecs) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_dcstdecs) (ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_fundecs) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_valdecs) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_valdecs_rec) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_vardecs) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_prvardecs) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_impdec) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_include) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_staload) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_staloadloc) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_dynload) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_local) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_is_lam) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_finalize) () ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rt_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtlst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtopt_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__a1msrt_tr_srt) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__a1msrt_tr_symsrt) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1arglst_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1marg_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_vt0ype) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__witht1ype_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtext_tr) (ats_ptr_type) ;
ATSextern_fun(anairiats_rec_1, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__q1marg_tr) (ats_ptr_type) ;
ATSextern_fun(anairiats_rec_1, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__q1marg_tr_dec) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1atcon_tr) (ats_ptr_type, ats_bool_type, ats_bool_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__i1mpdec_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_get_d2eclist) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2rtenv_add) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svar) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_find) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_find_qua) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_macdeflev_inc) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_macdeflev_dec) () ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_get) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_inc) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_dec) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__s2qualstlst_set_tmplev) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dcon) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dcst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dmacdef) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dmacvarlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvaropt) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_fundeclst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_current_find) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pervasive_find) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_staload_level_pop) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_staload_level_push) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_filenvmap_add) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_filenvmap_find) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_localjoin) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_save) () ;
ATSextern_fun(anairiats_rec_2, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_restore) () ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def) (ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__d1atdeclst_tr) (ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__e1xndeclst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taload_tr) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_ref_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taloadnm_tr) (ats_ptr_type) ;

/* external dynamic terminating constant declarations */
#ifdef _ATS_PROOFCHECK
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2list_2esats__list_length_is_nonnegative_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2list_vt_2esats__list_vt_length_is_nonnegative_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2array_2esats__array_v_takeout2_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____copy_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____free_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* assuming abstract types */
/* sum constructor declarations */
/* exn constructor declarations */
/* global dynamic (non-functional) constant declarations */
/* internal function declarations */
static
ats_void_type prerr_FILENAME_02113_ () ;
static
ats_void_type aux_2 (ats_ptr_type arg0) ;
static
ats_void_type symintr_tr_1 (ats_ptr_type arg0) ;
static
ats_void_type fproc_4 (ats_ptr_type arg0) ;
static
ats_void_type loop_7 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type list_app_funenv_01300_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type list_app_fun_01301_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type symelim_tr_3 (ats_ptr_type arg0) ;
static
ats_void_type prerr_error2_loc_02117_ (ats_ptr_type arg0) ;
static
ats_void_type auxerr_9 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr1_12 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) ;
static
ats_void_type auxerr2_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) ;
static
ats_ptr_type aux_15 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type auxlst_16 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type d1atsrtdec_tr_14 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type loop1_18 (ats_ptr_type arg0) ;
static
ats_void_type loop2_19 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type d1atsrtdeclst_tr_17 (ats_ptr_type arg0) ;
static
ats_void_type s1rtdef_tr_20 (ats_ptr_type arg0) ;
static
ats_void_type s1rtdeflst_tr_21 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_23 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type s1tacst_tr_22 (ats_ptr_type arg0) ;
static
ats_void_type loop_27 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type list_map_funenv_01412_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type list_map_fun_01413_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type s1tacstlst_tr_24 (ats_ptr_type arg0) ;
static
ats_void_type loop_32 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type list_map_funenv_01412_anairiats_rec_17_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type list_map_fun_01413_anairiats_rec_17_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type __ats_fun_33 (anairiats_rec_17 arg0) ;
static
ats_ptr_type aux_29 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type f1_34 (anairiats_rec_17 arg0) ;
static
ats_ptr_type f2_35 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_36 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type s1tacon_tr_28 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type auxlst_38 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type s1taconlst_tr_37 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_void_type t1kindef_tr_39 (ats_ptr_type arg0) ;
static
ats_ptr_type fproc_41 (ats_ptr_type arg0) ;
static
ats_ptr_type s1expdef_tr_arg_40 (ats_ptr_type arg0) ;
static
ats_void_type loop_44 (ats_ptr_type arg0) ;
static
ats_void_type list_vt_free_01499_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_ptr_type s1expdef_tr_def_42 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr_46 (ats_ptr_type arg0) ;
static
ats_ptr_type s1expdef_tr_45 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type aux_48 (ats_ptr_type env0, ats_ptr_type arg0) ;
static
ats_clo_ptr_type aux_48_closure_make (ats_ptr_type env0) ;
static
ats_ptr_type aux_48_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_void_type loop_49 (ats_ptr_type arg0) ;
static
ats_void_type s1expdeflst_tr_47 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr_51 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type s1aspdec_tr_arg_50 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) ;
static
ats_void_type auxerr_53 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type s1aspdec_tr_res_52 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr1_55 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr2_56 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr3_57 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type loop_60 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type list_filter_funenv_01338_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type list_filter_fun_01339_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type s1aspdec_tr_54 (ats_ptr_type arg0) ;
static
ats_void_type auxerr1_62 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr2_63 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr3_64 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type re1assume_tr_61 (ats_ptr_type arg0) ;
static
ats_ptr_type d1atconlst_tr_65 (ats_ptr_type arg0, ats_bool_type arg1, ats_bool_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5) ;
static
ats_int_type loop_68 (ats_ptr_type arg0, ats_int_type arg1) ;
static
ats_int_type list_length_01410_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_void_type aux_69 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_void_type d1atdec_tr_66 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type f_72 (ats_ptr_type arg0) ;
static
ats_bool_type list_is_cons_01295_ (ats_ptr_type arg0) ;
static
ats_ptr_type ff_73 (ats_ptr_type arg0) ;
static
ats_ptr_type fopr_75 (ats_ptr_type arg0) ;
static
ats_void_type aux_71 (ats_ptr_type env0, ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_clo_ptr_type aux_71_closure_make (ats_ptr_type env0) ;
static
ats_void_type aux_71_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_void_type auxlst_76 (ats_ptr_type env0, ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_clo_ptr_type auxlst_76_closure_make (ats_ptr_type env0) ;
static
ats_void_type auxlst_76_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_void_type aux2_77 (ats_ptr_type arg0) ;
static
ats_ptr_type auxlst2_78 (ats_ptr_type arg0) ;
static
ats_void_type loop_82 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type list_map_funenv_01412_ats_ptr_type_anairiats_rec_1 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type list_map_fun_01413_ats_ptr_type_anairiats_rec_1 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type e1xndec_tr_79 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type aux_84 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type loop_86 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) ;
static
ats_ptr_type list_append_01312_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type c1lassdec_tr_87 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type prerr_ERROR_beg_02111_ () ;
static
ats_void_type prerr_ERROR_end_02112_ () ;
static
ats_void_type dckfun_check_88 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type s2exp_get_arylst_91 (ats_ptr_type arg0) ;
static
ats_ptr_type d1cstdec_tr_92 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type d1cstdeclst_tr_93 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type trans2_env_add_m2acarg_94 (ats_ptr_type arg0) ;
static
ats_void_type trans2_env_add_m2acarglst_95 (ats_ptr_type arg0) ;
static
ats_void_type m1acdef_tr_96 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type f_98 (ats_ptr_type arg0) ;
static
ats_ptr_type f_99 (ats_ptr_type arg0) ;
static
ats_ptr_type m1acarg_tr_97 (ats_ptr_type arg0) ;
static
ats_ptr_type m1acarglst_tr_100 (ats_ptr_type arg0) ;
static
ats_ptr_type aux1_102 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_void_type loop2_103 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type m1acdeflst_tr_101 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type f1undec_tr_104 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type aux1_106 (ats_bool_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type aux2_107 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type f1undeclst_tr_105 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type v1aldec_tr_108 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type __ats_fun_110 (ats_ptr_type arg0) ;
static
ats_void_type loop_113 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ref_type arg3, ats_ptr_type arg4) ;
static
ats_ptr_type list_map2_funenv_01424_ats_ptr_type_2cats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type v1aldeclst_tr_109 (ats_bool_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type v1ardec_tr_114 (ats_ptr_type arg0) ;
static
ats_void_type f_116 (ats_ptr_type arg0) ;
static
ats_ptr_type v1ardeclst_tr_115 (ats_ptr_type arg0) ;
static
ats_void_type prerr_warning2_loc_02123_ (ats_ptr_type arg0) ;
static
ats_void_type auxkndck_117 (ats_ptr_type arg0) ;
static
ats_void_type auxwthck_119 (ats_ptr_type arg0) ;
static
ats_ptr_type prv1ardec_tr_120 (ats_ptr_type arg0) ;
static
ats_void_type f_122 (ats_ptr_type arg0) ;
static
ats_ptr_type prv1ardeclst_tr_121 (ats_ptr_type arg0) ;
static
ats_void_type auxerr_125 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxcheck_impdec_128 (ats_ptr_type arg0, ats_int_type arg1, ats_ptr_type arg2) ;

/* partial value template declarations */
/* static temporary variable declarations */
/* external value variable declarations */

/* function implementations */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 1796(line=60, offs=18) -- 1825(line=60, offs=47)
*/
ATSstaticdec()
ats_void_type
prerr_FILENAME_02113_ () {
/* local vardec */
// ATSlocal_void (tmp0) ;

__ats_lab_prerr_FILENAME_02113_:
/* tmp0 = */ atspre_prerr_string (ATSstrcst("pats_trans2_decl")) ;
return /* (tmp0) */ ;
} /* end of [prerr_FILENAME_02113_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 3216(line=139, offs=5) -- 3536(line=153, offs=4)
*/
ATSstaticdec()
ats_void_type
aux_2 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
// ATSlocal_void (tmp6) ;
ATSlocal (ats_ptr_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;

__ats_lab_aux_2:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp3 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp4 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp5 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, tmp3), atslab_i0de_sym) ;
tmp8 = (ats_sum_ptr_type)0 ;
tmp7 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp7)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_5, tmp7, atslab_0, tmp5) ;
ats_selptrset_mac(anairiats_sum_5, tmp7, atslab_1, tmp8) ;
/* tmp6 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp5, tmp7) ;
arg0 = tmp4 ;
goto __ats_lab_aux_2 ; // tail call
break ;

/* branch: __ats_lab_1 */
__ats_lab_1_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_1_1:
break ;
} while (0) ;
return /* (tmp2) */ ;
} /* end of [aux_2] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 3169(line=136, offs=1) -- 3572(line=157, offs=4)
*/
ATSstaticdec()
ats_void_type
symintr_tr_1 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp1) ;

__ats_lab_symintr_tr_1:
/* tmp1 = */ aux_2 (arg0) ;
return /* (tmp1) */ ;
} /* end of [symintr_tr_1] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 3669(line=166, offs=1) -- 4077(line=183, offs=4)
*/
ATSstaticdec()
ats_void_type
fproc_4 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;
ATSlocal (ats_ptr_type, tmp12) ;
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;

__ats_lab_fproc_4:
tmp11 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg0), atslab_i0de_sym) ;
tmp12 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (tmp11) ;
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (tmp12 == (ats_sum_ptr_type)0) { goto __ats_lab_5_0 ; }
__ats_lab_2_1:
tmp13 = ats_caselptrlab_mac(anairiats_sum_6, tmp12, atslab_0) ;
ATS_FREE(tmp12) ;
do {
/* branch: __ats_lab_3 */
__ats_lab_3_0:
if (((ats_sum_ptr_type)tmp13)->tag != 4) { goto __ats_lab_4_0 ; }
__ats_lab_3_1:
tmp15 = (ats_sum_ptr_type)0 ;
tmp14 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp14)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_5, tmp14, atslab_0, tmp11) ;
ats_selptrset_mac(anairiats_sum_5, tmp14, atslab_1, tmp15) ;
/* tmp10 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp11, tmp14) ;
break ;

/* branch: __ats_lab_4 */
__ats_lab_4_0:
__ats_lab_4_1:
break ;
} while (0) ;
break ;

/* branch: __ats_lab_5 */
__ats_lab_5_0:
// if (tmp12 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_5_1:
break ;
} while (0) ;
return /* (tmp10) */ ;
} /* end of [fproc_4] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 2457(line=87, offs=7) -- 2708(line=97, offs=6)
*/
ATSstaticdec()
ats_void_type
loop_7 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp18) ;
ATSlocal (ats_ptr_type, tmp19) ;
ATSlocal (ats_ptr_type, tmp20) ;
// ATSlocal_void (tmp21) ;

__ats_lab_loop_7:
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_7_0 ; }
__ats_lab_6_1:
tmp19 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp20 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
/* tmp21 = */ ((ats_void_type(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp19, arg2) ;
arg0 = tmp20 ;
arg1 = arg1 ;
arg2 = arg2 ;
goto __ats_lab_loop_7 ; // tail call
break ;

/* branch: __ats_lab_7 */
__ats_lab_7_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_7_1:
break ;
} while (0) ;
return /* (tmp18) */ ;
} /* end of [loop_7] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 2381(line=85, offs=20) -- 2757(line=100, offs=4)
*/
ATSstaticdec()
ats_void_type
list_app_funenv_01300_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp17) ;

__ats_lab_list_app_funenv_01300_ats_ptr_type:
/* tmp17 = */ loop_7 (arg0, arg1, arg2) ;
return /* (tmp17) */ ;
} /* end of [list_app_funenv_01300_ats_ptr_type] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 2821(line=103, offs=22) -- 3078(line=112, offs=4)
*/
ATSstaticdec()
ats_void_type
list_app_fun_01301_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp16) ;

__ats_lab_list_app_fun_01301_ats_ptr_type:
/* tmp16 = */ list_app_funenv_01300_ats_ptr_type (arg0, ats_castfn_mac(ats_ptr_type, arg1), atspre_null_ptr) ;
return /* (tmp16) */ ;
} /* end of [list_app_fun_01301_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 3622(line=162, offs=1) -- 4133(line=187, offs=4)
*/
ATSstaticdec()
ats_void_type
symelim_tr_3 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp9) ;

__ats_lab_symelim_tr_3:
/* tmp9 = */ list_app_fun_01301_ats_ptr_type (arg0, &fproc_4) ;
return /* (tmp9) */ ;
} /* end of [symelim_tr_3] */

/*
// /tmp/ATS-Postiats/src/pats_errmsg.dats: 2105(line=76, offs=17) -- 2163(line=79, offs=2)
*/
ATSstaticdec()
ats_void_type
prerr_error2_loc_02117_ (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp27) ;
// ATSlocal_void (tmp28) ;

__ats_lab_prerr_error2_loc_02117_:
/* tmp28 = */ _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp27 = */ atspre_prerr_string (ATSstrcst(": error(2)")) ;
return /* (tmp27) */ ;
} /* end of [prerr_error2_loc_02117_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 4720(line=223, offs=1) -- 5089(line=235, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_9 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp24) ;
ATSlocal (ats_ptr_type, tmp25) ;
// ATSlocal_void (tmp26) ;
// ATSlocal_void (tmp29) ;
// ATSlocal_void (tmp30) ;
// ATSlocal_void (tmp31) ;
// ATSlocal_void (tmp32) ;
// ATSlocal_void (tmp33) ;
ATSlocal (ats_ptr_type, tmp34) ;

__ats_lab_auxerr_9:
tmp25 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_8, arg1), atslab_dqi0de_loc) ;
/* tmp26 = */ prerr_error2_loc_02117_ (tmp25) ;
/* tmp29 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("overload_tr")) ;
/* tmp30 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp31 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_dqi0de (arg1) ;
/* tmp32 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp33 = */ atspre_prerr_newline () ;
tmp34 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp34)->tag = 38 ;
ats_selptrset_mac(anairiats_sum_9, tmp34, atslab_0, arg0) ;
/* tmp24 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp34) ;
return /* (tmp24) */ ;
} /* end of [auxerr_9] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 4512(line=208, offs=1) -- 5416(line=251, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp22) ;
ATSlocal (ats_ptr_type, tmp23) ;
ATSlocal (ats_ptr_type, tmp35) ;
ATSlocal (ats_ptr_type, tmp36) ;
ATSlocal (ats_ptr_type, tmp37) ;
// ATSlocal_void (tmp38) ;
ATSlocal (ats_ptr_type, tmp39) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr:
tmp23 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_loc) ;
tmp35 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_8, arg2), atslab_dqi0de_qua) ;
tmp36 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_8, arg2), atslab_dqi0de_sym) ;
tmp37 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (tmp35, tmp36) ;
do {
/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (ats_castfn_mac(ats_ptr_type, tmp37) == (ats_sum_ptr_type)0) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
tmp39 = ats_caselptrlab_mac(anairiats_sum_6, ats_castfn_mac(ats_ptr_type, tmp37), atslab_0) ;
/* tmp38 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def (tmp23, arg1, arg3, tmp39) ;
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
// if (ats_castfn_mac(ats_ptr_type, tmp37) != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_9_1:
/* tmp38 = */ auxerr_9 (arg0, arg2) ;
break ;
} while (0) ;
tmp22 = ats_castfn_mac(ats_ptr_type, tmp37) ;
return (tmp22) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 5527(line=260, offs=1) -- 5942(line=273, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr1_12 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp42) ;
ATSlocal (ats_int_type, tmp43) ;
// ATSlocal_void (tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;
// ATSlocal_void (tmp46) ;
// ATSlocal_void (tmp47) ;
// ATSlocal_void (tmp48) ;
// ATSlocal_void (tmp49) ;
// ATSlocal_void (tmp50) ;
ATSlocal (ats_ptr_type, tmp51) ;

__ats_lab_auxerr1_12:
tmp43 = atspre_add_int_int (ats_ptrget_mac(ats_int_type, arg2), 1) ;
ats_ptrget_mac(ats_int_type, arg2) = tmp43 ;
tmp45 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg1), atslab_i0de_loc) ;
/* tmp44 = */ prerr_error2_loc_02117_ (tmp45) ;
/* tmp46 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("overload_tr_def")) ;
/* tmp47 = */ atspre_prerr_string (ATSstrcst(": the overloaded identifier [")) ;
/* tmp48 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de (arg1) ;
/* tmp49 = */ atspre_prerr_string (ATSstrcst("] should refer to a symbol but it does not.")) ;
/* tmp50 = */ atspre_prerr_newline () ;
tmp51 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp51)->tag = 39 ;
ats_selptrset_mac(anairiats_sum_9, tmp51, atslab_0, arg0) ;
/* tmp42 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp51) ;
return /* (tmp42) */ ;
} /* end of [auxerr1_12] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 5970(line=276, offs=1) -- 6360(line=291, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr2_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp52) ;
ATSlocal (ats_int_type, tmp53) ;
// ATSlocal_void (tmp54) ;
ATSlocal (ats_ptr_type, tmp55) ;
// ATSlocal_void (tmp56) ;
// ATSlocal_void (tmp57) ;
// ATSlocal_void (tmp58) ;
// ATSlocal_void (tmp59) ;
// ATSlocal_void (tmp60) ;
ATSlocal (ats_ptr_type, tmp61) ;

__ats_lab_auxerr2_13:
tmp53 = atspre_add_int_int (ats_ptrget_mac(ats_int_type, arg2), 1) ;
ats_ptrget_mac(ats_int_type, arg2) = tmp53 ;
tmp55 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg1), atslab_i0de_loc) ;
/* tmp54 = */ prerr_error2_loc_02117_ (tmp55) ;
/* tmp56 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("overload_tr_def")) ;
/* tmp57 = */ atspre_prerr_string (ATSstrcst(": the overloaded identifier [")) ;
/* tmp58 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de (arg1) ;
/* tmp59 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp60 = */ atspre_prerr_newline () ;
tmp61 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp61)->tag = 39 ;
ats_selptrset_mac(anairiats_sum_9, tmp61, atslab_0, arg0) ;
/* tmp52 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp61) ;
return /* (tmp52) */ ;
} /* end of [auxerr2_13] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 5470(line=255, offs=3) -- 7706(line=347, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp40) ;
ATSlocal (ats_int_type, tmp41) ;
ATSlocal (ats_ptr_type, tmp62) ;
ATSlocal (ats_ptr_type, tmp63) ;
ATSlocal (ats_ptr_type, tmp64) ;
ATSlocal (ats_ptr_type, tmp65) ;
ATSlocal (ats_ptr_type, tmp66) ;
ATSlocal (ats_ptr_type, tmp67) ;
// ATSlocal_void (tmp68) ;
ATSlocal (ats_ptr_type, tmp69) ;
// ATSlocal_void (tmp70) ;
ATSlocal (ats_ptr_type, tmp71) ;
ATSlocal (ats_bool_type, tmp72) ;
ATSlocal (ats_ptr_type, tmp73) ;
ATSlocal (ats_ptr_type, tmp74) ;
ATSlocal (ats_ptr_type, tmp75) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def:
/* ats_int_type tmp41 ; */
tmp41 = 0 ;
tmp62 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg1), atslab_i0de_sym) ;
tmp63 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_current_find (tmp62) ;
do {
/* branch: __ats_lab_10 */
__ats_lab_10_0:
if (tmp63 == (ats_sum_ptr_type)0) { goto __ats_lab_11_0 ; }
__ats_lab_10_1:
tmp64 = tmp63 ;
break ;

/* branch: __ats_lab_11 */
__ats_lab_11_0:
// if (tmp63 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_11_1:
tmp64 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pervasive_find (tmp62) ;
break ;
} while (0) ;
do {
/* branch: __ats_lab_12 */
__ats_lab_12_0:
if (tmp64 == (ats_sum_ptr_type)0) { goto __ats_lab_15_0 ; }
__ats_lab_12_1:
tmp66 = ats_caselptrlab_mac(anairiats_sum_6, tmp64, atslab_0) ;
ATS_FREE(tmp64) ;
do {
/* branch: __ats_lab_13 */
__ats_lab_13_0:
if (((ats_sum_ptr_type)tmp66)->tag != 4) { goto __ats_lab_14_0 ; }
__ats_lab_13_1:
tmp67 = ats_caselptrlab_mac(anairiats_sum_5, tmp66, atslab_1) ;
tmp65 = tmp67 ;
break ;

/* branch: __ats_lab_14 */
__ats_lab_14_0:
__ats_lab_14_1:
/* tmp68 = */ auxerr1_12 (arg0, arg1, (&tmp41)) ;
tmp65 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_15 */
__ats_lab_15_0:
// if (tmp64 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_15_1:
tmp69 = (ats_sum_ptr_type)0 ;
tmp71 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp71)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_5, tmp71, atslab_0, tmp62) ;
ats_selptrset_mac(anairiats_sum_5, tmp71, atslab_1, tmp69) ;
/* tmp70 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp62, tmp71) ;
tmp65 = tmp69 ;
break ;
} while (0) ;
tmp72 = atspre_eq_int_int (tmp41, 0) ;
if (tmp72) {
tmp73 = ATS_MALLOC(sizeof(anairiats_sum_10)) ;
ats_selptrset_mac(anairiats_sum_10, tmp73, atslab_0, arg2) ;
ats_selptrset_mac(anairiats_sum_10, tmp73, atslab_1, arg3) ;
tmp74 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp74, atslab_0, tmp73) ;
ats_selptrset_mac(anairiats_sum_3, tmp74, atslab_1, tmp65) ;
tmp75 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp75)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_5, tmp75, atslab_0, tmp62) ;
ats_selptrset_mac(anairiats_sum_5, tmp75, atslab_1, tmp74) ;
/* tmp40 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp62, tmp75) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp40) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 7835(line=357, offs=5) -- 8374(line=388, offs=2)
*/
ATSstaticdec()
ats_ptr_type
aux_15 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp77) ;
ATSlocal (ats_ptr_type, tmp78) ;
ATSlocal (ats_ptr_type, tmp79) ;
ATSlocal (ats_ptr_type, tmp80) ;
ATSlocal (ats_ptr_type, tmp81) ;
ATSlocal (ats_ptr_type, tmp82) ;
ATSlocal (ats_ptr_type, tmp83) ;
ATSlocal (ats_ptr_type, tmp84) ;
ATSlocal (ats_ptr_type, tmp85) ;
ATSlocal (ats_ptr_type, tmp86) ;
ATSlocal (ats_ptr_type, tmp87) ;
ATSlocal (ats_ptr_type, tmp88) ;
// ATSlocal_void (tmp89) ;
// ATSlocal_void (tmp90) ;

__ats_lab_aux_15:
tmp78 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, arg2), atslab_d1atsrtcon_sym) ;
tmp79 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, arg2), atslab_d1atsrtcon_loc) ;
tmp81 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, arg2), atslab_d1atsrtcon_arg) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtlst_tr (tmp81) ;
tmp82 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_fun (tmp80, arg1) ;
tmp84 = (ats_sum_ptr_type)0 ;
tmp85 = (ats_sum_ptr_type)0 ;
tmp86 = (ats_sum_ptr_type)0 ;
tmp87 = (ats_sum_ptr_type)0 ;
tmp88 = (ats_sum_ptr_type)0 ;
tmp83 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp78, tmp79, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy, tmp82, tmp84, ats_true_bool, ats_false_bool, tmp85, tmp86, tmp87, tmp88) ;
/* tmp89 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_dstag (tmp83, arg0) ;
/* tmp90 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp83) ;
tmp77 = tmp83 ;
return (tmp77) ;
} /* end of [aux_15] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 8401(line=390, offs=5) -- 8638(line=403, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_16 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp91) ;
ATSlocal (ats_ptr_type, tmp92) ;
ATSlocal (ats_ptr_type, tmp93) ;
ATSlocal (ats_ptr_type, tmp94) ;
ATSlocal (ats_ptr_type, tmp95) ;
ATSlocal (ats_int_type, tmp96) ;

__ats_lab_auxlst_16:
do {
/* branch: __ats_lab_16 */
__ats_lab_16_0:
if (arg2 == (ats_sum_ptr_type)0) { goto __ats_lab_17_0 ; }
__ats_lab_16_1:
tmp92 = ats_caselptrlab_mac(anairiats_sum_3, arg2, atslab_0) ;
tmp93 = ats_caselptrlab_mac(anairiats_sum_3, arg2, atslab_1) ;
tmp94 = aux_15 (arg0, arg1, tmp92) ;
tmp96 = atspre_add_int_int (arg0, 1) ;
tmp95 = auxlst_16 (tmp96, arg1, tmp93) ;
tmp91 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp91, atslab_0, tmp94) ;
ats_selptrset_mac(anairiats_sum_3, tmp91, atslab_1, tmp95) ;
break ;

/* branch: __ats_lab_17 */
__ats_lab_17_0:
// if (arg2 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_17_1:
tmp91 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp91) ;
} /* end of [auxlst_16] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 7764(line=352, offs=1) -- 8705(line=407, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1atsrtdec_tr_14 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp76) ;
ATSlocal (ats_ptr_type, tmp97) ;

__ats_lab_d1atsrtdec_tr_14:
tmp97 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_12, arg1), atslab_d1atsrtdec_con) ;
tmp76 = auxlst_16 (0, arg0, tmp97) ;
return (tmp76) ;
} /* end of [d1atsrtdec_tr_14] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 8834(line=415, offs=5) -- 9102(line=427, offs=4)
*/
ATSstaticdec()
ats_void_type
loop1_18 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp99) ;
ATSlocal (anairiats_rec_2, tmp100) ;
ATSlocal (ats_ptr_type, tmp101) ;
ATSlocal (ats_ptr_type, tmp102) ;
ATSlocal (ats_ptr_type, tmp103) ;
ATSlocal (ats_ptr_type, tmp104) ;
// ATSlocal_void (tmp105) ;
ATSlocal (ats_ptr_type, tmp106) ;

__ats_lab_loop1_18:
do {
/* branch: __ats_lab_18 */
__ats_lab_18_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_19_0 ; }
__ats_lab_18_1:
tmp100 = ats_caselptrlab_mac(anairiats_sum_13, arg0, atslab_0) ;
tmp101 = ats_caselptrlab_mac(anairiats_sum_13, arg0, atslab_1) ;
ATS_FREE(arg0) ;
tmp103 = ats_select_mac(tmp100, atslab_2) ;
tmp104 = ats_select_mac(tmp100, atslab_0) ;
tmp102 = d1atsrtdec_tr_14 (tmp103, tmp104) ;
tmp106 = ats_select_mac(tmp100, atslab_1) ;
/* tmp105 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_set_sconlst (tmp106, tmp102) ;
arg0 = tmp101 ;
goto __ats_lab_loop1_18 ; // tail call
break ;

/* branch: __ats_lab_19 */
__ats_lab_19_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_19_1:
break ;
} while (0) ;
return /* (tmp99) */ ;
} /* end of [loop1_18] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 9128(line=429, offs=5) -- 10016(line=472, offs=4)
*/
ATSstaticdec()
ats_void_type
loop2_19 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp107) ;
ATSlocal (ats_ptr_type, tmp108) ;
ATSlocal (ats_ptr_type, tmp109) ;
ATSlocal (ats_ptr_type, tmp110) ;
ATSlocal (ats_ptr_type, tmp111) ;
ATSlocal (ats_ptr_type, tmp112) ;
ATSlocal (ats_ptr_type, tmp113) ;
ATSlocal (ats_ptr_type, tmp114) ;
ATSlocal (ats_ptr_type, tmp115) ;
ATSlocal (ats_ptr_type, tmp116) ;
ATSlocal (ats_ptr_type, tmp117) ;
ATSlocal (ats_ptr_type, tmp118) ;
ATSlocal (ats_ptr_type, tmp119) ;
ATSlocal (ats_ptr_type, tmp120) ;
ATSlocal (ats_ptr_type, tmp121) ;
ATSlocal (ats_ptr_type, tmp122) ;
ATSlocal (ats_ptr_type, tmp123) ;
ATSlocal (ats_ptr_type, tmp124) ;
// ATSlocal_void (tmp125) ;
// ATSlocal_void (tmp126) ;
ATSlocal (ats_ptr_type, tmp127) ;
ATSlocal (ats_ptr_type, tmp128) ;
ATSlocal (anairiats_rec_2, tmp129) ;

__ats_lab_loop2_19:
do {
/* branch: __ats_lab_20 */
__ats_lab_20_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_21_0 ; }
__ats_lab_20_1:
tmp108 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp109 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp110 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_12, tmp108), atslab_d1atsrtdec_loc) ;
tmp111 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_12, tmp108), atslab_d1atsrtdec_sym) ;
tmp112 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_make (tmp111) ;
tmp114 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp114)->tag = 2 ;
ats_selptrset_mac(anairiats_sum_9, tmp114, atslab_0, tmp112) ;
tmp113 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp113)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_9, tmp113, atslab_0, tmp114) ;
tmp116 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp116, atslab_0, tmp113) ;
tmp117 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_3, tmp116), atslab_1) ;
tmp118 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp118, atslab_0, tmp113) ;
ats_ptrget_mac(ats_ptr_type, tmp117) = tmp118 ;
tmp117 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_3, tmp118), atslab_1) ;
tmp118 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp117) = tmp118 ;
tmp115 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_fun (tmp116, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_bool) ;
tmp120 = (ats_sum_ptr_type)0 ;
tmp121 = (ats_sum_ptr_type)0 ;
tmp122 = (ats_sum_ptr_type)0 ;
tmp123 = (ats_sum_ptr_type)0 ;
tmp124 = (ats_sum_ptr_type)0 ;
tmp119 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_EQEQ, tmp110, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy, tmp115, tmp120, ats_false_bool, ats_false_bool, tmp121, tmp122, tmp123, tmp124) ;
/* tmp125 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp119) ;
tmp127 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp127)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_9, tmp127, atslab_0, tmp113) ;
/* tmp126 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2rtenv_add (tmp111, tmp127) ;
tmp129.atslab_0 = tmp108 ;
tmp129.atslab_1 = tmp112 ;
tmp129.atslab_2 = tmp113 ;

tmp128 = ATS_MALLOC(sizeof(anairiats_sum_13)) ;
ats_selptrset_mac(anairiats_sum_13, tmp128, atslab_0, tmp129) ;
ats_selptrset_mac(anairiats_sum_13, tmp128, atslab_1, arg1) ;
arg0 = tmp109 ;
arg1 = tmp128 ;
goto __ats_lab_loop2_19 ; // tail call
break ;

/* branch: __ats_lab_21 */
__ats_lab_21_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_21_1:
/* tmp107 = */ loop1_18 (arg1) ;
break ;
} while (0) ;
return /* (tmp107) */ ;
} /* end of [loop2_19] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 8737(line=410, offs=1) -- 10075(line=476, offs=4)
*/
ATSstaticdec()
ats_void_type
d1atsrtdeclst_tr_17 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp98) ;
ATSlocal (ats_ptr_type, tmp130) ;

__ats_lab_d1atsrtdeclst_tr_17:
tmp130 = (ats_sum_ptr_type)0 ;
/* tmp98 = */ loop2_19 (arg0, tmp130) ;
return /* (tmp98) */ ;
} /* end of [d1atsrtdeclst_tr_17] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 10131(line=481, offs=1) -- 10269(line=487, offs=4)
*/
ATSstaticdec()
ats_void_type
s1rtdef_tr_20 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp131) ;
ATSlocal (ats_ptr_type, tmp132) ;
ATSlocal (ats_ptr_type, tmp133) ;
ATSlocal (ats_ptr_type, tmp134) ;

__ats_lab_s1rtdef_tr_20:
tmp132 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_s1rtdef_sym) ;
tmp134 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_s1rtdef_def) ;
tmp133 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtext_tr (tmp134) ;
/* tmp131 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2rtenv_add (tmp132, tmp133) ;
return /* (tmp131) */ ;
} /* end of [s1rtdef_tr_20] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 10298(line=490, offs=1) -- 10368(line=491, offs=57)
*/
ATSstaticdec()
ats_void_type
s1rtdeflst_tr_21 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp135) ;

__ats_lab_s1rtdeflst_tr_21:
/* tmp135 = */ list_app_fun_01301_ats_ptr_type (arg0, &s1rtdef_tr_20) ;
return /* (tmp135) */ ;
} /* end of [s1rtdeflst_tr_21] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 10471(line=503, offs=1) -- 10658(line=511, offs=30)
*/
ATSstaticdec()
ats_ptr_type
aux_23 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp137) ;
ATSlocal (ats_ptr_type, tmp138) ;
ATSlocal (ats_ptr_type, tmp139) ;
ATSlocal (ats_ptr_type, tmp140) ;
ATSlocal (ats_ptr_type, tmp141) ;

__ats_lab_aux_23:
do {
/* branch: __ats_lab_22 */
__ats_lab_22_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_23_0 ; }
__ats_lab_22_1:
tmp138 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp139 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp140 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__a1msrt_tr_srt (tmp138) ;
tmp141 = aux_23 (tmp139, arg1) ;
tmp137 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_fun (tmp140, tmp141) ;
break ;

/* branch: __ats_lab_23 */
__ats_lab_23_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_23_1:
tmp137 = arg1 ;
break ;
} while (0) ;
return (tmp137) ;
} /* end of [aux_23] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 10421(line=497, offs=1) -- 11209(line=548, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1tacst_tr_22 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp136) ;
ATSlocal (ats_ptr_type, tmp142) ;
ATSlocal (ats_ptr_type, tmp143) ;
ATSlocal (ats_ptr_type, tmp144) ;
ATSlocal (ats_ptr_type, tmp145) ;
ATSlocal (ats_ptr_type, tmp146) ;
ATSlocal (ats_ptr_type, tmp147) ;
ATSlocal (ats_ptr_type, tmp148) ;
ATSlocal (ats_ptr_type, tmp149) ;
ATSlocal (ats_ptr_type, tmp150) ;
ATSlocal (ats_ptr_type, tmp151) ;
ATSlocal (ats_ptr_type, tmp152) ;
ATSlocal (ats_ptr_type, tmp153) ;
ATSlocal (ats_ptr_type, tmp154) ;
// ATSlocal_void (tmp155) ;
ATSlocal (ats_ptr_type, tmp156) ;
// ATSlocal_void (tmp157) ;

__ats_lab_s1tacst_tr_22:
tmp142 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_sym) ;
tmp143 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_loc) ;
tmp144 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_fil) ;
tmp146 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_res) ;
tmp145 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rt_tr (tmp146) ;
tmp148 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_arg) ;
tmp147 = aux_23 (tmp148, tmp145) ;
tmp150 = (ats_sum_ptr_type)0 ;
tmp151 = (ats_sum_ptr_type)0 ;
tmp152 = (ats_sum_ptr_type)0 ;
tmp153 = (ats_sum_ptr_type)0 ;
tmp154 = (ats_sum_ptr_type)0 ;
tmp149 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp142, tmp143, tmp144, tmp147, tmp150, ats_false_bool, ats_false_bool, tmp151, tmp152, tmp153, tmp154) ;
tmp156 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_s1tacst_extdef) ;
/* tmp155 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_extdef (tmp149, tmp156) ;
/* tmp157 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp149) ;
tmp136 = tmp149 ;
return (tmp136) ;
} /* end of [s1tacst_tr_22] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52519(line=1874, offs=5) -- 52952(line=1891, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_27 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp162) ;
ATSlocal (ats_ptr_type, tmp163) ;
ATSlocal (ats_ptr_type, tmp164) ;
ATSlocal (ats_ptr_type, tmp165) ;
ATSlocal (ats_ptr_type, tmp166) ;
ATSlocal (ats_ptr_type, tmp167) ;
ATSlocal (ats_ptr_type, tmp168) ;

__ats_lab_loop_27:
do {
/* branch: __ats_lab_24 */
__ats_lab_24_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_25_0 ; }
__ats_lab_24_1:
tmp163 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp164 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp165 = ((ats_ptr_type(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp163, arg3) ;
tmp166 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp166, atslab_0, tmp165) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp166 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp167 = &ats_caselptrlab_mac(anairiats_sum_3, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp164 ;
arg1 = arg1 ;
arg2 = tmp167 ;
arg3 = arg3 ;
goto __ats_lab_loop_27 ; // tail call
break ;

/* branch: __ats_lab_25 */
__ats_lab_25_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_25_1:
tmp168 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp168 ;
break ;
} while (0) ;
return /* (tmp162) */ ;
} /* end of [loop_27] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52444(line=1870, offs=3) -- 53099(line=1899, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map_funenv_01412_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp161) ;
ATSlocal (ats_ptr_type, tmp169) ;
// ATSlocal_void (tmp170) ;

__ats_lab_list_map_funenv_01412_ats_ptr_type_ats_ptr_type:
/* ats_ptr_type tmp169 ; */
/* tmp170 = */ loop_27 (arg0, arg1, (&tmp169), arg2) ;
tmp161 = tmp169 ;
return (tmp161) ;
} /* end of [list_map_funenv_01412_ats_ptr_type_ats_ptr_type] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 53173(line=1904, offs=3) -- 53424(line=1911, offs=2)
*/
ATSstaticdec()
ats_ptr_type
list_map_fun_01413_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp160) ;

__ats_lab_list_map_fun_01413_ats_ptr_type_ats_ptr_type:
tmp160 = list_map_funenv_01412_ats_ptr_type_ats_ptr_type (arg0, ats_castfn_mac(ats_ptr_type, arg1), atspre_null_ptr) ;
return (tmp160) ;
} /* end of [list_map_fun_01413_ats_ptr_type_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 11238(line=551, offs=1) -- 11334(line=555, offs=2)
*/
ATSstaticdec()
ats_ptr_type
s1tacstlst_tr_24 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp158) ;
ATSlocal (ats_ptr_type, tmp159) ;

__ats_lab_s1tacstlst_tr_24:
tmp159 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &s1tacst_tr_22) ;
tmp158 = ats_castfn_mac(ats_ptr_type, tmp159) ;
return (tmp158) ;
} /* end of [s1tacstlst_tr_24] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52519(line=1874, offs=5) -- 52952(line=1891, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_32 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp183) ;
ATSlocal (anairiats_rec_17, tmp184) ;
ATSlocal (ats_ptr_type, tmp185) ;
ATSlocal (ats_ptr_type, tmp186) ;
ATSlocal (ats_ptr_type, tmp187) ;
ATSlocal (ats_ptr_type, tmp188) ;
ATSlocal (ats_ptr_type, tmp189) ;

__ats_lab_loop_32:
do {
/* branch: __ats_lab_28 */
__ats_lab_28_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_29_0 ; }
__ats_lab_28_1:
tmp184 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_0) ;
tmp185 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_1) ;
tmp186 = ((ats_ptr_type(*)(anairiats_rec_17, ats_ptr_type))arg1) (tmp184, arg3) ;
tmp187 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp187, atslab_0, tmp186) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp187 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp188 = &ats_caselptrlab_mac(anairiats_sum_3, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp185 ;
arg1 = arg1 ;
arg2 = tmp188 ;
arg3 = arg3 ;
goto __ats_lab_loop_32 ; // tail call
break ;

/* branch: __ats_lab_29 */
__ats_lab_29_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_29_1:
tmp189 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp189 ;
break ;
} while (0) ;
return /* (tmp183) */ ;
} /* end of [loop_32] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52444(line=1870, offs=3) -- 53099(line=1899, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map_funenv_01412_anairiats_rec_17_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp182) ;
ATSlocal (ats_ptr_type, tmp190) ;
// ATSlocal_void (tmp191) ;

__ats_lab_list_map_funenv_01412_anairiats_rec_17_ats_ptr_type:
/* ats_ptr_type tmp190 ; */
/* tmp191 = */ loop_32 (arg0, arg1, (&tmp190), arg2) ;
tmp182 = tmp190 ;
return (tmp182) ;
} /* end of [list_map_funenv_01412_anairiats_rec_17_ats_ptr_type] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 53173(line=1904, offs=3) -- 53424(line=1911, offs=2)
*/
ATSstaticdec()
ats_ptr_type
list_map_fun_01413_anairiats_rec_17_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp181) ;

__ats_lab_list_map_fun_01413_anairiats_rec_17_ats_ptr_type:
tmp181 = list_map_funenv_01412_anairiats_rec_17_ats_ptr_type (arg0, ats_castfn_mac(ats_ptr_type, arg1), atspre_null_ptr) ;
return (tmp181) ;
} /* end of [list_map_fun_01413_anairiats_rec_17_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 11969(line=596, offs=19) -- 11988(line=596, offs=38)
*/
ATSstaticdec()
ats_ptr_type
__ats_fun_33 (anairiats_rec_17 arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp192) ;

__ats_lab___ats_fun_33:
tmp192 = ats_select_mac(arg0, atslab_1) ;
return (tmp192) ;
} /* end of [__ats_fun_33] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 11679(line=581, offs=7) -- 12111(line=602, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_29 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp177) ;
ATSlocal (ats_ptr_type, tmp178) ;
ATSlocal (ats_ptr_type, tmp179) ;
ATSlocal (ats_ptr_type, tmp180) ;
ATSlocal (ats_ptr_type, tmp193) ;

__ats_lab_aux_29:
do {
/* branch: __ats_lab_26 */
__ats_lab_26_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_27_0 ; }
__ats_lab_26_1:
tmp177 = arg0 ;
break ;

/* branch: __ats_lab_27 */
__ats_lab_27_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_27_1:
tmp178 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp179 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp180 = list_map_fun_01413_anairiats_rec_17_ats_ptr_type (tmp178, &__ats_fun_33) ;
tmp193 = aux_29 (arg0, tmp179) ;
tmp177 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_fun (ats_castfn_mac(ats_ptr_type, tmp180), tmp193) ;
break ;
} while (0) ;
return (tmp177) ;
} /* end of [aux_29] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 12450(line=620, offs=7) -- 12574(line=623, offs=39)
*/
ATSstaticdec()
ats_ptr_type
f1_34 (anairiats_rec_17 arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp197) ;
ATSlocal (ats_bool_type, tmp198) ;
ATSlocal (ats_ptr_type, tmp199) ;
ATSlocal (ats_ptr_type, tmp200) ;
ATSlocal (ats_ptr_type, tmp201) ;
ATSlocal (ats_ptr_type, tmp202) ;

__ats_lab_f1_34:
tmp199 = ats_select_mac(arg0, atslab_0) ;
tmp198 = _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (tmp199, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_empty) ;
if (tmp198) {
tmp200 = ats_select_mac(arg0, atslab_1) ;
tmp197 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_srt (tmp200) ;
} else {
tmp201 = ats_select_mac(arg0, atslab_0) ;
tmp202 = ats_select_mac(arg0, atslab_1) ;
tmp197 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_id_srt (tmp201, tmp202) ;
} /* end of [if] */
return (tmp197) ;
} /* end of [f1_34] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 12600(line=625, offs=7) -- 12811(line=637, offs=6)
*/
ATSstaticdec()
ats_ptr_type
f2_35 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp203) ;
ATSlocal (ats_ptr_type, tmp204) ;
// ATSlocal_void (tmp205) ;

__ats_lab_f2_35:
tmp204 = list_map_fun_01413_anairiats_rec_17_ats_ptr_type (arg0, &f1_34) ;
/* tmp205 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (ats_castfn_mac(ats_ptr_type, tmp204)) ;
tmp203 = ats_castfn_mac(ats_ptr_type, tmp204) ;
return (tmp203) ;
} /* end of [f2_35] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 12950(line=646, offs=7) -- 13328(line=661, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_36 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp207) ;
ATSlocal (ats_ptr_type, tmp208) ;
ATSlocal (ats_ptr_type, tmp209) ;
ATSlocal (ats_ptr_type, tmp210) ;
ATSlocal (ats_ptr_type, tmp211) ;

__ats_lab_aux_36:
do {
/* branch: __ats_lab_30 */
__ats_lab_30_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_31_0 ; }
__ats_lab_30_1:
tmp208 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp209 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
if (((ats_sum_ptr_type)arg0)->tag != 1) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_decl.dats: 13105(line=654, offs=13) -- 13135(line=654, offs=43)") ; }
tmp210 = ats_caselptrlab_mac(anairiats_sum_5, arg0, atslab_1) ;
tmp211 = aux_36 (tmp210, tmp209, arg2) ;
tmp207 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_lam_srt (arg0, tmp208, tmp211) ;
break ;

/* branch: __ats_lab_31 */
__ats_lab_31_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_31_1:
tmp207 = arg2 ;
break ;
} while (0) ;
return (tmp207) ;
} /* end of [aux_36] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 11390(line=560, offs=1) -- 14010(line=699, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1tacon_tr_28 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp171) ;
ATSlocal (ats_ptr_type, tmp172) ;
ATSlocal (ats_ptr_type, tmp173) ;
ATSlocal (ats_ptr_type, tmp174) ;
ATSlocal (ats_ptr_type, tmp175) ;
ATSlocal (ats_ptr_type, tmp176) ;
ATSlocal (ats_ptr_type, tmp194) ;
// ATSlocal_void (tmp195) ;
// ATSlocal_void (tmp196) ;
ATSlocal (ats_ptr_type, tmp206) ;
ATSlocal (ats_ptr_type, tmp212) ;
ATSlocal (ats_ptr_type, tmp213) ;
ATSlocal (ats_ptr_type, tmp214) ;
ATSlocal (ats_ptr_type, tmp215) ;
ATSlocal (ats_ptr_type, tmp216) ;
// ATSlocal_void (tmp217) ;
ATSlocal (ats_ptr_type, tmp218) ;
ATSlocal (ats_ptr_type, tmp219) ;
ATSlocal (ats_ptr_type, tmp220) ;
ATSlocal (ats_ptr_type, tmp221) ;
ATSlocal (ats_ptr_type, tmp222) ;
// ATSlocal_void (tmp223) ;

__ats_lab_s1tacon_tr_28:
tmp172 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_s1tacon_sym) ;
tmp173 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_s1tacon_loc) ;
tmp174 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_s1tacon_fil) ;
tmp176 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_s1tacon_arg) ;
tmp175 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp176, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__a1msrt_tr_symsrt) ;
tmp194 = aux_29 (arg0, ats_castfn_mac(ats_ptr_type, tmp175)) ;
/* tmp195 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp196 = ats_selsin_mac(tmp195, atslab_1) */ ;
tmp206 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (ats_castfn_mac(ats_ptr_type, tmp175), &f2_35) ;
tmp212 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_s1tacon_def) ;
do {
/* branch: __ats_lab_32 */
__ats_lab_32_0:
if (tmp212 == (ats_sum_ptr_type)0) { goto __ats_lab_33_0 ; }
__ats_lab_32_1:
tmp214 = ats_caselptrlab_mac(anairiats_sum_6, tmp212, atslab_0) ;
tmp215 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp214, arg0) ;
tmp216 = aux_36 (tmp194, ats_castfn_mac(ats_ptr_type, tmp206), tmp215) ;
tmp213 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp213, atslab_0, tmp216) ;
break ;

/* branch: __ats_lab_33 */
__ats_lab_33_0:
// if (tmp212 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_33_1:
tmp213 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
/* tmp217 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp219 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp219, atslab_0, tmp213) ;
tmp220 = (ats_sum_ptr_type)0 ;
tmp221 = (ats_sum_ptr_type)0 ;
tmp222 = (ats_sum_ptr_type)0 ;
tmp218 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp172, tmp173, tmp174, tmp194, tmp219, ats_true_bool, ats_false_bool, tmp220, tmp221, ats_castfn_mac(ats_ptr_type, tmp175), tmp222) ;
/* tmp223 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp218) ;
tmp171 = tmp218 ;
return (tmp171) ;
} /* end of [s1tacon_tr_28] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 14108(line=708, offs=1) -- 14399(line=726, offs=2)
*/
ATSstaticdec()
ats_ptr_type
auxlst_38 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp225) ;
ATSlocal (ats_ptr_type, tmp226) ;
ATSlocal (ats_ptr_type, tmp227) ;
ATSlocal (ats_ptr_type, tmp228) ;
ATSlocal (ats_ptr_type, tmp229) ;

__ats_lab_auxlst_38:
do {
/* branch: __ats_lab_34 */
__ats_lab_34_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_35_0 ; }
__ats_lab_34_1:
tmp226 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp227 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp228 = s1tacon_tr_28 (arg0, tmp226) ;
tmp229 = auxlst_38 (arg0, tmp227) ;
tmp225 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp225, atslab_0, tmp228) ;
ats_selptrset_mac(anairiats_sum_3, tmp225, atslab_1, tmp229) ;
break ;

/* branch: __ats_lab_35 */
__ats_lab_35_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_35_1:
tmp225 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp225) ;
} /* end of [auxlst_38] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 14039(line=702, offs=1) -- 14459(line=730, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1taconlst_tr_37 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp224) ;
ATSlocal (ats_ptr_type, tmp230) ;

__ats_lab_s1taconlst_tr_37:
tmp230 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_impred (arg0) ;
tmp224 = auxlst_38 (tmp230, arg1) ;
return (tmp224) ;
} /* end of [s1taconlst_tr_37] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 14939(line=758, offs=1) -- 15404(line=786, offs=4)
*/
ATSstaticdec()
ats_void_type
t1kindef_tr_39 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp231) ;
ATSlocal (ats_ptr_type, tmp232) ;
ATSlocal (ats_ptr_type, tmp233) ;
ATSlocal (ats_ptr_type, tmp234) ;
ATSlocal (ats_ptr_type, tmp235) ;
ATSlocal (ats_ptr_type, tmp236) ;
ATSlocal (ats_ptr_type, tmp237) ;
ATSlocal (ats_ptr_type, tmp238) ;
ATSlocal (ats_ptr_type, tmp239) ;
ATSlocal (ats_ptr_type, tmp240) ;
ATSlocal (ats_ptr_type, tmp241) ;

__ats_lab_t1kindef_tr_39:
tmp232 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, arg0), atslab_t1kindef_sym) ;
tmp233 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, arg0), atslab_t1kindef_loc_id) ;
tmp235 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, arg0), atslab_t1kindef_def) ;
tmp234 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup (tmp235) ;
tmp237 = (ats_sum_ptr_type)0 ;
tmp238 = (ats_sum_ptr_type)0 ;
tmp239 = (ats_sum_ptr_type)0 ;
tmp240 = (ats_sum_ptr_type)0 ;
tmp241 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp241, atslab_0, tmp234) ;
tmp236 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp232, tmp233, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_tkind, tmp237, ats_false_bool, ats_false_bool, tmp238, tmp239, tmp240, tmp241) ;
/* tmp231 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp236) ;
return /* (tmp231) */ ;
} /* end of [t1kindef_tr_39] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 15532(line=799, offs=1) -- 15666(line=804, offs=2)
*/
ATSstaticdec()
ats_ptr_type
fproc_41 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp243) ;
ATSlocal (ats_ptr_type, tmp244) ;
ATSlocal (ats_ptr_type, tmp245) ;
// ATSlocal_void (tmp246) ;

__ats_lab_fproc_41:
tmp245 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_s1marg_arg) ;
tmp244 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1arglst_trup (tmp245) ;
/* tmp246 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp244) ;
tmp243 = tmp244 ;
return (tmp243) ;
} /* end of [fproc_41] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 15462(line=793, offs=1) -- 15721(line=808, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1expdef_tr_arg_40 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp242) ;

__ats_lab_s1expdef_tr_arg_40:
tmp242 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &fproc_41) ;
return (tmp242) ;
} /* end of [s1expdef_tr_arg_40] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list_vt.dats: 4893(line=177, offs=7) -- 5015(line=178, offs=73)
*/
ATSstaticdec()
ats_void_type
loop_44 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp257) ;
ATSlocal (ats_ptr_type, tmp258) ;

__ats_lab_loop_44:
do {
/* branch: __ats_lab_38 */
__ats_lab_38_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_39_0 ; }
__ats_lab_38_1:
tmp258 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
ATS_FREE(arg0) ;
arg0 = tmp258 ;
goto __ats_lab_loop_44 ; // tail call
break ;

/* branch: __ats_lab_39 */
__ats_lab_39_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_39_1:
break ;
} while (0) ;
return /* (tmp257) */ ;
} /* end of [loop_44] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list_vt.dats: 4875(line=176, offs=14) -- 5054(line=182, offs=4)
*/
ATSstaticdec()
ats_void_type
list_vt_free_01499_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp256) ;

__ats_lab_list_vt_free_01499_ats_ptr_type:
/* tmp256 = */ loop_44 (arg0) ;
return /* (tmp256) */ ;
} /* end of [list_vt_free_01499_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 15755(line=811, offs=1) -- 16215(line=836, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1expdef_tr_def_42 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp247) ;
// ATSlocal_void (tmp248) ;
// ATSlocal_void (tmp249) ;
ATSlocal (ats_ptr_type, tmp250) ;
ATSlocal (ats_ptr_type, tmp251) ;
ATSlocal (ats_ptr_type, tmp252) ;
// ATSlocal_void (tmp253) ;
ATSlocal (ats_ptr_type, tmp254) ;
// ATSlocal_void (tmp255) ;

__ats_lab_s1expdef_tr_def_42:
/* tmp248 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp249 = ats_selsin_mac(tmp248, atslab_1) */ ;
tmp250 = s1expdef_tr_arg_40 (arg0) ;
do {
/* branch: __ats_lab_36 */
__ats_lab_36_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_37_0 ; }
__ats_lab_36_1:
tmp252 = ats_caselptrlab_mac(anairiats_sum_6, arg1, atslab_0) ;
tmp251 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (arg2, tmp252) ;
break ;

/* branch: __ats_lab_37 */
__ats_lab_37_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_37_1:
tmp251 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup (arg2) ;
break ;
} while (0) ;
/* tmp253 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp254 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_lamlst (ats_castfn_mac(ats_ptr_type, tmp250), tmp251) ;
/* tmp255 = */ list_vt_free_01499_ats_ptr_type (tmp250) ;
tmp247 = tmp254 ;
return (tmp247) ;
} /* end of [s1expdef_tr_def_42] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 16336(line=847, offs=1) -- 16736(line=864, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_46 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp260) ;
// ATSlocal_void (tmp261) ;
ATSlocal (ats_ptr_type, tmp262) ;
// ATSlocal_void (tmp263) ;
// ATSlocal_void (tmp264) ;
// ATSlocal_void (tmp265) ;
ATSlocal (ats_ptr_type, tmp266) ;
// ATSlocal_void (tmp267) ;
// ATSlocal_void (tmp268) ;
ATSlocal (ats_ptr_type, tmp269) ;

__ats_lab_auxerr_46:
tmp262 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg0), atslab_s1expdef_loc) ;
/* tmp261 = */ prerr_error2_loc_02117_ (tmp262) ;
/* tmp263 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1expdef_tr")) ;
/* tmp264 = */ atspre_prerr_string (ATSstrcst(": the sort for the static definition does not\nmatch the one assigned to the static constant [")) ;
tmp266 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg0), atslab_s1expdef_sym) ;
/* tmp265 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp266) ;
/* tmp267 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp268 = */ atspre_prerr_newline () ;
tmp269 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp269)->tag = 18 ;
ats_selptrset_mac(anairiats_sum_9, tmp269, atslab_0, arg0) ;
/* tmp260 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp269) ;
return /* (tmp260) */ ;
} /* end of [auxerr_46] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 16271(line=841, offs=1) -- 17518(line=906, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1expdef_tr_45 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp259) ;
ATSlocal (ats_ptr_type, tmp270) ;
ATSlocal (ats_ptr_type, tmp271) ;
ATSlocal (ats_ptr_type, tmp272) ;
ATSlocal (ats_ptr_type, tmp273) ;
ATSlocal (ats_ptr_type, tmp274) ;
ATSlocal (ats_ptr_type, tmp275) ;
ATSlocal (ats_ptr_type, tmp276) ;
ATSlocal (ats_ptr_type, tmp277) ;
ATSlocal (ats_ptr_type, tmp278) ;
ATSlocal (ats_bool_type, tmp279) ;
// ATSlocal_void (tmp280) ;
ATSlocal (ats_ptr_type, tmp281) ;
ATSlocal (ats_ptr_type, tmp282) ;
ATSlocal (ats_ptr_type, tmp283) ;
ATSlocal (ats_ptr_type, tmp284) ;
ATSlocal (ats_ptr_type, tmp285) ;
ATSlocal (ats_ptr_type, tmp286) ;
ATSlocal (ats_ptr_type, tmp287) ;

__ats_lab_s1expdef_tr_45:
tmp270 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_s1expdef_sym) ;
tmp271 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_s1expdef_loc_id) ;
tmp272 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_s1expdef_arg) ;
tmp273 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_s1expdef_def) ;
tmp275 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_s1expdef_res) ;
tmp274 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtopt_tr (tmp275) ;
do {
/* branch: __ats_lab_40 */
__ats_lab_40_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_43_0 ; }
__ats_lab_40_1:
tmp277 = ats_caselptrlab_mac(anairiats_sum_6, arg0, atslab_0) ;
do {
/* branch: __ats_lab_41 */
__ats_lab_41_0:
if (tmp274 == (ats_sum_ptr_type)0) { goto __ats_lab_42_0 ; }
__ats_lab_41_1:
tmp278 = ats_caselptrlab_mac(anairiats_sum_6, tmp274, atslab_0) ;
tmp279 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_ltmat1 (tmp278, tmp277) ;
if (tmp279) {
tmp276 = tmp274 ;
} else {
/* tmp280 = */ auxerr_46 (arg1) ;
tmp276 = arg0 ;
} /* end of [if] */
break ;

/* branch: __ats_lab_42 */
__ats_lab_42_0:
// if (tmp274 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_42_1:
tmp276 = arg0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_43 */
__ats_lab_43_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_43_1:
tmp276 = tmp274 ;
break ;
} while (0) ;
tmp281 = s1expdef_tr_def_42 (tmp272, tmp276, tmp273) ;
tmp282 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_22, tmp281), atslab_s2exp_srt) ;
tmp283 = (ats_sum_ptr_type)0 ;
tmp284 = (ats_sum_ptr_type)0 ;
tmp285 = (ats_sum_ptr_type)0 ;
tmp286 = (ats_sum_ptr_type)0 ;
tmp287 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp287, atslab_0, tmp281) ;
tmp259 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp270, tmp271, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy, tmp282, tmp283, ats_false_bool, ats_false_bool, tmp284, tmp285, tmp286, tmp287) ;
return (tmp259) ;
} /* end of [s1expdef_tr_45] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 17710(line=918, offs=7) -- 17960(line=927, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_48 (ats_ptr_type env0, ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp292) ;
ATSlocal (ats_ptr_type, tmp293) ;
ATSlocal (ats_ptr_type, tmp294) ;
ATSlocal (ats_ptr_type, tmp295) ;
ATSlocal (ats_ptr_type, tmp296) ;

__ats_lab_aux_48:
do {
/* branch: __ats_lab_44 */
__ats_lab_44_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_45_0 ; }
__ats_lab_44_1:
tmp293 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp294 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp295 = s1expdef_tr_45 (env0, tmp293) ;
tmp296 = aux_48 (env0, tmp294) ;
tmp292 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp292, atslab_0, tmp295) ;
ats_selptrset_mac(anairiats_sum_3, tmp292, atslab_1, tmp296) ;
break ;

/* branch: __ats_lab_45 */
__ats_lab_45_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_45_1:
tmp292 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp292) ;
} /* end of [aux_48] */

typedef struct {
ats_fun_ptr_type closure_fun ;
ats_ptr_type closure_env_0 ;
} aux_48_closure_type ;

ats_ptr_type
aux_48_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
return aux_48 (((aux_48_closure_type*)cloptr)->closure_env_0, arg0) ;
} /* end of function */

ATSinline()
ats_void_type
aux_48_closure_init (aux_48_closure_type *p_clo, ats_ptr_type env0) {
p_clo->closure_fun = (ats_fun_ptr_type)&aux_48_clofun ;
p_clo->closure_env_0 = env0 ;
return ;
} /* end of function */

ats_clo_ptr_type
aux_48_closure_make (ats_ptr_type env0) {
aux_48_closure_type *p_clo = ATS_MALLOC(sizeof(aux_48_closure_type)) ;
aux_48_closure_init (p_clo, env0) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 18036(line=934, offs=7) -- 18293(line=946, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_49 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp298) ;
ATSlocal (ats_ptr_type, tmp299) ;
ATSlocal (ats_ptr_type, tmp300) ;
// ATSlocal_void (tmp301) ;

__ats_lab_loop_49:
do {
/* branch: __ats_lab_46 */
__ats_lab_46_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_47_0 ; }
__ats_lab_46_1:
break ;

/* branch: __ats_lab_47 */
__ats_lab_47_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_47_1:
tmp299 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp300 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
ATS_FREE(arg0) ;
/* tmp301 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp299) ;
arg0 = tmp300 ;
goto __ats_lab_loop_49 ; // tail call
break ;
} while (0) ;
return /* (tmp298) */ ;
} /* end of [loop_49] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 17548(line=909, offs=1) -- 18375(line=954, offs=4)
*/
ATSstaticdec()
ats_void_type
s1expdeflst_tr_47 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp288) ;
ATSlocal (ats_ptr_type, tmp289) ;
ATSlocal (ats_bool_type, tmp290) ;
ATSlocal (ats_ptr_type, tmp291) ;
ATSlocal (ats_ptr_type, tmp297) ;

__ats_lab_s1expdeflst_tr_47:
tmp290 = atspre_gte_int_int (arg0, 0) ;
if (tmp290) {
tmp291 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_impred (arg0) ;
tmp289 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp289, atslab_0, tmp291) ;
} else {
tmp289 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
tmp297 = aux_48 (tmp289, arg1) ;
/* tmp288 = */ loop_49 (tmp297) ;
return /* (tmp288) */ ;
} /* end of [s1expdeflst_tr_47] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 18558(line=970, offs=1) -- 18861(line=980, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_51 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp303) ;
// ATSlocal_void (tmp304) ;
ATSlocal (ats_ptr_type, tmp305) ;
// ATSlocal_void (tmp306) ;
// ATSlocal_void (tmp307) ;
// ATSlocal_void (tmp308) ;
ATSlocal (ats_ptr_type, tmp309) ;

__ats_lab_auxerr_51:
tmp305 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg1), atslab_s1marg_loc) ;
/* tmp304 = */ prerr_error2_loc_02117_ (tmp305) ;
/* tmp306 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1aspdec_tr_arg")) ;
/* tmp307 = */ atspre_prerr_string (ATSstrcst(": too many arguments for the assumed static constant.")) ;
/* tmp308 = */ atspre_prerr_newline () ;
tmp309 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp309)->tag = 20 ;
ats_selptrset_mac(anairiats_sum_5, tmp309, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp309, atslab_1, arg1) ;
/* tmp303 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp309) ;
return /* (tmp303) */ ;
} /* end of [auxerr_51] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 18459(line=963, offs=1) -- 19430(line=1004, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1aspdec_tr_arg_50 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp302) ;
ATSlocal (ats_ptr_type, tmp310) ;
ATSlocal (ats_ptr_type, tmp311) ;
ATSlocal (ats_ptr_type, tmp312) ;
ATSlocal (ats_ptr_type, tmp313) ;
ATSlocal (ats_ptr_type, tmp314) ;
// ATSlocal_void (tmp315) ;
ATSlocal (ats_ptr_type, tmp316) ;
// ATSlocal_void (tmp317) ;

__ats_lab_s1aspdec_tr_arg_50:
do {
/* branch: __ats_lab_48 */
__ats_lab_48_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_49_0 ; }
__ats_lab_48_1:
tmp302 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_49 */
__ats_lab_49_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_49_1:
tmp310 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp311 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
do {
/* branch: __ats_lab_50 */
__ats_lab_50_0:
if (((ats_sum_ptr_type)ats_ptrget_mac(ats_ptr_type, arg2))->tag != 1) { goto __ats_lab_51_0 ; }
__ats_lab_50_1:
tmp312 = ats_caselptrlab_mac(anairiats_sum_5, ats_ptrget_mac(ats_ptr_type, arg2), atslab_0) ;
tmp313 = ats_caselptrlab_mac(anairiats_sum_5, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp313 ;
tmp314 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1marg_trdn (tmp310, tmp312) ;
/* tmp315 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp314) ;
tmp316 = s1aspdec_tr_arg_50 (arg0, tmp311, arg2) ;
tmp302 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp302, atslab_0, tmp314) ;
ats_selptrset_mac(anairiats_sum_3, tmp302, atslab_1, tmp316) ;
break ;

/* branch: __ats_lab_51 */
__ats_lab_51_0:
__ats_lab_51_1:
/* tmp317 = */ auxerr_51 (arg0, tmp310) ;
tmp302 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp302) ;
} /* end of [s1aspdec_tr_arg_50] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 19532(line=1013, offs=1) -- 20005(line=1033, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr_53 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp319) ;
// ATSlocal_void (tmp320) ;
ATSlocal (ats_ptr_type, tmp321) ;
// ATSlocal_void (tmp322) ;
// ATSlocal_void (tmp323) ;
// ATSlocal_void (tmp324) ;
// ATSlocal_void (tmp325) ;
// ATSlocal_void (tmp326) ;
// ATSlocal_void (tmp327) ;
// ATSlocal_void (tmp328) ;
ATSlocal (ats_ptr_type, tmp329) ;

__ats_lab_auxerr_53:
tmp321 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_loc) ;
/* tmp320 = */ prerr_error2_loc_02117_ (tmp321) ;
/* tmp322 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1aspdec_tr_res")) ;
/* tmp323 = */ atspre_prerr_string (ATSstrcst(": the static assumption is given the sort [")) ;
/* tmp324 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg1) ;
/* tmp325 = */ atspre_prerr_string (ATSstrcst("] but it is expected to be of the sort [")) ;
/* tmp326 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg2) ;
/* tmp327 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp328 = */ atspre_prerr_newline () ;
tmp329 = ATS_MALLOC(sizeof(anairiats_sum_24)) ;
((ats_sum_ptr_type)tmp329)->tag = 21 ;
ats_selptrset_mac(anairiats_sum_24, tmp329, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_24, tmp329, atslab_1, arg1) ;
ats_selptrset_mac(anairiats_sum_24, tmp329, atslab_2, arg2) ;
/* tmp319 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp329) ;
return /* (tmp319) */ ;
} /* end of [auxerr_53] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 19464(line=1007, offs=1) -- 20339(line=1051, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1aspdec_tr_res_52 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp318) ;
ATSlocal (ats_ptr_type, tmp330) ;
ATSlocal (ats_ptr_type, tmp331) ;
ATSlocal (ats_ptr_type, tmp332) ;
ATSlocal (ats_bool_type, tmp333) ;
// ATSlocal_void (tmp334) ;

__ats_lab_s1aspdec_tr_res_52:
tmp330 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_res) ;
do {
/* branch: __ats_lab_52 */
__ats_lab_52_0:
if (tmp330 == (ats_sum_ptr_type)0) { goto __ats_lab_53_0 ; }
__ats_lab_52_1:
tmp331 = ats_caselptrlab_mac(anairiats_sum_6, tmp330, atslab_0) ;
tmp332 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rt_tr (tmp331) ;
tmp333 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_ltmat1 (tmp332, arg1) ;
if (tmp333) {
tmp318 = tmp332 ;
} else {
/* tmp334 = */ auxerr_53 (arg0, tmp332, arg1) ;
tmp318 = tmp332 ;
} /* end of [if] */
break ;

/* branch: __ats_lab_53 */
__ats_lab_53_0:
// if (tmp330 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_53_1:
tmp318 = arg1 ;
break ;
} while (0) ;
return (tmp318) ;
} /* end of [s1aspdec_tr_res_52] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 20508(line=1065, offs=1) -- 20899(line=1081, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr1_55 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp336) ;
// ATSlocal_void (tmp337) ;
ATSlocal (ats_ptr_type, tmp338) ;
// ATSlocal_void (tmp339) ;
// ATSlocal_void (tmp340) ;
// ATSlocal_void (tmp341) ;
// ATSlocal_void (tmp342) ;
// ATSlocal_void (tmp343) ;
// ATSlocal_void (tmp344) ;
ATSlocal (ats_ptr_type, tmp345) ;

__ats_lab_auxerr1_55:
tmp338 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_loc) ;
/* tmp337 = */ prerr_error2_loc_02117_ (tmp338) ;
/* tmp339 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1aspdec_tr")) ;
/* tmp340 = */ atspre_prerr_string (ATSstrcst(": the static constant [")) ;
/* tmp341 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp342 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp343 = */ atspre_prerr_string (ATSstrcst("] is not abstract.")) ;
/* tmp344 = */ atspre_prerr_newline () ;
tmp345 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp345)->tag = 19 ;
ats_selptrset_mac(anairiats_sum_9, tmp345, atslab_0, arg0) ;
/* tmp336 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp345) ;
return /* (tmp336) */ ;
} /* end of [auxerr1_55] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 20927(line=1084, offs=1) -- 21333(line=1100, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr2_56 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp346) ;
// ATSlocal_void (tmp347) ;
ATSlocal (ats_ptr_type, tmp348) ;
// ATSlocal_void (tmp349) ;
// ATSlocal_void (tmp350) ;
// ATSlocal_void (tmp351) ;
// ATSlocal_void (tmp352) ;
// ATSlocal_void (tmp353) ;
// ATSlocal_void (tmp354) ;
ATSlocal (ats_ptr_type, tmp355) ;

__ats_lab_auxerr2_56:
tmp348 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_loc) ;
/* tmp347 = */ prerr_error2_loc_02117_ (tmp348) ;
/* tmp349 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1aspdec_tr")) ;
/* tmp350 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp351 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp352 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp353 = */ atspre_prerr_string (ATSstrcst("] does not refer to a static constant.")) ;
/* tmp354 = */ atspre_prerr_newline () ;
tmp355 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp355)->tag = 19 ;
ats_selptrset_mac(anairiats_sum_9, tmp355, atslab_0, arg0) ;
/* tmp346 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp355) ;
return /* (tmp346) */ ;
} /* end of [auxerr2_56] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 21361(line=1103, offs=1) -- 21679(line=1116, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr3_57 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp356) ;
// ATSlocal_void (tmp357) ;
ATSlocal (ats_ptr_type, tmp358) ;
// ATSlocal_void (tmp359) ;
// ATSlocal_void (tmp360) ;
// ATSlocal_void (tmp361) ;
// ATSlocal_void (tmp362) ;
// ATSlocal_void (tmp363) ;
ATSlocal (ats_ptr_type, tmp364) ;

__ats_lab_auxerr3_57:
tmp358 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_loc) ;
/* tmp357 = */ prerr_error2_loc_02117_ (tmp358) ;
/* tmp359 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp360 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp361 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp362 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp363 = */ atspre_prerr_newline () ;
tmp364 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp364)->tag = 19 ;
ats_selptrset_mac(anairiats_sum_9, tmp364, atslab_0, arg0) ;
/* tmp356 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp364) ;
return /* (tmp356) */ ;
} /* end of [auxerr3_57] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 19833(line=716, offs=7) -- 20397(line=733, offs=40)
*/
ATSstaticdec()
ats_void_type
loop_60 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp375) ;
ATSlocal (ats_ptr_type, tmp376) ;
ATSlocal (ats_ptr_type, tmp377) ;
ATSlocal (ats_bool_type, tmp378) ;
ATSlocal (ats_ptr_type, tmp379) ;
ATSlocal (ats_ptr_type, tmp380) ;
ATSlocal (ats_ptr_type, tmp381) ;

__ats_lab_loop_60:
do {
/* branch: __ats_lab_56 */
__ats_lab_56_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_57_0 ; }
__ats_lab_56_1:
tmp376 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp377 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp378 = ((ats_bool_type(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp376, arg3) ;
if (tmp378) {
tmp379 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp379, atslab_0, tmp376) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp379 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp380 = &ats_caselptrlab_mac(anairiats_sum_3, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp377 ;
arg1 = arg1 ;
arg2 = tmp380 ;
arg3 = arg3 ;
goto __ats_lab_loop_60 ; // tail call
} else {
arg0 = tmp377 ;
arg1 = arg1 ;
arg2 = arg2 ;
arg3 = arg3 ;
goto __ats_lab_loop_60 ; // tail call
} /* end of [if] */
break ;

/* branch: __ats_lab_57 */
__ats_lab_57_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_57_1:
tmp381 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp381 ;
break ;
} while (0) ;
return /* (tmp375) */ ;
} /* end of [loop_60] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 19800(line=714, offs=24) -- 20566(line=744, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_filter_funenv_01338_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp374) ;
ATSlocal (ats_ptr_type, tmp382) ;
// ATSlocal_void (tmp383) ;

__ats_lab_list_filter_funenv_01338_ats_ptr_type:
/* ats_ptr_type tmp382 ; */
/* tmp383 = */ loop_60 (arg0, arg1, (&tmp382), arg2) ;
tmp374 = tmp382 ;
return (tmp374) ;
} /* end of [list_filter_funenv_01338_ats_ptr_type] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 20640(line=747, offs=29) -- 20900(line=756, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_filter_fun_01339_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp373) ;

__ats_lab_list_filter_fun_01339_ats_ptr_type:
tmp373 = list_filter_funenv_01338_ats_ptr_type (arg0, ats_castfn_mac(ats_ptr_type, arg1), atspre_null_ptr) ;
return (tmp373) ;
} /* end of [list_filter_fun_01339_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 20446(line=1059, offs=1) -- 23377(line=1186, offs=4)
*/
ATSstaticdec()
ats_ptr_type
s1aspdec_tr_54 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp335) ;
ATSlocal (ats_ptr_type, tmp365) ;
ATSlocal (ats_ptr_type, tmp366) ;
ATSlocal (ats_ptr_type, tmp367) ;
ATSlocal (ats_ptr_type, tmp368) ;
ATSlocal (ats_ptr_type, tmp369) ;
ATSlocal (ats_ptr_type, tmp370) ;
ATSlocal (ats_ptr_type, tmp371) ;
ATSlocal (ats_ptr_type, tmp372) ;
// ATSlocal_void (tmp384) ;
ATSlocal (ats_ptr_type, tmp385) ;
ATSlocal (ats_ptr_type, tmp386) ;
// ATSlocal_void (tmp387) ;
// ATSlocal_void (tmp388) ;
// ATSlocal_void (tmp389) ;
ATSlocal (ats_ptr_type, tmp390) ;
ATSlocal (ats_ptr_type, tmp391) ;
ATSlocal (ats_ptr_type, tmp392) ;
ATSlocal (ats_ptr_type, tmp393) ;
ATSlocal (ats_ptr_type, tmp394) ;
ATSlocal (ats_ptr_type, tmp395) ;
// ATSlocal_void (tmp396) ;
ATSlocal (ats_ptr_type, tmp397) ;
// ATSlocal_void (tmp398) ;
ATSlocal (ats_ptr_type, tmp399) ;
// ATSlocal_void (tmp400) ;
// ATSlocal_void (tmp401) ;

__ats_lab_s1aspdec_tr_54:
tmp365 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_loc) ;
tmp366 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_qid) ;
tmp367 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, tmp366), atslab_sqi0de_qua) ;
tmp368 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, tmp366), atslab_sqi0de_sym) ;
tmp369 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_find_qua (tmp367, tmp368) ;
do {
/* branch: __ats_lab_54 */
__ats_lab_54_0:
if (tmp369 == (ats_sum_ptr_type)0) { goto __ats_lab_61_0 ; }
__ats_lab_54_1:
tmp370 = ats_caselptrlab_mac(anairiats_sum_6, tmp369, atslab_0) ;
ATS_FREE(tmp369) ;
do {
/* branch: __ats_lab_55 */
__ats_lab_55_0:
if (((ats_sum_ptr_type)tmp370)->tag != 1) { goto __ats_lab_60_0 ; }
__ats_lab_55_1:
tmp371 = ats_caselptrlab_mac(anairiats_sum_9, tmp370, atslab_0) ;
tmp372 = list_filter_fun_01339_ats_ptr_type (tmp371, &_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_is_abstr) ;
do {
/* branch: __ats_lab_58 */
__ats_lab_58_0:
if (tmp372 != (ats_sum_ptr_type)0) { goto __ats_lab_59_0 ; }
__ats_lab_58_1:
/* tmp384 = */ auxerr1_55 (arg0, tmp367, tmp368) ;
tmp335 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_59 */
__ats_lab_59_0:
// if (tmp372 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_59_1:
tmp385 = ats_caselptrlab_mac(anairiats_sum_3, tmp372, atslab_0) ;
tmp386 = ats_caselptrlab_mac(anairiats_sum_3, tmp372, atslab_1) ;
ATS_FREE(tmp372) ;
/* tmp387 = */ list_vt_free_01499_ats_ptr_type (tmp386) ;
/* tmp388 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp389 = ats_selsin_mac(tmp388, atslab_1) */ ;
/* ats_ptr_type tmp390 ; */
tmp390 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_srt (tmp385) ;
tmp392 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_arg) ;
tmp391 = s1aspdec_tr_arg_50 (arg0, tmp392, (&tmp390)) ;
tmp393 = s1aspdec_tr_res_52 (arg0, tmp390) ;
tmp395 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_23, arg0), atslab_s1aspdec_def) ;
tmp394 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp395, tmp393) ;
/* tmp396 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp397 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_lamlst (ats_castfn_mac(ats_ptr_type, tmp391), tmp394) ;
/* tmp398 = */ list_vt_free_01499_ats_ptr_type (tmp391) ;
tmp399 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2aspdec_make (tmp365, tmp385, tmp397) ;
tmp335 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp335, atslab_0, tmp399) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_60 */
__ats_lab_60_0:
__ats_lab_60_1:
/* tmp400 = */ auxerr2_56 (arg0, tmp367, tmp368) ;
tmp335 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_61 */
__ats_lab_61_0:
// if (tmp369 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_61_1:
/* tmp401 = */ auxerr3_57 (arg0, tmp367, tmp368) ;
tmp335 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp335) ;
} /* end of [s1aspdec_tr_54] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 23514(line=1199, offs=1) -- 23908(line=1215, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr1_62 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp403) ;
// ATSlocal_void (tmp404) ;
ATSlocal (ats_ptr_type, tmp405) ;
// ATSlocal_void (tmp406) ;
// ATSlocal_void (tmp407) ;
// ATSlocal_void (tmp408) ;
// ATSlocal_void (tmp409) ;
// ATSlocal_void (tmp410) ;
// ATSlocal_void (tmp411) ;
ATSlocal (ats_ptr_type, tmp412) ;

__ats_lab_auxerr1_62:
tmp405 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg0), atslab_sqi0de_loc) ;
/* tmp404 = */ prerr_error2_loc_02117_ (tmp405) ;
/* tmp406 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("re1assume_tr")) ;
/* tmp407 = */ atspre_prerr_string (ATSstrcst(": the static constant [")) ;
/* tmp408 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp409 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp410 = */ atspre_prerr_string (ATSstrcst("] is not abstract.")) ;
/* tmp411 = */ atspre_prerr_newline () ;
tmp412 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp412)->tag = 22 ;
ats_selptrset_mac(anairiats_sum_9, tmp412, atslab_0, arg0) ;
/* tmp403 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp412) ;
return /* (tmp403) */ ;
} /* end of [auxerr1_62] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 23936(line=1218, offs=1) -- 24345(line=1234, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr2_63 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp413) ;
// ATSlocal_void (tmp414) ;
ATSlocal (ats_ptr_type, tmp415) ;
// ATSlocal_void (tmp416) ;
// ATSlocal_void (tmp417) ;
// ATSlocal_void (tmp418) ;
// ATSlocal_void (tmp419) ;
// ATSlocal_void (tmp420) ;
// ATSlocal_void (tmp421) ;
ATSlocal (ats_ptr_type, tmp422) ;

__ats_lab_auxerr2_63:
tmp415 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg0), atslab_sqi0de_loc) ;
/* tmp414 = */ prerr_error2_loc_02117_ (tmp415) ;
/* tmp416 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("re1assume_tr")) ;
/* tmp417 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp418 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp419 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp420 = */ atspre_prerr_string (ATSstrcst("] does not refer to a static constant.")) ;
/* tmp421 = */ atspre_prerr_newline () ;
tmp422 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp422)->tag = 22 ;
ats_selptrset_mac(anairiats_sum_9, tmp422, atslab_0, arg0) ;
/* tmp413 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp422) ;
return /* (tmp413) */ ;
} /* end of [auxerr2_63] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 24373(line=1237, offs=1) -- 24693(line=1250, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr3_64 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp423) ;
// ATSlocal_void (tmp424) ;
ATSlocal (ats_ptr_type, tmp425) ;
// ATSlocal_void (tmp426) ;
// ATSlocal_void (tmp427) ;
// ATSlocal_void (tmp428) ;
// ATSlocal_void (tmp429) ;
// ATSlocal_void (tmp430) ;
ATSlocal (ats_ptr_type, tmp431) ;

__ats_lab_auxerr3_64:
tmp425 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg0), atslab_sqi0de_loc) ;
/* tmp424 = */ prerr_error2_loc_02117_ (tmp425) ;
/* tmp426 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp427 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (arg1) ;
/* tmp428 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp429 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp430 = */ atspre_prerr_newline () ;
tmp431 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp431)->tag = 22 ;
ats_selptrset_mac(anairiats_sum_9, tmp431, atslab_0, arg0) ;
/* tmp423 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp431) ;
return /* (tmp423) */ ;
} /* end of [auxerr3_64] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 23451(line=1193, offs=1) -- 25557(line=1290, offs=4)
*/
ATSstaticdec()
ats_ptr_type
re1assume_tr_61 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp402) ;
ATSlocal (ats_ptr_type, tmp432) ;
ATSlocal (ats_ptr_type, tmp433) ;
ATSlocal (ats_ptr_type, tmp434) ;
ATSlocal (ats_ptr_type, tmp435) ;
ATSlocal (ats_ptr_type, tmp436) ;
ATSlocal (ats_ptr_type, tmp437) ;
// ATSlocal_void (tmp438) ;
ATSlocal (ats_ptr_type, tmp439) ;
ATSlocal (ats_ptr_type, tmp440) ;
// ATSlocal_void (tmp441) ;
// ATSlocal_void (tmp442) ;
// ATSlocal_void (tmp443) ;

__ats_lab_re1assume_tr_61:
tmp432 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg0), atslab_sqi0de_qua) ;
tmp433 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg0), atslab_sqi0de_sym) ;
tmp434 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_find_qua (tmp432, tmp433) ;
do {
/* branch: __ats_lab_62 */
__ats_lab_62_0:
if (tmp434 == (ats_sum_ptr_type)0) { goto __ats_lab_67_0 ; }
__ats_lab_62_1:
tmp435 = ats_caselptrlab_mac(anairiats_sum_6, tmp434, atslab_0) ;
ATS_FREE(tmp434) ;
do {
/* branch: __ats_lab_63 */
__ats_lab_63_0:
if (((ats_sum_ptr_type)tmp435)->tag != 1) { goto __ats_lab_66_0 ; }
__ats_lab_63_1:
tmp436 = ats_caselptrlab_mac(anairiats_sum_9, tmp435, atslab_0) ;
tmp437 = list_filter_fun_01339_ats_ptr_type (tmp436, &_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_is_abstr) ;
do {
/* branch: __ats_lab_64 */
__ats_lab_64_0:
if (tmp437 != (ats_sum_ptr_type)0) { goto __ats_lab_65_0 ; }
__ats_lab_64_1:
/* tmp438 = */ auxerr1_62 (arg0, tmp432, tmp433) ;
tmp402 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_65 */
__ats_lab_65_0:
// if (tmp437 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_65_1:
tmp439 = ats_caselptrlab_mac(anairiats_sum_3, tmp437, atslab_0) ;
tmp440 = ats_caselptrlab_mac(anairiats_sum_3, tmp437, atslab_1) ;
ATS_FREE(tmp437) ;
/* tmp441 = */ list_vt_free_01499_ats_ptr_type (tmp440) ;
tmp402 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp402, atslab_0, tmp439) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_66 */
__ats_lab_66_0:
__ats_lab_66_1:
/* tmp442 = */ auxerr2_63 (arg0, tmp432, tmp433) ;
tmp402 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_67 */
__ats_lab_67_0:
// if (tmp434 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_67_1:
/* tmp443 = */ auxerr3_64 (arg0, tmp432, tmp433) ;
tmp402 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp402) ;
} /* end of [re1assume_tr_61] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 25616(line=1297, offs=1) -- 26017(line=1317, offs=2)
*/
ATSstaticdec()
ats_ptr_type
d1atconlst_tr_65 (ats_ptr_type arg0, ats_bool_type arg1, ats_bool_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp444) ;
ATSlocal (ats_ptr_type, tmp445) ;
ATSlocal (ats_ptr_type, tmp446) ;
ATSlocal (ats_ptr_type, tmp447) ;
ATSlocal (ats_ptr_type, tmp448) ;

__ats_lab_d1atconlst_tr_65:
do {
/* branch: __ats_lab_68 */
__ats_lab_68_0:
if (arg5 != (ats_sum_ptr_type)0) { goto __ats_lab_69_0 ; }
__ats_lab_68_1:
tmp444 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_69 */
__ats_lab_69_0:
// if (arg5 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_69_1:
tmp445 = ats_caselptrlab_mac(anairiats_sum_3, arg5, atslab_0) ;
tmp446 = ats_caselptrlab_mac(anairiats_sum_3, arg5, atslab_1) ;
tmp447 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1atcon_tr (arg0, arg1, arg2, arg3, arg4, tmp445) ;
tmp448 = d1atconlst_tr_65 (arg0, arg1, arg2, arg3, arg4, tmp446) ;
tmp444 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp444, atslab_0, tmp447) ;
ats_selptrset_mac(anairiats_sum_3, tmp444, atslab_1, tmp448) ;
break ;
} while (0) ;
return (tmp444) ;
} /* end of [d1atconlst_tr_65] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 51781(line=1842, offs=7) -- 51921(line=1845, offs=6)
*/
ATSstaticdec()
ats_int_type
loop_68 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp452) ;
ATSlocal (ats_ptr_type, tmp453) ;
ATSlocal (ats_int_type, tmp454) ;

__ats_lab_loop_68:
do {
/* branch: __ats_lab_70 */
__ats_lab_70_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_71_0 ; }
__ats_lab_70_1:
tmp453 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp454 = atspre_isucc (arg1) ;
arg0 = tmp453 ;
arg1 = tmp454 ;
goto __ats_lab_loop_68 ; // tail call
break ;

/* branch: __ats_lab_71 */
__ats_lab_71_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_71_1:
tmp452 = arg1 ;
break ;
} while (0) ;
return (tmp452) ;
} /* end of [loop_68] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 51764(line=1841, offs=13) -- 52005(line=1849, offs=4)
*/
ATSstaticdec()
ats_int_type
list_length_01410_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_int_type, tmp451) ;

__ats_lab_list_length_01410_ats_ptr_type:
tmp451 = loop_68 (arg0, 0) ;
return (tmp451) ;
} /* end of [list_length_01410_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 26929(line=1363, offs=7) -- 27200(line=1375, offs=4)
*/
ATSstaticdec()
ats_void_type
aux_69 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp471) ;
ATSlocal (ats_ptr_type, tmp472) ;
ATSlocal (ats_ptr_type, tmp473) ;
// ATSlocal_void (tmp474) ;
ATSlocal (ats_int_type, tmp475) ;

__ats_lab_aux_69:
do {
/* branch: __ats_lab_74 */
__ats_lab_74_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_75_0 ; }
__ats_lab_74_1:
break ;

/* branch: __ats_lab_75 */
__ats_lab_75_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_75_1:
tmp472 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp473 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
/* tmp474 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_set_tag (tmp472, arg0) ;
tmp475 = atspre_add_int_int (arg0, 1) ;
arg0 = tmp475 ;
arg1 = tmp473 ;
goto __ats_lab_aux_69 ; // tail call
break ;
} while (0) ;
return /* (tmp471) */ ;
} /* end of [aux_69] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 26076(line=1322, offs=1) -- 27840(line=1406, offs=4)
*/
ATSstaticdec()
ats_void_type
d1atdec_tr_66 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp449) ;
ATSlocal (ats_int_type, tmp450) ;
// ATSlocal_void (tmp455) ;
ATSlocal (ats_bool_type, tmp456) ;
// ATSlocal_void (tmp457) ;
ATSlocal (ats_ptr_type, tmp458) ;
// ATSlocal_void (tmp459) ;
// ATSlocal_void (tmp460) ;
// ATSlocal_void (tmp461) ;
ATSlocal (ats_ptr_type, tmp462) ;
ATSlocal (ats_ptr_type, tmp463) ;
ATSlocal (ats_ptr_type, tmp464) ;
ATSlocal (ats_ptr_type, tmp465) ;
ATSlocal (ats_bool_type, tmp466) ;
ATSlocal (ats_bool_type, tmp467) ;
ATSlocal (ats_ptr_type, tmp468) ;
ATSlocal (ats_ptr_type, tmp469) ;
ATSlocal (ats_ptr_type, tmp470) ;
// ATSlocal_void (tmp476) ;
ATSlocal (ats_ptr_type, tmp477) ;
ATSlocal (ats_ptr_type, tmp478) ;
ATSlocal (ats_ptr_type, tmp479) ;
ATSlocal (ats_ptr_type, tmp480) ;
ATSlocal (ats_ptr_type, tmp481) ;
ATSlocal (ats_bool_type, tmp482) ;
ATSlocal (ats_int_type, tmp483) ;
ATSlocal (ats_bool_type, tmp484) ;
ATSlocal (ats_int_type, tmp485) ;
ATSlocal (anairiats_rec_17, tmp486) ;
ATSlocal (ats_bool_type, tmp487) ;
ATSlocal (ats_int_type, tmp488) ;
ATSlocal (anairiats_rec_17, tmp489) ;
// ATSlocal_void (tmp490) ;
ATSlocal (ats_ptr_type, tmp491) ;

__ats_lab_d1atdec_tr_66:
tmp450 = list_length_01410_ats_ptr_type (arg1) ;
tmp456 = atspre_igte (tmp450, 2) ;
if (tmp456) {
tmp458 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg2), atslab_d1atdec_loc) ;
/* tmp457 = */ prerr_error2_loc_02117_ (tmp458) ;
/* tmp459 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("d1atdec_tr")) ;
/* tmp460 = */ atspre_prerr_string (ATSstrcst(": the declared type constructor is overly applied.")) ;
/* tmp461 = */ atspre_prerr_newline () ;
tmp462 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp462)->tag = 24 ;
ats_selptrset_mac(anairiats_sum_9, tmp462, atslab_0, arg2) ;
/* tmp455 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp462) ;
} else {
/* empty */
} /* end of [if] */
tmp463 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_srt (arg0) ;
do {
/* branch: __ats_lab_72 */
__ats_lab_72_0:
if (((ats_sum_ptr_type)tmp463)->tag != 1) { goto __ats_lab_73_0 ; }
__ats_lab_72_1:
tmp465 = ats_caselptrlab_mac(anairiats_sum_5, tmp463, atslab_1) ;
tmp464 = tmp465 ;
break ;

/* branch: __ats_lab_73 */
__ats_lab_73_0:
__ats_lab_73_1:
tmp464 = tmp463 ;
break ;
} while (0) ;
tmp466 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_is_lin (tmp464) ;
tmp467 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_is_prf (tmp464) ;
tmp469 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg2), atslab_d1atdec_fil) ;
tmp470 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg2), atslab_d1atdec_con) ;
tmp468 = d1atconlst_tr_65 (arg0, tmp466, tmp467, arg1, tmp469, tmp470) ;
/* tmp476 = */ aux_69 (0, tmp468) ;
do {
/* branch: __ats_lab_76 */
__ats_lab_76_0:
if (tmp468 == (ats_sum_ptr_type)0) { goto __ats_lab_77_0 ; }
tmp478 = ats_caselptrlab_mac(anairiats_sum_3, tmp468, atslab_1) ;
if (tmp478 == (ats_sum_ptr_type)0) { goto __ats_lab_77_0 ; }
tmp479 = ats_caselptrlab_mac(anairiats_sum_3, tmp478, atslab_1) ;
if (tmp479 != (ats_sum_ptr_type)0) { goto __ats_lab_77_0 ; }
__ats_lab_76_1:
tmp480 = ats_caselptrlab_mac(anairiats_sum_3, tmp468, atslab_0) ;
tmp481 = ats_caselptrlab_mac(anairiats_sum_3, tmp478, atslab_0) ;
tmp483 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_get_arity_real (tmp480) ;
tmp482 = atspre_eq_int_int (tmp483, 0) ;
if (tmp482) {
tmp485 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_get_arity_real (tmp481) ;
tmp484 = atspre_gt_int_int (tmp485, 0) ;
if (tmp484) {
tmp486.atslab_0 = tmp480 ;
tmp486.atslab_1 = tmp481 ;

tmp477 = ATS_MALLOC(sizeof(anairiats_sum_27)) ;
ats_selptrset_mac(anairiats_sum_27, tmp477, atslab_0, tmp486) ;
} else {
tmp477 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
} else {
tmp488 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_get_arity_real (tmp481) ;
tmp487 = atspre_eq_int_int (tmp488, 0) ;
if (tmp487) {
tmp489.atslab_0 = tmp481 ;
tmp489.atslab_1 = tmp480 ;

tmp477 = ATS_MALLOC(sizeof(anairiats_sum_27)) ;
ats_selptrset_mac(anairiats_sum_27, tmp477, atslab_0, tmp489) ;
} else {
tmp477 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
} /* end of [if] */
break ;

/* branch: __ats_lab_77 */
__ats_lab_77_0:
__ats_lab_77_1:
tmp477 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
/* tmp490 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_islst (arg0, tmp477) ;
tmp491 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp491, atslab_0, tmp468) ;
/* tmp449 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_dconlst (arg0, tmp491) ;
return /* (tmp449) */ ;
} /* end of [d1atdec_tr_66] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 28517(line=1449, offs=11) -- 28934(line=1464, offs=14)
*/
ATSstaticdec()
ats_ptr_type
f_72 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp498) ;
ATSlocal (anairiats_rec_17, tmp499) ;
ATSlocal (ats_ptr_type, tmp500) ;
ATSlocal (ats_bool_type, tmp501) ;
ATSlocal (ats_ptr_type, tmp502) ;
ATSlocal (ats_ptr_type, tmp503) ;
ATSlocal (ats_ptr_type, tmp504) ;
ATSlocal (ats_ptr_type, tmp505) ;
ATSlocal (ats_ptr_type, tmp506) ;

__ats_lab_f_72:
do {
/* branch: __ats_lab_78 */
__ats_lab_78_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_79_0 ; }
__ats_lab_78_1:
tmp498 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_79 */
__ats_lab_79_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_79_1:
tmp499 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_0) ;
tmp500 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_1) ;
tmp502 = ats_select_mac(tmp499, atslab_0) ;
tmp501 = _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__neq_symbol_symbol (tmp502, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_empty) ;
if (tmp501) {
tmp504 = ats_select_mac(tmp499, atslab_0) ;
tmp505 = ats_select_mac(tmp499, atslab_1) ;
tmp503 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_id_srt (tmp504, tmp505) ;
tmp506 = f_72 (tmp500) ;
tmp498 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp498, atslab_0, tmp503) ;
ats_selptrset_mac(anairiats_sum_3, tmp498, atslab_1, tmp506) ;
} else {
arg0 = tmp500 ;
goto __ats_lab_f_72 ; // tail call
} /* end of [if] */
break ;
} while (0) ;
return (tmp498) ;
} /* end of [f_72] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 50559(line=1787, offs=18) -- 50622(line=1789, offs=4)
*/
ATSstaticdec()
ats_bool_type
list_is_cons_01295_ (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_bool_type, tmp513) ;

__ats_lab_list_is_cons_01295_:
do {
/* branch: __ats_lab_82 */
__ats_lab_82_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_83_0 ; }
__ats_lab_82_1:
tmp513 = ats_true_bool ;
break ;

/* branch: __ats_lab_83 */
__ats_lab_83_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_83_1:
tmp513 = ats_false_bool ;
break ;
} while (0) ;
return (tmp513) ;
} /* end of [list_is_cons_01295_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 28987(line=1466, offs=11) -- 29291(line=1475, offs=15)
*/
ATSstaticdec()
ats_ptr_type
ff_73 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp507) ;
ATSlocal (ats_ptr_type, tmp508) ;
ATSlocal (ats_ptr_type, tmp509) ;
ATSlocal (ats_ptr_type, tmp510) ;
ATSlocal (ats_ptr_type, tmp511) ;
ATSlocal (ats_bool_type, tmp512) ;

__ats_lab_ff_73:
do {
/* branch: __ats_lab_80 */
__ats_lab_80_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_81_0 ; }
__ats_lab_80_1:
tmp507 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_81 */
__ats_lab_81_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_81_1:
tmp508 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp509 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp510 = f_72 (tmp508) ;
tmp511 = ff_73 (tmp509) ;
tmp512 = list_is_cons_01295_ (tmp510) ;
if (tmp512) {
tmp507 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp507, atslab_0, tmp510) ;
ats_selptrset_mac(anairiats_sum_3, tmp507, atslab_1, tmp511) ;
} else {
tmp507 = tmp511 ;
} /* end of [if] */
break ;
} while (0) ;
return (tmp507) ;
} /* end of [ff_73] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 29422(line=1482, offs=11) -- 29572(line=1486, offs=55)
*/
ATSstaticdec()
ats_ptr_type
fopr_75 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp515) ;
ATSlocal (anairiats_rec_17, tmp516) ;
ATSlocal (ats_ptr_type, tmp517) ;
ATSlocal (ats_ptr_type, tmp518) ;
ATSlocal (ats_ptr_type, tmp519) ;

__ats_lab_fopr_75:
do {
/* branch: __ats_lab_84 */
__ats_lab_84_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_85_0 ; }
__ats_lab_84_1:
tmp515 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_85 */
__ats_lab_85_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_85_1:
tmp516 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_0) ;
tmp517 = ats_caselptrlab_mac(anairiats_sum_18, arg0, atslab_1) ;
tmp518 = ats_select_mac(tmp516, atslab_1) ;
tmp519 = fopr_75 (tmp517) ;
tmp515 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp515, atslab_0, tmp518) ;
ats_selptrset_mac(anairiats_sum_3, tmp515, atslab_1, tmp519) ;
break ;
} while (0) ;
return (tmp515) ;
} /* end of [fopr_75] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 28267(line=1437, offs=7) -- 29891(line=1501, offs=6)
*/
ATSstaticdec()
ats_void_type
aux_71 (ats_ptr_type env0, ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp495) ;
ATSlocal (ats_ptr_type, tmp496) ;
ATSlocal (ats_ptr_type, tmp497) ;
ATSlocal (ats_ptr_type, tmp514) ;
ATSlocal (ats_ptr_type, tmp520) ;
ATSlocal (ats_ptr_type, tmp521) ;
ATSlocal (ats_ptr_type, tmp522) ;
ATSlocal (ats_ptr_type, tmp523) ;
// ATSlocal_void (tmp524) ;
ATSlocal (ats_ptr_type, tmp525) ;
ATSlocal (anairiats_rec_2, tmp526) ;

__ats_lab_aux_71:
tmp497 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg0), atslab_d1atdec_arg) ;
tmp496 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp497, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__a1msrt_tr_symsrt) ;
tmp514 = ff_73 (ats_castfn_mac(ats_ptr_type, tmp496)) ;
tmp520 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (ats_castfn_mac(ats_ptr_type, tmp496), &fopr_75) ;
tmp522 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg0), atslab_d1atdec_sym) ;
tmp523 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_26, arg0), atslab_d1atdec_loc) ;
tmp521 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make_dat (tmp522, tmp523, ats_castfn_mac(ats_ptr_type, tmp520), env0, ats_castfn_mac(ats_ptr_type, tmp496)) ;
/* tmp524 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp521) ;
tmp526.atslab_0 = arg0 ;
tmp526.atslab_1 = tmp521 ;
tmp526.atslab_2 = tmp514 ;

tmp525 = ATS_MALLOC(sizeof(anairiats_sum_13)) ;
ats_selptrset_mac(anairiats_sum_13, tmp525, atslab_0, tmp526) ;
ats_selptrset_mac(anairiats_sum_13, tmp525, atslab_1, ats_ptrget_mac(ats_ptr_type, arg1)) ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp525 ;
return /* (tmp495) */ ;
} /* end of [aux_71] */

typedef struct {
ats_fun_ptr_type closure_fun ;
ats_ptr_type closure_env_0 ;
} aux_71_closure_type ;

ats_void_type
aux_71_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ref_type arg1) {
aux_71 (((aux_71_closure_type*)cloptr)->closure_env_0, arg0, arg1) ; return ;
} /* end of function */

ATSinline()
ats_void_type
aux_71_closure_init (aux_71_closure_type *p_clo, ats_ptr_type env0) {
p_clo->closure_fun = (ats_fun_ptr_type)&aux_71_clofun ;
p_clo->closure_env_0 = env0 ;
return ;
} /* end of function */

ats_clo_ptr_type
aux_71_closure_make (ats_ptr_type env0) {
aux_71_closure_type *p_clo = ATS_MALLOC(sizeof(aux_71_closure_type)) ;
aux_71_closure_init (p_clo, env0) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 29917(line=1503, offs=7) -- 30154(line=1512, offs=4)
*/
ATSstaticdec()
ats_void_type
auxlst_76 (ats_ptr_type env0, ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp527) ;
ATSlocal (ats_ptr_type, tmp528) ;
ATSlocal (ats_ptr_type, tmp529) ;
// ATSlocal_void (tmp530) ;

__ats_lab_auxlst_76:
do {
/* branch: __ats_lab_86 */
__ats_lab_86_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_87_0 ; }
__ats_lab_86_1:
break ;

/* branch: __ats_lab_87 */
__ats_lab_87_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_87_1:
tmp528 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp529 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
/* tmp530 = */ aux_71 (env0, tmp528, arg1) ;
arg0 = tmp529 ;
arg1 = arg1 ;
goto __ats_lab_auxlst_76 ; // tail call
break ;
} while (0) ;
return /* (tmp527) */ ;
} /* end of [auxlst_76] */

typedef struct {
ats_fun_ptr_type closure_fun ;
ats_ptr_type closure_env_0 ;
} auxlst_76_closure_type ;

ats_void_type
auxlst_76_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ref_type arg1) {
auxlst_76 (((auxlst_76_closure_type*)cloptr)->closure_env_0, arg0, arg1) ; return ;
} /* end of function */

ATSinline()
ats_void_type
auxlst_76_closure_init (auxlst_76_closure_type *p_clo, ats_ptr_type env0) {
p_clo->closure_fun = (ats_fun_ptr_type)&auxlst_76_clofun ;
p_clo->closure_env_0 = env0 ;
return ;
} /* end of function */

ats_clo_ptr_type
auxlst_76_closure_make (ats_ptr_type env0) {
auxlst_76_closure_type *p_clo = ATS_MALLOC(sizeof(auxlst_76_closure_type)) ;
auxlst_76_closure_init (p_clo, env0) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 30262(line=1518, offs=5) -- 30507(line=1529, offs=2)
*/
ATSstaticdec()
ats_void_type
aux2_77 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp533) ;
ATSlocal (ats_ptr_type, tmp534) ;
ATSlocal (ats_ptr_type, tmp535) ;
ATSlocal (ats_ptr_type, tmp536) ;
ATSlocal (ats_ptr_type, tmp537) ;
// ATSlocal_void (tmp538) ;

__ats_lab_aux2_77:
do {
/* branch: __ats_lab_88 */
__ats_lab_88_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_89_0 ; }
__ats_lab_88_1:
break ;

/* branch: __ats_lab_89 */
__ats_lab_89_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_89_1:
tmp534 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp535 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp537 = (ats_sum_ptr_type)0 ;
tmp536 = s1expdef_tr_45 (tmp537, tmp534) ;
/* tmp538 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp536) ;
arg0 = tmp535 ;
goto __ats_lab_aux2_77 ; // tail call
break ;
} while (0) ;
return /* (tmp533) */ ;
} /* end of [aux2_77] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 30563(line=1533, offs=5) -- 30777(line=1539, offs=31)
*/
ATSstaticdec()
ats_ptr_type
auxlst2_78 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp540) ;
ATSlocal (anairiats_rec_2, tmp541) ;
ATSlocal (ats_ptr_type, tmp542) ;
// ATSlocal_void (tmp543) ;
ATSlocal (ats_ptr_type, tmp544) ;
ATSlocal (ats_ptr_type, tmp545) ;
ATSlocal (ats_ptr_type, tmp546) ;
ATSlocal (ats_ptr_type, tmp547) ;
ATSlocal (ats_ptr_type, tmp548) ;

__ats_lab_auxlst2_78:
do {
/* branch: __ats_lab_90 */
__ats_lab_90_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_91_0 ; }
__ats_lab_90_1:
tmp541 = ats_caselptrlab_mac(anairiats_sum_13, arg0, atslab_0) ;
tmp542 = ats_caselptrlab_mac(anairiats_sum_13, arg0, atslab_1) ;
tmp544 = ats_select_mac(tmp541, atslab_1) ;
tmp545 = ats_select_mac(tmp541, atslab_2) ;
tmp546 = ats_select_mac(tmp541, atslab_0) ;
/* tmp543 = */ d1atdec_tr_66 (tmp544, tmp545, tmp546) ;
tmp547 = ats_select_mac(tmp541, atslab_1) ;
tmp548 = auxlst2_78 (tmp542) ;
tmp540 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp540, atslab_0, tmp547) ;
ats_selptrset_mac(anairiats_sum_3, tmp540, atslab_1, tmp548) ;
break ;

/* branch: __ats_lab_91 */
__ats_lab_91_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_91_1:
tmp540 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp540) ;
} /* end of [auxlst2_78] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 28048(line=1422, offs=1) -- 30835(line=1545, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__d1atdeclst_tr (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp492) ;
ATSlocal (ats_ptr_type, tmp493) ;
ATSlocal (ats_ptr_type, tmp494) ;
// ATSlocal_void (tmp531) ;
ATSlocal (ats_ptr_type, tmp532) ;
// ATSlocal_void (tmp539) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__d1atdeclst_tr:
tmp493 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_impred (arg0) ;
/* ats_ptr_type tmp494 ; */
tmp494 = (ats_sum_ptr_type)0 ;
/* tmp531 = */ auxlst_76 (tmp493, arg1, (&tmp494)) ;
tmp532 = tmp494 ;
/* tmp539 = */ aux2_77 (arg2) ;
tmp492 = auxlst2_78 (tmp532) ;
return (tmp492) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__d1atdeclst_tr] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52519(line=1874, offs=5) -- 52952(line=1891, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_82 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp558) ;
ATSlocal (ats_ptr_type, tmp559) ;
ATSlocal (ats_ptr_type, tmp560) ;
ATSlocal (anairiats_rec_1, tmp561) ;
ATSlocal (ats_ptr_type, tmp562) ;
ATSlocal (ats_ptr_type, tmp563) ;
ATSlocal (ats_ptr_type, tmp564) ;

__ats_lab_loop_82:
do {
/* branch: __ats_lab_92 */
__ats_lab_92_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_93_0 ; }
__ats_lab_92_1:
tmp559 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp560 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp561 = ((anairiats_rec_1(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp559, arg3) ;
tmp562 = ATS_MALLOC(sizeof(anairiats_sum_29)) ;
ats_selptrset_mac(anairiats_sum_29, tmp562, atslab_0, tmp561) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp562 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp563 = &ats_caselptrlab_mac(anairiats_sum_29, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp560 ;
arg1 = arg1 ;
arg2 = tmp563 ;
arg3 = arg3 ;
goto __ats_lab_loop_82 ; // tail call
break ;

/* branch: __ats_lab_93 */
__ats_lab_93_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_93_1:
tmp564 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp564 ;
break ;
} while (0) ;
return /* (tmp558) */ ;
} /* end of [loop_82] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 52444(line=1870, offs=3) -- 53099(line=1899, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map_funenv_01412_ats_ptr_type_anairiats_rec_1 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp557) ;
ATSlocal (ats_ptr_type, tmp565) ;
// ATSlocal_void (tmp566) ;

__ats_lab_list_map_funenv_01412_ats_ptr_type_anairiats_rec_1:
/* ats_ptr_type tmp565 ; */
/* tmp566 = */ loop_82 (arg0, arg1, (&tmp565), arg2) ;
tmp557 = tmp565 ;
return (tmp557) ;
} /* end of [list_map_funenv_01412_ats_ptr_type_anairiats_rec_1] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 53173(line=1904, offs=3) -- 53424(line=1911, offs=2)
*/
ATSstaticdec()
ats_ptr_type
list_map_fun_01413_ats_ptr_type_anairiats_rec_1 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp556) ;

__ats_lab_list_map_fun_01413_ats_ptr_type_anairiats_rec_1:
tmp556 = list_map_funenv_01412_ats_ptr_type_anairiats_rec_1 (arg0, ats_castfn_mac(ats_ptr_type, arg1), atspre_null_ptr) ;
return (tmp556) ;
} /* end of [list_map_fun_01413_ats_ptr_type_anairiats_rec_1] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 30943(line=1552, offs=1) -- 31571(line=1569, offs=4)
*/
ATSstaticdec()
ats_ptr_type
e1xndec_tr_79 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp549) ;
ATSlocal (ats_ptr_type, tmp550) ;
ATSlocal (ats_ptr_type, tmp551) ;
ATSlocal (ats_ptr_type, tmp552) ;
// ATSlocal_void (tmp553) ;
// ATSlocal_void (tmp554) ;
ATSlocal (ats_ptr_type, tmp555) ;
ATSlocal (ats_ptr_type, tmp567) ;
ATSlocal (ats_int_type, tmp568) ;
ATSlocal (ats_ptr_type, tmp569) ;
ATSlocal (ats_ptr_type, tmp570) ;
// ATSlocal_void (tmp571) ;
ATSlocal (ats_ptr_type, tmp572) ;
ATSlocal (ats_ptr_type, tmp573) ;
// ATSlocal_void (tmp574) ;
// ATSlocal_void (tmp575) ;

__ats_lab_e1xndec_tr_79:
tmp550 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_loc) ;
tmp551 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_fil) ;
tmp552 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_sym) ;
/* tmp553 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp554 = ats_selsin_mac(tmp553, atslab_1) */ ;
tmp567 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_qua) ;
tmp555 = list_map_fun_01413_ats_ptr_type_anairiats_rec_1 (tmp567, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__q1marg_tr) ;
tmp568 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_npf) ;
tmp569 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, arg1), atslab_e1xndec_arg) ;
tmp570 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_vt0ype (tmp569) ;
/* tmp571 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp573 = (ats_sum_ptr_type)0 ;
tmp572 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_make (tmp550, tmp551, tmp552, arg0, 1, ats_castfn_mac(ats_ptr_type, tmp555), tmp568, tmp570, tmp573) ;
/* tmp574 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__d2con_set_tag (tmp572, -1) ;
/* tmp575 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dcon (tmp572) ;
tmp549 = tmp572 ;
return (tmp549) ;
} /* end of [e1xndec_tr_79] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 31724(line=1583, offs=1) -- 32011(line=1597, offs=2)
*/
ATSstaticdec()
ats_ptr_type
aux_84 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp577) ;
ATSlocal (ats_ptr_type, tmp578) ;
ATSlocal (ats_ptr_type, tmp579) ;
ATSlocal (ats_ptr_type, tmp580) ;
ATSlocal (ats_ptr_type, tmp581) ;

__ats_lab_aux_84:
do {
/* branch: __ats_lab_94 */
__ats_lab_94_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_95_0 ; }
__ats_lab_94_1:
tmp577 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_95 */
__ats_lab_95_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_95_1:
tmp578 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp579 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp580 = e1xndec_tr_79 (arg0, tmp578) ;
tmp581 = aux_84 (arg0, tmp579) ;
tmp577 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp577, atslab_0, tmp580) ;
ats_selptrset_mac(anairiats_sum_3, tmp577, atslab_1, tmp581) ;
break ;
} while (0) ;
return (tmp577) ;
} /* end of [aux_84] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 7739(line=275, offs=5) -- 8080(line=290, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_86 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp589) ;
ATSlocal (ats_ptr_type, tmp590) ;
ATSlocal (ats_ptr_type, tmp591) ;
ATSlocal (ats_ptr_type, tmp592) ;
ATSlocal (ats_ptr_type, tmp593) ;

__ats_lab_loop_86:
do {
/* branch: __ats_lab_98 */
__ats_lab_98_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_99_0 ; }
__ats_lab_98_1:
tmp590 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp591 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp592 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp592, atslab_0, tmp590) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp592 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp593 = &ats_caselptrlab_mac(anairiats_sum_3, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp591 ;
arg1 = arg1 ;
arg2 = tmp593 ;
goto __ats_lab_loop_86 ; // tail call
break ;

/* branch: __ats_lab_99 */
__ats_lab_99_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_99_1:
ats_ptrget_mac(ats_ptr_type, arg2) = arg1 ;
break ;
} while (0) ;
return /* (tmp589) */ ;
} /* end of [loop_86] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 7684(line=272, offs=13) -- 8222(line=297, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_append_01312_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp587) ;
ATSlocal (ats_ptr_type, tmp588) ;
// ATSlocal_void (tmp594) ;

__ats_lab_list_append_01312_ats_ptr_type:
/* ats_ptr_type tmp588 ; */
/* tmp594 = */ loop_86 (arg0, arg1, (&tmp588)) ;
tmp587 = tmp588 ;
return (tmp587) ;
} /* end of [list_append_01312_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 31704(line=1580, offs=3) -- 32347(line=1621, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__e1xndeclst_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp576) ;
ATSlocal (ats_ptr_type, tmp582) ;
ATSlocal (ats_ptr_type, tmp583) ;
ATSlocal (ats_ptr_type, tmp584) ;
ATSlocal (ats_ptr_type, tmp585) ;
ATSlocal (ats_ptr_type, tmp586) ;
// ATSlocal_void (tmp595) ;
ATSlocal (ats_ptr_type, tmp596) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__e1xndeclst_tr:
tmp582 = _2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__s2cstref_get_cst (_2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__the_exception_vtype) ;
tmp583 = aux_84 (tmp582, arg0) ;
tmp585 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dconlst (tmp582) ;
do {
/* branch: __ats_lab_96 */
__ats_lab_96_0:
if (tmp585 != (ats_sum_ptr_type)0) { goto __ats_lab_97_0 ; }
__ats_lab_96_1:
tmp584 = tmp583 ;
break ;

/* branch: __ats_lab_97 */
__ats_lab_97_0:
// if (tmp585 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_97_1:
tmp586 = ats_caselptrlab_mac(anairiats_sum_6, tmp585, atslab_0) ;
tmp584 = list_append_01312_ats_ptr_type (tmp583, tmp586) ;
break ;
} while (0) ;
tmp596 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp596, atslab_0, tmp584) ;
/* tmp595 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_dconlst (tmp582, tmp596) ;
tmp576 = tmp583 ;
return (tmp576) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__e1xndeclst_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 32402(line=1626, offs=1) -- 33100(line=1669, offs=2)
*/
ATSstaticdec()
ats_void_type
c1lassdec_tr_87 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp597) ;
ATSlocal (ats_ptr_type, tmp598) ;
ATSlocal (ats_ptr_type, tmp599) ;
ATSlocal (ats_ptr_type, tmp600) ;
ATSlocal (ats_ptr_type, tmp601) ;
ATSlocal (ats_ptr_type, tmp602) ;
ATSlocal (ats_ptr_type, tmp603) ;
ATSlocal (ats_ptr_type, tmp604) ;
ATSlocal (ats_ptr_type, tmp605) ;
// ATSlocal_void (tmp606) ;
ATSlocal (ats_ptr_type, tmp607) ;
ATSlocal (ats_ptr_type, tmp608) ;
ATSlocal (ats_ptr_type, tmp609) ;

__ats_lab_c1lassdec_tr_87:
tmp598 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg0), atslab_i0de_sym) ;
tmp599 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg0), atslab_i0de_loc) ;
tmp601 = (ats_sum_ptr_type)0 ;
tmp602 = (ats_sum_ptr_type)0 ;
tmp603 = (ats_sum_ptr_type)0 ;
tmp604 = (ats_sum_ptr_type)0 ;
tmp605 = (ats_sum_ptr_type)0 ;
tmp600 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_make (tmp598, tmp599, _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_dummy, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_cls, tmp601, ats_false_bool, ats_false_bool, tmp602, tmp603, tmp604, tmp605) ;
do {
/* branch: __ats_lab_100 */
__ats_lab_100_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_101_0 ; }
__ats_lab_100_1:
break ;

/* branch: __ats_lab_101 */
__ats_lab_101_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_101_1:
tmp607 = ats_caselptrlab_mac(anairiats_sum_6, arg1, atslab_0) ;
tmp608 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp607, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_cls) ;
tmp609 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__s2exp_hnfize (tmp608) ;
/* tmp606 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_add_supcls (tmp600, tmp609) ;
break ;
} while (0) ;
/* tmp597 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_scst (tmp600) ;
return /* (tmp597) */ ;
} /* end of [c1lassdec_tr_87] */

/*
// /tmp/ATS-Postiats/src/pats_errmsg.dats: 1478(line=42, offs=16) -- 1514(line=43, offs=32)
*/
ATSstaticdec()
ats_void_type
prerr_ERROR_beg_02111_ () {
/* local vardec */
// ATSlocal_void (tmp614) ;

__ats_lab_prerr_ERROR_beg_02111_:
/* tmp614 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):beg**\n")) ;
return /* (tmp614) */ ;
} /* end of [prerr_ERROR_beg_02111_] */

/*
// /tmp/ATS-Postiats/src/pats_errmsg.dats: 1551(line=46, offs=16) -- 1587(line=47, offs=32)
*/
ATSstaticdec()
ats_void_type
prerr_ERROR_end_02112_ () {
/* local vardec */
// ATSlocal_void (tmp621) ;

__ats_lab_prerr_ERROR_end_02112_:
/* tmp621 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):end**\n")) ;
return /* (tmp621) */ ;
} /* end of [prerr_ERROR_end_02112_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 33162(line=1676, offs=1) -- 33829(line=1708, offs=2)
*/
ATSstaticdec()
ats_void_type
dckfun_check_88 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp610) ;
ATSlocal (ats_bool_type, tmp611) ;
ATSlocal (ats_bool_type, tmp612) ;
// ATSlocal_void (tmp613) ;
// ATSlocal_void (tmp615) ;
ATSlocal (ats_ptr_type, tmp616) ;
// ATSlocal_void (tmp617) ;
// ATSlocal_void (tmp618) ;
// ATSlocal_void (tmp619) ;
// ATSlocal_void (tmp620) ;
ATSlocal (ats_ptr_type, tmp622) ;

__ats_lab_dckfun_check_88:
do {
/* branch: __ats_lab_102 */
__ats_lab_102_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_103_0 ; }
__ats_lab_102_1:
tmp611 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_is_FUNCLOfun (arg2) ;
tmp612 = atspre_neg_bool (tmp611) ;
if (tmp612) {
/* tmp613 = */ prerr_ERROR_beg_02111_ () ;
tmp616 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg0), atslab_d1cstdec_loc) ;
/* tmp615 = */ prerr_error2_loc_02117_ (tmp616) ;
/* tmp617 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("d1cstdec_tr")) ;
/* tmp618 = */ atspre_prerr_string (ATSstrcst(": the function may need to be declared as a value")) ;
/* tmp619 = */ atspre_prerr_newline () ;
/* tmp620 = */ prerr_ERROR_end_02112_ () ;
tmp622 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp622)->tag = 33 ;
ats_selptrset_mac(anairiats_sum_9, tmp622, atslab_0, arg0) ;
/* tmp610 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp622) ;
} else {
/* empty */
} /* end of [if] */
break ;

/* branch: __ats_lab_103 */
__ats_lab_103_0:
__ats_lab_103_1:
break ;
} while (0) ;
return /* (tmp610) */ ;
} /* end of [dckfun_check_88] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 33863(line=1711, offs=1) -- 34293(line=1734, offs=2)
*/
ATSstaticdec()
ats_ptr_type
s2exp_get_arylst_91 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp623) ;
ATSlocal (ats_ptr_type, tmp624) ;
ATSlocal (ats_ptr_type, tmp625) ;
ATSlocal (ats_ptr_type, tmp626) ;
ATSlocal (ats_int_type, tmp627) ;
ATSlocal (ats_ptr_type, tmp628) ;
ATSlocal (ats_ptr_type, tmp629) ;
ATSlocal (ats_ptr_type, tmp630) ;
ATSlocal (ats_ptr_type, tmp631) ;

__ats_lab_s2exp_get_arylst_91:
tmp624 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_22, arg0), atslab_s2exp_node) ;
do {
/* branch: __ats_lab_104 */
__ats_lab_104_0:
if (((ats_sum_ptr_type)tmp624)->tag != 19) { goto __ats_lab_105_0 ; }
__ats_lab_104_1:
tmp625 = ats_caselptrlab_mac(anairiats_sum_31, tmp624, atslab_4) ;
tmp626 = ats_caselptrlab_mac(anairiats_sum_31, tmp624, atslab_5) ;
tmp627 = list_length_01410_ats_ptr_type (tmp625) ;
tmp628 = s2exp_get_arylst_91 (tmp626) ;
tmp623 = ATS_MALLOC(sizeof(anairiats_sum_10)) ;
ats_selptrset_mac(anairiats_sum_10, tmp623, atslab_0, tmp627) ;
ats_selptrset_mac(anairiats_sum_10, tmp623, atslab_1, tmp628) ;
break ;

/* branch: __ats_lab_105 */
__ats_lab_105_0:
if (((ats_sum_ptr_type)tmp624)->tag != 27) { goto __ats_lab_106_0 ; }
__ats_lab_105_1:
tmp629 = ats_caselptrlab_mac(anairiats_sum_24, tmp624, atslab_2) ;
arg0 = tmp629 ;
goto __ats_lab_s2exp_get_arylst_91 ; // tail call
break ;

/* branch: __ats_lab_106 */
__ats_lab_106_0:
if (((ats_sum_ptr_type)tmp624)->tag != 28) { goto __ats_lab_107_0 ; }
__ats_lab_106_1:
tmp630 = ats_caselptrlab_mac(anairiats_sum_24, tmp624, atslab_2) ;
arg0 = tmp630 ;
goto __ats_lab_s2exp_get_arylst_91 ; // tail call
break ;

/* branch: __ats_lab_107 */
__ats_lab_107_0:
if (((ats_sum_ptr_type)tmp624)->tag != 20) { goto __ats_lab_108_0 ; }
__ats_lab_107_1:
tmp631 = ats_caselptrlab_mac(anairiats_sum_24, tmp624, atslab_2) ;
arg0 = tmp631 ;
goto __ats_lab_s2exp_get_arylst_91 ; // tail call
break ;

/* branch: __ats_lab_108 */
__ats_lab_108_0:
__ats_lab_108_1:
tmp623 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp623) ;
} /* end of [s2exp_get_arylst_91] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 34355(line=1739, offs=1) -- 35443(line=1785, offs=2)
*/
ATSstaticdec()
ats_ptr_type
d1cstdec_tr_92 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp632) ;
ATSlocal (ats_ptr_type, tmp633) ;
ATSlocal (ats_ptr_type, tmp634) ;
ATSlocal (ats_ptr_type, tmp635) ;
ATSlocal (ats_bool_type, tmp636) ;
ATSlocal (ats_ptr_type, tmp637) ;
ATSlocal (ats_ptr_type, tmp638) ;
ATSlocal (ats_ptr_type, tmp639) ;
ATSlocal (ats_ptr_type, tmp640) ;
// ATSlocal_void (tmp641) ;
ATSlocal (ats_ptr_type, tmp642) ;
ATSlocal (ats_ptr_type, tmp643) ;
ATSlocal (ats_bool_type, tmp645) ;
ATSlocal (ats_ptr_type, tmp646) ;
ATSlocal (ats_ptr_type, tmp647) ;
// ATSlocal_void (tmp648) ;

__ats_lab_d1cstdec_tr_92:
tmp633 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg3), atslab_d1cstdec_loc) ;
tmp634 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg3), atslab_d1cstdec_fil) ;
tmp635 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg3), atslab_d1cstdec_sym) ;
tmp636 = _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__dcstkind_is_proof (arg1) ;
if (tmp636) {
tmp637 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop ;
} else {
tmp637 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype ;
} /* end of [if] */
tmp638 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg3), atslab_d1cstdec_type) ;
tmp639 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp638, tmp637) ;
tmp640 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__s2exp_hnfize (tmp639) ;
/* tmp641 = */ dckfun_check_88 (arg3, arg1, tmp640) ;
tmp642 = s2exp_get_arylst_91 (tmp640) ;
/* ats_ptr_type tmp643 ; */
tmp643 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg3), atslab_d1cstdec_extdef) ;
do {
/* branch: __ats_lab_109 */
__ats_lab_109_0:
if (((ats_sum_ptr_type)tmp643)->tag != 0) { goto __ats_lab_110_0 ; }
__ats_lab_109_1:
tmp645 = atspre_eq_int_int (arg0, 0) ;
if (tmp645) {
tmp646 = ATS_MALLOC(sizeof(anairiats_sum_32)) ;
((ats_sum_ptr_type)tmp646)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_32, tmp646, atslab_0, 0) ;
tmp643 = tmp646 ;
} else {
/* empty */
} /* end of [if] */
break ;

/* branch: __ats_lab_110 */
__ats_lab_110_0:
__ats_lab_110_1:
break ;
} while (0) ;
tmp647 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_make (tmp635, tmp633, tmp634, arg1, arg2, tmp642, tmp640, tmp643) ;
/* tmp648 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dcst (tmp647) ;
tmp632 = tmp647 ;
return (tmp632) ;
} /* end of [d1cstdec_tr_92] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 35520(line=1791, offs=5) -- 35855(line=1807, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1cstdeclst_tr_93 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp649) ;
ATSlocal (ats_ptr_type, tmp650) ;
ATSlocal (ats_ptr_type, tmp651) ;
ATSlocal (ats_ptr_type, tmp652) ;
ATSlocal (ats_ptr_type, tmp653) ;

__ats_lab_d1cstdeclst_tr_93:
do {
/* branch: __ats_lab_111 */
__ats_lab_111_0:
if (arg3 == (ats_sum_ptr_type)0) { goto __ats_lab_112_0 ; }
__ats_lab_111_1:
tmp650 = ats_caselptrlab_mac(anairiats_sum_3, arg3, atslab_0) ;
tmp651 = ats_caselptrlab_mac(anairiats_sum_3, arg3, atslab_1) ;
tmp652 = d1cstdec_tr_92 (arg0, arg1, arg2, tmp650) ;
tmp653 = d1cstdeclst_tr_93 (arg0, arg1, arg2, tmp651) ;
tmp649 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp649, atslab_0, tmp652) ;
ats_selptrset_mac(anairiats_sum_3, tmp649, atslab_1, tmp653) ;
break ;

/* branch: __ats_lab_112 */
__ats_lab_112_0:
// if (arg3 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_112_1:
tmp649 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp649) ;
} /* end of [d1cstdeclst_tr_93] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 35916(line=1813, offs=5) -- 36168(line=1823, offs=4)
*/
ATSstaticdec()
ats_void_type
trans2_env_add_m2acarg_94 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp654) ;
ATSlocal (ats_ptr_type, tmp655) ;
ATSlocal (ats_ptr_type, tmp656) ;

__ats_lab_trans2_env_add_m2acarg_94:
do {
/* branch: __ats_lab_113 */
__ats_lab_113_0:
if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_114_0 ; }
__ats_lab_113_1:
tmp655 = ats_caselptrlab_mac(anairiats_sum_9, arg0, atslab_0) ;
/* tmp654 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp655) ;
break ;

/* branch: __ats_lab_114 */
__ats_lab_114_0:
// if (((ats_sum_ptr_type)arg0)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_114_1:
tmp656 = ats_caselptrlab_mac(anairiats_sum_9, arg0, atslab_0) ;
/* tmp654 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dmacvarlst (tmp656) ;
break ;
} while (0) ;
return /* (tmp654) */ ;
} /* end of [trans2_env_add_m2acarg_94] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 36208(line=1824, offs=5) -- 36302(line=1825, offs=69)
*/
ATSstaticdec()
ats_void_type
trans2_env_add_m2acarglst_95 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp657) ;

__ats_lab_trans2_env_add_m2acarglst_95:
/* tmp657 = */ list_app_fun_01301_ats_ptr_type (arg0, &trans2_env_add_m2acarg_94) ;
return /* (tmp657) */ ;
} /* end of [trans2_env_add_m2acarglst_95] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 36370(line=1831, offs=1) -- 37124(line=1861, offs=4)
*/
ATSstaticdec()
ats_void_type
m1acdef_tr_96 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp658) ;
ATSlocal (ats_ptr_type, tmp659) ;
ATSlocal (ats_ptr_type, tmp660) ;
// ATSlocal_void (tmp661) ;
// ATSlocal_void (tmp662) ;
ATSlocal (ats_ptr_type, tmp663) ;
// ATSlocal_void (tmp664) ;
// ATSlocal_void (tmp665) ;
// ATSlocal_void (tmp666) ;
ATSlocal (ats_bool_type, tmp667) ;
ATSlocal (ats_ptr_type, tmp668) ;
ATSlocal (ats_ptr_type, tmp669) ;
// ATSlocal_void (tmp670) ;
ATSlocal (ats_bool_type, tmp671) ;
// ATSlocal_void (tmp672) ;
// ATSlocal_void (tmp673) ;

__ats_lab_m1acdef_tr_96:
tmp659 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg2), atslab_m1acdef_loc) ;
tmp660 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg2), atslab_m1acdef_sym) ;
/* tmp661 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp662 = ats_selsin_mac(tmp661, atslab_1) */ ;
tmp663 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_arglst (arg1) ;
/* tmp664 = */ trans2_env_add_m2acarglst_95 (tmp663) ;
/* tmp665 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_macdeflev_inc () ;
tmp667 = atspre_gte_int_int (arg0, 1) ;
if (tmp667) {
/* tmp666 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp659) ;
} else {
/* empty */
} /* end of [if] */
tmp669 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg2), atslab_m1acdef_def) ;
tmp668 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp669) ;
tmp671 = atspre_gte_int_int (arg0, 1) ;
if (tmp671) {
/* tmp670 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp659) ;
} else {
/* empty */
} /* end of [if] */
/* tmp672 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_macdeflev_dec () ;
/* tmp673 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
/* tmp658 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_set_def (arg1, tmp668) ;
return /* (tmp658) */ ;
} /* end of [m1acdef_tr_96] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 37291(line=1872, offs=11) -- 37355(line=1873, offs=44)
*/
ATSstaticdec()
ats_ptr_type
f_98 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp677) ;
ATSlocal (ats_ptr_type, tmp678) ;
ATSlocal (ats_ptr_type, tmp679) ;

__ats_lab_f_98:
tmp678 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg0), atslab_i0de_loc) ;
tmp679 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg0), atslab_i0de_sym) ;
tmp677 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp678, tmp679) ;
return (tmp677) ;
} /* end of [f_98] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 37478(line=1879, offs=11) -- 37721(line=1886, offs=10)
*/
ATSstaticdec()
ats_ptr_type
f_99 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp682) ;
ATSlocal (ats_ptr_type, tmp683) ;
ATSlocal (ats_ptr_type, tmp684) ;
ATSlocal (ats_ptr_type, tmp685) ;
ATSlocal (ats_ptr_type, tmp686) ;

__ats_lab_f_99:
tmp684 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_35, arg0), atslab_s1arg_srt) ;
do {
/* branch: __ats_lab_117 */
__ats_lab_117_0:
if (tmp684 == (ats_sum_ptr_type)0) { goto __ats_lab_118_0 ; }
__ats_lab_117_1:
tmp685 = ats_caselptrlab_mac(anairiats_sum_6, tmp684, atslab_0) ;
tmp683 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rt_tr (tmp685) ;
break ;

/* branch: __ats_lab_118 */
__ats_lab_118_0:
// if (tmp684 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_118_1:
tmp683 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype ;
break ;
} while (0) ;
tmp686 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_35, arg0), atslab_s1arg_sym) ;
tmp682 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_id_srt (tmp686, tmp683) ;
return (tmp682) ;
} /* end of [f_99] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 37183(line=1867, offs=5) -- 37823(line=1891, offs=4)
*/
ATSstaticdec()
ats_ptr_type
m1acarg_tr_97 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp674) ;
ATSlocal (ats_ptr_type, tmp675) ;
ATSlocal (ats_ptr_type, tmp676) ;
ATSlocal (ats_ptr_type, tmp680) ;
ATSlocal (ats_ptr_type, tmp681) ;
ATSlocal (ats_ptr_type, tmp687) ;

__ats_lab_m1acarg_tr_97:
tmp675 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_34, arg0), atslab_m1acarg_node) ;
do {
/* branch: __ats_lab_115 */
__ats_lab_115_0:
if (((ats_sum_ptr_type)tmp675)->tag != 0) { goto __ats_lab_116_0 ; }
__ats_lab_115_1:
tmp676 = ats_caselptrlab_mac(anairiats_sum_9, tmp675, atslab_0) ;
tmp680 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp676, &f_98) ;
tmp674 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp674)->tag = 1 ;
ats_selptrset_mac(anairiats_sum_9, tmp674, atslab_0, ats_castfn_mac(ats_ptr_type, tmp680)) ;
break ;

/* branch: __ats_lab_116 */
__ats_lab_116_0:
// if (((ats_sum_ptr_type)tmp675)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_116_1:
tmp681 = ats_caselptrlab_mac(anairiats_sum_9, tmp675, atslab_0) ;
tmp687 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp681, &f_99) ;
tmp674 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp674)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_9, tmp674, atslab_0, ats_castfn_mac(ats_ptr_type, tmp687)) ;
break ;
} while (0) ;
return (tmp674) ;
} /* end of [m1acarg_tr_97] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 37852(line=1893, offs=5) -- 37966(line=1896, offs=4)
*/
ATSstaticdec()
ats_ptr_type
m1acarglst_tr_100 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp688) ;
ATSlocal (ats_ptr_type, tmp689) ;

__ats_lab_m1acarglst_tr_100:
tmp689 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &m1acarg_tr_97) ;
tmp688 = ats_castfn_mac(ats_ptr_type, tmp689) ;
return (tmp688) ;
} /* end of [m1acarglst_tr_100] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 38128(line=1906, offs=5) -- 38611(line=1926, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux1_102 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp691) ;
ATSlocal (ats_ptr_type, tmp692) ;
ATSlocal (ats_ptr_type, tmp693) ;
ATSlocal (ats_ptr_type, tmp694) ;
ATSlocal (ats_ptr_type, tmp695) ;
ATSlocal (ats_ptr_type, tmp696) ;
ATSlocal (ats_ptr_type, tmp697) ;
ATSlocal (ats_ptr_type, tmp698) ;
ATSlocal (ats_ptr_type, tmp699) ;
// ATSlocal_void (tmp700) ;
ATSlocal (ats_bool_type, tmp701) ;
ATSlocal (ats_ptr_type, tmp702) ;

__ats_lab_aux1_102:
do {
/* branch: __ats_lab_119 */
__ats_lab_119_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_120_0 ; }
__ats_lab_119_1:
tmp692 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp693 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp694 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp692), atslab_m1acdef_loc) ;
tmp695 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp692), atslab_m1acdef_sym) ;
tmp696 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp694) ;
tmp698 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp692), atslab_m1acdef_arg) ;
tmp697 = m1acarglst_tr_100 (tmp698) ;
tmp699 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_make (tmp694, tmp695, arg0, tmp697, tmp696) ;
tmp701 = atspre_gte_int_int (arg0, 2) ;
if (tmp701) {
/* tmp700 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dmacdef (tmp699) ;
} else {
/* empty */
} /* end of [if] */
tmp702 = aux1_102 (arg0, tmp693) ;
tmp691 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp691, atslab_0, tmp699) ;
ats_selptrset_mac(anairiats_sum_3, tmp691, atslab_1, tmp702) ;
break ;

/* branch: __ats_lab_120 */
__ats_lab_120_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_120_1:
tmp691 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp691) ;
} /* end of [aux1_102] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 38664(line=1929, offs=5) -- 39043(line=1943, offs=4)
*/
ATSstaticdec()
ats_void_type
loop2_103 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp704) ;
ATSlocal (ats_ptr_type, tmp705) ;
ATSlocal (ats_ptr_type, tmp706) ;
ATSlocal (ats_ptr_type, tmp707) ;
ATSlocal (ats_ptr_type, tmp708) ;
ATSlocal (ats_int_type, tmp709) ;
// ATSlocal_void (tmp710) ;
// ATSlocal_void (tmp711) ;
ATSlocal (ats_bool_type, tmp712) ;

__ats_lab_loop2_103:
do {
/* branch: __ats_lab_121 */
__ats_lab_121_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_122_0 ; }
__ats_lab_121_1:
tmp705 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp706 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
if (arg1 == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_decl.dats: 38784(line=1935, offs=11) -- 38812(line=1935, offs=39)") ; }
tmp707 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp708 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp709 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind (tmp705) ;
/* tmp710 = */ m1acdef_tr_96 (tmp709, tmp705, tmp707) ;
tmp712 = atspre_lte_int_int (tmp709, 1) ;
if (tmp712) {
/* tmp711 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dmacdef (tmp705) ;
} else {
/* empty */
} /* end of [if] */
arg0 = tmp706 ;
arg1 = tmp708 ;
goto __ats_lab_loop2_103 ; // tail call
break ;

/* branch: __ats_lab_122 */
__ats_lab_122_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_122_1:
break ;
} while (0) ;
return /* (tmp704) */ ;
} /* end of [loop2_103] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 38022(line=1900, offs=5) -- 39112(line=1948, offs=4)
*/
ATSstaticdec()
ats_void_type
m1acdeflst_tr_101 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp690) ;
ATSlocal (ats_ptr_type, tmp703) ;

__ats_lab_m1acdeflst_tr_101:
tmp703 = aux1_102 (arg0, arg1) ;
/* tmp690 = */ loop2_103 (tmp703, arg1) ;
return /* (tmp690) */ ;
} /* end of [m1acdeflst_tr_101] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 39188(line=1955, offs=1) -- 39973(line=1987, offs=4)
*/
ATSstaticdec()
ats_ptr_type
f1undec_tr_104 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp713) ;
// ATSlocal_void (tmp714) ;
ATSlocal (ats_ptr_type, tmp715) ;
ATSlocal (ats_ptr_type, tmp716) ;
ATSlocal (ats_bool_type, tmp717) ;
ATSlocal (ats_bool_type, tmp718) ;
// ATSlocal_void (tmp719) ;
// ATSlocal_void (tmp720) ;
ATSlocal (ats_ptr_type, tmp721) ;
// ATSlocal_void (tmp722) ;
// ATSlocal_void (tmp723) ;
// ATSlocal_void (tmp724) ;
ATSlocal (ats_ptr_type, tmp725) ;
ATSlocal (ats_ptr_type, tmp726) ;
ATSlocal (ats_ptr_type, tmp727) ;
ATSlocal (ats_ptr_type, tmp728) ;

__ats_lab_f1undec_tr_104:
/* tmp714 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_decarg (arg1, arg0) ;
tmp716 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg2), atslab_f1undec_def) ;
tmp715 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp716) ;
tmp718 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_is_lam (tmp715) ;
tmp717 = atspre_neg_bool (tmp718) ;
if (tmp717) {
tmp721 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_37, tmp715), atslab_d2exp_loc) ;
/* tmp720 = */ prerr_error2_loc_02117_ (tmp721) ;
/* tmp722 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("f1undec_tr")) ;
/* tmp723 = */ atspre_prerr_string (ATSstrcst(": function definition is required to be lam-abstract.")) ;
/* tmp724 = */ atspre_prerr_newline () ;
tmp725 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp725)->tag = 32 ;
ats_selptrset_mac(anairiats_sum_9, tmp725, atslab_0, arg2) ;
/* tmp719 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp725) ;
} else {
/* empty */
} /* end of [if] */
tmp727 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg2), atslab_f1undec_ann) ;
tmp726 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__witht1ype_tr (tmp727) ;
tmp728 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg2), atslab_f1undec_loc) ;
tmp713 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__f2undec_make (tmp728, arg1, tmp715, tmp726) ;
return (tmp713) ;
} /* end of [f1undec_tr_104] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 40200(line=2000, offs=9) -- 40710(line=2017, offs=35)
*/
ATSstaticdec()
ats_ptr_type
aux1_106 (ats_bool_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp732) ;
ATSlocal (ats_ptr_type, tmp733) ;
ATSlocal (ats_ptr_type, tmp734) ;
ATSlocal (ats_ptr_type, tmp735) ;
ATSlocal (ats_ptr_type, tmp736) ;
ATSlocal (ats_ptr_type, tmp737) ;
// ATSlocal_void (tmp738) ;
// ATSlocal_void (tmp739) ;
ATSlocal (ats_ptr_type, tmp740) ;

__ats_lab_aux1_106:
do {
/* branch: __ats_lab_123 */
__ats_lab_123_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_124_0 ; }
__ats_lab_123_1:
tmp733 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp734 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp735 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, tmp733), atslab_f1undec_sym) ;
tmp736 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, tmp733), atslab_f1undec_sym_loc) ;
tmp737 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp736, tmp735) ;
/* tmp738 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix (tmp737, ats_true_bool) ;
/* tmp739 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isprf (tmp737, arg0) ;
tmp740 = aux1_106 (arg0, tmp734) ;
tmp732 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp732, atslab_0, tmp737) ;
ats_selptrset_mac(anairiats_sum_3, tmp732, atslab_1, tmp740) ;
break ;

/* branch: __ats_lab_124 */
__ats_lab_124_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_124_1:
tmp732 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp732) ;
} /* end of [aux1_106] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 40911(line=2028, offs=9) -- 41359(line=2043, offs=35)
*/
ATSstaticdec()
ats_ptr_type
aux2_107 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp743) ;
ATSlocal (ats_ptr_type, tmp744) ;
ATSlocal (ats_ptr_type, tmp745) ;
ATSlocal (ats_ptr_type, tmp746) ;
ATSlocal (ats_ptr_type, tmp747) ;
ATSlocal (ats_ptr_type, tmp748) ;
ATSlocal (ats_ptr_type, tmp749) ;

__ats_lab_aux2_107:
do {
/* branch: __ats_lab_125 */
__ats_lab_125_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_126_0 ; }
__ats_lab_125_1:
tmp744 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp745 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
// if (arg2 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp746 = ats_caselptrlab_mac(anairiats_sum_3, arg2, atslab_0) ;
tmp747 = ats_caselptrlab_mac(anairiats_sum_3, arg2, atslab_1) ;
tmp748 = f1undec_tr_104 (arg0, tmp744, tmp746) ;
tmp749 = aux2_107 (arg0, tmp745, tmp747) ;
tmp743 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp743, atslab_0, tmp748) ;
ats_selptrset_mac(anairiats_sum_3, tmp743, atslab_1, tmp749) ;
break ;

/* branch: __ats_lab_126 */
__ats_lab_126_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_126_1:
tmp743 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp743) ;
} /* end of [aux2_107] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 40002(line=1990, offs=1) -- 41555(line=2055, offs=4)
*/
ATSstaticdec()
ats_ptr_type
f1undeclst_tr_105 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp729) ;
ATSlocal (ats_bool_type, tmp730) ;
ATSlocal (ats_bool_type, tmp731) ;
ATSlocal (ats_ptr_type, tmp741) ;
// ATSlocal_void (tmp742) ;
ATSlocal (ats_ptr_type, tmp750) ;
// ATSlocal_void (tmp751) ;

__ats_lab_f1undeclst_tr_105:
tmp730 = _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_proof (arg0) ;
tmp731 = _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_recursive (arg0) ;
tmp741 = aux1_106 (tmp730, arg2) ;
if (tmp731) {
/* tmp742 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp741) ;
} else {
/* empty */
} /* end of [if] */
tmp750 = aux2_107 (arg1, tmp741, arg2) ;
if (tmp731) {
/* empty */
} else {
/* tmp751 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp741) ;
} /* end of [if] */
tmp729 = tmp750 ;
return (tmp729) ;
} /* end of [f1undeclst_tr_105] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 41608(line=2060, offs=1) -- 41817(line=2069, offs=4)
*/
ATSstaticdec()
ats_ptr_type
v1aldec_tr_108 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp752) ;
ATSlocal (ats_ptr_type, tmp753) ;
ATSlocal (ats_ptr_type, tmp754) ;
ATSlocal (ats_ptr_type, tmp755) ;
ATSlocal (ats_ptr_type, tmp756) ;
ATSlocal (ats_ptr_type, tmp757) ;

__ats_lab_v1aldec_tr_108:
tmp753 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_38, arg0), atslab_v1aldec_loc) ;
tmp755 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_38, arg0), atslab_v1aldec_def) ;
tmp754 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp755) ;
tmp757 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_38, arg0), atslab_v1aldec_ann) ;
tmp756 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__witht1ype_tr (tmp757) ;
tmp752 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__v2aldec_make (tmp753, arg1, tmp754, tmp756) ;
return (tmp752) ;
} /* end of [v1aldec_tr_108] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 41975(line=2077, offs=12) -- 42015(line=2077, offs=52)
*/
ATSstaticdec()
ats_ptr_type
__ats_fun_110 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp760) ;
ATSlocal (ats_ptr_type, tmp761) ;

__ats_lab___ats_fun_110:
tmp761 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_38, arg0), atslab_v1aldec_pat) ;
tmp760 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr (tmp761) ;
return (tmp760) ;
} /* end of [__ats_fun_110] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 58376(line=2097, offs=5) -- 58882(line=2115, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_113 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ref_type arg3, ats_ptr_type arg4) {
/* local vardec */
// ATSlocal_void (tmp770) ;
ATSlocal (ats_ptr_type, tmp771) ;
ATSlocal (ats_ptr_type, tmp772) ;
ATSlocal (ats_ptr_type, tmp773) ;
ATSlocal (ats_ptr_type, tmp774) ;
ATSlocal (ats_ptr_type, tmp775) ;
ATSlocal (ats_ptr_type, tmp776) ;
ATSlocal (ats_ptr_type, tmp777) ;
ATSlocal (ats_ptr_type, tmp778) ;

__ats_lab_loop_113:
do {
/* branch: __ats_lab_127 */
__ats_lab_127_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_128_0 ; }
__ats_lab_127_1:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_127_2:
tmp771 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp772 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp773 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
tmp774 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_1) ;
tmp775 = ((ats_ptr_type(*)(ats_ptr_type, ats_ptr_type, ats_ptr_type))arg2) (tmp771, tmp773, arg4) ;
tmp776 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp776, atslab_0, tmp775) ;
ats_ptrget_mac(ats_ptr_type, arg3) = tmp776 ;
// if (ats_ptrget_mac(ats_ptr_type, arg3) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp777 = &ats_caselptrlab_mac(anairiats_sum_3, ats_ptrget_mac(ats_ptr_type, arg3), atslab_1) ;
arg0 = tmp772 ;
arg1 = tmp774 ;
arg2 = arg2 ;
arg3 = tmp777 ;
arg4 = arg4 ;
goto __ats_lab_loop_113 ; // tail call
break ;

/* branch: __ats_lab_128 */
__ats_lab_128_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_128_1:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_128_2:
tmp778 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg3) = tmp778 ;
break ;
} while (0) ;
return /* (tmp770) */ ;
} /* end of [loop_113] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 58341(line=2095, offs=3) -- 59077(line=2124, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map2_funenv_01424_ats_ptr_type_2cats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp769) ;
ATSlocal (ats_ptr_type, tmp779) ;
// ATSlocal_void (tmp780) ;

__ats_lab_list_map2_funenv_01424_ats_ptr_type_2cats_ptr_type_ats_ptr_type:
/* ats_ptr_type tmp779 ; */
/* tmp780 = */ loop_113 (arg0, arg1, arg2, (&tmp779), arg3) ;
tmp769 = tmp779 ;
return (tmp769) ;
} /* end of [list_map2_funenv_01424_ats_ptr_type_2cats_ptr_type_ats_ptr_type] */

/*
// /nix/store/rfja8ixrs5wb4kj3kiwlch1apnh7qgvy-ats-0.2.12/lib/ats-anairiats-0.2.12/prelude/DATS/list.dats: 59154(line=2127, offs=27) -- 59433(line=2136, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp768) ;

__ats_lab_list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type:
tmp768 = list_map2_funenv_01424_ats_ptr_type_2cats_ptr_type_ats_ptr_type (arg0, arg1, ats_castfn_mac(ats_ptr_type, arg2), atspre_null_ptr) ;
return (tmp768) ;
} /* end of [list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 41846(line=2072, offs=1) -- 42583(line=2095, offs=4)
*/
ATSstaticdec()
ats_ptr_type
v1aldeclst_tr_109 (ats_bool_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp758) ;
ATSlocal (ats_ptr_type, tmp759) ;
ATSlocal (ats_ptr_type, tmp762) ;
ATSlocal (ats_ptr_type, tmp763) ;
ATSlocal (ats_ptr_type, tmp764) ;
ATSlocal (ats_ptr_type, tmp765) ;
ATSlocal (ats_bool_type, tmp766) ;
ATSlocal (ats_ptr_type, tmp767) ;
// ATSlocal_void (tmp781) ;
// ATSlocal_void (tmp782) ;
// ATSlocal_void (tmp783) ;
ATSlocal (ats_ptr_type, tmp784) ;
// ATSlocal_void (tmp785) ;

__ats_lab_v1aldeclst_tr_109:
tmp759 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg1, &__ats_fun_110) ;
tmp763 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union (ats_castfn_mac(ats_ptr_type, tmp759)) ;
tmp762 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp763) ;
tmp765 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union (ats_castfn_mac(ats_ptr_type, tmp759)) ;
tmp764 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp765) ;
tmp766 = atspre_neg_bool (arg0) ;
if (tmp766) {
tmp767 = list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type (arg1, ats_castfn_mac(ats_ptr_type, tmp759), &v1aldec_tr_108) ;
/* tmp781 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp762) ;
/* tmp782 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp764) ;
tmp758 = ats_castfn_mac(ats_ptr_type, tmp767) ;
} else {
/* tmp783 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp764) ;
tmp784 = list_map2_fun_01425_ats_ptr_type_2cats_ptr_type_ats_ptr_type (arg1, ats_castfn_mac(ats_ptr_type, tmp759), &v1aldec_tr_108) ;
/* tmp785 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp762) ;
tmp758 = ats_castfn_mac(ats_ptr_type, tmp784) ;
} /* end of [if] */
return (tmp758) ;
} /* end of [v1aldeclst_tr_109] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 42639(line=2100, offs=1) -- 43841(line=2160, offs=4)
*/
ATSstaticdec()
ats_ptr_type
v1ardec_tr_114 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp786) ;
ATSlocal (ats_ptr_type, tmp787) ;
ATSlocal (ats_int_type, tmp788) ;
ATSlocal (ats_ptr_type, tmp789) ;
ATSlocal (ats_ptr_type, tmp790) ;
ATSlocal (ats_ptr_type, tmp791) ;
ATSlocal (ats_ptr_type, tmp792) ;
ATSlocal (ats_bool_type, tmp793) ;
ATSlocal (ats_ptr_type, tmp794) ;
ATSlocal (ats_ptr_type, tmp795) ;
ATSlocal (ats_ptr_type, tmp796) ;
// ATSlocal_void (tmp797) ;
ATSlocal (ats_ptr_type, tmp798) ;
ATSlocal (ats_ptr_type, tmp799) ;
ATSlocal (ats_ptr_type, tmp800) ;
ATSlocal (ats_ptr_type, tmp801) ;
ATSlocal (ats_ptr_type, tmp802) ;
ATSlocal (ats_ptr_type, tmp803) ;
ATSlocal (ats_ptr_type, tmp804) ;
ATSlocal (ats_ptr_type, tmp805) ;
ATSlocal (ats_ptr_type, tmp806) ;
ATSlocal (ats_ptr_type, tmp807) ;
ATSlocal (ats_ptr_type, tmp808) ;
ATSlocal (ats_ptr_type, tmp809) ;
ATSlocal (ats_ptr_type, tmp810) ;

__ats_lab_v1ardec_tr_114:
tmp787 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_loc) ;
tmp788 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_knd) ;
tmp789 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_sym) ;
tmp790 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_sym_loc) ;
tmp791 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp790, tmp789) ;
tmp793 = atspre_gt_int_int (tmp788, 0) ;
if (tmp793) {
tmp794 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp790, tmp789) ;
tmp792 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp792, atslab_0, tmp794) ;
} else {
tmp792 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
tmp795 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2var_make_id_srt (tmp789, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_addr) ;
tmp796 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_var (tmp795) ;
tmp798 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp798, atslab_0, tmp796) ;
/* tmp797 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_addr (tmp791, tmp798) ;
tmp800 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_pfat) ;
do {
/* branch: __ats_lab_129 */
__ats_lab_129_0:
if (tmp800 != (ats_sum_ptr_type)0) { goto __ats_lab_130_0 ; }
__ats_lab_129_1:
tmp799 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_130 */
__ats_lab_130_0:
// if (tmp800 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_130_1:
tmp801 = ats_caselptrlab_mac(anairiats_sum_6, tmp800, atslab_0) ;
tmp803 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, tmp801), atslab_i0de_loc) ;
tmp804 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, tmp801), atslab_i0de_sym) ;
tmp802 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp803, tmp804) ;
tmp799 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp799, atslab_0, tmp802) ;
break ;
} while (0) ;
tmp806 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_type) ;
do {
/* branch: __ats_lab_131 */
__ats_lab_131_0:
if (tmp806 != (ats_sum_ptr_type)0) { goto __ats_lab_132_0 ; }
__ats_lab_131_1:
tmp805 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_132 */
__ats_lab_132_0:
// if (tmp806 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_132_1:
tmp807 = ats_caselptrlab_mac(anairiats_sum_6, tmp806, atslab_0) ;
tmp808 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp807) ;
tmp805 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp805, atslab_0, tmp808) ;
break ;
} while (0) ;
tmp810 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_init) ;
tmp809 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp810) ;
tmp786 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__v2ardec_make (tmp787, tmp788, tmp795, tmp791, tmp799, tmp805, tmp809, tmp792) ;
return (tmp786) ;
} /* end of [v1ardec_tr_114] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 44036(line=2174, offs=6) -- 44415(line=2185, offs=6)
*/
ATSstaticdec()
ats_void_type
f_116 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp813) ;
// ATSlocal_void (tmp814) ;
ATSlocal (ats_ptr_type, tmp815) ;
// ATSlocal_void (tmp816) ;
ATSlocal (ats_ptr_type, tmp817) ;
// ATSlocal_void (tmp818) ;
ATSlocal (ats_ptr_type, tmp819) ;
ATSlocal (ats_ptr_type, tmp820) ;
ATSlocal (ats_ptr_type, tmp821) ;

__ats_lab_f_116:
tmp815 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_40, arg0), atslab_v2ardec_svar) ;
/* tmp814 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svar (tmp815) ;
tmp817 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_40, arg0), atslab_v2ardec_dvar) ;
/* tmp816 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar (tmp817) ;
tmp819 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_40, arg0), atslab_v2ardec_dvaropt) ;
/* tmp818 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvaropt (tmp819) ;
tmp820 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_40, arg0), atslab_v2ardec_pfat) ;
do {
/* branch: __ats_lab_133 */
__ats_lab_133_0:
if (tmp820 == (ats_sum_ptr_type)0) { goto __ats_lab_134_0 ; }
__ats_lab_133_1:
tmp821 = ats_caselptrlab_mac(anairiats_sum_6, tmp820, atslab_0) ;
/* tmp813 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar (tmp821) ;
break ;

/* branch: __ats_lab_134 */
__ats_lab_134_0:
// if (tmp820 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_134_1:
break ;
} while (0) ;
return /* (tmp813) */ ;
} /* end of [f_116] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 43870(line=2163, offs=1) -- 44455(line=2188, offs=2)
*/
ATSstaticdec()
ats_ptr_type
v1ardeclst_tr_115 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp811) ;
ATSlocal (ats_ptr_type, tmp812) ;
// ATSlocal_void (tmp822) ;

__ats_lab_v1ardeclst_tr_115:
tmp812 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &v1ardec_tr_114) ;
/* tmp822 = */ list_app_fun_01301_ats_ptr_type (ats_castfn_mac(ats_ptr_type, tmp812), &f_116) ;
tmp811 = ats_castfn_mac(ats_ptr_type, tmp812) ;
return (tmp811) ;
} /* end of [v1ardeclst_tr_115] */

/*
// /tmp/ATS-Postiats/src/pats_errmsg.dats: 2872(line=116, offs=20) -- 2933(line=119, offs=2)
*/
ATSstaticdec()
ats_void_type
prerr_warning2_loc_02123_ (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp827) ;
// ATSlocal_void (tmp828) ;

__ats_lab_prerr_warning2_loc_02123_:
/* tmp828 = */ _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp827 = */ atspre_prerr_string (ATSstrcst(": warning(2)")) ;
return /* (tmp827) */ ;
} /* end of [prerr_warning2_loc_02123_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 44518(line=2195, offs=1) -- 44897(line=2215, offs=4)
*/
ATSstaticdec()
ats_void_type
auxkndck_117 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp823) ;
ATSlocal (ats_int_type, tmp824) ;
ATSlocal (ats_bool_type, tmp825) ;
// ATSlocal_void (tmp826) ;
ATSlocal (ats_ptr_type, tmp829) ;
// ATSlocal_void (tmp830) ;
// ATSlocal_void (tmp831) ;

__ats_lab_auxkndck_117:
tmp824 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_knd) ;
tmp825 = atspre_gt_int_int (tmp824, 0) ;
if (tmp825) {
tmp829 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_loc) ;
/* tmp826 = */ prerr_warning2_loc_02123_ (tmp829) ;
/* tmp830 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("prv1ardec_tr")) ;
/* tmp831 = */ atspre_prerr_string (ATSstrcst(": the dynalloc mark (!) is ignored.")) ;
/* tmp823 = */ atspre_prerr_newline () ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp823) */ ;
} /* end of [auxkndck_117] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 44924(line=2218, offs=1) -- 45446(line=2240, offs=4)
*/
ATSstaticdec()
ats_void_type
auxwthck_119 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp832) ;
ATSlocal (ats_ptr_type, tmp833) ;
ATSlocal (ats_ptr_type, tmp834) ;
// ATSlocal_void (tmp835) ;
ATSlocal (ats_ptr_type, tmp836) ;
// ATSlocal_void (tmp837) ;
// ATSlocal_void (tmp838) ;
// ATSlocal_void (tmp839) ;
// ATSlocal_void (tmp840) ;

__ats_lab_auxwthck_119:
tmp833 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_pfat) ;
do {
/* branch: __ats_lab_135 */
__ats_lab_135_0:
if (tmp833 == (ats_sum_ptr_type)0) { goto __ats_lab_136_0 ; }
__ats_lab_135_1:
tmp834 = ats_caselptrlab_mac(anairiats_sum_6, tmp833, atslab_0) ;
tmp836 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_loc) ;
/* tmp835 = */ prerr_warning2_loc_02123_ (tmp836) ;
/* tmp837 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("prv1ardec_tr")) ;
/* tmp838 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp839 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de (tmp834) ;
/* tmp840 = */ atspre_prerr_string (ATSstrcst("] is ignored.")) ;
/* tmp832 = */ atspre_prerr_newline () ;
break ;

/* branch: __ats_lab_136 */
__ats_lab_136_0:
// if (tmp833 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_136_1:
break ;
} while (0) ;
return /* (tmp832) */ ;
} /* end of [auxwthck_119] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 45497(line=2245, offs=1) -- 46003(line=2268, offs=4)
*/
ATSstaticdec()
ats_ptr_type
prv1ardec_tr_120 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp841) ;
// ATSlocal_void (tmp842) ;
// ATSlocal_void (tmp843) ;
ATSlocal (ats_ptr_type, tmp844) ;
ATSlocal (ats_ptr_type, tmp845) ;
ATSlocal (ats_ptr_type, tmp846) ;
ATSlocal (ats_ptr_type, tmp847) ;
ATSlocal (ats_ptr_type, tmp848) ;
ATSlocal (ats_ptr_type, tmp849) ;
ATSlocal (ats_ptr_type, tmp850) ;
ATSlocal (ats_ptr_type, tmp851) ;
ATSlocal (ats_ptr_type, tmp852) ;
ATSlocal (ats_ptr_type, tmp853) ;

__ats_lab_prv1ardec_tr_120:
/* tmp842 = */ auxkndck_117 (arg0) ;
/* tmp843 = */ auxwthck_119 (arg0) ;
tmp844 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_sym) ;
tmp845 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_sym_loc) ;
tmp846 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp845, tmp844) ;
tmp848 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_type) ;
do {
/* branch: __ats_lab_137 */
__ats_lab_137_0:
if (tmp848 == (ats_sum_ptr_type)0) { goto __ats_lab_138_0 ; }
__ats_lab_137_1:
tmp849 = ats_caselptrlab_mac(anairiats_sum_6, tmp848, atslab_0) ;
tmp850 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp849) ;
tmp847 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp847, atslab_0, tmp850) ;
break ;

/* branch: __ats_lab_138 */
__ats_lab_138_0:
// if (tmp848 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_138_1:
tmp847 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp852 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_init) ;
tmp851 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp852) ;
tmp853 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_39, arg0), atslab_v1ardec_loc) ;
tmp841 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prv2ardec_make (tmp853, tmp846, tmp847, tmp851) ;
return (tmp841) ;
} /* end of [prv1ardec_tr_120] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 46252(line=2282, offs=8) -- 46321(line=2282, offs=77)
*/
ATSstaticdec()
ats_void_type
f_122 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp856) ;
ATSlocal (ats_ptr_type, tmp857) ;

__ats_lab_f_122:
tmp857 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_41, arg0), atslab_prv2ardec_dvar) ;
/* tmp856 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar (tmp857) ;
return /* (tmp856) */ ;
} /* end of [f_122] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 46057(line=2273, offs=1) -- 46364(line=2284, offs=2)
*/
ATSstaticdec()
ats_ptr_type
prv1ardeclst_tr_121 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp854) ;
ATSlocal (ats_ptr_type, tmp855) ;
// ATSlocal_void (tmp858) ;

__ats_lab_prv1ardeclst_tr_121:
tmp855 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &prv1ardec_tr_120) ;
/* tmp858 = */ list_app_fun_01301_ats_ptr_type (ats_castfn_mac(ats_ptr_type, tmp855), &f_122) ;
tmp854 = ats_castfn_mac(ats_ptr_type, tmp855) ;
return (tmp854) ;
} /* end of [prv1ardeclst_tr_121] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 46750(line=2311, offs=1) -- 48129(line=2375, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taload_tr (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3, ats_ptr_type arg4, ats_ref_type arg5) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp859) ;
ATSlocal (ats_ptr_type, tmp860) ;
// ATSlocal_void (tmp861) ;
// ATSlocal_void (tmp862) ;
ATSlocal (ats_ptr_type, tmp863) ;
ATSlocal (ats_ptr_type, tmp864) ;
ATSlocal (ats_ptr_type, tmp865) ;
// ATSlocal_void (tmp866) ;
// ATSlocal_void (tmp867) ;
ATSlocal (ats_ptr_type, tmp868) ;
ATSlocal (ats_ptr_type, tmp869) ;
// ATSlocal_void (tmp870) ;
ATSlocal (anairiats_rec_2, tmp871) ;
ATSlocal (ats_ptr_type, tmp872) ;
ATSlocal (ats_ptr_type, tmp873) ;
ATSlocal (ats_ptr_type, tmp874) ;
ATSlocal (ats_ptr_type, tmp875) ;
// ATSlocal_void (tmp876) ;
// ATSlocal_void (tmp877) ;
ATSlocal (ats_ptr_type, tmp878) ;
ATSlocal (ats_ptr_type, tmp879) ;
// ATSlocal_void (tmp880) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taload_tr:
tmp860 = _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__filename_get_fullname (arg2) ;
/* tmp861 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_staload_level_push () ;
/* tmp862 = ats_selsin_mac(tmp861, atslab_1) */ ;
tmp863 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_filenvmap_find (tmp860) ;
do {
/* branch: __ats_lab_139 */
__ats_lab_139_0:
if (tmp863 == (ats_sum_ptr_type)0) { goto __ats_lab_140_0 ; }
__ats_lab_139_1:
tmp865 = ats_caselptrlab_mac(anairiats_sum_6, tmp863, atslab_0) ;
ATS_FREE(tmp863) ;
ats_ptrget_mac(ats_int_type, arg5) = 1 ;
tmp864 = tmp865 ;
break ;

/* branch: __ats_lab_140 */
__ats_lab_140_0:
// if (tmp863 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_140_1:
ats_ptrget_mac(ats_int_type, arg5) = 0 ;
/* tmp866 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_save () ;
/* tmp867 = ats_selsin_mac(tmp866, atslab_1) */ ;
tmp868 = _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_get () ;
tmp869 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (arg4) ;
/* tmp870 = */ _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_set (tmp868) ;
tmp871 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_restore () ;
tmp872 = ats_select_mac(tmp871, atslab_0) ;
tmp873 = ats_select_mac(tmp871, atslab_1) ;
tmp874 = ats_select_mac(tmp871, atslab_2) ;
tmp875 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_make (arg2, tmp872, tmp873, tmp874, tmp869) ;
/* tmp876 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_filenvmap_add (tmp860, tmp875) ;
tmp864 = tmp875 ;
break ;
} while (0) ;
do {
/* branch: __ats_lab_141 */
__ats_lab_141_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_142_0 ; }
__ats_lab_141_1:
tmp878 = ats_caselptrlab_mac(anairiats_sum_6, arg1, atslab_0) ;
tmp879 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp879)->tag = 5 ;
ats_selptrset_mac(anairiats_sum_9, tmp879, atslab_0, tmp864) ;
/* tmp877 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add (tmp878, tmp879) ;
break ;

/* branch: __ats_lab_142 */
__ats_lab_142_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_142_1:
/* tmp877 = */ _2tmp_2ATS_2dPostiats_2src_2pats_namespace_2esats__the_namespace_add (tmp864) ;
break ;
} while (0) ;
/* tmp880 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_staload_level_pop () ;
tmp859 = tmp864 ;
return (tmp859) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taload_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 48292(line=2390, offs=1) -- 48674(line=2406, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_125 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp882) ;
// ATSlocal_void (tmp883) ;
ATSlocal (ats_ptr_type, tmp884) ;
// ATSlocal_void (tmp885) ;
// ATSlocal_void (tmp886) ;
// ATSlocal_void (tmp887) ;
// ATSlocal_void (tmp888) ;
// ATSlocal_void (tmp889) ;
ATSlocal (ats_ptr_type, tmp890) ;

__ats_lab_auxerr_125:
tmp884 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_loc) ;
/* tmp883 = */ prerr_error2_loc_02117_ (tmp884) ;
/* tmp885 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("s1taloadnm_tr")) ;
/* tmp886 = */ atspre_prerr_string (ATSstrcst(": the name [")) ;
/* tmp887 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg1) ;
/* tmp888 = */ atspre_prerr_string (ATSstrcst("] does not refer to a namespace.")) ;
/* tmp889 = */ atspre_prerr_newline () ;
tmp890 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp890)->tag = 40 ;
ats_selptrset_mac(anairiats_sum_9, tmp890, atslab_0, arg0) ;
/* tmp882 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp890) ;
return /* (tmp882) */ ;
} /* end of [auxerr_125] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 48272(line=2387, offs=14) -- 49483(line=2445, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taloadnm_tr (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp881) ;
ATSlocal (ats_ptr_type, tmp891) ;
ATSlocal (ats_ptr_type, tmp892) ;
ATSlocal (ats_ptr_type, tmp893) ;
ATSlocal (ats_ptr_type, tmp894) ;
ATSlocal (ats_ptr_type, tmp895) ;
ATSlocal (ats_ptr_type, tmp896) ;
ATSlocal (ats_ptr_type, tmp897) ;
// ATSlocal_void (tmp898) ;
ATSlocal (ats_ptr_type, tmp899) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taloadnm_tr:
tmp891 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_node) ;
if (((ats_sum_ptr_type)tmp891)->tag != 33) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_decl.dats: 48705(line=2409, offs=1) -- 48751(line=2410, offs=34)") ; }
tmp892 = ats_caselptrlab_mac(anairiats_sum_5, tmp891, atslab_0) ;
tmp893 = ats_caselptrlab_mac(anairiats_sum_5, tmp891, atslab_1) ;
tmp894 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_find (tmp893) ;
do {
/* branch: __ats_lab_143 */
__ats_lab_143_0:
if (tmp894 != (ats_sum_ptr_type)0) { goto __ats_lab_144_0 ; }
__ats_lab_143_1:
/* tmp881 = */ auxerr_125 (arg0, tmp893) ;
break ;

/* branch: __ats_lab_144 */
__ats_lab_144_0:
// if (tmp894 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_144_1:
tmp895 = ats_caselptrlab_mac(anairiats_sum_6, tmp894, atslab_0) ;
ATS_FREE(tmp894) ;
do {
/* branch: __ats_lab_145 */
__ats_lab_145_0:
if (((ats_sum_ptr_type)tmp895)->tag != 5) { goto __ats_lab_148_0 ; }
__ats_lab_145_1:
tmp896 = ats_caselptrlab_mac(anairiats_sum_9, tmp895, atslab_0) ;
do {
/* branch: __ats_lab_146 */
__ats_lab_146_0:
if (tmp892 == (ats_sum_ptr_type)0) { goto __ats_lab_147_0 ; }
__ats_lab_146_1:
tmp897 = ats_caselptrlab_mac(anairiats_sum_6, tmp892, atslab_0) ;
/* tmp881 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add (tmp897, tmp895) ;
break ;

/* branch: __ats_lab_147 */
__ats_lab_147_0:
// if (tmp892 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_147_1:
/* tmp898 = */ _2tmp_2ATS_2dPostiats_2src_2pats_namespace_2esats__the_namespace_add (tmp896) ;
tmp899 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_get_d2eclist (tmp896) ;
/* tmp881 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist (tmp899) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_148 */
__ats_lab_148_0:
__ats_lab_148_1:
/* tmp881 = */ auxerr_125 (arg0, tmp893) ;
break ;
} while (0) ;
break ;
} while (0) ;
return /* (tmp881) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taloadnm_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 49567(line=2451, offs=3) -- 50261(line=2480, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp900) ;
ATSlocal (ats_ptr_type, tmp901) ;
ATSlocal (ats_ptr_type, tmp902) ;
// ATSlocal_void (tmp903) ;
ATSlocal (ats_ptr_type, tmp904) ;
ATSlocal (ats_ptr_type, tmp905) ;
ATSlocal (ats_ptr_type, tmp906) ;
ATSlocal (ats_int_type, tmp907) ;
ATSlocal (ats_ptr_type, tmp908) ;
ATSlocal (ats_ptr_type, tmp909) ;
ATSlocal (ats_ptr_type, tmp910) ;
ATSlocal (ats_ptr_type, tmp911) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist:
do {
/* branch: __ats_lab_149 */
__ats_lab_149_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_150_0 ; }
__ats_lab_149_1:
break ;

/* branch: __ats_lab_150 */
__ats_lab_150_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_150_1:
tmp901 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_0) ;
tmp902 = ats_caselptrlab_mac(anairiats_sum_3, arg0, atslab_1) ;
tmp904 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_42, tmp901), atslab_d2ecl_node) ;
do {
/* branch: __ats_lab_151 */
__ats_lab_151_0:
if (((ats_sum_ptr_type)tmp904)->tag != 2) { goto __ats_lab_152_0 ; }
__ats_lab_151_1:
tmp905 = ats_caselptrlab_mac(anairiats_sum_9, tmp904, atslab_0) ;
/* tmp903 = */ symintr_tr_1 (tmp905) ;
break ;

/* branch: __ats_lab_152 */
__ats_lab_152_0:
if (((ats_sum_ptr_type)tmp904)->tag != 4) { goto __ats_lab_155_0 ; }
__ats_lab_152_1:
tmp906 = ats_caselptrlab_mac(anairiats_sum_43, tmp904, atslab_0) ;
tmp907 = ats_caselptrlab_mac(anairiats_sum_43, tmp904, atslab_1) ;
tmp908 = ats_caselptrlab_mac(anairiats_sum_43, tmp904, atslab_2) ;
tmp909 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_42, tmp901), atslab_d2ecl_loc) ;
do {
/* branch: __ats_lab_153 */
__ats_lab_153_0:
if (tmp908 == (ats_sum_ptr_type)0) { goto __ats_lab_154_0 ; }
__ats_lab_153_1:
tmp910 = ats_caselptrlab_mac(anairiats_sum_6, tmp908, atslab_0) ;
/* tmp903 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_def (tmp909, tmp906, tmp907, tmp910) ;
break ;

/* branch: __ats_lab_154 */
__ats_lab_154_0:
// if (tmp908 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_154_1:
break ;
} while (0) ;
break ;

/* branch: __ats_lab_155 */
__ats_lab_155_0:
if (((ats_sum_ptr_type)tmp904)->tag != 23) { goto __ats_lab_156_0 ; }
__ats_lab_155_1:
tmp911 = ats_caselptrlab_mac(anairiats_sum_44, tmp904, atslab_1) ;
/* tmp903 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist (tmp911) ;
break ;

/* branch: __ats_lab_156 */
__ats_lab_156_0:
__ats_lab_156_1:
break ;
} while (0) ;
arg0 = tmp902 ;
goto __ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist ; // tail call
break ;
} while (0) ;
return /* (tmp900) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 50492(line=2496, offs=1) -- 51212(line=2517, offs=4)
*/
ATSstaticdec()
ats_void_type
auxcheck_impdec_128 (ats_ptr_type arg0, ats_int_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp914) ;
ATSlocal (ats_ptr_type, tmp915) ;
ATSlocal (ats_bool_type, tmp916) ;
ATSlocal (ats_bool_type, tmp917) ;
ATSlocal (ats_bool_type, tmp918) ;
// ATSlocal_void (tmp919) ;
ATSlocal (ats_ptr_type, tmp920) ;
// ATSlocal_void (tmp921) ;
// ATSlocal_void (tmp922) ;
ATSlocal (ats_bool_type, tmp923) ;
// ATSlocal_void (tmp924) ;
ATSlocal (ats_bool_type, tmp925) ;
// ATSlocal_void (tmp926) ;
ATSlocal (ats_ptr_type, tmp927) ;

__ats_lab_auxcheck_impdec_128:
tmp915 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_45, arg2), atslab_i2mpdec_cst) ;
tmp917 = atspre_lt_int_int (arg1, 0) ;
if (tmp917) {
tmp916 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_prf (tmp915) ;
} else {
tmp916 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_nonprf (tmp915) ;
} /* end of [if] */
tmp918 = atspre_neg_bool (tmp916) ;
if (tmp918) {
tmp920 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_loc) ;
/* tmp919 = */ prerr_error2_loc_02117_ (tmp920) ;
/* tmp921 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_decl.dats"), ATSstrcst("d1ecl_tr: auxcheck_impdec")) ;
tmp923 = atspre_lt_int_int (arg1, 0) ;
if (tmp923) {
/* tmp922 = */ atspre_prerr_string (ATSstrcst(": the implemented dynamic constant is required to be proof.")) ;
} else {
/* empty */
} /* end of [if] */
tmp925 = atspre_gte_int_int (arg1, 0) ;
if (tmp925) {
/* tmp924 = */ atspre_prerr_string (ATSstrcst(": the implemented dynamic constant is required to be non-proof.")) ;
} else {
/* empty */
} /* end of [if] */
/* tmp926 = */ atspre_prerr_newline () ;
tmp927 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp927)->tag = 35 ;
ats_selptrset_mac(anairiats_sum_9, tmp927, atslab_0, arg0) ;
/* tmp914 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp927) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp914) */ ;
} /* end of [auxcheck_impdec_128] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 50335(line=2485, offs=9) -- 59868(line=2896, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp912) ;
ATSlocal (ats_ptr_type, tmp913) ;
ATSlocal (ats_ptr_type, tmp928) ;
ATSlocal (ats_ptr_type, tmp929) ;
ATSlocal (ats_ptr_type, tmp930) ;
ATSlocal (ats_ptr_type, tmp931) ;
// ATSlocal_void (tmp932) ;
ATSlocal (ats_ptr_type, tmp933) ;
// ATSlocal_void (tmp934) ;
ATSlocal (ats_ptr_type, tmp935) ;
// ATSlocal_void (tmp936) ;
ATSlocal (ats_ptr_type, tmp937) ;
ATSlocal (ats_ptr_type, tmp938) ;
ATSlocal (ats_int_type, tmp939) ;
ATSlocal (ats_ptr_type, tmp940) ;
ATSlocal (ats_ptr_type, tmp941) ;
ATSlocal (ats_ptr_type, tmp942) ;
// ATSlocal_void (tmp943) ;
ATSlocal (ats_ptr_type, tmp944) ;
// ATSlocal_void (tmp945) ;
ATSlocal (ats_ptr_type, tmp946) ;
ATSlocal (ats_ptr_type, tmp947) ;
ATSlocal (ats_ptr_type, tmp948) ;
// ATSlocal_void (tmp949) ;
ATSlocal (ats_ptr_type, tmp950) ;
// ATSlocal_void (tmp951) ;
ATSlocal (ats_ptr_type, tmp952) ;
ATSlocal (ats_ptr_type, tmp953) ;
ATSlocal (ats_int_type, tmp954) ;
ATSlocal (ats_ptr_type, tmp955) ;
ATSlocal (ats_ptr_type, tmp956) ;
// ATSlocal_void (tmp957) ;
ATSlocal (ats_ptr_type, tmp958) ;
// ATSlocal_void (tmp959) ;
ATSlocal (ats_ptr_type, tmp960) ;
ATSlocal (ats_ptr_type, tmp961) ;
ATSlocal (ats_int_type, tmp962) ;
ATSlocal (ats_ptr_type, tmp963) ;
ATSlocal (ats_ptr_type, tmp964) ;
ATSlocal (ats_ptr_type, tmp965) ;
// ATSlocal_void (tmp966) ;
ATSlocal (ats_int_type, tmp967) ;
ATSlocal (ats_ptr_type, tmp968) ;
// ATSlocal_void (tmp969) ;
ATSlocal (ats_ptr_type, tmp970) ;
ATSlocal (ats_ptr_type, tmp971) ;
ATSlocal (ats_ptr_type, tmp972) ;
ATSlocal (ats_ptr_type, tmp973) ;
ATSlocal (ats_ptr_type, tmp974) ;
ATSlocal (ats_ptr_type, tmp975) ;
ATSlocal (ats_ptr_type, tmp976) ;
ATSlocal (ats_ptr_type, tmp977) ;
ATSlocal (ats_int_type, tmp978) ;
ATSlocal (ats_ptr_type, tmp979) ;
ATSlocal (ats_ptr_type, tmp980) ;
ATSlocal (ats_ptr_type, tmp981) ;
ATSlocal (ats_ptr_type, tmp982) ;
ATSlocal (ats_ptr_type, tmp983) ;
// ATSlocal_void (tmp984) ;
ATSlocal (ats_ptr_type, tmp985) ;
ATSlocal (ats_ptr_type, tmp986) ;
ATSlocal (ats_ptr_type, tmp987) ;
ATSlocal (ats_int_type, tmp988) ;
ATSlocal (ats_ptr_type, tmp989) ;
ATSlocal (ats_ptr_type, tmp990) ;
ATSlocal (ats_ptr_type, tmp991) ;
ATSlocal (ats_ptr_type, tmp992) ;
ATSlocal (ats_ptr_type, tmp993) ;
ATSlocal (ats_ptr_type, tmp994) ;
ATSlocal (ats_ptr_type, tmp995) ;
ATSlocal (ats_int_type, tmp996) ;
ATSlocal (ats_int_type, tmp997) ;
ATSlocal (ats_ptr_type, tmp998) ;
ATSlocal (ats_int_type, tmp999) ;
ATSlocal (ats_ptr_type, tmp1000) ;
ATSlocal (ats_ptr_type, tmp1001) ;
ATSlocal (ats_ptr_type, tmp1002) ;
// ATSlocal_void (tmp1003) ;
// ATSlocal_void (tmp1004) ;
ATSlocal (ats_ptr_type, tmp1005) ;
ATSlocal (ats_ptr_type, tmp1006) ;
// ATSlocal_void (tmp1007) ;
ATSlocal (ats_int_type, tmp1008) ;
ATSlocal (ats_bool_type, tmp1009) ;
ATSlocal (ats_ptr_type, tmp1010) ;
ATSlocal (ats_int_type, tmp1011) ;
ATSlocal (ats_bool_type, tmp1012) ;
// ATSlocal_void (tmp1013) ;
ATSlocal (ats_int_type, tmp1014) ;
ATSlocal (ats_ptr_type, tmp1015) ;
ATSlocal (ats_ptr_type, tmp1016) ;
// ATSlocal_void (tmp1017) ;
ATSlocal (ats_ptr_type, tmp1018) ;
ATSlocal (ats_ptr_type, tmp1019) ;
ATSlocal (ats_ptr_type, tmp1020) ;
ATSlocal (ats_bool_type, tmp1021) ;
ATSlocal (ats_bool_type, tmp1022) ;
ATSlocal (ats_ptr_type, tmp1023) ;
// ATSlocal_void (tmp1024) ;
ATSlocal (ats_bool_type, tmp1025) ;
ATSlocal (ats_ptr_type, tmp1026) ;
// ATSlocal_void (tmp1027) ;
// ATSlocal_void (tmp1028) ;
// ATSlocal_void (tmp1029) ;
// ATSlocal_void (tmp1030) ;
// ATSlocal_void (tmp1031) ;
ATSlocal (ats_int_type, tmp1032) ;
ATSlocal (ats_ptr_type, tmp1033) ;
// ATSlocal_void (tmp1034) ;
ATSlocal (ats_ptr_type, tmp1035) ;
// ATSlocal_void (tmp1036) ;
// ATSlocal_void (tmp1037) ;
// ATSlocal_void (tmp1038) ;
ATSlocal (ats_ptr_type, tmp1039) ;
ATSlocal (ats_bool_type, tmp1040) ;
ATSlocal (ats_ptr_type, tmp1041) ;
ATSlocal (ats_ptr_type, tmp1042) ;
ATSlocal (ats_bool_type, tmp1043) ;
ATSlocal (ats_int_type, tmp1044) ;
ATSlocal (ats_ptr_type, tmp1045) ;
ATSlocal (ats_bool_type, tmp1046) ;
ATSlocal (ats_ptr_type, tmp1047) ;
ATSlocal (ats_ptr_type, tmp1048) ;
ATSlocal (ats_int_type, tmp1049) ;
ATSlocal (ats_ptr_type, tmp1050) ;
ATSlocal (ats_ptr_type, tmp1051) ;
ATSlocal (ats_ptr_type, tmp1052) ;
ATSlocal (ats_ptr_type, tmp1053) ;
ATSlocal (ats_int_type, tmp1054) ;
ATSlocal (ats_ptr_type, tmp1055) ;
ATSlocal (ats_int_type, tmp1056) ;
ATSlocal (ats_ptr_type, tmp1057) ;
// ATSlocal_void (tmp1058) ;
ATSlocal (ats_ptr_type, tmp1059) ;
// ATSlocal_void (tmp1060) ;
ATSlocal (ats_ptr_type, tmp1061) ;
ATSlocal (ats_ptr_type, tmp1062) ;
ATSlocal (ats_ptr_type, tmp1063) ;
// ATSlocal_void (tmp1064) ;
// ATSlocal_void (tmp1065) ;
ATSlocal (ats_ptr_type, tmp1066) ;
ATSlocal (ats_ptr_type, tmp1067) ;
// ATSlocal_void (tmp1068) ;
ATSlocal (anairiats_rec_2, tmp1069) ;
ATSlocal (ats_ptr_type, tmp1070) ;
ATSlocal (ats_ptr_type, tmp1071) ;
ATSlocal (ats_ptr_type, tmp1072) ;
ATSlocal (ats_ptr_type, tmp1073) ;
// ATSlocal_void (tmp1074) ;
ATSlocal (ats_ptr_type, tmp1075) ;
ATSlocal (ats_ptr_type, tmp1076) ;
ATSlocal (ats_ptr_type, tmp1077) ;
ATSlocal (ats_ptr_type, tmp1078) ;
// ATSlocal_void (tmp1079) ;
// ATSlocal_void (tmp1080) ;
ATSlocal (ats_ptr_type, tmp1081) ;
// ATSlocal_void (tmp1082) ;
// ATSlocal_void (tmp1083) ;
ATSlocal (ats_ptr_type, tmp1084) ;
// ATSlocal_void (tmp1085) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr:
tmp913 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_loc) ;
tmp928 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg0), atslab_d1ecl_node) ;
do {
/* branch: __ats_lab_157 */
__ats_lab_157_0:
if (((ats_sum_ptr_type)tmp928)->tag != 0) { goto __ats_lab_158_0 ; }
__ats_lab_157_1:
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_158 */
__ats_lab_158_0:
if (((ats_sum_ptr_type)tmp928)->tag != 1) { goto __ats_lab_159_0 ; }
__ats_lab_158_1:
tmp929 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp930 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp929, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_list (tmp913, ats_castfn_mac(ats_ptr_type, tmp930)) ;
break ;

/* branch: __ats_lab_159 */
__ats_lab_159_0:
if (((ats_sum_ptr_type)tmp928)->tag != 2) { goto __ats_lab_160_0 ; }
__ats_lab_159_1:
tmp931 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp932 = */ _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_set (tmp931) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_160 */
__ats_lab_160_0:
if (((ats_sum_ptr_type)tmp928)->tag != 3) { goto __ats_lab_161_0 ; }
__ats_lab_160_1:
tmp933 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp934 = */ symintr_tr_1 (tmp933) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_symintr (tmp913, tmp933) ;
break ;

/* branch: __ats_lab_161 */
__ats_lab_161_0:
if (((ats_sum_ptr_type)tmp928)->tag != 4) { goto __ats_lab_162_0 ; }
__ats_lab_161_1:
tmp935 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp936 = */ symelim_tr_3 (tmp935) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_symelim (tmp913, tmp935) ;
break ;

/* branch: __ats_lab_162 */
__ats_lab_162_0:
if (((ats_sum_ptr_type)tmp928)->tag != 5) { goto __ats_lab_163_0 ; }
__ats_lab_162_1:
tmp937 = ats_caselptrlab_mac(anairiats_sum_46, tmp928, atslab_0) ;
tmp938 = ats_caselptrlab_mac(anairiats_sum_46, tmp928, atslab_1) ;
tmp939 = ats_caselptrlab_mac(anairiats_sum_46, tmp928, atslab_2) ;
tmp940 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr (arg0, tmp937, tmp938, tmp939) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_overload (tmp913, tmp937, tmp939, tmp940) ;
break ;

/* branch: __ats_lab_163 */
__ats_lab_163_0:
if (((ats_sum_ptr_type)tmp928)->tag != 6) { goto __ats_lab_164_0 ; }
__ats_lab_163_1:
tmp941 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp942 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
tmp944 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp944)->tag = 2 ;
ats_selptrset_mac(anairiats_sum_9, tmp944, atslab_0, tmp942) ;
/* tmp943 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add (tmp941, tmp944) ;
tmp946 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp946)->tag = 3 ;
ats_selptrset_mac(anairiats_sum_9, tmp946, atslab_0, tmp942) ;
/* tmp945 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp941, tmp946) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_164 */
__ats_lab_164_0:
if (((ats_sum_ptr_type)tmp928)->tag != 7) { goto __ats_lab_165_0 ; }
__ats_lab_164_1:
tmp947 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp948 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
tmp950 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp950)->tag = 2 ;
ats_selptrset_mac(anairiats_sum_9, tmp950, atslab_0, tmp948) ;
/* tmp949 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add (tmp947, tmp950) ;
tmp952 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp952)->tag = 3 ;
ats_selptrset_mac(anairiats_sum_9, tmp952, atslab_0, tmp948) ;
/* tmp951 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add (tmp947, tmp952) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_165 */
__ats_lab_165_0:
if (((ats_sum_ptr_type)tmp928)->tag != 8) { goto __ats_lab_166_0 ; }
__ats_lab_165_1:
tmp953 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_pragma (tmp913, tmp953) ;
break ;

/* branch: __ats_lab_166 */
__ats_lab_166_0:
if (((ats_sum_ptr_type)tmp928)->tag != 9) { goto __ats_lab_167_0 ; }
__ats_lab_166_1:
tmp954 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_0) ;
tmp955 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_1) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_codegen (tmp913, tmp954, tmp955) ;
break ;

/* branch: __ats_lab_167 */
__ats_lab_167_0:
if (((ats_sum_ptr_type)tmp928)->tag != 10) { goto __ats_lab_168_0 ; }
__ats_lab_167_1:
tmp956 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp957 = */ d1atsrtdeclst_tr_17 (tmp956) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_168 */
__ats_lab_168_0:
if (((ats_sum_ptr_type)tmp928)->tag != 11) { goto __ats_lab_169_0 ; }
__ats_lab_168_1:
tmp958 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp959 = */ s1rtdeflst_tr_21 (tmp958) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_169 */
__ats_lab_169_0:
if (((ats_sum_ptr_type)tmp928)->tag != 12) { goto __ats_lab_170_0 ; }
__ats_lab_169_1:
tmp960 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp961 = s1tacstlst_tr_24 (tmp960) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_stacsts (tmp913, tmp961) ;
break ;

/* branch: __ats_lab_170 */
__ats_lab_170_0:
if (((ats_sum_ptr_type)tmp928)->tag != 13) { goto __ats_lab_171_0 ; }
__ats_lab_170_1:
tmp962 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_0) ;
tmp963 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_1) ;
tmp964 = s1taconlst_tr_37 (tmp962, tmp963) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_stacons (tmp913, tmp962, tmp964) ;
break ;

/* branch: __ats_lab_171 */
__ats_lab_171_0:
if (((ats_sum_ptr_type)tmp928)->tag != 14) { goto __ats_lab_172_0 ; }
__ats_lab_171_1:
tmp965 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
/* tmp966 = */ t1kindef_tr_39 (tmp965) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_172 */
__ats_lab_172_0:
if (((ats_sum_ptr_type)tmp928)->tag != 15) { goto __ats_lab_173_0 ; }
__ats_lab_172_1:
tmp967 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_0) ;
tmp968 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_1) ;
/* tmp969 = */ s1expdeflst_tr_47 (tmp967, tmp968) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_173 */
__ats_lab_173_0:
if (((ats_sum_ptr_type)tmp928)->tag != 16) { goto __ats_lab_176_0 ; }
__ats_lab_173_1:
tmp970 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp971 = s1aspdec_tr_54 (tmp970) ;
do {
/* branch: __ats_lab_174 */
__ats_lab_174_0:
if (tmp971 == (ats_sum_ptr_type)0) { goto __ats_lab_175_0 ; }
__ats_lab_174_1:
tmp972 = ats_caselptrlab_mac(anairiats_sum_6, tmp971, atslab_0) ;
ATS_FREE(tmp971) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_saspdec (tmp913, tmp972) ;
break ;

/* branch: __ats_lab_175 */
__ats_lab_175_0:
// if (tmp971 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_175_1:
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_176 */
__ats_lab_176_0:
if (((ats_sum_ptr_type)tmp928)->tag != 17) { goto __ats_lab_179_0 ; }
__ats_lab_176_1:
tmp973 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp974 = re1assume_tr_61 (tmp973) ;
do {
/* branch: __ats_lab_177 */
__ats_lab_177_0:
if (tmp974 == (ats_sum_ptr_type)0) { goto __ats_lab_178_0 ; }
__ats_lab_177_1:
tmp975 = ats_caselptrlab_mac(anairiats_sum_6, tmp974, atslab_0) ;
ATS_FREE(tmp974) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_reassume (tmp913, tmp975) ;
break ;

/* branch: __ats_lab_178 */
__ats_lab_178_0:
// if (tmp974 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_178_1:
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_179 */
__ats_lab_179_0:
if (((ats_sum_ptr_type)tmp928)->tag != 18) { goto __ats_lab_180_0 ; }
__ats_lab_179_1:
tmp976 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp977 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__e1xndeclst_tr (tmp976) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_exndecs (tmp913, tmp977) ;
break ;

/* branch: __ats_lab_180 */
__ats_lab_180_0:
if (((ats_sum_ptr_type)tmp928)->tag != 19) { goto __ats_lab_181_0 ; }
__ats_lab_180_1:
tmp978 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_0) ;
tmp979 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_1) ;
tmp980 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_2) ;
tmp981 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__d1atdeclst_tr (tmp978, tmp979, tmp980) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_datdecs (tmp913, tmp978, tmp981) ;
break ;

/* branch: __ats_lab_181 */
__ats_lab_181_0:
if (((ats_sum_ptr_type)tmp928)->tag != 20) { goto __ats_lab_182_0 ; }
__ats_lab_181_1:
tmp982 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp983 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
/* tmp984 = */ c1lassdec_tr_87 (tmp982, tmp983) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_182 */
__ats_lab_182_0:
if (((ats_sum_ptr_type)tmp928)->tag != 21) { goto __ats_lab_183_0 ; }
__ats_lab_182_1:
tmp985 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp986 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
tmp987 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp986) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extype (tmp913, tmp985, tmp987) ;
break ;

/* branch: __ats_lab_183 */
__ats_lab_183_0:
if (((ats_sum_ptr_type)tmp928)->tag != 22) { goto __ats_lab_184_0 ; }
__ats_lab_183_1:
tmp988 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_0) ;
tmp989 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_1) ;
tmp990 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_2) ;
tmp991 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_impred (tmp988) ;
tmp992 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp990, tmp991) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extype (tmp913, tmp989, tmp992) ;
break ;

/* branch: __ats_lab_184 */
__ats_lab_184_0:
if (((ats_sum_ptr_type)tmp928)->tag != 23) { goto __ats_lab_185_0 ; }
__ats_lab_184_1:
tmp993 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp994 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
tmp995 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp994) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extvar (tmp913, tmp993, tmp995) ;
break ;

/* branch: __ats_lab_185 */
__ats_lab_185_0:
if (((ats_sum_ptr_type)tmp928)->tag != 24) { goto __ats_lab_186_0 ; }
__ats_lab_185_1:
tmp996 = ats_caselptrlab_mac(anairiats_sum_48, tmp928, atslab_0) ;
tmp997 = ats_caselptrlab_mac(anairiats_sum_48, tmp928, atslab_1) ;
tmp998 = ats_caselptrlab_mac(anairiats_sum_48, tmp928, atslab_2) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_extcode (tmp913, tmp996, tmp997, tmp998) ;
break ;

/* branch: __ats_lab_186 */
__ats_lab_186_0:
if (((ats_sum_ptr_type)tmp928)->tag != 25) { goto __ats_lab_187_0 ; }
__ats_lab_186_1:
tmp999 = ats_caselptrlab_mac(anairiats_sum_49, tmp928, atslab_0) ;
tmp1000 = ats_caselptrlab_mac(anairiats_sum_49, tmp928, atslab_1) ;
tmp1001 = ats_caselptrlab_mac(anairiats_sum_49, tmp928, atslab_2) ;
tmp1002 = ats_caselptrlab_mac(anairiats_sum_49, tmp928, atslab_3) ;
/* tmp1003 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp1004 = ats_selsin_mac(tmp1003, atslab_1) */ ;
tmp1005 = list_map_fun_01413_ats_ptr_type_anairiats_rec_1 (tmp1001, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__q1marg_tr_dec) ;
tmp1006 = d1cstdeclst_tr_93 (tmp999, tmp1000, ats_castfn_mac(ats_ptr_type, tmp1005), tmp1002) ;
/* tmp1007 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_dcstdecs (tmp913, tmp999, tmp1000, tmp1006) ;
break ;

/* branch: __ats_lab_187 */
__ats_lab_187_0:
if (((ats_sum_ptr_type)tmp928)->tag != 26) { goto __ats_lab_188_0 ; }
__ats_lab_187_1:
tmp1008 = ats_caselptrlab_mac(anairiats_sum_50, tmp928, atslab_0) ;
tmp1009 = ats_caselptrlab_mac(anairiats_sum_50, tmp928, atslab_1) ;
tmp1010 = ats_caselptrlab_mac(anairiats_sum_50, tmp928, atslab_2) ;
if (tmp1009) {
tmp1012 = atspre_eq_int_int (tmp1008, 0) ;
if (tmp1012) {
tmp1011 = 0 ;
} else {
tmp1011 = 2 ;
} /* end of [if] */
} else {
tmp1011 = tmp1008 ;
} /* end of [if] */
/* tmp1013 = */ m1acdeflst_tr_101 (tmp1011, tmp1010) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_188 */
__ats_lab_188_0:
if (((ats_sum_ptr_type)tmp928)->tag != 27) { goto __ats_lab_191_0 ; }
__ats_lab_188_1:
tmp1014 = ats_caselptrlab_mac(anairiats_sum_47, tmp928, atslab_0) ;
tmp1015 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__i1mpdec_tr (arg0) ;
do {
/* branch: __ats_lab_189 */
__ats_lab_189_0:
if (tmp1015 == (ats_sum_ptr_type)0) { goto __ats_lab_190_0 ; }
__ats_lab_189_1:
tmp1016 = ats_caselptrlab_mac(anairiats_sum_6, tmp1015, atslab_0) ;
ATS_FREE(tmp1015) ;
/* tmp1017 = */ auxcheck_impdec_128 (arg0, tmp1014, tmp1016) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_impdec (tmp913, tmp1014, tmp1016) ;
break ;

/* branch: __ats_lab_190 */
__ats_lab_190_0:
// if (tmp1015 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_190_1:
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_191 */
__ats_lab_191_0:
if (((ats_sum_ptr_type)tmp928)->tag != 28) { goto __ats_lab_192_0 ; }
__ats_lab_191_1:
tmp1018 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_0) ;
tmp1019 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_1) ;
tmp1020 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_2) ;
tmp1021 = list_is_cons_01295_ (tmp1019) ;
tmp1022 = _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__funkind_is_mutailrec (tmp1018) ;
/* ats_ptr_type tmp1023 ; */
tmp1023 = tmp1018 ;
tmp1025 = atspre_mul_bool_bool (tmp1021, tmp1022) ;
if (tmp1025) {
tmp1026 = (ats_sum_ptr_type)(&_2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__FK_fun_2) ;
tmp1023 = tmp1026 ;
/* tmp1027 = */ prerr_warning2_loc_02123_ (tmp913) ;
/* tmp1028 = */ atspre_prerr_string (ATSstrcst(": [fnx] is treated as [fun] for initiating function templates!")) ;
/* tmp1024 = */ atspre_prerr_newline () ;
} else {
/* empty */
} /* end of [if] */
if (tmp1021) {
/* tmp1029 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_inc () ;
} else {
/* empty */
} /* end of [if] */
/* tmp1030 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp1031 = ats_selsin_mac(tmp1030, atslab_1) */ ;
tmp1032 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_get () ;
tmp1033 = list_map_fun_01413_ats_ptr_type_anairiats_rec_1 (tmp1019, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__q1marg_tr_dec) ;
/* tmp1034 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__s2qualstlst_set_tmplev (ats_castfn_mac(ats_ptr_type, tmp1033), tmp1032) ;
tmp1035 = f1undeclst_tr_105 (tmp1023, ats_castfn_mac(ats_ptr_type, tmp1033), tmp1020) ;
if (tmp1021) {
/* tmp1036 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_tmplev_dec () ;
} else {
/* empty */
} /* end of [if] */
/* tmp1037 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
/* tmp1038 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_fundeclst (tmp1023, tmp1035) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_fundecs (tmp913, tmp1023, ats_castfn_mac(ats_ptr_type, tmp1033), tmp1035) ;
break ;

/* branch: __ats_lab_192 */
__ats_lab_192_0:
if (((ats_sum_ptr_type)tmp928)->tag != 29) { goto __ats_lab_193_0 ; }
__ats_lab_192_1:
tmp1039 = ats_caselptrlab_mac(anairiats_sum_51, tmp928, atslab_0) ;
tmp1040 = ats_caselptrlab_mac(anairiats_sum_51, tmp928, atslab_1) ;
tmp1041 = ats_caselptrlab_mac(anairiats_sum_51, tmp928, atslab_2) ;
tmp1042 = v1aldeclst_tr_109 (tmp1040, tmp1041) ;
tmp1043 = atspre_neg_bool (tmp1040) ;
if (tmp1043) {
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_valdecs (tmp913, tmp1039, tmp1042) ;
} else {
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_valdecs_rec (tmp913, tmp1039, tmp1042) ;
} /* end of [if] */
break ;

/* branch: __ats_lab_193 */
__ats_lab_193_0:
if (((ats_sum_ptr_type)tmp928)->tag != 30) { goto __ats_lab_194_0 ; }
__ats_lab_193_1:
tmp1044 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_0) ;
tmp1045 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_1) ;
tmp1046 = atspre_eq_int_int (tmp1044, 0) ;
if (tmp1046) {
tmp1047 = v1ardeclst_tr_115 (tmp1045) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_vardecs (tmp913, tmp1047) ;
} else {
tmp1048 = prv1ardeclst_tr_121 (tmp1045) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_prvardecs (tmp913, tmp1048) ;
} /* end of [if] */
break ;

/* branch: __ats_lab_194 */
__ats_lab_194_0:
if (((ats_sum_ptr_type)tmp928)->tag != 31) { goto __ats_lab_195_0 ; }
__ats_lab_194_1:
tmp1049 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_0) ;
tmp1050 = ats_caselptrlab_mac(anairiats_sum_44, tmp928, atslab_1) ;
tmp1051 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp1050) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_include (tmp913, tmp1049, tmp1051) ;
break ;

/* branch: __ats_lab_195 */
__ats_lab_195_0:
if (((ats_sum_ptr_type)tmp928)->tag != 32) { goto __ats_lab_198_0 ; }
__ats_lab_195_1:
tmp1052 = ats_caselptrlab_mac(anairiats_sum_52, tmp928, atslab_0) ;
tmp1053 = ats_caselptrlab_mac(anairiats_sum_52, tmp928, atslab_1) ;
tmp1054 = ats_caselptrlab_mac(anairiats_sum_52, tmp928, atslab_2) ;
tmp1055 = ats_caselptrlab_mac(anairiats_sum_52, tmp928, atslab_3) ;
/* ats_int_type tmp1056 ; */
tmp1057 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taload_tr (tmp913, tmp1052, tmp1053, tmp1054, tmp1055, (&tmp1056)) ;
do {
/* branch: __ats_lab_196 */
__ats_lab_196_0:
if (tmp1052 != (ats_sum_ptr_type)0) { goto __ats_lab_197_0 ; }
__ats_lab_196_1:
tmp1059 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_get_d2eclist (tmp1057) ;
/* tmp1058 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__overload_tr_d2eclist (tmp1059) ;
break ;

/* branch: __ats_lab_197 */
__ats_lab_197_0:
// if (tmp1052 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_197_1:
break ;
} while (0) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_staload (tmp913, tmp1052, tmp1053, tmp1054, tmp1057, tmp1056) ;
break ;

/* branch: __ats_lab_198 */
__ats_lab_198_0:
if (((ats_sum_ptr_type)tmp928)->tag != 33) { goto __ats_lab_199_0 ; }
__ats_lab_198_1:
/* tmp1060 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__s1taloadnm_tr (arg0) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_none (tmp913) ;
break ;

/* branch: __ats_lab_199 */
__ats_lab_199_0:
if (((ats_sum_ptr_type)tmp928)->tag != 34) { goto __ats_lab_200_0 ; }
__ats_lab_199_1:
tmp1061 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_0) ;
tmp1062 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_1) ;
tmp1063 = ats_caselptrlab_mac(anairiats_sum_24, tmp928, atslab_2) ;
/* tmp1064 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_save () ;
/* tmp1065 = ats_selsin_mac(tmp1064, atslab_1) */ ;
tmp1066 = _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_get () ;
tmp1067 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp1063) ;
/* tmp1068 = */ _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__the_PACKNAME_set (tmp1066) ;
tmp1069 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_restore () ;
tmp1070 = ats_select_mac(tmp1069, atslab_0) ;
tmp1071 = ats_select_mac(tmp1069, atslab_1) ;
tmp1072 = ats_select_mac(tmp1069, atslab_2) ;
tmp1073 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__filenv_make (tmp1061, tmp1070, tmp1071, tmp1072, tmp1067) ;
tmp1075 = ATS_MALLOC(sizeof(anairiats_sum_9)) ;
((ats_sum_ptr_type)tmp1075)->tag = 5 ;
ats_selptrset_mac(anairiats_sum_9, tmp1075, atslab_0, tmp1073) ;
/* tmp1074 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add (tmp1062, tmp1075) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_staloadloc (tmp913, tmp1061, tmp1062, tmp1073) ;
break ;

/* branch: __ats_lab_200 */
__ats_lab_200_0:
if (((ats_sum_ptr_type)tmp928)->tag != 35) { goto __ats_lab_201_0 ; }
__ats_lab_200_1:
tmp1076 = ats_caselptrlab_mac(anairiats_sum_9, tmp928, atslab_0) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_dynload (tmp913, tmp1076) ;
break ;

/* branch: __ats_lab_201 */
__ats_lab_201_0:
// if (((ats_sum_ptr_type)tmp928)->tag != 36) { ats_deadcode_failure_handle () ; }
__ats_lab_201_1:
tmp1077 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_0) ;
tmp1078 = ats_caselptrlab_mac(anairiats_sum_5, tmp928, atslab_1) ;
/* tmp1079 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp1080 = ats_selsin_mac(tmp1079, atslab_1) */ ;
tmp1081 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp1077) ;
/* tmp1082 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp1083 = ats_selsin_mac(tmp1082, atslab_1) */ ;
tmp1084 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp1078) ;
/* tmp1085 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_localjoin () ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2ecl_local (tmp913, tmp1081, tmp1084) ;
break ;
} while (0) ;
return (tmp912) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 59933(line=2901, offs=12) -- 60029(line=2909, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp1086) ;
ATSlocal (ats_ptr_type, tmp1087) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr:
tmp1087 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1ecl_tr) ;
tmp1086 = ats_castfn_mac(ats_ptr_type, tmp1087) ;
return (tmp1086) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_decl.dats: 60106(line=2915, offs=3) -- 60216(line=2922, offs=2)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr_errck (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp1088) ;
ATSlocal (ats_ptr_type, tmp1089) ;
// ATSlocal_void (tmp1090) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr_errck:
tmp1089 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (arg0) ;
/* tmp1090 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_finalize () ;
tmp1088 = tmp1089 ;
return (tmp1088) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr_errck] */

/* static load function */

// extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_atspre_2edats__staload (void) ;
// extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_namespace_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload (void) ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__staload () {
static int _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__staload_flag = 0 ;
if (_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__staload_flag) return ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__staload_flag = 1 ;

// _2tmp_2ATS_2dPostiats_2src_2pats_atspre_2edats__staload () ;
// ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_global_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_filename_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_namespace_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_stacst2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload () ;

return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__dynload_flag ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__dynload () {
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__dynload_flag = 1 ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_decl_2edats__staload () ;

#ifdef _ATS_PROOFCHECK
ATS_2d0_2e2_2e12_2prelude_2SATS_2list_2esats__list_length_is_nonnegative_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2SATS_2list_vt_2esats__list_vt_length_is_nonnegative_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2SATS_2array_2esats__array_v_takeout2_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____copy_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____free_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2array_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* marking static variables for GC */

/* marking external values for GC */

/* code for dynamic loading */
return ;
} /* end of [dynload function] */

/* external codes at mid */
/* external codes at bot */

/* ****** ****** */

/* end of [pats_trans2_decl_dats.c] */
