/*
**
** The C code is generated by ATS/Anairiats
** The compilation time is: 2016-7-18: 22h:45m
**
*/

/* 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/integer.cats"
#include "prelude/CATS/sizetype.cats"
#include "prelude/CATS/integer_ptr.cats"
#include "prelude/CATS/integer_fixed.cats"
#include "prelude/CATS/pointer.cats"
#include "prelude/CATS/bool.cats"
#include "prelude/CATS/char.cats"
#include "prelude/CATS/byte.cats"
#include "prelude/CATS/float.cats"
#include "prelude/CATS/string.cats"
#include "prelude/CATS/reference.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_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_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_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_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_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_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_d0ynq_loc ;
ats_ptr_type atslab_d0ynq_node ;
} anairiats_rec_1 ;

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

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

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

typedef
struct {
ats_ptr_type atslab_d1exp_loc ;
ats_ptr_type atslab_d1exp_node ;
} anairiats_rec_5 ;

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

typedef struct {
ats_ptr_type atslab_0 ;
} anairiats_sum_7 ;

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

typedef
struct {
ats_ptr_type atslab_e1xp_loc ;
ats_ptr_type atslab_e1xp_node ;
} anairiats_rec_9 ;

typedef
struct {
ats_int_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
} anairiats_rec_10 ;

typedef
struct {
ats_ptr_type atslab_p2at_loc ;
ats_ptr_type atslab_p2at_svs ;
ats_ptr_type atslab_p2at_dvs ;
ats_ptr_type atslab_p2at_type ;
ats_ptr_type atslab_p2at_node ;
} anairiats_rec_11 ;

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

typedef
struct {
ats_ptr_type atslab_i1nvarg_loc ;
ats_ptr_type atslab_i1nvarg_sym ;
ats_ptr_type atslab_i1nvarg_type ;
} anairiats_rec_13 ;

typedef
struct {
ats_ptr_type atslab_i1nvresstate_qua ;
ats_ptr_type atslab_i1nvresstate_arg ;
} anairiats_rec_14 ;

typedef
struct {
ats_ptr_type atslab_loopi1nv_loc ;
ats_ptr_type atslab_loopi1nv_qua ;
ats_ptr_type atslab_loopi1nv_met ;
ats_ptr_type atslab_loopi1nv_arg ;
ats_ptr_type atslab_loopi1nv_res ;
} anairiats_rec_15 ;

typedef
struct {
ats_ptr_type atslab_i1fcl_loc ;
ats_ptr_type atslab_i1fcl_test ;
ats_ptr_type atslab_i1fcl_body ;
} anairiats_rec_16 ;

typedef
struct {
ats_ptr_type atslab_gm1at_loc ;
ats_ptr_type atslab_gm1at_exp ;
ats_ptr_type atslab_gm1at_pat ;
} anairiats_rec_17 ;

typedef
struct {
ats_ptr_type atslab_c1lau_loc ;
ats_ptr_type atslab_c1lau_pat ;
ats_ptr_type atslab_c1lau_gua ;
ats_int_type atslab_c1lau_seq ;
ats_int_type atslab_c1lau_neg ;
ats_ptr_type atslab_c1lau_body ;
} anairiats_rec_18 ;

typedef
struct {
ats_ptr_type atslab_p1at_loc ;
ats_ptr_type atslab_p1at_node ;
} anairiats_rec_19 ;

typedef
struct {
ats_ptr_type atslab_sc1lau_loc ;
ats_ptr_type atslab_sc1lau_pat ;
ats_ptr_type atslab_sc1lau_body ;
} anairiats_rec_20 ;

typedef
struct {
ats_ptr_type atslab_sc2lau_loc ;
ats_ptr_type atslab_sc2lau_pat ;
ats_ptr_type atslab_sc2lau_body ;
} anairiats_rec_21 ;

typedef
struct {
ats_ptr_type atslab_sp2at_loc ;
ats_ptr_type atslab_sp2at_exp ;
ats_ptr_type atslab_sp2at_node ;
} anairiats_rec_22 ;

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

typedef struct {
int tag ;
ats_bool_type atslab_0 ;
} anairiats_sum_24 ;

typedef struct {
int tag ;
ats_char_type atslab_0 ;
} anairiats_sum_25 ;

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

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

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

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_29 ;

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

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

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

typedef
struct {
ats_ptr_type atslab_d2exp_loc ;
ats_ptr_type atslab_d2exp_node ;
ats_ptr_type atslab_d2exp_type ;
} anairiats_rec_33 ;

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

typedef struct {
int tag ;
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
ats_ptr_type atslab_2 ;
ats_ptr_type atslab_3 ;
ats_ptr_type atslab_4 ;
} anairiats_sum_35 ;

typedef
struct {
ats_ptr_type atslab_d1lab_loc ;
ats_ptr_type atslab_d1lab_node ;
} anairiats_rec_36 ;

/* 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, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKencode_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKdecode_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKxstage_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0YNQnone_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__DL0ABELED_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__E1XPfun_10) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__WTHS1EXPLSTnil_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__P1Tlist_14) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1LABlab_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1LABind_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eide_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edqid_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eidextapp_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eint_3) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eintrep_4) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ebool_5) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Echar_6) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efloat_7) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Estring_8) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ei0nt_9) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ec0har_10) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ef0loat_11) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Es0tring_12) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etop_13) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eempty_14) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ecstsp_15) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eliteral_16) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextval_17) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextfcall_18) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextmcall_19) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efoldat_20) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efreeat_21) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etmpid_22) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elet_23) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ewhere_24) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edecseq_25) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eapp_dyn_26) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eapp_sta_27) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esing_28) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elist_29) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eifhead_30) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esifhead_31) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eifcasehd_32) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ecasehead_33) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Escasehead_34) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elst_35) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etup_36) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Erec_37) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eseq_38) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrsub_39) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrinit_40) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrpsz_41) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eptrof_42) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eviewat_43) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eselab_44) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eraise_45) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eeffmask_46) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eshowtype_47) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Evcopyenv_48) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etempenver_49) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esexparg_50) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eexist_51) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_dyn_52) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elaminit_dyn_53) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_met_54) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_sta_syn_56) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efix_57) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edelay_58) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efor_59) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ewhile_60) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eloopexn_61) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etrywith_62) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_type_63) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_effc_64) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_funclo_65) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Emacsyn_66) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Emacfun_67) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esolassert_68) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esolverify_69) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eerrexp_70) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTBASdef_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTbas_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__SP2Tcon_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__SP2Terr_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMcst_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMvar_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMcon_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMe1xp_3) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMsymdef_4) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMmacdef_5) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMmacvar_6) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__P2Tlist_18) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Ecst_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Evar_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Etmpid_24) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Esing_33) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Elist_34) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Eselab_39) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_S1Ed2ctype_tr_8) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_sort_13) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_repeat_14) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_missing_15) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_macdef_check_24) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_macvar_check_25) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1exp_tr_27) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_i1nvarg_tr_29) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_c1lau_tr_30) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3) ;

/* external dynamic constant declarations */
ATSextern_fun(ats_void_type, atspre_vbox_make_view_ptr) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_print_newline) () ;
ATSextern_fun(ats_void_type, atspre_prerr_newline) () ;
ATSextern_fun(ats_bool_type, atspre_neg_bool) (ats_bool_type) ;
ATSextern_fun(ats_bool_type, atspre_lt_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_bool_type, atspre_gt_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_bool_type, atspre_neq_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_int_type, atspre_compare_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_void_type, atspre_fprint_char) (ats_ptr_type, ats_char_type) ;
ATSextern_fun(ats_bool_type, atspre_char_isdigit) (ats_char_type) ;
ATSextern_fun(ats_char_type, atspre_char_toupper) (ats_char_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_char_char) (ats_char_type, ats_char_type) ;
ATSextern_fun(ats_int_type, atspre_add_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_sub_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_bool_type, atspre_neq_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_uint_type, atspre_add_uint_uint) (ats_uint_type, ats_uint_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_llint_type, atspre_llint_of_int) (ats_int_type) ;
ATSextern_fun(ats_llint_type, atspre_mul_llint_llint) (ats_llint_type, ats_llint_type) ;
ATSextern_fun(ats_size_type, atspre_sub_size_size) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_gte_size_size) (ats_size_type, ats_size_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_sub_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_size_type, atspre_mul_size1_size1) (ats_size_type, ats_size_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_gt_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_neq_size1_size1) (ats_size_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, ats_malloc_gc) (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_bytes_strbuf_trans) (ats_ptr_type, ats_size_type) ;
ATSextern_fun(ats_bool_type, atspre_eq_string_string) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_fprint_string) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_print_string) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_prerr_string) (ats_ptr_type) ;
ATSextern_fun(ats_char_type, atspre_string_get_char_at) (ats_ptr_type, ats_size_type) ;
ATSextern_fun(ats_char_type, atspre_string_get_char_at__intsz) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, atspre_string_copy) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, atspre_string_contains) (ats_ptr_type, ats_char_type) ;
ATSextern_fun(ats_size_type, atspre_string_length) (ats_ptr_type) ;
ATSextern_fun(ats_size_type, atspre_string_length) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, atspre_string_isnot_empty) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, atspre_string_isnot_atend) (ats_ptr_type, ats_size_type) ;
ATSextern_val(ats_ptr_type, atspre_stropt_none) ;
ATSextern_fun(ats_bool_type, atspre_stropt_is_some) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, atspre_strptr_free) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, atspre_tostringf) (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, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__charset_listize) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, patsopt_file2strptr) (ats_int_type) ;
ATSextern_fun(ats_size_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_cap) (ats_ref_type) ;
ATSextern_fun(ats_size_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_size) (ats_ref_type) ;
ATSextern_fun(ats_bool_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_is_empty) (ats_ref_type) ;
ATSextern_fun(ats_bool_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_isnot_empty) (ats_ref_type) ;
ATSextern_fun(ats_bool_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_is_full) (ats_ref_type) ;
ATSextern_fun(ats_bool_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_isnot_full) (ats_ref_type) ;
ATSextern_fun(ats_void_type, atslib_ngc_deque_arr_deque_initialize_tsz) (ats_ref_type, ats_size_type, ats_ptr_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, atslib_ngc_deque_arr_deque_uninitialize) (ats_ref_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_uninitialize_vt) (ats_ref_type) ;
ATSextern_fun(ats_ptr_type, atslib_ngc_deque_arr_deque_takeout_tsz) (ats_ref_type, ats_size_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atslib_ngc_deque_arr_deque_insert_end_many_tsz) (ats_ref_type, ats_size_type, ats_ref_type, ats_size_type) ;
ATSextern_fun(ats_void_type, atslib_ngc_deque_arr_deque_remove_beg_many_tsz) (ats_ref_type, ats_size_type, ats_ref_type, ats_size_type) ;
ATSextern_fun(ats_void_type, ATS_2d0_2e2_2e12_2libats_2ngc_2SATS_2deque_arr_2esats__deque_clear_all) (ats_ref_type) ;
ATSextern_fun(ats_void_type, atslib_ngc_deque_arr_deque_copyout_tsz) (ats_ref_type, ats_size_type, ats_size_type, ats_ref_type, ats_size_type) ;
ATSextern_fun(ats_ptr_type, atslib_ngc_deque_arr_deque_update_capacity_tsz) (ats_ref_type, ats_size_type, ats_ptr_type, ats_size_type) ;
ATSextern_fun(ats_varet_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr) () ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQ) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQCOLON) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS) ;
ATSextern_fun(ats_bool_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__location_rightmost) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, patsopt_prerrf_ifdebug) (ats_ptr_type, ...) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_dotize) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__d0ynq_none) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__e1xp_app) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_is_none) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_reverse) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__e1xp_normalize) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__e1xp_make_d1exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_get_sconlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype) ;
ATSextern_val(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype) ;
ATSextern_fun(ats_int_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dstag) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2cst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_decarg) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_tmpcst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_int_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2at_any) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2exp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_int) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_intrep) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_char) (ats_ptr_type, ats_char_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_float) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_string) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_i0nt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_c0har) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_f0loat) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_s0tring) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_top) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cstsp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_literal) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extval) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extfcall) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extmcall) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_con) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_loopexn) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_foldat) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_freeat) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tmpid) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_where) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_dyn) (ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifhead) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sifhead) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifcasehd) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_casehead) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_scasehead) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sing) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_list) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lst) (ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tup) (ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_rec) (ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_seq2) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_deref) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_assgn) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_xchng) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrsub) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrpsz) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrinit) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ptrof) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_viewat) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_ptr) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_raise) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_effmask) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_showtype) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vcopyenv) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tempenver) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_exist) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_dyn) (ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_laminit_dyn) (ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_met_new) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_sta) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_fix) (ats_ptr_type, ats_int_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_delay) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_while) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_for) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_trywith) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macfun) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solassert) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solverify) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__labd2exp_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_lab) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_ind) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvarg_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvresstate_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__loopi2nv_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2fcl_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__gm2at_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__c2lau_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__sc2lau_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sp1at_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1expopt_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_bool) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_t0ype) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_int) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_res_impred) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(anairiats_rec_2, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparg_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__t1mpmarglst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1atlst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr_arg) (ats_ptr_type, ats_ref_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_sp2at) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil) () ;
ATSextern_fun(ats_int_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_inc) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_dec) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pop_free) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_push_nil) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun) (ats_ptr_type) ;
ATSextern_fun(anairiats_rec_3, patsopt_s2exp_tmp_instantiate_tmpmarglst) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ref_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 () ;
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_2libats_2ngc_2SATS_2deque_arr_2esats__lemma_deque_param_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_encode_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_decode_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_clear_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_insert_beg_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_insert_end_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_remove_beg_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_remove_end_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
extern
ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
extern
ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* assuming abstract types */
/* sum constructor declarations */
ATSglobal(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
ATSglobal(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1) ;
ATSglobal(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2) ;
ATSglobal(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3) ;

/* exn constructor declarations */
/* global dynamic (non-functional) constant declarations */
/* internal function declarations */
static
ats_void_type prerr_FILENAME_02391_ () ;
static
ats_ptr_type dynspecid_of_dqid_1 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type prerr_ERROR_beg_02389_ () ;
static
ats_void_type prerr_error2_loc_02395_ (ats_ptr_type arg0) ;
static
ats_void_type prerr_ERROR_end_02390_ () ;
static
ats_void_type macdef_check_2 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type macvar_check_6 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type auxerr_8 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type d1exp_tr_dqid_7 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type prerr_interror_loc_02393_ (ats_ptr_type arg0) ;
static
ats_ptr_type d1exp_tr_app_dyn_dqid_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_int_type arg5, ats_ptr_type arg6) ;
static
ats_ptr_type __ats_fun_17 (ats_ptr_type env0, ats_ptr_type arg0) ;
static
ats_clo_ptr_type __ats_fun_17_closure_make (ats_ptr_type env0) ;
static
ats_ptr_type __ats_fun_17_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_ptr_type app_19 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type loop_21 (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_vclo_01414_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_ptr_type d1exp_tr_app_dyn_e1xp_14 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_ptr_type arg5) ;
static
ats_ptr_type d1exp_tr_app_sta_dyn_dqid_15 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5, ats_ptr_type arg6, ats_int_type arg7, ats_ptr_type arg8) ;
static
ats_int_type loop_23 (ats_ptr_type arg0, ats_int_type arg1) ;
static
ats_int_type list_length_01410_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_ptr_type d1exp_tr_app_sta_dyn_dqid_itm_16 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5, ats_ptr_type arg6, ats_ptr_type arg7, ats_int_type arg8, ats_ptr_type arg9) ;
static
ats_ptr_type d2sym_lrbrackets_28 (ats_ptr_type arg0) ;
static
ats_ptr_type d1exp_tr_arrsub_29 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type d1exp_tr_wths1explst_30 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
anairiats_rec_10 d1exp_tr_arg_body_31 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type d1exp_tr_delay_32 (ats_ptr_type arg0) ;
static
ats_void_type auxerr1_34 (ats_ptr_type arg0) ;
static
ats_void_type auxerr2_35 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvarg_tr_33 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvarglst_tr_36 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvresstate_tr_37 (ats_ptr_type arg0) ;
static
ats_ptr_type loopi1nv_tr_38 (ats_ptr_type arg0) ;
static
ats_ptr_type i1fcl_tr_39 (ats_ptr_type arg0) ;
static
ats_ptr_type i1fclist_tr_40 (ats_ptr_type arg0) ;
static
ats_ptr_type gm1at_tr_41 (ats_ptr_type arg0) ;
static
ats_void_type auxerr_43 (ats_ptr_type arg0, ats_int_type arg1, ats_int_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 c1lau_tr_42 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type c1laulst_tr_45 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type sc1lau_trdn_46 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type sc1laulst_trdn_47 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_int_type sc2lau_get_dstag_48 (ats_ptr_type arg0) ;
static
ats_void_type auxerr_lt_49 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr_gts_50 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2, ats_int_type arg3) ;
static
ats_void_type loop_54 (ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_ptr_type list_copy_01322_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_int_type __ats_fun_55 (ats_ref_type arg0, ats_ref_type arg1) ;
static
ats_clo_ptr_type __ats_fun_55_closure_make () ;
static
ats_int_type __ats_fun_55_clofun (ats_clo_ptr_type cloptr, ats_ref_type arg0, ats_ref_type arg1) ;
static
ats_void_type split_57 (ats_ref_type arg0, ats_int_type arg1, ats_ref_type arg2) ;
static
ats_void_type merge_58 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ref_type arg3) ;
static
ats_int_type loop_60 (ats_ptr_type arg0, ats_int_type arg1) ;
static
ats_int_type list_vt_length_01501_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_ptr_type list_vt_mergesort_01524_ats_ptr_type (ats_ptr_type arg0, ats_ref_type arg1) ;
static
ats_void_type auxmain1_51 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type loop_61 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3) ;
static
ats_void_type auxmain2_52 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr1_63 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr2_64 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type un_d1exp_sing_65 (ats_ptr_type arg0) ;
static
ats_void_type loop_68 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) ;
static
ats_ptr_type list_extend_01337_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type auxlst_69 (ats_ptr_type arg0) ;
static
ats_ptr_type auxlst2_70 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr_cst_76 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type arg0) ;
static
ats_clo_ptr_type auxerr_cst_76_closure_make (ats_ptr_type env0, ats_ptr_type env1) ;
static
ats_void_type auxerr_cst_76_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_void_type auxerr1_tmpid_77 (ats_ptr_type arg0) ;
static
ats_clo_ptr_type auxerr1_tmpid_77_closure_make () ;
static
ats_void_type auxerr1_tmpid_77_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_void_type auxerr2_tmpid_78 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_clo_ptr_type auxerr2_tmpid_78_closure_make (ats_ptr_type env0) ;
static
ats_void_type auxerr2_tmpid_78_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_int_type list_length_compare_01411_ats_ptr_type_2cats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;

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

/* function implementations */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 1771(line=59, offs=18) -- 1802(line=59, offs=49)
*/
ATSstaticdec()
ats_void_type
prerr_FILENAME_02391_ () {
/* local vardec */
// ATSlocal_void (tmp0) ;

__ats_lab_prerr_FILENAME_02391_:
/* tmp0 = */ atspre_prerr_string (ATSstrcst("pats_trans2_dynexp")) ;
return /* (tmp0) */ ;
} /* end of [prerr_FILENAME_02391_] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 3118(line=140, offs=1) -- 3524(line=158, offs=4)
*/
ATSstaticdec()
ats_ptr_type
dynspecid_of_dqid_1 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_bool_type, tmp3) ;
ATSlocal (ats_bool_type, tmp4) ;
ATSlocal (ats_bool_type, tmp5) ;

__ats_lab_dynspecid_of_dqid_1:
tmp2 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_1, arg0), atslab_d0ynq_node) ;
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (((ats_sum_ptr_type)tmp2)->tag != 0) { goto __ats_lab_5_0 ; }
__ats_lab_0_1:
do {
/* branch: __ats_lab_1 */
__ats_lab_1_0:
__ats_lab_1_1:
tmp3 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (arg1, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG) ;
if (!tmp3) { goto __ats_lab_2_1 ; }
tmp1 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
break ;

/* branch: __ats_lab_2 */
__ats_lab_2_0:
__ats_lab_2_1:
tmp4 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (arg1, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQ) ;
if (!tmp4) { goto __ats_lab_3_1 ; }
tmp1 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1) ;
break ;

/* branch: __ats_lab_3 */
__ats_lab_3_0:
__ats_lab_3_1:
tmp5 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (arg1, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQCOLON) ;
if (!tmp5) { goto __ats_lab_4_1 ; }
tmp1 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2) ;
break ;

/* branch: __ats_lab_4 */
__ats_lab_4_0:
__ats_lab_4_1:
tmp1 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_5 */
__ats_lab_5_0:
__ats_lab_5_1:
tmp1 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3) ;
break ;
} while (0) ;
return (tmp1) ;
} /* end of [dynspecid_of_dqid_1] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_errmsg.dats: 1470(line=41, offs=16) -- 1507(line=41, offs=53)
*/
ATSstaticdec()
ats_void_type
prerr_ERROR_beg_02389_ () {
/* local vardec */
// ATSlocal_void (tmp12) ;

__ats_lab_prerr_ERROR_beg_02389_:
/* tmp12 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):beg**\n")) ;
return /* (tmp12) */ ;
} /* end of [prerr_ERROR_beg_02389_] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_errmsg.dats: 2096(line=71, offs=18) -- 2155(line=74, offs=2)
*/
ATSstaticdec()
ats_void_type
prerr_error2_loc_02395_ (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp14) ;
// ATSlocal_void (tmp15) ;

__ats_lab_prerr_error2_loc_02395_:
/* tmp15 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp14 = */ atspre_prerr_string (ATSstrcst(": error(2)")) ;
return /* (tmp14) */ ;
} /* end of [prerr_error2_loc_02395_] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_errmsg.dats: 1536(line=43, offs=16) -- 1573(line=43, offs=53)
*/
ATSstaticdec()
ats_void_type
prerr_ERROR_end_02390_ () {
/* local vardec */
// ATSlocal_void (tmp22) ;

__ats_lab_prerr_ERROR_end_02390_:
/* tmp22 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):end**\n")) ;
return /* (tmp22) */ ;
} /* end of [prerr_ERROR_end_02390_] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 3581(line=163, offs=1) -- 4583(line=202, offs=4)
*/
ATSstaticdec()
ats_void_type
macdef_check_2 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp6) ;
ATSlocal (ats_int_type, tmp7) ;
ATSlocal (ats_int_type, tmp8) ;
ATSlocal (ats_bool_type, tmp9) ;
ATSlocal (ats_bool_type, tmp10) ;
// ATSlocal_void (tmp11) ;
// ATSlocal_void (tmp13) ;
// ATSlocal_void (tmp16) ;
// ATSlocal_void (tmp17) ;
// ATSlocal_void (tmp18) ;
// ATSlocal_void (tmp19) ;
// ATSlocal_void (tmp20) ;
// ATSlocal_void (tmp21) ;
ATSlocal (ats_ptr_type, tmp23) ;
ATSlocal (ats_bool_type, tmp24) ;
// ATSlocal_void (tmp25) ;
// ATSlocal_void (tmp26) ;
// ATSlocal_void (tmp27) ;
// ATSlocal_void (tmp28) ;
// ATSlocal_void (tmp29) ;
// ATSlocal_void (tmp30) ;
// ATSlocal_void (tmp31) ;
// ATSlocal_void (tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;

__ats_lab_macdef_check_2:
tmp7 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get () ;
tmp8 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind (arg1) ;
tmp9 = atspre_gt_int_int (tmp7, 0) ;
if (tmp9) {
tmp10 = atspre_gte_int_int (tmp8, 1) ;
if (tmp10) {
/* tmp11 = */ prerr_ERROR_beg_02389_ () ;
/* tmp13 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp16 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp17 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp18 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp19 = */ atspre_prerr_string (ATSstrcst("] refers to a macdef in long form but one in short form is expected.")) ;
/* tmp20 = */ atspre_prerr_newline () ;
/* tmp21 = */ prerr_ERROR_end_02390_ () ;
tmp23 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp23)->tag = 24 ;
ats_selptrset_mac(anairiats_sum_4, tmp23, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp23, atslab_1, arg1) ;
/* tmp6 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp23) ;
} else {
/* empty */
} /* end of [if] */
} else {
tmp24 = atspre_eq_int_int (tmp8, 0) ;
if (tmp24) {
/* tmp25 = */ prerr_ERROR_beg_02389_ () ;
/* tmp26 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp27 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp28 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp29 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp30 = */ atspre_prerr_string (ATSstrcst("] refers to a macdef in short form but one in long form is expected.")) ;
/* tmp31 = */ atspre_prerr_newline () ;
/* tmp32 = */ prerr_ERROR_end_02390_ () ;
tmp33 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp33)->tag = 24 ;
ats_selptrset_mac(anairiats_sum_4, tmp33, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp33, atslab_1, arg1) ;
/* tmp6 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp33) ;
} else {
/* empty */
} /* end of [if] */
} /* end of [if] */
return /* (tmp6) */ ;
} /* end of [macdef_check_2] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 4617(line=204, offs=5) -- 5043(line=221, offs=4)
*/
ATSstaticdec()
ats_void_type
macvar_check_6 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp34) ;
ATSlocal (ats_int_type, tmp35) ;
ATSlocal (ats_bool_type, tmp36) ;
// ATSlocal_void (tmp37) ;
// ATSlocal_void (tmp38) ;
// ATSlocal_void (tmp39) ;
// ATSlocal_void (tmp40) ;
// ATSlocal_void (tmp41) ;
// ATSlocal_void (tmp42) ;
ATSlocal (ats_ptr_type, tmp43) ;

__ats_lab_macvar_check_6:
tmp35 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get () ;
tmp36 = atspre_gt_int_int (tmp35, 0) ;
if (tmp36) {
/* tmp37 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp38 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp39 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp40 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp41 = */ atspre_prerr_string (ATSstrcst("] refers incorrectly to a macro argument variable.")) ;
/* tmp42 = */ atspre_prerr_newline () ;
tmp43 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp43)->tag = 25 ;
ats_selptrset_mac(anairiats_sum_4, tmp43, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp43, atslab_1, arg1) ;
/* tmp34 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp43) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp34) */ ;
} /* end of [macvar_check_6] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 5171(line=232, offs=1) -- 5521(line=245, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr_8 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp45) ;
// ATSlocal_void (tmp46) ;
ATSlocal (ats_ptr_type, tmp47) ;
// ATSlocal_void (tmp48) ;
// ATSlocal_void (tmp49) ;
// ATSlocal_void (tmp50) ;
// ATSlocal_void (tmp51) ;
// ATSlocal_void (tmp52) ;
// ATSlocal_void (tmp53) ;
ATSlocal (ats_ptr_type, tmp54) ;

__ats_lab_auxerr_8:
tmp47 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
/* tmp46 = */ prerr_error2_loc_02395_ (tmp47) ;
/* tmp48 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_dqid")) ;
/* tmp49 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp50 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg1) ;
/* tmp51 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp52 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp53 = */ atspre_prerr_newline () ;
tmp54 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp54)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp54, atslab_0, arg0) ;
/* tmp45 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp54) ;
return /* (tmp45) */ ;
} /* end of [auxerr_8] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 5095(line=226, offs=1) -- 7096(line=308, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_dqid_7 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp55) ;
ATSlocal (ats_ptr_type, tmp56) ;
ATSlocal (ats_ptr_type, tmp57) ;
ATSlocal (ats_ptr_type, tmp58) ;
ATSlocal (ats_ptr_type, tmp59) ;
ATSlocal (ats_ptr_type, tmp60) ;
ATSlocal (ats_ptr_type, tmp61) ;
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 (ats_ptr_type, tmp68) ;
ATSlocal (ats_ptr_type, tmp69) ;
ATSlocal (ats_ptr_type, tmp70) ;
// ATSlocal_void (tmp71) ;
ATSlocal (ats_ptr_type, tmp72) ;
// ATSlocal_void (tmp73) ;
// ATSlocal_void (tmp74) ;

__ats_lab_d1exp_tr_dqid_7:
tmp55 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp56 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg1, arg2) ;
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (tmp56 == (ats_sum_ptr_type)0) { goto __ats_lab_14_0 ; }
__ats_lab_6_1:
tmp57 = ats_caselptrlab_mac(anairiats_sum_7, tmp56, atslab_0) ;
ATS_FREE(tmp56) ;
do {
/* branch: __ats_lab_7 */
__ats_lab_7_0:
if (((ats_sum_ptr_type)tmp57)->tag != 0) { goto __ats_lab_8_0 ; }
__ats_lab_7_1:
tmp58 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst (tmp55, tmp58) ;
break ;

/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (((ats_sum_ptr_type)tmp57)->tag != 1) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
tmp59 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp55, tmp59) ;
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
if (((ats_sum_ptr_type)tmp57)->tag != 2) { goto __ats_lab_10_0 ; }
__ats_lab_9_1:
tmp60 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
tmp61 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity (tmp60, 0) ;
if (tmp61 == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 5846(line=261, offs=11) -- 5871(line=261, offs=36)") ; }
tmp62 = ats_caselptrlab_mac(anairiats_sum_8, tmp61, atslab_0) ;
tmp63 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__location_rightmost (tmp55) ;
tmp64 = (ats_sum_ptr_type)0 ;
tmp65 = (ats_sum_ptr_type)0 ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_con (tmp55, tmp62, tmp55, tmp64, -1, tmp63, tmp65) ;
break ;

/* branch: __ats_lab_10 */
__ats_lab_10_0:
if (((ats_sum_ptr_type)tmp57)->tag != 3) { goto __ats_lab_11_0 ; }
__ats_lab_10_1:
tmp66 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
tmp67 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp55, tmp66) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp67) ;
break ;

/* branch: __ats_lab_11 */
__ats_lab_11_0:
if (((ats_sum_ptr_type)tmp57)->tag != 4) { goto __ats_lab_12_0 ; }
__ats_lab_11_1:
tmp68 = ats_caselptrlab_mac(anairiats_sum_4, tmp57, atslab_1) ;
tmp69 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp55, arg1, arg2, tmp68) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym (tmp55, tmp69) ;
break ;

/* branch: __ats_lab_12 */
__ats_lab_12_0:
if (((ats_sum_ptr_type)tmp57)->tag != 5) { goto __ats_lab_13_0 ; }
__ats_lab_12_1:
tmp70 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
/* tmp71 = */ macdef_check_2 (tmp55, tmp70, arg1, arg2) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac (tmp55, tmp70) ;
break ;

/* branch: __ats_lab_13 */
__ats_lab_13_0:
// if (((ats_sum_ptr_type)tmp57)->tag != 6) { ats_deadcode_failure_handle () ; }
__ats_lab_13_1:
tmp72 = ats_caselptrlab_mac(anairiats_sum_6, tmp57, atslab_0) ;
/* tmp73 = */ macvar_check_6 (tmp55, tmp72, arg1, arg2) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp55, tmp72) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_14 */
__ats_lab_14_0:
// if (tmp56 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_14_1:
/* tmp74 = */ auxerr_8 (arg0, arg1, arg2) ;
tmp44 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp55) ;
break ;
} while (0) ;
return (tmp44) ;
} /* end of [d1exp_tr_dqid_7] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_errmsg.dats: 1754(line=55, offs=20) -- 1894(line=61, offs=2)
*/
ATSstaticdec()
ats_void_type
prerr_interror_loc_02393_ (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp81) ;
// ATSlocal_void (tmp82) ;
// ATSlocal_void (tmp83) ;
// ATSlocal_void (tmp84) ;

__ats_lab_prerr_interror_loc_02393_:
/* tmp82 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp83 = */ atspre_prerr_string (ATSstrcst(": INTERROR(")) ;
/* tmp84 = */ prerr_FILENAME_02391_ () ;
/* tmp81 = */ atspre_prerr_string (ATSstrcst(")")) ;
return /* (tmp81) */ ;
} /* end of [prerr_interror_loc_02393_] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 7768(line=345, offs=3) -- 8107(line=358, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp75) ;
ATSlocal (ats_ptr_type, tmp76) ;
ATSlocal (ats_ptr_type, tmp77) ;
ATSlocal (ats_ptr_type, tmp78) ;
ATSlocal (ats_ptr_type, tmp79) ;
// ATSlocal_void (tmp80) ;
// ATSlocal_void (tmp85) ;
// ATSlocal_void (tmp86) ;
// ATSlocal_void (tmp87) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref:
tmp76 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_15 */
__ats_lab_15_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_16_0 ; }
tmp77 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp77 != (ats_sum_ptr_type)0) { goto __ats_lab_16_0 ; }
__ats_lab_15_1:
tmp78 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp79 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp78) ;
tmp75 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_deref (tmp76, tmp79) ;
break ;

/* branch: __ats_lab_16 */
__ats_lab_16_0:
__ats_lab_16_1:
/* tmp80 = */ prerr_interror_loc_02393_ (tmp76) ;
/* tmp85 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_deref: d1e0 = ")) ;
/* tmp86 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp87 = */ atspre_prerr_newline () ;
/* tmp75 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp75) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 8163(line=362, offs=3) -- 8563(line=377, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp88) ;
ATSlocal (ats_ptr_type, tmp89) ;
ATSlocal (ats_ptr_type, tmp90) ;
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_void (tmp96) ;
// ATSlocal_void (tmp97) ;
// ATSlocal_void (tmp98) ;
// ATSlocal_void (tmp99) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn:
tmp89 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_17 */
__ats_lab_17_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_18_0 ; }
tmp90 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp90 == (ats_sum_ptr_type)0) { goto __ats_lab_18_0 ; }
tmp91 = ats_caselptrlab_mac(anairiats_sum_8, tmp90, atslab_1) ;
if (tmp91 != (ats_sum_ptr_type)0) { goto __ats_lab_18_0 ; }
__ats_lab_17_1:
tmp92 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp93 = ats_caselptrlab_mac(anairiats_sum_8, tmp90, atslab_0) ;
tmp94 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp92) ;
tmp95 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp93) ;
tmp88 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_assgn (tmp89, tmp94, tmp95) ;
break ;

/* branch: __ats_lab_18 */
__ats_lab_18_0:
__ats_lab_18_1:
/* tmp96 = */ prerr_interror_loc_02393_ (tmp89) ;
/* tmp97 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_assgn: d1e0 = ")) ;
/* tmp98 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp99 = */ atspre_prerr_newline () ;
/* tmp88 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp88) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 8619(line=381, offs=3) -- 9019(line=396, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp100) ;
ATSlocal (ats_ptr_type, tmp101) ;
ATSlocal (ats_ptr_type, tmp102) ;
ATSlocal (ats_ptr_type, tmp103) ;
ATSlocal (ats_ptr_type, tmp104) ;
ATSlocal (ats_ptr_type, tmp105) ;
ATSlocal (ats_ptr_type, tmp106) ;
ATSlocal (ats_ptr_type, tmp107) ;
// ATSlocal_void (tmp108) ;
// ATSlocal_void (tmp109) ;
// ATSlocal_void (tmp110) ;
// ATSlocal_void (tmp111) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng:
tmp101 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_19 */
__ats_lab_19_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_20_0 ; }
tmp102 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp102 == (ats_sum_ptr_type)0) { goto __ats_lab_20_0 ; }
tmp103 = ats_caselptrlab_mac(anairiats_sum_8, tmp102, atslab_1) ;
if (tmp103 != (ats_sum_ptr_type)0) { goto __ats_lab_20_0 ; }
__ats_lab_19_1:
tmp104 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp105 = ats_caselptrlab_mac(anairiats_sum_8, tmp102, atslab_0) ;
tmp106 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp104) ;
tmp107 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp105) ;
tmp100 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_xchng (tmp101, tmp106, tmp107) ;
break ;

/* branch: __ats_lab_20 */
__ats_lab_20_0:
__ats_lab_20_1:
/* tmp108 = */ prerr_interror_loc_02393_ (tmp101) ;
/* tmp109 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_xchng: d1e0 = ")) ;
/* tmp110 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp111 = */ atspre_prerr_newline () ;
/* tmp100 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp100) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 9073(line=401, offs=1) -- 10368(line=444, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_dyn_dqid_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_int_type arg5, ats_ptr_type arg6) {
/* local vardec */
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_void (tmp118) ;
ATSlocal (ats_ptr_type, tmp119) ;
// ATSlocal_void (tmp120) ;
// ATSlocal_void (tmp121) ;
// ATSlocal_void (tmp122) ;
// ATSlocal_void (tmp123) ;
// ATSlocal_void (tmp124) ;
// ATSlocal_void (tmp125) ;
// ATSlocal_void (tmp126) ;
ATSlocal (ats_ptr_type, tmp127) ;
ATSlocal (ats_ptr_type, tmp128) ;

__ats_lab_d1exp_tr_app_dyn_dqid_13:
tmp113 = dynspecid_of_dqid_1 (arg2, arg3) ;
do {
/* branch: __ats_lab_21 */
__ats_lab_21_0:
if (((ats_sum_ptr_type)tmp113)->tag != 0) { goto __ats_lab_22_0 ; }
__ats_lab_21_1:
tmp112 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref (arg0, arg6) ;
break ;

/* branch: __ats_lab_22 */
__ats_lab_22_0:
if (((ats_sum_ptr_type)tmp113)->tag != 1) { goto __ats_lab_23_0 ; }
__ats_lab_22_1:
tmp112 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn (arg0, arg6) ;
break ;

/* branch: __ats_lab_23 */
__ats_lab_23_0:
if (((ats_sum_ptr_type)tmp113)->tag != 2) { goto __ats_lab_24_0 ; }
__ats_lab_23_1:
tmp112 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng (arg0, arg6) ;
break ;

/* branch: __ats_lab_24 */
__ats_lab_24_0:
__ats_lab_24_1:
tmp114 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg2, arg3) ;
do {
/* branch: __ats_lab_25 */
__ats_lab_25_0:
if (tmp114 == (ats_sum_ptr_type)0) { goto __ats_lab_28_0 ; }
__ats_lab_25_1:
tmp115 = ats_caselptrlab_mac(anairiats_sum_7, tmp114, atslab_0) ;
ATS_FREE(tmp114) ;
do {
/* branch: __ats_lab_26 */
__ats_lab_26_0:
if (((ats_sum_ptr_type)tmp115)->tag != 3) { goto __ats_lab_27_0 ; }
__ats_lab_26_1:
tmp116 = ats_caselptrlab_mac(anairiats_sum_6, tmp115, atslab_0) ;
tmp112 = d1exp_tr_app_dyn_e1xp_14 (arg0, arg1, tmp116, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_27 */
__ats_lab_27_0:
__ats_lab_27_1:
tmp117 = (ats_sum_ptr_type)0 ;
tmp112 = d1exp_tr_app_sta_dyn_dqid_itm_16 (arg0, arg1, arg1, arg2, arg3, tmp115, tmp117, arg4, arg5, arg6) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_28 */
__ats_lab_28_0:
// if (tmp114 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_28_1:
tmp119 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_loc) ;
/* tmp118 = */ prerr_error2_loc_02395_ (tmp119) ;
/* tmp120 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_dyn_dqid")) ;
/* tmp121 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp122 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp123 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp124 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp125 = */ atspre_prerr_newline () ;
tmp127 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp127)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp127, atslab_0, arg0) ;
/* tmp126 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp127) ;
tmp128 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp112 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp128) ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp112) ;
} /* end of [d1exp_tr_app_dyn_dqid_13] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 10799(line=469, offs=20) -- 10867(line=469, offs=88)
*/
ATSstaticdec()
ats_ptr_type
__ats_fun_17 (ats_ptr_type env0, ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp133) ;

__ats_lab___ats_fun_17:
tmp133 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__e1xp_make_d1exp (env0, arg0) ;
return (tmp133) ;
} /* end of [__ats_fun_17] */

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

ats_ptr_type
__ats_fun_17_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
return __ats_fun_17 (((__ats_fun_17_closure_type*)cloptr)->closure_env_0, arg0) ;
} /* end of function */

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

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 53639(line=1919, offs=6) -- 53788(line=1925, offs=6)
*/
ATSstaticdec()
ats_ptr_type
app_19 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp137) ;

__ats_lab_app_19:
tmp137 = ((ats_ptr_type(*)(ats_clo_ptr_type, ats_ptr_type))(ats_closure_fun(arg1))) (arg1, arg0) ;
return (tmp137) ;
} /* end of [app_19] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 52519(line=1874, offs=5) -- 52952(line=1891, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_21 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp139) ;
ATSlocal (ats_ptr_type, tmp140) ;
ATSlocal (ats_ptr_type, tmp141) ;
ATSlocal (ats_ptr_type, tmp142) ;
ATSlocal (ats_ptr_type, tmp143) ;
ATSlocal (ats_ptr_type, tmp144) ;
ATSlocal (ats_ptr_type, tmp145) ;

__ats_lab_loop_21:
do {
/* branch: __ats_lab_30 */
__ats_lab_30_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_31_0 ; }
__ats_lab_30_1:
tmp140 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp141 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp142 = ((ats_ptr_type(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp140, arg3) ;
tmp143 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp143, atslab_0, tmp142) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp143 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp144 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp141 ;
arg1 = arg1 ;
arg2 = tmp144 ;
arg3 = arg3 ;
goto __ats_lab_loop_21 ; // tail call
break ;

/* branch: __ats_lab_31 */
__ats_lab_31_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_31_1:
tmp145 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp145 ;
break ;
} while (0) ;
return /* (tmp139) */ ;
} /* end of [loop_21] */

/*
// /home/hwxi/Research/ATS-Anairiats/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, tmp138) ;
ATSlocal (ats_ptr_type, tmp146) ;
// ATSlocal_void (tmp147) ;

__ats_lab_list_map_funenv_01412_ats_ptr_type_ats_ptr_type:
/* ats_ptr_type tmp146 ; */
/* tmp147 = */ loop_21 (arg0, arg1, (&tmp146), arg2) ;
tmp138 = tmp146 ;
return (tmp138) ;
} /* end of [list_map_funenv_01412_ats_ptr_type_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 53503(line=1915, offs=23) -- 53963(line=1932, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map_vclo_01414_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp136) ;

__ats_lab_list_map_vclo_01414_ats_ptr_type_ats_ptr_type:
tmp136 = list_map_funenv_01412_ats_ptr_type_ats_ptr_type (arg0, &app_19, arg1) ;
return (tmp136) ;
} /* end of [list_map_vclo_01414_ats_ptr_type_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 10408(line=447, offs=1) -- 11450(line=493, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_dyn_e1xp_14 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_ptr_type arg5) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp129) ;
ATSlocal (ats_ptr_type, tmp130) ;
ATSlocal (ats_ptr_type, tmp131) ;
ATSlocal (ats_ptr_type, tmp132) ;
ATSlocal (__ats_fun_17_closure_type, tmp134) ;
ATSlocal (ats_ptr_type, tmp135) ;
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) ;

__ats_lab_d1exp_tr_app_dyn_e1xp_14:
tmp130 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_9, arg2), atslab_e1xp_node) ;
do {
/* branch: __ats_lab_29 */
__ats_lab_29_0:
if (((ats_sum_ptr_type)tmp130)->tag != 10) { goto __ats_lab_32_0 ; }
__ats_lab_29_1:
tmp131 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
/* ats_ptr_type tmp132 ; */
tmp132 = &(tmp134) ;
__ats_fun_17_closure_init (tmp132, tmp131) ; // closure initialization
tmp135 = list_map_vclo_01414_ats_ptr_type_ats_ptr_type (arg5, tmp132) ;
tmp148 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__e1xp_app (tmp131, arg2, tmp131, ats_castfn_mac(ats_ptr_type, tmp135)) ;
tmp149 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__e1xp_normalize (tmp148) ;
tmp150 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp131, tmp149) ;
tmp129 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp150) ;
break ;

/* branch: __ats_lab_32 */
__ats_lab_32_0:
__ats_lab_32_1:
tmp151 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_loc) ;
tmp152 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp151, arg2) ;
tmp129 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn (arg0, tmp152, arg3, arg4, arg5) ;
break ;
} while (0) ;
return (tmp129) ;
} /* end of [d1exp_tr_app_dyn_e1xp_14] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 11490(line=496, offs=1) -- 12435(line=532, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_sta_dyn_dqid_15 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5, ats_ptr_type arg6, ats_int_type arg7, ats_ptr_type arg8) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp153) ;
ATSlocal (ats_ptr_type, tmp154) ;
ATSlocal (ats_ptr_type, tmp155) ;
// ATSlocal_void (tmp156) ;
ATSlocal (ats_ptr_type, tmp157) ;
// ATSlocal_void (tmp158) ;
// ATSlocal_void (tmp159) ;
// ATSlocal_void (tmp160) ;
// ATSlocal_void (tmp161) ;
// ATSlocal_void (tmp162) ;
// ATSlocal_void (tmp163) ;
// ATSlocal_void (tmp164) ;
ATSlocal (ats_ptr_type, tmp165) ;
ATSlocal (ats_ptr_type, tmp166) ;

__ats_lab_d1exp_tr_app_sta_dyn_dqid_15:
tmp154 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg3, arg4) ;
do {
/* branch: __ats_lab_33 */
__ats_lab_33_0:
if (tmp154 == (ats_sum_ptr_type)0) { goto __ats_lab_34_0 ; }
__ats_lab_33_1:
tmp155 = ats_caselptrlab_mac(anairiats_sum_7, tmp154, atslab_0) ;
ATS_FREE(tmp154) ;
tmp153 = d1exp_tr_app_sta_dyn_dqid_itm_16 (arg0, arg1, arg1, arg3, arg4, tmp155, arg5, arg6, arg7, arg8) ;
break ;

/* branch: __ats_lab_34 */
__ats_lab_34_0:
// if (tmp154 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_34_1:
tmp157 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_loc) ;
/* tmp156 = */ prerr_error2_loc_02395_ (tmp157) ;
/* tmp158 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_sta_dyn_dqid")) ;
/* tmp159 = */ atspre_prerr_string (ATSstrcst(": unrecognized dynamic identifier [")) ;
/* tmp160 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg3) ;
/* tmp161 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg4) ;
/* tmp162 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp163 = */ atspre_prerr_newline () ;
tmp165 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp165)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp165, atslab_0, arg0) ;
/* tmp164 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp165) ;
tmp166 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp153 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp166) ;
break ;
} while (0) ;
return (tmp153) ;
} /* end of [d1exp_tr_app_sta_dyn_dqid_15] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 51781(line=1842, offs=7) -- 51921(line=1845, offs=6)
*/
ATSstaticdec()
ats_int_type
loop_23 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp182) ;
ATSlocal (ats_ptr_type, tmp183) ;
ATSlocal (ats_int_type, tmp184) ;

__ats_lab_loop_23:
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:
tmp183 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp184 = atspre_isucc (arg1) ;
arg0 = tmp183 ;
arg1 = tmp184 ;
goto __ats_lab_loop_23 ; // 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:
tmp182 = arg1 ;
break ;
} while (0) ;
return (tmp182) ;
} /* end of [loop_23] */

/*
// /home/hwxi/Research/ATS-Anairiats/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, tmp181) ;

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

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 12479(line=535, offs=1) -- 15719(line=677, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_sta_dyn_dqid_itm_16 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_ptr_type arg5, ats_ptr_type arg6, ats_ptr_type arg7, ats_int_type arg8, ats_ptr_type arg9) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp167) ;
ATSlocal (ats_ptr_type, tmp168) ;
ATSlocal (ats_ptr_type, tmp169) ;
ATSlocal (ats_ptr_type, tmp170) ;
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, tmp177) ;
ATSlocal (ats_ptr_type, tmp178) ;
ATSlocal (ats_ptr_type, tmp179) ;
ATSlocal (ats_int_type, tmp180) ;
ATSlocal (ats_ptr_type, tmp185) ;
ATSlocal (ats_ptr_type, tmp186) ;
ATSlocal (ats_ptr_type, tmp187) ;
ATSlocal (ats_ptr_type, tmp188) ;
ATSlocal (ats_int_type, tmp189) ;
ATSlocal (ats_bool_type, tmp190) ;
ATSlocal (ats_ptr_type, tmp191) ;
ATSlocal (ats_ptr_type, tmp192) ;
ATSlocal (ats_ptr_type, tmp193) ;
ATSlocal (ats_ptr_type, tmp194) ;
ATSlocal (ats_ptr_type, tmp195) ;
ATSlocal (ats_ptr_type, tmp196) ;
ATSlocal (ats_ptr_type, tmp197) ;
ATSlocal (ats_ptr_type, tmp198) ;
ATSlocal (ats_ptr_type, tmp199) ;
// ATSlocal_void (tmp200) ;
ATSlocal (ats_ptr_type, tmp201) ;
ATSlocal (ats_ptr_type, tmp202) ;
ATSlocal (ats_ptr_type, tmp203) ;
// ATSlocal_void (tmp204) ;
// ATSlocal_void (tmp205) ;
// ATSlocal_void (tmp206) ;
// ATSlocal_void (tmp207) ;
// ATSlocal_void (tmp208) ;
// ATSlocal_void (tmp209) ;
// ATSlocal_void (tmp210) ;
// ATSlocal_void (tmp211) ;
ATSlocal (ats_ptr_type, tmp212) ;

__ats_lab_d1exp_tr_app_sta_dyn_dqid_itm_16:
tmp168 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp169 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_loc) ;
tmp170 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg2), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_35 */
__ats_lab_35_0:
if (((ats_sum_ptr_type)arg5)->tag != 0) { goto __ats_lab_36_0 ; }
__ats_lab_35_1:
tmp171 = ats_caselptrlab_mac(anairiats_sum_6, arg5, atslab_0) ;
tmp172 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst (tmp170, tmp171) ;
tmp173 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp174 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp168, tmp169, tmp172, tmp173, arg7, arg8, tmp174) ;
break ;

/* branch: __ats_lab_36 */
__ats_lab_36_0:
if (((ats_sum_ptr_type)arg5)->tag != 1) { goto __ats_lab_37_0 ; }
__ats_lab_36_1:
tmp175 = ats_caselptrlab_mac(anairiats_sum_6, arg5, atslab_0) ;
tmp176 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp170, tmp175) ;
tmp177 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp178 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp168, tmp169, tmp176, tmp177, arg7, arg8, tmp178) ;
break ;

/* branch: __ats_lab_37 */
__ats_lab_37_0:
if (((ats_sum_ptr_type)arg5)->tag != 2) { goto __ats_lab_40_0 ; }
__ats_lab_37_1:
tmp179 = ats_caselptrlab_mac(anairiats_sum_6, arg5, atslab_0) ;
tmp180 = list_length_01410_ats_ptr_type (arg9) ;
tmp185 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity (tmp179, tmp180) ;
if (tmp185 == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 13906(line=597, offs=9) -- 13934(line=597, offs=37)") ; }
tmp186 = ats_caselptrlab_mac(anairiats_sum_8, tmp185, atslab_0) ;
tmp187 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp188 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp190 = atspre_gte_int_int (arg8, -1) ;
if (tmp190) {
tmp189 = arg8 ;
} else {
tmp189 = -1 ;
} /* end of [if] */
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_con (tmp168, tmp186, tmp169, tmp187, tmp189, arg7, tmp188) ;
break ;

/* branch: __ats_lab_40 */
__ats_lab_40_0:
if (((ats_sum_ptr_type)arg5)->tag != 3) { goto __ats_lab_41_0 ; }
__ats_lab_40_1:
tmp191 = ats_caselptrlab_mac(anairiats_sum_6, arg5, atslab_0) ;
tmp192 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp170, tmp191) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, arg1, tmp192, arg6, arg7, arg8, arg9) ;
break ;

/* branch: __ats_lab_41 */
__ats_lab_41_0:
if (((ats_sum_ptr_type)arg5)->tag != 4) { goto __ats_lab_42_0 ; }
__ats_lab_41_1:
tmp193 = ats_caselptrlab_mac(anairiats_sum_4, arg5, atslab_1) ;
tmp194 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp170, arg3, arg4, tmp193) ;
tmp195 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym (tmp170, tmp194) ;
tmp196 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp197 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp168, tmp169, tmp195, tmp196, arg7, arg8, tmp197) ;
break ;

/* branch: __ats_lab_42 */
__ats_lab_42_0:
if (((ats_sum_ptr_type)arg5)->tag != 5) { goto __ats_lab_43_0 ; }
__ats_lab_42_1:
tmp198 = ats_caselptrlab_mac(anairiats_sum_6, arg5, atslab_0) ;
tmp199 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg2), atslab_d1exp_loc) ;
/* tmp200 = */ macdef_check_2 (tmp199, tmp198, arg3, arg4) ;
tmp201 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac (tmp199, tmp198) ;
tmp202 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp203 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp168, tmp169, tmp201, tmp202, arg7, arg8, tmp203) ;
break ;

/* branch: __ats_lab_43 */
__ats_lab_43_0:
__ats_lab_43_1:
/* tmp204 = */ prerr_error2_loc_02395_ (tmp170) ;
/* tmp205 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_sta_dyn_dqid_itm")) ;
/* tmp206 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp207 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg3) ;
/* tmp208 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg4) ;
/* tmp209 = */ atspre_prerr_string (ATSstrcst("] does not refer to any variable, constant or constructor.")) ;
/* tmp210 = */ atspre_prerr_newline () ;
tmp212 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp212)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp212, atslab_0, arg0) ;
/* tmp211 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp212) ;
tmp167 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp168) ;
break ;
} while (0) ;
return (tmp167) ;
} /* end of [d1exp_tr_app_sta_dyn_dqid_itm_16] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 15811(line=683, offs=1) -- 16385(line=709, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3, ats_ptr_type arg4) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp213) ;
ATSlocal (ats_ptr_type, tmp214) ;
ATSlocal (ats_ptr_type, tmp215) ;
ATSlocal (ats_ptr_type, tmp216) ;
ATSlocal (ats_ptr_type, tmp217) ;
ATSlocal (ats_ptr_type, tmp218) ;
ATSlocal (ats_ptr_type, tmp219) ;
ATSlocal (ats_ptr_type, tmp220) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn:
tmp214 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_44 */
__ats_lab_44_0:
if (((ats_sum_ptr_type)tmp214)->tag != 0) { goto __ats_lab_45_0 ; }
__ats_lab_44_1:
tmp215 = ats_caselptrlab_mac(anairiats_sum_6, tmp214, atslab_0) ;
tmp213 = d1exp_tr_app_dyn_dqid_13 (arg0, arg1, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp215, arg2, arg3, arg4) ;
break ;

/* branch: __ats_lab_45 */
__ats_lab_45_0:
if (((ats_sum_ptr_type)tmp214)->tag != 1) { goto __ats_lab_46_0 ; }
__ats_lab_45_1:
tmp216 = ats_caselptrlab_mac(anairiats_sum_4, tmp214, atslab_0) ;
tmp217 = ats_caselptrlab_mac(anairiats_sum_4, tmp214, atslab_1) ;
tmp213 = d1exp_tr_app_dyn_dqid_13 (arg0, arg1, tmp216, tmp217, arg2, arg3, arg4) ;
break ;

/* branch: __ats_lab_46 */
__ats_lab_46_0:
__ats_lab_46_1:
tmp218 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
tmp219 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg4) ;
tmp220 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp213 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_dyn (tmp220, tmp218, arg3, arg2, tmp219) ;
break ;
} while (0) ;
return (tmp213) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 16447(line=713, offs=1) -- 17193(line=741, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_ptr_type arg4, ats_int_type arg5, ats_ptr_type arg6) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp221) ;
ATSlocal (ats_ptr_type, tmp222) ;
ATSlocal (ats_ptr_type, tmp223) ;
ATSlocal (ats_ptr_type, tmp224) ;
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) ;
ATSlocal (ats_ptr_type, tmp230) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn:
tmp222 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg2), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_47 */
__ats_lab_47_0:
if (((ats_sum_ptr_type)tmp222)->tag != 0) { goto __ats_lab_48_0 ; }
__ats_lab_47_1:
tmp223 = ats_caselptrlab_mac(anairiats_sum_6, tmp222, atslab_0) ;
tmp221 = d1exp_tr_app_sta_dyn_dqid_15 (arg0, arg1, arg2, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp223, arg3, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_48 */
__ats_lab_48_0:
if (((ats_sum_ptr_type)tmp222)->tag != 1) { goto __ats_lab_49_0 ; }
__ats_lab_48_1:
tmp224 = ats_caselptrlab_mac(anairiats_sum_4, tmp222, atslab_0) ;
tmp225 = ats_caselptrlab_mac(anairiats_sum_4, tmp222, atslab_1) ;
tmp221 = d1exp_tr_app_sta_dyn_dqid_15 (arg0, arg1, arg2, tmp224, tmp225, arg3, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_49 */
__ats_lab_49_0:
__ats_lab_49_1:
tmp226 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg2) ;
tmp227 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg3) ;
tmp228 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg6) ;
tmp229 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp230 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_d1exp_loc) ;
tmp221 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp229, tmp230, tmp226, tmp227, arg4, arg5, tmp228) ;
break ;
} while (0) ;
return (tmp221) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 17327(line=751, offs=16) -- 18186(line=791, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp231) ;
ATSlocal (ats_ptr_type, tmp232) ;
ATSlocal (ats_ptr_type, tmp233) ;
ATSlocal (ats_ptr_type, tmp234) ;
ATSlocal (ats_ptr_type, tmp235) ;
// ATSlocal_void (tmp236) ;
ATSlocal (ats_ptr_type, tmp237) ;
// ATSlocal_void (tmp238) ;
// ATSlocal_void (tmp239) ;
ATSlocal (ats_ptr_type, tmp240) ;
// ATSlocal_void (tmp241) ;
// ATSlocal_void (tmp242) ;
ATSlocal (ats_ptr_type, tmp243) ;
// ATSlocal_void (tmp244) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn:
tmp232 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp233 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp233)->tag != 66) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 17373(line=754, offs=5) -- 17411(line=754, offs=43)") ; }
tmp234 = ats_caselptrlab_mac(anairiats_sum_4, tmp233, atslab_0) ;
tmp235 = ats_caselptrlab_mac(anairiats_sum_4, tmp233, atslab_1) ;
do {
/* branch: __ats_lab_50 */
__ats_lab_50_0:
if (((ats_sum_ptr_type)tmp234)->tag != 2) { goto __ats_lab_51_0 ; }
__ats_lab_50_1:
/* tmp236 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp232) ;
tmp237 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp235) ;
/* tmp238 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp232) ;
tmp231 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp232, tmp234, tmp237) ;
break ;

/* branch: __ats_lab_51 */
__ats_lab_51_0:
if (((ats_sum_ptr_type)tmp234)->tag != 1) { goto __ats_lab_52_0 ; }
__ats_lab_51_1:
/* tmp239 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp232) ;
tmp240 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp235) ;
/* tmp241 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp232) ;
tmp231 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp232, tmp234, tmp240) ;
break ;

/* branch: __ats_lab_52 */
__ats_lab_52_0:
// if (((ats_sum_ptr_type)tmp234)->tag != 0) { ats_deadcode_failure_handle () ; }
__ats_lab_52_1:
/* tmp242 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp232) ;
tmp243 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp235) ;
/* tmp244 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp232) ;
tmp231 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp232, tmp234, tmp243) ;
break ;
} while (0) ;
return (tmp231) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 18315(line=801, offs=16) -- 18478(line=810, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp245) ;
ATSlocal (ats_ptr_type, tmp246) ;
ATSlocal (ats_ptr_type, tmp247) ;
ATSlocal (ats_ptr_type, tmp248) ;
ATSlocal (ats_ptr_type, tmp249) ;
ATSlocal (ats_ptr_type, tmp250) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun:
tmp246 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp247 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp247)->tag != 67) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 18361(line=804, offs=5) -- 18401(line=804, offs=45)") ; }
tmp248 = ats_caselptrlab_mac(anairiats_sum_4, tmp247, atslab_0) ;
tmp249 = ats_caselptrlab_mac(anairiats_sum_4, tmp247, atslab_1) ;
tmp250 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp249) ;
tmp245 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macfun (tmp246, tmp248, tmp250) ;
return (tmp245) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 18533(line=815, offs=1) -- 19231(line=837, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d2sym_lrbrackets_28 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp251) ;
ATSlocal (ats_ptr_type, tmp252) ;
ATSlocal (ats_int_type, tmp253) ;
ATSlocal (ats_ptr_type, tmp254) ;
ATSlocal (ats_ptr_type, tmp255) ;
ATSlocal (ats_ptr_type, tmp257) ;
ATSlocal (ats_ptr_type, tmp258) ;
ATSlocal (ats_int_type, tmp259) ;
ATSlocal (ats_int_type, tmp260) ;
// ATSlocal_void (tmp261) ;
ATSlocal (ats_bool_type, tmp262) ;
// ATSlocal_void (tmp263) ;
// ATSlocal_void (tmp264) ;
// ATSlocal_void (tmp265) ;
ATSlocal (ats_ptr_type, tmp266) ;

__ats_lab_d2sym_lrbrackets_28:
tmp252 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
/* ats_int_type tmp253 ; */
tmp253 = 0 ;
/* ats_ptr_type tmp254 ; */
tmp254 = (ats_sum_ptr_type)0 ;
tmp255 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS) ;
do {
/* branch: __ats_lab_53 */
__ats_lab_53_0:
if (tmp255 == (ats_sum_ptr_type)0) { goto __ats_lab_56_0 ; }
__ats_lab_53_1:
tmp257 = ats_caselptrlab_mac(anairiats_sum_7, tmp255, atslab_0) ;
ATS_FREE(tmp255) ;
do {
/* branch: __ats_lab_54 */
__ats_lab_54_0:
if (((ats_sum_ptr_type)tmp257)->tag != 4) { goto __ats_lab_55_0 ; }
__ats_lab_54_1:
tmp258 = ats_caselptrlab_mac(anairiats_sum_4, tmp257, atslab_1) ;
tmp254 = tmp258 ;
break ;

/* branch: __ats_lab_55 */
__ats_lab_55_0:
__ats_lab_55_1:
tmp259 = atspre_iadd (tmp253, 1) ;
tmp253 = tmp259 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_56 */
__ats_lab_56_0:
// if (tmp255 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_56_1:
tmp260 = atspre_iadd (tmp253, 1) ;
tmp253 = tmp260 ;
break ;
} while (0) ;
tmp262 = atspre_gt_int_int (tmp253, 0) ;
if (tmp262) {
/* tmp263 = */ prerr_interror_loc_02393_ (tmp252) ;
/* tmp264 = */ atspre_prerr_string (ATSstrcst(": d2sym_lrbrackets: d1e0 = ")) ;
/* tmp265 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp261 = */ atspre_prerr_newline () ;
} else {
/* empty */
} /* end of [if] */
tmp266 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__d0ynq_none (tmp252) ;
tmp251 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp252, tmp266, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS, tmp254) ;
return (tmp251) ;
} /* end of [d2sym_lrbrackets_28] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 19266(line=840, offs=1) -- 19531(line=850, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_arrsub_29 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp267) ;
ATSlocal (ats_ptr_type, tmp268) ;
ATSlocal (ats_ptr_type, tmp269) ;
ATSlocal (ats_ptr_type, tmp270) ;
ATSlocal (ats_ptr_type, tmp271) ;

__ats_lab_d1exp_tr_arrsub_29:
tmp268 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp269 = d2sym_lrbrackets_28 (arg0) ;
tmp270 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
tmp271 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg3) ;
tmp267 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrsub (tmp268, tmp269, tmp270, arg2, tmp271) ;
return (tmp267) ;
} /* end of [d1exp_tr_arrsub_29] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 19632(line=857, offs=1) -- 20620(line=892, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_wths1explst_30 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
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_ptr_type, tmp279) ;
ATSlocal (ats_ptr_type, 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_void (tmp286) ;
// ATSlocal_void (tmp287) ;
// ATSlocal_void (tmp288) ;
// ATSlocal_void (tmp289) ;
// ATSlocal_void (tmp290) ;
ATSlocal (ats_ptr_type, tmp291) ;

__ats_lab_d1exp_tr_wths1explst_30:
tmp273 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp274 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_57 */
__ats_lab_57_0:
if (((ats_sum_ptr_type)tmp274)->tag != 63) { goto __ats_lab_58_0 ; }
__ats_lab_57_1:
tmp275 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_0) ;
tmp276 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_1) ;
tmp277 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp275) ;
tmp278 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_res_impred (tmp276, arg1) ;
tmp272 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type (tmp273, tmp277, tmp278) ;
break ;

/* branch: __ats_lab_58 */
__ats_lab_58_0:
if (((ats_sum_ptr_type)tmp274)->tag != 64) { goto __ats_lab_59_0 ; }
__ats_lab_58_1:
tmp279 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_0) ;
tmp280 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_1) ;
tmp281 = d1exp_tr_wths1explst_30 (tmp279, arg1) ;
tmp282 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp280) ;
tmp272 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff (tmp273, tmp281, tmp282) ;
break ;

/* branch: __ats_lab_59 */
__ats_lab_59_0:
if (((ats_sum_ptr_type)tmp274)->tag != 65) { goto __ats_lab_60_0 ; }
__ats_lab_59_1:
tmp283 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_0) ;
tmp284 = ats_caselptrlab_mac(anairiats_sum_4, tmp274, atslab_1) ;
tmp285 = d1exp_tr_wths1explst_30 (tmp283, arg1) ;
tmp272 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo (tmp273, tmp285, tmp284) ;
break ;

/* branch: __ats_lab_60 */
__ats_lab_60_0:
__ats_lab_60_1:
/* tmp286 = */ prerr_error2_loc_02395_ (tmp273) ;
/* tmp287 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_wths1explst_tr")) ;
/* tmp288 = */ atspre_prerr_string (ATSstrcst(": the dynamic expression is expected to be ascribed a type but it is not.")) ;
/* tmp289 = */ atspre_prerr_newline () ;
tmp291 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp291)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp291, atslab_0, arg0) ;
/* tmp290 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp291) ;
tmp272 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp273) ;
break ;
} while (0) ;
return (tmp272) ;
} /* end of [d1exp_tr_wths1explst_30] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 20662(line=895, offs=1) -- 21823(line=933, offs=4)
*/
ATSstaticdec()
anairiats_rec_10
d1exp_tr_arg_body_31 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (anairiats_rec_10, tmp292) ;
ATSlocal (ats_ptr_type, tmp293) ;
ATSlocal (ats_ptr_type, tmp294) ;
ATSlocal (ats_ptr_type, tmp295) ;
ATSlocal (ats_int_type, tmp296) ;
ATSlocal (ats_ptr_type, tmp297) ;
ATSlocal (ats_ptr_type, tmp298) ;
ATSlocal (ats_int_type, tmp299) ;
ATSlocal (ats_ptr_type, tmp300) ;
ATSlocal (ats_ptr_type, tmp301) ;
// ATSlocal_void (tmp302) ;
// ATSlocal_void (tmp303) ;
// ATSlocal_void (tmp304) ;
ATSlocal (ats_ptr_type, tmp305) ;
ATSlocal (ats_ptr_type, tmp306) ;
// ATSlocal_void (tmp307) ;
ATSlocal (ats_ptr_type, tmp308) ;
ATSlocal (ats_ptr_type, tmp309) ;
// ATSlocal_void (tmp310) ;
// ATSlocal_void (tmp311) ;
ATSlocal (ats_bool_type, tmp312) ;
ATSlocal (ats_ptr_type, tmp313) ;
// ATSlocal_void (tmp314) ;
// ATSlocal_void (tmp315) ;

__ats_lab_d1exp_tr_arg_body_31:
/* ats_ptr_type tmp293 ; */
tmp293 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__WTHS1EXPLSTnil_0) ;
tmp294 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr_arg (arg0, (&tmp293)) ;
tmp295 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_reverse (tmp293) ;
tmp293 = tmp295 ;
/* ats_int_type tmp296 ; */
tmp296 = -1 ;
tmp298 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp294), atslab_p2at_node) ;
do {
/* branch: __ats_lab_61 */
__ats_lab_61_0:
if (((ats_sum_ptr_type)tmp298)->tag != 18) { goto __ats_lab_62_0 ; }
__ats_lab_61_1:
tmp299 = ats_caselptrlab_mac(anairiats_sum_12, tmp298, atslab_0) ;
tmp300 = ats_caselptrlab_mac(anairiats_sum_12, tmp298, atslab_1) ;
tmp296 = tmp299 ;
tmp297 = tmp300 ;
break ;

/* branch: __ats_lab_62 */
__ats_lab_62_0:
__ats_lab_62_1:
tmp301 = (ats_sum_ptr_type)0 ;
tmp297 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp297, atslab_0, tmp294) ;
ats_selptrset_mac(anairiats_sum_8, tmp297, atslab_1, tmp301) ;
break ;
} while (0) ;
/* tmp302 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp303 = ats_selsin_mac(tmp302, atslab_1) */ ;
tmp306 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp294), atslab_p2at_svs) ;
tmp305 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp306) ;
/* tmp304 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp305) ;
tmp309 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp294), atslab_p2at_dvs) ;
tmp308 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp309) ;
/* tmp307 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp308) ;
/* tmp310 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_inc () ;
/* tmp311 = ats_selsin_mac(tmp310, atslab_1) */ ;
tmp312 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_is_none (tmp293) ;
if (tmp312) {
tmp313 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
} else {
tmp313 = d1exp_tr_wths1explst_30 (arg1, tmp293) ;
} /* end of [if] */
/* tmp314 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_dec () ;
/* tmp315 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp292.atslab_0 = tmp296 ;
tmp292.atslab_1 = tmp297 ;
tmp292.atslab_2 = tmp313 ;

return (tmp292) ;
} /* end of [d1exp_tr_arg_body_31] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 21880(line=938, offs=1) -- 22701(line=975, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_delay_32 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp316) ;
ATSlocal (ats_ptr_type, tmp317) ;
ATSlocal (ats_ptr_type, tmp318) ;
ATSlocal (ats_int_type, tmp319) ;
ATSlocal (ats_ptr_type, tmp320) ;
ATSlocal (ats_bool_type, tmp321) ;
ATSlocal (ats_ptr_type, tmp322) ;
ATSlocal (ats_ptr_type, tmp323) ;
ATSlocal (ats_ptr_type, tmp324) ;
ATSlocal (ats_ptr_type, tmp325) ;
ATSlocal (ats_ptr_type, tmp326) ;
ATSlocal (ats_ptr_type, tmp327) ;
ATSlocal (ats_ptr_type, tmp328) ;
ATSlocal (ats_ptr_type, tmp329) ;
ATSlocal (ats_ptr_type, tmp330) ;
ATSlocal (ats_ptr_type, tmp331) ;
ATSlocal (ats_ptr_type, tmp332) ;

__ats_lab_d1exp_tr_delay_32:
tmp317 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp318 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp318)->tag != 58) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 22025(line=946, offs=5) -- 22062(line=946, offs=42)") ; }
tmp319 = ats_caselptrlab_mac(anairiats_sum_12, tmp318, atslab_0) ;
tmp320 = ats_caselptrlab_mac(anairiats_sum_12, tmp318, atslab_1) ;
do {
/* branch: __ats_lab_63 */
__ats_lab_63_0:
__ats_lab_63_1:
tmp321 = atspre_eq_int_int (tmp319, 0) ;
if (!tmp321) { goto __ats_lab_64_1 ; }
tmp322 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp320) ;
tmp316 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_delay (tmp317, tmp322) ;
break ;

/* branch: __ats_lab_64 */
__ats_lab_64_0:
__ats_lab_64_1:
tmp323 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, tmp320), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_65 */
__ats_lab_65_0:
if (((ats_sum_ptr_type)tmp323)->tag != 29) { goto __ats_lab_68_0 ; }
__ats_lab_65_1:
tmp324 = ats_caselptrlab_mac(anairiats_sum_12, tmp323, atslab_1) ;
do {
/* branch: __ats_lab_66 */
__ats_lab_66_0:
if (tmp324 == (ats_sum_ptr_type)0) { goto __ats_lab_67_0 ; }
tmp325 = ats_caselptrlab_mac(anairiats_sum_8, tmp324, atslab_1) ;
if (tmp325 == (ats_sum_ptr_type)0) { goto __ats_lab_67_0 ; }
__ats_lab_66_1:
tmp326 = ats_caselptrlab_mac(anairiats_sum_8, tmp324, atslab_0) ;
tmp327 = ats_caselptrlab_mac(anairiats_sum_8, tmp325, atslab_0) ;
tmp328 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp326) ;
tmp329 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp327) ;
tmp330 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp330, atslab_0, tmp329) ;
tmp316 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay (tmp317, tmp328, tmp330) ;
break ;

/* branch: __ats_lab_67 */
__ats_lab_67_0:
__ats_lab_67_1:
tmp331 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp320) ;
tmp316 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none (tmp317, tmp331) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_68 */
__ats_lab_68_0:
__ats_lab_68_1:
tmp332 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp320) ;
tmp316 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none (tmp317, tmp332) ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp316) ;
} /* end of [d1exp_tr_delay_32] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 22815(line=982, offs=5) -- 23174(line=990, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr1_34 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp334) ;
// ATSlocal_void (tmp335) ;
ATSlocal (ats_ptr_type, tmp336) ;
// ATSlocal_void (tmp337) ;
// ATSlocal_void (tmp338) ;
// ATSlocal_void (tmp339) ;
ATSlocal (ats_ptr_type, tmp340) ;
// ATSlocal_void (tmp341) ;
// ATSlocal_void (tmp342) ;
ATSlocal (ats_ptr_type, tmp343) ;

__ats_lab_auxerr1_34:
tmp336 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_loc) ;
/* tmp335 = */ prerr_error2_loc_02395_ (tmp336) ;
/* tmp337 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("i1nvarglst_tr")) ;
/* tmp338 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
tmp340 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
/* tmp339 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp340) ;
/* tmp341 = */ atspre_prerr_string (ATSstrcst("] should refer to a variable but it does not.")) ;
/* tmp342 = */ atspre_prerr_newline () ;
tmp343 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp343)->tag = 29 ;
ats_selptrset_mac(anairiats_sum_6, tmp343, atslab_0, arg0) ;
/* tmp334 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp343) ;
return /* (tmp334) */ ;
} /* end of [auxerr1_34] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 23199(line=991, offs=5) -- 23531(line=999, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr2_35 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp344) ;
// ATSlocal_void (tmp345) ;
ATSlocal (ats_ptr_type, tmp346) ;
// ATSlocal_void (tmp347) ;
// ATSlocal_void (tmp348) ;
// ATSlocal_void (tmp349) ;
ATSlocal (ats_ptr_type, tmp350) ;
// ATSlocal_void (tmp351) ;
// ATSlocal_void (tmp352) ;
ATSlocal (ats_ptr_type, tmp353) ;

__ats_lab_auxerr2_35:
tmp346 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_loc) ;
/* tmp345 = */ prerr_error2_loc_02395_ (tmp346) ;
/* tmp347 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("i1nvarglst_tr")) ;
/* tmp348 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
tmp350 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
/* tmp349 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp350) ;
/* tmp351 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp352 = */ atspre_prerr_newline () ;
tmp353 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp353)->tag = 29 ;
ats_selptrset_mac(anairiats_sum_6, tmp353, atslab_0, arg0) ;
/* tmp344 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp353) ;
return /* (tmp344) */ ;
} /* end of [auxerr2_35] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 22755(line=979, offs=5) -- 24231(line=1029, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvarg_tr_33 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp333) ;
ATSlocal (ats_ptr_type, tmp354) ;
ATSlocal (ats_ptr_type, tmp355) ;
ATSlocal (ats_ptr_type, tmp356) ;
ATSlocal (ats_ptr_type, tmp357) ;
ATSlocal (ats_ptr_type, tmp358) ;
ATSlocal (ats_ptr_type, tmp359) ;
ATSlocal (ats_ptr_type, tmp360) ;
ATSlocal (ats_ptr_type, tmp361) ;
ATSlocal (ats_ptr_type, tmp362) ;
// ATSlocal_void (tmp363) ;
// ATSlocal_void (tmp364) ;

__ats_lab_i1nvarg_tr_33:
tmp355 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
tmp354 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (tmp355) ;
do {
/* branch: __ats_lab_69 */
__ats_lab_69_0:
if (tmp354 == (ats_sum_ptr_type)0) { goto __ats_lab_74_0 ; }
__ats_lab_69_1:
tmp356 = ats_caselptrlab_mac(anairiats_sum_7, tmp354, atslab_0) ;
ATS_FREE(tmp354) ;
do {
/* branch: __ats_lab_70 */
__ats_lab_70_0:
if (((ats_sum_ptr_type)tmp356)->tag != 1) { goto __ats_lab_73_0 ; }
__ats_lab_70_1:
tmp357 = ats_caselptrlab_mac(anairiats_sum_6, tmp356, atslab_0) ;
tmp359 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_type) ;
do {
/* branch: __ats_lab_71 */
__ats_lab_71_0:
if (tmp359 == (ats_sum_ptr_type)0) { goto __ats_lab_72_0 ; }
__ats_lab_71_1:
tmp360 = ats_caselptrlab_mac(anairiats_sum_7, tmp359, atslab_0) ;
tmp361 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp360) ;
tmp358 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp358, atslab_0, tmp361) ;
break ;

/* branch: __ats_lab_72 */
__ats_lab_72_0:
// if (tmp359 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_72_1:
tmp358 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp362 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvarg_make (tmp357, tmp358) ;
tmp333 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp333, atslab_0, tmp362) ;
break ;

/* branch: __ats_lab_73 */
__ats_lab_73_0:
__ats_lab_73_1:
/* tmp363 = */ auxerr1_34 (arg0) ;
tmp333 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_74 */
__ats_lab_74_0:
// if (tmp354 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_74_1:
/* tmp364 = */ auxerr2_35 (arg0) ;
tmp333 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp333) ;
} /* end of [i1nvarg_tr_33] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 24260(line=1032, offs=1) -- 24682(line=1049, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvarglst_tr_36 (ats_ptr_type arg0) {
/* local vardec */
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) ;

__ats_lab_i1nvarglst_tr_36:
do {
/* branch: __ats_lab_75 */
__ats_lab_75_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_78_0 ; }
__ats_lab_75_1:
tmp366 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp367 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp368 = i1nvarg_tr_33 (tmp366) ;
do {
/* branch: __ats_lab_76 */
__ats_lab_76_0:
if (tmp368 == (ats_sum_ptr_type)0) { goto __ats_lab_77_0 ; }
__ats_lab_76_1:
tmp369 = ats_caselptrlab_mac(anairiats_sum_7, tmp368, atslab_0) ;
ATS_FREE(tmp368) ;
tmp370 = i1nvarglst_tr_36 (tmp367) ;
tmp365 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp365, atslab_0, tmp369) ;
ats_selptrset_mac(anairiats_sum_8, tmp365, atslab_1, tmp370) ;
break ;

/* branch: __ats_lab_77 */
__ats_lab_77_0:
// if (tmp368 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_77_1:
arg0 = tmp367 ;
goto __ats_lab_i1nvarglst_tr_36 ; // tail call
break ;
} while (0) ;
break ;

/* branch: __ats_lab_78 */
__ats_lab_78_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_78_1:
tmp365 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp365) ;
} /* end of [i1nvarglst_tr_36] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 24714(line=1052, offs=1) -- 24935(line=1058, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvresstate_tr_37 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp371) ;
ATSlocal (anairiats_rec_2, tmp372) ;
ATSlocal (ats_ptr_type, tmp373) ;
ATSlocal (ats_ptr_type, tmp374) ;
ATSlocal (ats_ptr_type, tmp375) ;
ATSlocal (ats_ptr_type, tmp376) ;
ATSlocal (ats_ptr_type, tmp377) ;

__ats_lab_i1nvresstate_tr_37:
tmp373 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_i1nvresstate_qua) ;
tmp372 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp373) ;
tmp375 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_i1nvresstate_arg) ;
tmp374 = i1nvarglst_tr_36 (tmp375) ;
tmp376 = ats_select_mac(tmp372, atslab_s2qua_svs) ;
tmp377 = ats_select_mac(tmp372, atslab_s2qua_sps) ;
tmp371 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvresstate_make (tmp376, tmp377, tmp374) ;
return (tmp371) ;
} /* end of [i1nvresstate_tr_37] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 24969(line=1061, offs=1) -- 25478(line=1077, offs=4)
*/
ATSstaticdec()
ats_ptr_type
loopi1nv_tr_38 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp378) ;
ATSlocal (ats_ptr_type, tmp379) ;
ATSlocal (anairiats_rec_2, tmp380) ;
ATSlocal (ats_ptr_type, tmp381) ;
ATSlocal (ats_ptr_type, tmp382) ;
ATSlocal (ats_ptr_type, tmp383) ;
ATSlocal (ats_ptr_type, tmp384) ;
ATSlocal (ats_ptr_type, tmp385) ;
ATSlocal (ats_ptr_type, tmp386) ;
ATSlocal (ats_ptr_type, tmp387) ;
ATSlocal (ats_ptr_type, tmp388) ;
ATSlocal (ats_ptr_type, tmp389) ;
ATSlocal (ats_ptr_type, tmp390) ;
ATSlocal (ats_ptr_type, tmp391) ;

__ats_lab_loopi1nv_tr_38:
tmp379 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_loc) ;
tmp381 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_qua) ;
tmp380 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp381) ;
tmp382 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_met) ;
do {
/* branch: __ats_lab_79 */
__ats_lab_79_0:
if (tmp382 == (ats_sum_ptr_type)0) { goto __ats_lab_80_0 ; }
__ats_lab_79_1:
tmp384 = ats_caselptrlab_mac(anairiats_sum_7, tmp382, atslab_0) ;
tmp385 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_int (tmp384) ;
tmp383 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp383, atslab_0, tmp385) ;
break ;

/* branch: __ats_lab_80 */
__ats_lab_80_0:
// if (tmp382 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_80_1:
tmp383 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp387 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_arg) ;
tmp386 = i1nvarglst_tr_36 (tmp387) ;
tmp389 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_res) ;
tmp388 = i1nvresstate_tr_37 (tmp389) ;
tmp390 = ats_select_mac(tmp380, atslab_s2qua_svs) ;
tmp391 = ats_select_mac(tmp380, atslab_s2qua_sps) ;
tmp378 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__loopi2nv_make (tmp379, tmp390, tmp391, tmp383, tmp386, tmp388) ;
return (tmp378) ;
} /* end of [loopi1nv_tr_38] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 25529(line=1082, offs=1) -- 25692(line=1088, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1fcl_tr_39 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp392) ;
ATSlocal (ats_ptr_type, tmp393) ;
ATSlocal (ats_ptr_type, tmp394) ;
ATSlocal (ats_ptr_type, tmp395) ;
ATSlocal (ats_ptr_type, tmp396) ;
ATSlocal (ats_ptr_type, tmp397) ;

__ats_lab_i1fcl_tr_39:
tmp394 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_test) ;
tmp393 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp394) ;
tmp396 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_body) ;
tmp395 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp396) ;
tmp397 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_loc) ;
tmp392 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2fcl_make (tmp397, tmp393, tmp395) ;
return (tmp392) ;
} /* end of [i1fcl_tr_39] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 25719(line=1091, offs=1) -- 25880(line=1098, offs=2)
*/
ATSstaticdec()
ats_ptr_type
i1fclist_tr_40 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp398) ;
ATSlocal (ats_ptr_type, tmp399) ;
ATSlocal (ats_ptr_type, tmp400) ;
ATSlocal (ats_ptr_type, tmp401) ;
ATSlocal (ats_ptr_type, tmp402) ;

__ats_lab_i1fclist_tr_40:
do {
/* branch: __ats_lab_81 */
__ats_lab_81_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_82_0 ; }
__ats_lab_81_1:
tmp399 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp400 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp401 = i1fcl_tr_39 (tmp399) ;
tmp402 = i1fclist_tr_40 (tmp400) ;
tmp398 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp398, atslab_0, tmp401) ;
ats_selptrset_mac(anairiats_sum_8, tmp398, atslab_1, tmp402) ;
break ;

/* branch: __ats_lab_82 */
__ats_lab_82_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_82_1:
tmp398 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp398) ;
} /* end of [i1fclist_tr_40] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 25934(line=1103, offs=1) -- 26463(line=1123, offs=4)
*/
ATSstaticdec()
ats_ptr_type
gm1at_tr_41 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp403) ;
ATSlocal (ats_ptr_type, tmp404) ;
ATSlocal (ats_ptr_type, tmp405) ;
ATSlocal (ats_ptr_type, tmp406) ;
ATSlocal (ats_ptr_type, tmp407) ;
ATSlocal (ats_ptr_type, tmp408) ;
ATSlocal (ats_ptr_type, tmp409) ;
ATSlocal (ats_ptr_type, tmp410) ;
ATSlocal (ats_ptr_type, tmp411) ;
// ATSlocal_void (tmp412) ;
ATSlocal (ats_ptr_type, tmp413) ;
ATSlocal (ats_ptr_type, tmp414) ;
// ATSlocal_void (tmp415) ;
ATSlocal (ats_ptr_type, tmp416) ;

__ats_lab_gm1at_tr_41:
tmp405 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_exp) ;
tmp404 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp405) ;
tmp407 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_pat) ;
do {
/* branch: __ats_lab_83 */
__ats_lab_83_0:
if (tmp407 == (ats_sum_ptr_type)0) { goto __ats_lab_84_0 ; }
__ats_lab_83_1:
tmp408 = ats_caselptrlab_mac(anairiats_sum_7, tmp407, atslab_0) ;
tmp409 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr (tmp408) ;
tmp411 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp409), atslab_p2at_svs) ;
tmp410 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp411) ;
/* tmp412 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp410) ;
tmp414 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp409), atslab_p2at_dvs) ;
tmp413 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp414) ;
/* tmp415 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp413) ;
tmp406 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp406, atslab_0, tmp409) ;
break ;

/* branch: __ats_lab_84 */
__ats_lab_84_0:
// if (tmp407 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_84_1:
tmp406 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp416 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_loc) ;
tmp403 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__gm2at_make (tmp416, tmp404, tmp406) ;
return (tmp403) ;
} /* end of [gm1at_tr_41] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 26572(line=1131, offs=5) -- 26974(line=1146, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_43 (ats_ptr_type arg0, ats_int_type arg1, ats_int_type arg2) {
/* local vardec */
// ATSlocal_void (tmp418) ;
// ATSlocal_void (tmp419) ;
ATSlocal (ats_ptr_type, tmp420) ;
// ATSlocal_void (tmp421) ;
// ATSlocal_void (tmp422) ;
// ATSlocal_void (tmp423) ;
ATSlocal (ats_ptr_type, tmp424) ;
ATSlocal (ats_bool_type, tmp425) ;
// ATSlocal_void (tmp426) ;
// ATSlocal_void (tmp427) ;
ATSlocal (ats_ptr_type, tmp428) ;

__ats_lab_auxerr_43:
tmp420 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg0), atslab_c1lau_loc) ;
/* tmp419 = */ prerr_error2_loc_02395_ (tmp420) ;
/* tmp421 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("c1lau_tr")) ;
/* tmp422 = */ atspre_prerr_string (ATSstrcst(": this clause should contain ")) ;
tmp425 = atspre_gte_int_int (arg1, arg2) ;
if (tmp425) {
tmp424 = ATSstrcst("more") ;
} else {
tmp424 = ATSstrcst("fewer") ;
} /* end of [if] */
/* tmp423 = */ atspre_prerr_string (tmp424) ;
/* tmp426 = */ atspre_prerr_string (ATSstrcst(" patterns.")) ;
/* tmp427 = */ atspre_prerr_newline () ;
tmp428 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp428)->tag = 30 ;
ats_selptrset_mac(anairiats_sum_6, tmp428, atslab_0, arg0) ;
/* tmp418 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp428) ;
return /* (tmp418) */ ;
} /* end of [auxerr_43] */

/*
// /home/hwxi/Research/ATS-Anairiats/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, tmp455) ;

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

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 26511(line=1128, offs=1) -- 28228(line=1217, offs=4)
*/
ATSstaticdec()
ats_ptr_type
c1lau_tr_42 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp417) ;
ATSlocal (ats_ptr_type, tmp429) ;
ATSlocal (ats_ptr_type, tmp430) ;
ATSlocal (ats_ptr_type, tmp431) ;
ATSlocal (ats_ptr_type, tmp432) ;
ATSlocal (ats_ptr_type, tmp433) ;
ATSlocal (ats_ptr_type, tmp434) ;
ATSlocal (ats_ptr_type, tmp435) ;
ATSlocal (ats_int_type, tmp436) ;
ATSlocal (ats_ptr_type, tmp437) ;
ATSlocal (ats_bool_type, tmp438) ;
ATSlocal (ats_ptr_type, tmp439) ;
ATSlocal (ats_ptr_type, tmp440) ;
ATSlocal (ats_int_type, tmp441) ;
ATSlocal (ats_bool_type, tmp442) ;
// ATSlocal_void (tmp443) ;
ATSlocal (ats_bool_type, tmp444) ;
// ATSlocal_void (tmp445) ;
// ATSlocal_void (tmp446) ;
ATSlocal (ats_ptr_type, tmp447) ;
ATSlocal (ats_ptr_type, tmp448) ;
// ATSlocal_void (tmp449) ;
ATSlocal (ats_ptr_type, tmp450) ;
ATSlocal (ats_ptr_type, tmp451) ;
// ATSlocal_void (tmp452) ;
ATSlocal (ats_ptr_type, tmp453) ;
ATSlocal (ats_ptr_type, tmp454) ;
ATSlocal (ats_ptr_type, tmp456) ;
ATSlocal (ats_ptr_type, tmp457) ;
// ATSlocal_void (tmp458) ;
ATSlocal (ats_int_type, tmp459) ;
ATSlocal (ats_int_type, tmp460) ;

__ats_lab_c1lau_tr_42:
tmp429 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_loc) ;
tmp430 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_pat) ;
tmp432 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, tmp430), atslab_p1at_node) ;
do {
/* branch: __ats_lab_85 */
__ats_lab_85_0:
if (((ats_sum_ptr_type)tmp432)->tag != 14) { goto __ats_lab_86_0 ; }
__ats_lab_85_1:
tmp433 = ats_caselptrlab_mac(anairiats_sum_12, tmp432, atslab_1) ;
tmp431 = tmp433 ;
break ;

/* branch: __ats_lab_86 */
__ats_lab_86_0:
__ats_lab_86_1:
tmp434 = (ats_sum_ptr_type)0 ;
tmp431 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp431, atslab_0, tmp430) ;
ats_selptrset_mac(anairiats_sum_8, tmp431, atslab_1, tmp434) ;
break ;
} while (0) ;
tmp435 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1atlst_tr (tmp431) ;
tmp436 = list_length_01410_ats_ptr_type (tmp435) ;
tmp438 = atspre_igt (tmp436, 0) ;
if (tmp438) {
tmp437 = tmp435 ;
} else {
tmp439 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2at_any (tmp429) ;
tmp440 = (ats_sum_ptr_type)0 ;
tmp437 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp437, atslab_0, tmp439) ;
ats_selptrset_mac(anairiats_sum_8, tmp437, atslab_1, tmp440) ;
} /* end of [if] */
tmp442 = atspre_igt (tmp436, 0) ;
if (tmp442) {
tmp441 = tmp436 ;
} else {
tmp441 = 1 ;
} /* end of [if] */
tmp444 = atspre_neq_int_int (arg0, tmp441) ;
if (tmp444) {
/* tmp443 = */ auxerr_43 (arg1, arg0, tmp441) ;
} else {
/* empty */
} /* end of [if] */
/* tmp445 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp446 = ats_selsin_mac(tmp445, atslab_1) */ ;
tmp448 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union (tmp437) ;
tmp447 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp448) ;
/* tmp449 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp447) ;
tmp451 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union (tmp437) ;
tmp450 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp451) ;
/* tmp452 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp450) ;
tmp453 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_gua) ;
tmp454 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp453, &gm1at_tr_41) ;
tmp457 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_body) ;
tmp456 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp457) ;
/* tmp458 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp459 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_seq) ;
tmp460 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_neg) ;
tmp417 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__c2lau_make (tmp429, tmp437, ats_castfn_mac(ats_ptr_type, tmp454), tmp459, tmp460, tmp456) ;
return (tmp417) ;
} /* end of [c1lau_tr_42] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 28255(line=1219, offs=5) -- 28454(line=1225, offs=2)
*/
ATSstaticdec()
ats_ptr_type
c1laulst_tr_45 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp461) ;
ATSlocal (ats_ptr_type, tmp462) ;
ATSlocal (ats_ptr_type, tmp463) ;
ATSlocal (ats_ptr_type, tmp464) ;
ATSlocal (ats_ptr_type, tmp465) ;

__ats_lab_c1laulst_tr_45:
do {
/* branch: __ats_lab_87 */
__ats_lab_87_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_88_0 ; }
__ats_lab_87_1:
tmp462 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp463 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp464 = c1lau_tr_42 (arg0, tmp462) ;
tmp465 = c1laulst_tr_45 (arg0, tmp463) ;
tmp461 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp461, atslab_0, tmp464) ;
ats_selptrset_mac(anairiats_sum_8, tmp461, atslab_1, tmp465) ;
break ;

/* branch: __ats_lab_88 */
__ats_lab_88_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_88_1:
tmp461 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp461) ;
} /* end of [c1laulst_tr_45] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 28505(line=1229, offs=5) -- 28867(line=1240, offs=4)
*/
ATSstaticdec()
ats_ptr_type
sc1lau_trdn_46 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp466) ;
ATSlocal (ats_ptr_type, tmp467) ;
// ATSlocal_void (tmp468) ;
// ATSlocal_void (tmp469) ;
ATSlocal (ats_ptr_type, tmp470) ;
// ATSlocal_void (tmp471) ;
ATSlocal (ats_ptr_type, tmp472) ;
ATSlocal (ats_ptr_type, tmp473) ;
// ATSlocal_void (tmp474) ;
ATSlocal (ats_ptr_type, tmp475) ;

__ats_lab_sc1lau_trdn_46:
tmp467 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_pat) ;
/* tmp468 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp469 = ats_selsin_mac(tmp468, atslab_1) */ ;
tmp470 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sp1at_trdn (tmp467, arg1) ;
/* tmp471 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_sp2at (tmp470) ;
tmp473 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_body) ;
tmp472 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp473) ;
/* tmp474 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp475 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_loc) ;
tmp466 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__sc2lau_make (tmp475, tmp470, tmp472) ;
return (tmp466) ;
} /* end of [sc1lau_trdn_46] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 28895(line=1242, offs=5) -- 29093(line=1249, offs=2)
*/
ATSstaticdec()
ats_ptr_type
sc1laulst_trdn_47 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp476) ;
ATSlocal (ats_ptr_type, tmp477) ;
ATSlocal (ats_ptr_type, tmp478) ;
ATSlocal (ats_ptr_type, tmp479) ;
ATSlocal (ats_ptr_type, tmp480) ;

__ats_lab_sc1laulst_trdn_47:
do {
/* branch: __ats_lab_89 */
__ats_lab_89_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_90_0 ; }
__ats_lab_89_1:
tmp477 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp478 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp479 = sc1lau_trdn_46 (tmp477, arg1) ;
tmp480 = sc1laulst_trdn_47 (tmp478, arg1) ;
tmp476 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp476, atslab_0, tmp479) ;
ats_selptrset_mac(anairiats_sum_8, tmp476, atslab_1, tmp480) ;
break ;

/* branch: __ats_lab_90 */
__ats_lab_90_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_90_1:
tmp476 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp476) ;
} /* end of [sc1laulst_trdn_47] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 29196(line=1259, offs=1) -- 29411(line=1270, offs=4)
*/
ATSstaticdec()
ats_int_type
sc2lau_get_dstag_48 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_int_type, tmp481) ;
ATSlocal (ats_ptr_type, tmp482) ;
ATSlocal (ats_ptr_type, tmp483) ;
ATSlocal (ats_ptr_type, tmp484) ;

__ats_lab_sc2lau_get_dstag_48:
tmp482 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg0), atslab_sc2lau_pat) ;
tmp483 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_22, tmp482), atslab_sp2at_node) ;
do {
/* branch: __ats_lab_91 */
__ats_lab_91_0:
if (tmp483 == (ats_sum_ptr_type)0) { goto __ats_lab_92_0 ; }
__ats_lab_91_1:
tmp484 = ats_caselptrlab_mac(anairiats_sum_8, tmp483, atslab_0) ;
tmp481 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dstag (tmp484) ;
break ;

/* branch: __ats_lab_92 */
__ats_lab_92_0:
// if (tmp483 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_92_1:
tmp481 = -1 ;
break ;
} while (0) ;
return (tmp481) ;
} /* end of [sc2lau_get_dstag_48] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 29446(line=1272, offs=5) -- 29716(line=1280, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_lt_49 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp485) ;
ATSlocal (ats_ptr_type, tmp486) ;
// ATSlocal_void (tmp487) ;
// ATSlocal_void (tmp488) ;
// ATSlocal_void (tmp489) ;
ATSlocal (ats_ptr_type, tmp490) ;

__ats_lab_auxerr_lt_49:
tmp486 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_sc2lau_loc) ;
/* tmp487 = */ prerr_error2_loc_02395_ (tmp486) ;
/* tmp488 = */ atspre_prerr_string (ATSstrcst(": the static clause is repeated.")) ;
/* tmp489 = */ atspre_prerr_newline () ;
tmp490 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp490)->tag = 14 ;
ats_selptrset_mac(anairiats_sum_4, tmp490, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp490, atslab_1, arg1) ;
/* tmp485 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp490) ;
return /* (tmp485) */ ;
} /* end of [auxerr_lt_49] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 29744(line=1282, offs=5) -- 30459(line=1308, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_gts_50 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2, ats_int_type arg3) {
/* local vardec */
// ATSlocal_void (tmp491) ;
ATSlocal (ats_bool_type, tmp492) ;
ATSlocal (ats_ptr_type, tmp493) ;
ATSlocal (ats_ptr_type, tmp494) ;
ATSlocal (ats_bool_type, tmp495) ;
ATSlocal (ats_int_type, tmp496) ;
ATSlocal (ats_int_type, tmp497) ;
// ATSlocal_void (tmp498) ;
// ATSlocal_void (tmp499) ;
// ATSlocal_void (tmp500) ;
// ATSlocal_void (tmp501) ;
// ATSlocal_void (tmp502) ;
// ATSlocal_void (tmp503) ;
ATSlocal (ats_ptr_type, tmp504) ;
ATSlocal (ats_int_type, tmp505) ;

__ats_lab_auxerr_gts_50:
tmp492 = atspre_lt_int_int (arg2, arg3) ;
if (tmp492) {
do {
/* branch: __ats_lab_93 */
__ats_lab_93_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_94_0 ; }
__ats_lab_93_1:
tmp493 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp494 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp495 = atspre_gt_int_int (arg2, 0) ;
if (tmp495) {
tmp496 = atspre_sub_int_int (arg2, 1) ;
tmp497 = atspre_sub_int_int (arg3, 1) ;
arg0 = arg0 ;
arg1 = tmp494 ;
arg2 = tmp496 ;
arg3 = tmp497 ;
goto __ats_lab_auxerr_gts_50 ; // tail call
} else {
/* tmp498 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp499 = */ atspre_prerr_string (ATSstrcst(": the static clause associated with [")) ;
/* tmp500 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2cst (tmp493) ;
/* tmp501 = */ atspre_prerr_string (ATSstrcst("] is missing.")) ;
/* tmp502 = */ atspre_prerr_newline () ;
tmp504 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp504)->tag = 15 ;
ats_selptrset_mac(anairiats_sum_4, tmp504, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp504, atslab_1, tmp493) ;
/* tmp503 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp504) ;
tmp505 = atspre_sub_int_int (arg3, 1) ;
arg0 = arg0 ;
arg1 = tmp494 ;
arg2 = 0 ;
arg3 = tmp505 ;
goto __ats_lab_auxerr_gts_50 ; // tail call
} /* end of [if] */
break ;

/* branch: __ats_lab_94 */
__ats_lab_94_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_94_1:
break ;
} while (0) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp491) */ ;
} /* end of [auxerr_gts_50] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 12687(line=466, offs=7) -- 13058(line=477, offs=43)
*/
ATSstaticdec()
ats_void_type
loop_54 (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp509) ;
ATSlocal (ats_ptr_type, tmp510) ;
ATSlocal (ats_ptr_type, tmp511) ;
ATSlocal (ats_ptr_type, tmp512) ;
ATSlocal (ats_ptr_type, tmp513) ;
ATSlocal (ats_ptr_type, tmp514) ;

__ats_lab_loop_54:
do {
/* branch: __ats_lab_95 */
__ats_lab_95_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_96_0 ; }
__ats_lab_95_1:
tmp510 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp511 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp512 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp512, atslab_0, tmp510) ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp512 ;
// if (ats_ptrget_mac(ats_ptr_type, arg1) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp513 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg1), atslab_1) ;
arg0 = tmp511 ;
arg1 = tmp513 ;
goto __ats_lab_loop_54 ; // tail call
break ;

/* branch: __ats_lab_96 */
__ats_lab_96_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_96_1:
tmp514 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp514 ;
break ;
} while (0) ;
return /* (tmp509) */ ;
} /* end of [loop_54] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 12658(line=464, offs=3) -- 13177(line=483, offs=2)
*/
ATSstaticdec()
ats_ptr_type
list_copy_01322_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp508) ;
ATSlocal (ats_ptr_type, tmp515) ;
// ATSlocal_void (tmp516) ;

__ats_lab_list_copy_01322_ats_ptr_type:
/* ats_ptr_type tmp515 ; */
/* tmp516 = */ loop_54 (arg0, (&tmp515)) ;
tmp508 = tmp515 ;
return (tmp508) ;
} /* end of [list_copy_01322_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 30647(line=1320, offs=18) -- 30753(line=1323, offs=65)
*/
ATSstaticdec()
ats_int_type
__ats_fun_55 (ats_ref_type arg0, ats_ref_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp518) ;
ATSlocal (ats_int_type, tmp519) ;
ATSlocal (ats_int_type, tmp520) ;

__ats_lab___ats_fun_55:
tmp519 = sc2lau_get_dstag_48 (ats_ptrget_mac(ats_ptr_type, arg0)) ;
tmp520 = sc2lau_get_dstag_48 (ats_ptrget_mac(ats_ptr_type, arg1)) ;
tmp518 = atspre_sub_int_int (tmp519, tmp520) ;
return (tmp518) ;
} /* end of [__ats_fun_55] */

typedef struct {
ats_fun_ptr_type closure_fun ;
} __ats_fun_55_closure_type ;

ats_int_type
__ats_fun_55_clofun (ats_clo_ptr_type cloptr, ats_ref_type arg0, ats_ref_type arg1) {
return __ats_fun_55 (arg0, arg1) ;
} /* end of function */

ATSinline()
ats_void_type
__ats_fun_55_closure_init (__ats_fun_55_closure_type *p_clo) {
p_clo->closure_fun = (ats_fun_ptr_type)&__ats_fun_55_clofun ;
return ;
} /* end of function */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 16240(line=604, offs=5) -- 16603(line=618, offs=6)
*/
ATSstaticdec()
ats_void_type
split_57 (ats_ref_type arg0, ats_int_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp524) ;
ATSlocal (ats_bool_type, tmp525) ;
ATSlocal (ats_ptr_type, tmp526) ;
ATSlocal (ats_int_type, tmp527) ;
ATSlocal (ats_ptr_type, tmp528) ;

__ats_lab_split_57:
tmp525 = atspre_igt (arg1, 0) ;
if (tmp525) {
// if (ats_ptrget_mac(ats_ptr_type, arg0) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp526 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg0), atslab_1) ;
tmp527 = atspre_isub (arg1, 1) ;
arg0 = tmp526 ;
arg1 = tmp527 ;
arg2 = arg2 ;
goto __ats_lab_split_57 ; // tail call
} else {
ats_ptrget_mac(ats_ptr_type, arg2) = ats_ptrget_mac(ats_ptr_type, arg0) ;
tmp528 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg0) = tmp528 ;
} /* end of [if] */
return /* (tmp524) */ ;
} /* end of [split_57] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 16641(line=620, offs=5) -- 17444(line=646, offs=36)
*/
ATSstaticdec()
ats_void_type
merge_58 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ref_type arg3) {
/* local vardec */
// ATSlocal_void (tmp529) ;
ATSlocal (ats_ptr_type, tmp530) ;
ATSlocal (ats_ptr_type, tmp531) ;
ATSlocal (ats_ptr_type, tmp532) ;
ATSlocal (ats_ptr_type, tmp533) ;
ATSlocal (ats_int_type, tmp534) ;
ATSlocal (ats_bool_type, tmp535) ;
// ATSlocal_void (tmp536) ;
ATSlocal (ats_ptr_type, tmp537) ;
// ATSlocal_void (tmp538) ;
ATSlocal (ats_ptr_type, tmp539) ;

__ats_lab_merge_58:
do {
/* branch: __ats_lab_97 */
__ats_lab_97_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_100_0 ; }
__ats_lab_97_1:
tmp530 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp531 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
do {
/* branch: __ats_lab_98 */
__ats_lab_98_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_99_0 ; }
__ats_lab_98_1:
tmp532 = &ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp533 = &ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp534 = ((ats_int_type(*)(ats_clo_ptr_type, ats_ref_type, ats_ref_type))(ats_closure_fun(arg2))) (arg2, tmp530, tmp532) ;
tmp535 = atspre_lte_int_int (tmp534, 0) ;
if (tmp535) {
tmp537 = ats_ptrget_mac(ats_ptr_type, tmp531) ;
/* tmp536 = */ merge_58 (tmp537, arg1, arg2, tmp531) ;
ats_ptrget_mac(ats_ptr_type, arg3) = arg0 ;
} else {
tmp539 = ats_ptrget_mac(ats_ptr_type, tmp533) ;
/* tmp538 = */ merge_58 (arg0, tmp539, arg2, tmp533) ;
ats_ptrget_mac(ats_ptr_type, arg3) = arg1 ;
} /* end of [if] */
break ;

/* branch: __ats_lab_99 */
__ats_lab_99_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_99_1:
ats_ptrget_mac(ats_ptr_type, arg3) = arg0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_100 */
__ats_lab_100_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_100_1:
ats_ptrget_mac(ats_ptr_type, arg3) = arg1 ;
break ;
} while (0) ;
return /* (tmp529) */ ;
} /* end of [merge_58] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 5506(line=202, offs=7) -- 5735(line=208, offs=6)
*/
ATSstaticdec()
ats_int_type
loop_60 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp542) ;
ATSlocal (ats_ptr_type, tmp543) ;
ATSlocal (ats_ptr_type, tmp544) ;
ATSlocal (ats_int_type, tmp545) ;

__ats_lab_loop_60:
do {
/* branch: __ats_lab_101 */
__ats_lab_101_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_102_0 ; }
__ats_lab_101_1:
tmp543 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp544 = ats_ptrget_mac(ats_ptr_type, tmp543) ;
tmp545 = atspre_iadd (arg1, 1) ;
arg0 = tmp544 ;
arg1 = tmp545 ;
goto __ats_lab_loop_60 ; // tail call
break ;

/* branch: __ats_lab_102 */
__ats_lab_102_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_102_1:
tmp542 = arg1 ;
break ;
} while (0) ;
return (tmp542) ;
} /* end of [loop_60] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 5439(line=200, offs=16) -- 5775(line=211, offs=4)
*/
ATSstaticdec()
ats_int_type
list_vt_length_01501_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_int_type, tmp541) ;

__ats_lab_list_vt_length_01501_ats_ptr_type:
tmp541 = loop_60 (arg0, 0) ;
return (tmp541) ;
} /* end of [list_vt_length_01501_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 16217(line=602, offs=7) -- 17831(line=665, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_vt_mergesort_01524_ats_ptr_type (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp523) ;
ATSlocal (ats_int_type, tmp540) ;
ATSlocal (ats_bool_type, tmp546) ;
ATSlocal (ats_ptr_type, tmp547) ;
ATSlocal (ats_ptr_type, tmp548) ;
// ATSlocal_void (tmp549) ;
ATSlocal (ats_int_type, tmp550) ;
ATSlocal (ats_int_type, tmp551) ;
ATSlocal (ats_ptr_type, tmp552) ;
ATSlocal (ats_ptr_type, tmp553) ;
// ATSlocal_void (tmp554) ;

__ats_lab_list_vt_mergesort_01524_ats_ptr_type:
tmp540 = list_vt_length_01501_ats_ptr_type (arg0) ;
tmp546 = atspre_igte (tmp540, 2) ;
if (tmp546) {
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp547 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
/* ats_ptr_type tmp548 ; */
tmp551 = atspre_isub (tmp540, 1) ;
tmp550 = atspre_idiv (tmp551, 2) ;
/* tmp549 = */ split_57 (tmp547, tmp550, (&tmp548)) ;
tmp552 = list_vt_mergesort_01524_ats_ptr_type (arg0, arg1) ;
tmp553 = list_vt_mergesort_01524_ats_ptr_type (tmp548, arg1) ;
/* tmp554 = */ merge_58 (tmp552, tmp553, arg1, (&tmp548)) ;
tmp523 = tmp548 ;
} else {
tmp523 = arg0 ;
} /* end of [if] */
return (tmp523) ;
} /* end of [list_vt_mergesort_01524_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 30488(line=1310, offs=5) -- 30882(line=1330, offs=4)
*/
ATSstaticdec()
ats_void_type
auxmain1_51 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp506) ;
ATSlocal (ats_ptr_type, tmp507) ;
ATSlocal (ats_ptr_type, tmp517) ;
ATSlocal (__ats_fun_55_closure_type, tmp521) ;
ATSlocal (ats_ptr_type, tmp522) ;

__ats_lab_auxmain1_51:
tmp507 = list_copy_01322_ats_ptr_type (arg1) ;
/* ats_ptr_type tmp517 ; */
tmp517 = &(tmp521) ;
__ats_fun_55_closure_init (tmp517) ; // closure initialization
tmp522 = list_vt_mergesort_01524_ats_ptr_type (tmp507, tmp517) ;
/* tmp506 = */ auxmain2_52 (arg0, tmp522, arg2) ;
return /* (tmp506) */ ;
} /* end of [auxmain1_51] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 31005(line=1338, offs=5) -- 31723(line=1368, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_61 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3) {
/* local vardec */
// ATSlocal_void (tmp556) ;
ATSlocal (ats_ptr_type, tmp557) ;
ATSlocal (ats_ptr_type, tmp558) ;
ATSlocal (ats_int_type, tmp559) ;
ATSlocal (ats_bool_type, tmp560) ;
ATSlocal (ats_bool_type, tmp561) ;
// ATSlocal_void (tmp562) ;
// ATSlocal_void (tmp563) ;
ATSlocal (ats_int_type, tmp564) ;
ATSlocal (ats_int_type, tmp565) ;

__ats_lab_loop_61:
do {
/* branch: __ats_lab_103 */
__ats_lab_103_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_104_0 ; }
__ats_lab_103_1:
tmp557 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp558 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
ATS_FREE(arg1) ;
tmp559 = sc2lau_get_dstag_48 (tmp557) ;
tmp560 = atspre_gte_int_int (tmp559, 0) ;
if (tmp560) {
tmp561 = atspre_lt_int_int (tmp559, arg3) ;
if (tmp561) {
/* tmp562 = */ auxerr_lt_49 (arg0, tmp557) ;
arg0 = arg0 ;
arg1 = tmp558 ;
arg2 = arg2 ;
arg3 = arg3 ;
goto __ats_lab_loop_61 ; // tail call
} else {
/* tmp563 = */ auxerr_gts_50 (arg0, arg2, arg3, tmp559) ;
tmp564 = atspre_add_int_int (tmp559, 1) ;
arg0 = arg0 ;
arg1 = tmp558 ;
arg2 = arg2 ;
arg3 = tmp564 ;
goto __ats_lab_loop_61 ; // tail call
} /* end of [if] */
} else {
arg0 = arg0 ;
arg1 = tmp558 ;
arg2 = arg2 ;
arg3 = arg3 ;
goto __ats_lab_loop_61 ; // tail call
} /* end of [if] */
break ;

/* branch: __ats_lab_104 */
__ats_lab_104_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_104_1:
tmp565 = list_length_01410_ats_ptr_type (arg2) ;
/* tmp556 = */ auxerr_gts_50 (arg0, arg2, arg3, tmp565) ;
break ;
} while (0) ;
return /* (tmp556) */ ;
} /* end of [loop_61] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 30909(line=1332, offs=5) -- 31825(line=1374, offs=4)
*/
ATSstaticdec()
ats_void_type
auxmain2_52 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp555) ;
ATSlocal (ats_ptr_type, tmp566) ;

__ats_lab_auxmain2_52:
tmp566 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_get_sconlst (arg2) ;
/* tmp555 = */ loop_61 (arg0, arg1, tmp566, 0) ;
return /* (tmp555) */ ;
} /* end of [auxmain2_52] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 31938(line=1383, offs=1) -- 32281(line=1393, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr1_63 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp568) ;
// ATSlocal_void (tmp569) ;
// ATSlocal_void (tmp570) ;
// ATSlocal_void (tmp571) ;
// ATSlocal_void (tmp572) ;
// ATSlocal_void (tmp573) ;
ATSlocal (ats_ptr_type, tmp574) ;

__ats_lab_auxerr1_63:
/* tmp569 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp570 = */ atspre_prerr_string (ATSstrcst(": the static expression being analyzed is of the sort [")) ;
/* tmp571 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg1) ;
/* tmp572 = */ atspre_prerr_string (ATSstrcst("], which is not a base sort as is required.")) ;
/* tmp573 = */ atspre_prerr_newline () ;
tmp574 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp574)->tag = 13 ;
ats_selptrset_mac(anairiats_sum_4, tmp574, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp574, atslab_1, arg1) ;
/* tmp568 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp574) ;
return /* (tmp568) */ ;
} /* end of [auxerr1_63] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 32306(line=1395, offs=1) -- 32648(line=1405, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr2_64 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp575) ;
// ATSlocal_void (tmp576) ;
// ATSlocal_void (tmp577) ;
// ATSlocal_void (tmp578) ;
// ATSlocal_void (tmp579) ;
// ATSlocal_void (tmp580) ;
ATSlocal (ats_ptr_type, tmp581) ;

__ats_lab_auxerr2_64:
/* tmp576 = */ prerr_error2_loc_02395_ (arg0) ;
/* tmp577 = */ atspre_prerr_string (ATSstrcst(": the static expression being analyzed is of the sort [")) ;
/* tmp578 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg1) ;
/* tmp579 = */ atspre_prerr_string (ATSstrcst("], which is not a datasort as is required.")) ;
/* tmp580 = */ atspre_prerr_newline () ;
tmp581 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
((ats_sum_ptr_type)tmp581)->tag = 13 ;
ats_selptrset_mac(anairiats_sum_4, tmp581, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_4, tmp581, atslab_1, arg1) ;
/* tmp575 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp581) ;
return /* (tmp575) */ ;
} /* end of [auxerr2_64] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 31902(line=1380, offs=3) -- 32919(line=1417, offs=4)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp567) ;
ATSlocal (ats_ptr_type, tmp582) ;
ATSlocal (ats_ptr_type, tmp583) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck:
do {
/* branch: __ats_lab_105 */
__ats_lab_105_0:
if (((ats_sum_ptr_type)arg2)->tag != 0) { goto __ats_lab_108_0 ; }
__ats_lab_105_1:
tmp582 = ats_caselptrlab_mac(anairiats_sum_6, arg2, atslab_0) ;
do {
/* branch: __ats_lab_106 */
__ats_lab_106_0:
if (((ats_sum_ptr_type)tmp582)->tag != 2) { goto __ats_lab_107_0 ; }
__ats_lab_106_1:
tmp583 = ats_caselptrlab_mac(anairiats_sum_6, tmp582, atslab_0) ;
/* tmp567 = */ auxmain1_51 (arg0, arg1, tmp583) ;
break ;

/* branch: __ats_lab_107 */
__ats_lab_107_0:
__ats_lab_107_1:
/* tmp567 = */ auxerr2_64 (arg0, arg2) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_108 */
__ats_lab_108_0:
__ats_lab_108_1:
/* tmp567 = */ auxerr1_63 (arg0, arg2) ;
break ;
} while (0) ;
return /* (tmp567) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 33001(line=1424, offs=1) -- 33120(line=1431, offs=2)
*/
ATSstaticdec()
ats_ptr_type
un_d1exp_sing_65 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp584) ;
ATSlocal (ats_ptr_type, tmp585) ;
ATSlocal (ats_ptr_type, tmp586) ;

__ats_lab_un_d1exp_sing_65:
tmp585 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_109 */
__ats_lab_109_0:
if (((ats_sum_ptr_type)tmp585)->tag != 28) { goto __ats_lab_110_0 ; }
__ats_lab_109_1:
tmp586 = ats_caselptrlab_mac(anairiats_sum_6, tmp585, atslab_0) ;
arg0 = tmp586 ;
goto __ats_lab_un_d1exp_sing_65 ; // tail call
break ;

/* branch: __ats_lab_110 */
__ats_lab_110_0:
__ats_lab_110_1:
tmp584 = arg0 ;
break ;
} while (0) ;
return (tmp584) ;
} /* end of [un_d1exp_sing_65] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 19194(line=690, offs=7) -- 19604(line=704, offs=6)
*/
ATSstaticdec()
ats_void_type
loop_68 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp766) ;
ATSlocal (ats_ptr_type, tmp767) ;
ATSlocal (ats_ptr_type, tmp768) ;
ATSlocal (ats_ptr_type, tmp769) ;
ATSlocal (ats_ptr_type, tmp770) ;
ATSlocal (ats_ptr_type, tmp771) ;
ATSlocal (ats_ptr_type, tmp772) ;

__ats_lab_loop_68:
do {
/* branch: __ats_lab_172 */
__ats_lab_172_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_173_0 ; }
__ats_lab_172_1:
tmp767 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp768 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp769 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp769, atslab_0, tmp767) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp769 ;
if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 19444(line=699, offs=13) -- 19470(line=699, offs=39)") ; }
tmp770 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp768 ;
arg1 = arg1 ;
arg2 = tmp770 ;
goto __ats_lab_loop_68 ; // tail call
break ;

/* branch: __ats_lab_173 */
__ats_lab_173_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_173_1:
tmp772 = (ats_sum_ptr_type)0 ;
tmp771 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp771, atslab_0, arg1) ;
ats_selptrset_mac(anairiats_sum_8, tmp771, atslab_1, tmp772) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp771 ;
break ;
} while (0) ;
return /* (tmp766) */ ;
} /* end of [loop_68] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 19136(line=688, offs=13) -- 19698(line=708, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_extend_01337_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp764) ;
ATSlocal (ats_ptr_type, tmp765) ;
// ATSlocal_void (tmp773) ;

__ats_lab_list_extend_01337_ats_ptr_type:
/* ats_ptr_type tmp765 ; */
/* tmp773 = */ loop_68 (arg0, arg1, (&tmp765)) ;
tmp764 = tmp765 ;
return (tmp764) ;
} /* end of [list_extend_01337_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 42765(line=1847, offs=9) -- 42945(line=1855, offs=6)
*/
ATSstaticdec()
ats_ptr_type
auxlst_69 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp792) ;
ATSlocal (ats_ptr_type, tmp793) ;
ATSlocal (ats_ptr_type, tmp794) ;

__ats_lab_auxlst_69:
do {
/* branch: __ats_lab_180 */
__ats_lab_180_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_181_0 ; }
__ats_lab_180_1:
tmp792 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_181 */
__ats_lab_181_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_181_1:
tmp793 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp794 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp792 = auxlst2_70 (tmp793, tmp794) ;
break ;
} while (0) ;
return (tmp792) ;
} /* end of [auxlst_69] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 42979(line=1857, offs=9) -- 43222(line=1868, offs=6)
*/
ATSstaticdec()
ats_ptr_type
auxlst2_70 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp795) ;
ATSlocal (ats_ptr_type, tmp796) ;
ATSlocal (ats_ptr_type, tmp797) ;
ATSlocal (ats_ptr_type, tmp798) ;

__ats_lab_auxlst2_70:
tmp796 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_182 */
__ats_lab_182_0:
if (((ats_sum_ptr_type)tmp796)->tag != 1) { goto __ats_lab_183_0 ; }
__ats_lab_182_1:
tmp797 = ats_caselptrlab_mac(anairiats_sum_6, tmp796, atslab_0) ;
tmp798 = auxlst_69 (arg1) ;
tmp795 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp795, atslab_0, tmp797) ;
ats_selptrset_mac(anairiats_sum_8, tmp795, atslab_1, tmp798) ;
break ;

/* branch: __ats_lab_183 */
__ats_lab_183_0:
__ats_lab_183_1:
tmp795 = auxlst_69 (arg1) ;
break ;
} while (0) ;
return (tmp795) ;
} /* end of [auxlst2_70] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 33193(line=1436, offs=10) -- 48113(line=2055, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp587) ;
ATSlocal (ats_ptr_type, tmp588) ;
ATSlocal (ats_ptr_type, tmp589) ;
ATSlocal (ats_ptr_type, tmp590) ;
ATSlocal (ats_ptr_type, tmp591) ;
ATSlocal (ats_ptr_type, tmp592) ;
ATSlocal (ats_int_type, tmp593) ;
ATSlocal (ats_ptr_type, tmp594) ;
ATSlocal (ats_bool_type, tmp595) ;
ATSlocal (ats_char_type, tmp596) ;
ATSlocal (ats_ptr_type, 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 (ats_ptr_type, tmp606) ;
ATSlocal (ats_ptr_type, tmp607) ;
ATSlocal (ats_ptr_type, tmp608) ;
ATSlocal (ats_ptr_type, tmp609) ;
ATSlocal (ats_ptr_type, tmp610) ;
ATSlocal (ats_ptr_type, tmp611) ;
ATSlocal (ats_ptr_type, tmp612) ;
ATSlocal (ats_ptr_type, tmp613) ;
ATSlocal (ats_ptr_type, tmp614) ;
ATSlocal (ats_ptr_type, tmp615) ;
ATSlocal (ats_ptr_type, tmp616) ;
ATSlocal (ats_ptr_type, tmp617) ;
ATSlocal (ats_ptr_type, tmp618) ;
ATSlocal (ats_ptr_type, tmp619) ;
ATSlocal (ats_ptr_type, tmp620) ;
ATSlocal (ats_int_type, tmp621) ;
ATSlocal (ats_ptr_type, tmp622) ;
ATSlocal (ats_ptr_type, tmp623) ;
ATSlocal (ats_ptr_type, tmp624) ;
ATSlocal (ats_ptr_type, tmp625) ;
ATSlocal (ats_ptr_type, tmp626) ;
ATSlocal (ats_ptr_type, tmp627) ;
ATSlocal (ats_ptr_type, tmp628) ;
ATSlocal (ats_ptr_type, tmp629) ;
ATSlocal (ats_ptr_type, tmp630) ;
ATSlocal (ats_ptr_type, tmp631) ;
ATSlocal (ats_ptr_type, tmp632) ;
ATSlocal (ats_ptr_type, tmp633) ;
ATSlocal (ats_ptr_type, tmp634) ;
ATSlocal (ats_ptr_type, tmp635) ;
ATSlocal (ats_ptr_type, tmp636) ;
ATSlocal (ats_ptr_type, tmp637) ;
ATSlocal (ats_ptr_type, tmp638) ;
ATSlocal (ats_ptr_type, tmp639) ;
// ATSlocal_void (tmp640) ;
// ATSlocal_void (tmp641) ;
ATSlocal (ats_ptr_type, tmp642) ;
ATSlocal (ats_ptr_type, tmp643) ;
// ATSlocal_void (tmp644) ;
ATSlocal (ats_ptr_type, tmp645) ;
ATSlocal (ats_ptr_type, tmp646) ;
// ATSlocal_void (tmp647) ;
// ATSlocal_void (tmp648) ;
ATSlocal (ats_ptr_type, tmp649) ;
ATSlocal (ats_ptr_type, tmp650) ;
// ATSlocal_void (tmp651) ;
ATSlocal (ats_ptr_type, tmp652) ;
// ATSlocal_void (tmp653) ;
// ATSlocal_void (tmp654) ;
ATSlocal (ats_ptr_type, tmp655) ;
ATSlocal (ats_ptr_type, tmp656) ;
// ATSlocal_void (tmp657) ;
ATSlocal (ats_ptr_type, tmp658) ;
ATSlocal (ats_ptr_type, tmp659) ;
ATSlocal (ats_int_type, tmp660) ;
ATSlocal (ats_ptr_type, tmp661) ;
ATSlocal (ats_ptr_type, tmp662) ;
ATSlocal (ats_ptr_type, tmp663) ;
ATSlocal (ats_ptr_type, tmp664) ;
ATSlocal (ats_ptr_type, tmp665) ;
ATSlocal (ats_ptr_type, tmp666) ;
ATSlocal (ats_ptr_type, tmp667) ;
ATSlocal (ats_ptr_type, tmp668) ;
ATSlocal (ats_ptr_type, tmp669) ;
ATSlocal (ats_int_type, tmp670) ;
ATSlocal (ats_ptr_type, tmp671) ;
ATSlocal (ats_ptr_type, tmp672) ;
ATSlocal (ats_ptr_type, tmp673) ;
ATSlocal (ats_ptr_type, tmp674) ;
ATSlocal (ats_ptr_type, tmp675) ;
ATSlocal (ats_ptr_type, tmp676) ;
ATSlocal (ats_ptr_type, tmp677) ;
ATSlocal (ats_ptr_type, tmp678) ;
ATSlocal (ats_ptr_type, tmp679) ;
ATSlocal (ats_ptr_type, tmp680) ;
ATSlocal (ats_ptr_type, tmp681) ;
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) ;
ATSlocal (ats_ptr_type, tmp687) ;
ATSlocal (ats_ptr_type, tmp688) ;
ATSlocal (ats_ptr_type, tmp689) ;
ATSlocal (ats_ptr_type, tmp690) ;
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_int_type, tmp699) ;
ATSlocal (ats_ptr_type, tmp700) ;
ATSlocal (ats_bool_type, tmp701) ;
ATSlocal (ats_ptr_type, tmp702) ;
ATSlocal (ats_ptr_type, tmp703) ;
ATSlocal (ats_int_type, tmp704) ;
ATSlocal (ats_bool_type, tmp705) ;
ATSlocal (ats_ptr_type, tmp706) ;
ATSlocal (ats_ptr_type, tmp707) ;
ATSlocal (ats_ptr_type, tmp708) ;
ATSlocal (ats_ptr_type, tmp709) ;
ATSlocal (ats_ptr_type, tmp710) ;
ATSlocal (ats_ptr_type, tmp711) ;
ATSlocal (ats_ptr_type, tmp712) ;
ATSlocal (ats_ptr_type, tmp713) ;
// ATSlocal_void (tmp714) ;
ATSlocal (ats_int_type, tmp715) ;
ATSlocal (ats_ptr_type, tmp716) ;
ATSlocal (ats_ptr_type, tmp717) ;
ATSlocal (ats_ptr_type, tmp718) ;
ATSlocal (ats_ptr_type, tmp719) ;
ATSlocal (ats_ptr_type, tmp720) ;
ATSlocal (ats_ptr_type, tmp721) ;
ATSlocal (ats_int_type, tmp722) ;
ATSlocal (ats_int_type, tmp723) ;
ATSlocal (ats_ptr_type, tmp724) ;
ATSlocal (ats_ptr_type, tmp725) ;
ATSlocal (ats_int_type, tmp726) ;
ATSlocal (ats_int_type, tmp727) ;
ATSlocal (ats_ptr_type, tmp728) ;
ATSlocal (ats_ptr_type, tmp729) ;
ATSlocal (ats_ptr_type, tmp730) ;
ATSlocal (ats_ptr_type, tmp731) ;
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 (ats_ptr_type, tmp738) ;
ATSlocal (ats_ptr_type, tmp739) ;
ATSlocal (ats_ptr_type, tmp740) ;
ATSlocal (ats_ptr_type, tmp741) ;
ATSlocal (ats_ptr_type, tmp742) ;
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) ;
ATSlocal (ats_ptr_type, tmp750) ;
ATSlocal (ats_ptr_type, tmp751) ;
ATSlocal (ats_ptr_type, tmp752) ;
ATSlocal (ats_ptr_type, tmp753) ;
ATSlocal (ats_int_type, tmp754) ;
ATSlocal (ats_ptr_type, tmp755) ;
ATSlocal (ats_ptr_type, tmp756) ;
ATSlocal (ats_ptr_type, tmp757) ;
ATSlocal (ats_ptr_type, tmp758) ;
ATSlocal (ats_bool_type, tmp759) ;
ATSlocal (ats_ptr_type, tmp760) ;
ATSlocal (ats_ptr_type, tmp761) ;
ATSlocal (ats_ptr_type, tmp762) ;
ATSlocal (ats_ptr_type, tmp763) ;
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) ;
ATSlocal (ats_ptr_type, tmp779) ;
ATSlocal (ats_ptr_type, tmp780) ;
ATSlocal (ats_ptr_type, tmp781) ;
ATSlocal (ats_ptr_type, tmp782) ;
ATSlocal (ats_ptr_type, tmp783) ;
ATSlocal (ats_ptr_type, tmp784) ;
ATSlocal (ats_ptr_type, tmp785) ;
ATSlocal (ats_ptr_type, tmp786) ;
ATSlocal (ats_int_type, tmp787) ;
ATSlocal (ats_ptr_type, tmp788) ;
ATSlocal (ats_ptr_type, tmp789) ;
ATSlocal (ats_ptr_type, tmp790) ;
ATSlocal (ats_ptr_type, tmp791) ;
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) ;
ATSlocal (ats_ptr_type, tmp811) ;
ATSlocal (ats_int_type, tmp812) ;
ATSlocal (ats_ptr_type, tmp813) ;
ATSlocal (ats_ptr_type, tmp814) ;
ATSlocal (anairiats_rec_10, tmp815) ;
ATSlocal (ats_int_type, tmp816) ;
ATSlocal (ats_ptr_type, tmp817) ;
ATSlocal (ats_ptr_type, tmp818) ;
ATSlocal (ats_int_type, tmp819) ;
ATSlocal (ats_ptr_type, tmp820) ;
ATSlocal (ats_ptr_type, tmp821) ;
ATSlocal (anairiats_rec_10, tmp822) ;
ATSlocal (ats_int_type, tmp823) ;
ATSlocal (ats_ptr_type, tmp824) ;
ATSlocal (ats_ptr_type, tmp825) ;
ATSlocal (ats_ptr_type, tmp826) ;
ATSlocal (ats_ptr_type, tmp827) ;
ATSlocal (ats_ptr_type, tmp828) ;
ATSlocal (ats_ptr_type, tmp829) ;
ATSlocal (ats_int_type, tmp830) ;
ATSlocal (ats_ptr_type, tmp831) ;
ATSlocal (ats_ptr_type, tmp832) ;
ATSlocal (ats_ptr_type, tmp833) ;
ATSlocal (ats_ptr_type, tmp834) ;
ATSlocal (ats_ptr_type, tmp835) ;
// ATSlocal_void (tmp836) ;
// ATSlocal_void (tmp837) ;
// ATSlocal_void (tmp838) ;
// ATSlocal_void (tmp839) ;
ATSlocal (ats_ptr_type, tmp840) ;
// ATSlocal_void (tmp841) ;
ATSlocal (ats_ptr_type, tmp842) ;
ATSlocal (ats_ptr_type, tmp843) ;
// ATSlocal_void (tmp844) ;
// ATSlocal_void (tmp845) ;
ATSlocal (anairiats_rec_2, tmp846) ;
ATSlocal (ats_ptr_type, tmp847) ;
// ATSlocal_void (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) ;
// ATSlocal_void (tmp854) ;
// ATSlocal_void (tmp855) ;
ATSlocal (ats_ptr_type, tmp856) ;
ATSlocal (ats_ptr_type, tmp857) ;
ATSlocal (ats_ptr_type, tmp858) ;
// ATSlocal_void (tmp859) ;
ATSlocal (ats_ptr_type, tmp860) ;
ATSlocal (ats_ptr_type, tmp861) ;
ATSlocal (ats_ptr_type, 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 (ats_ptr_type, tmp870) ;
ATSlocal (ats_ptr_type, tmp871) ;
ATSlocal (ats_ptr_type, tmp872) ;
// ATSlocal_void (tmp873) ;
ATSlocal (ats_ptr_type, tmp874) ;
ATSlocal (ats_ptr_type, tmp875) ;
ATSlocal (ats_ptr_type, tmp876) ;
ATSlocal (ats_ptr_type, tmp877) ;
ATSlocal (ats_ptr_type, tmp878) ;
ATSlocal (ats_ptr_type, tmp879) ;
ATSlocal (ats_ptr_type, tmp880) ;
ATSlocal (ats_ptr_type, tmp881) ;
ATSlocal (ats_ptr_type, tmp882) ;
ATSlocal (ats_ptr_type, tmp883) ;
ATSlocal (ats_ptr_type, tmp884) ;
ATSlocal (ats_ptr_type, tmp885) ;
ATSlocal (ats_ptr_type, tmp886) ;
ATSlocal (ats_ptr_type, tmp887) ;
ATSlocal (ats_ptr_type, tmp888) ;
ATSlocal (ats_ptr_type, tmp889) ;
ATSlocal (ats_ptr_type, tmp890) ;
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_void (tmp896) ;
// ATSlocal_void (tmp897) ;
// ATSlocal_void (tmp898) ;
// ATSlocal_void (tmp899) ;
// ATSlocal_void (tmp900) ;
// ATSlocal_void (tmp901) ;
ATSlocal (ats_ptr_type, tmp902) ;
// ATSlocal_void (tmp903) ;
// ATSlocal_void (tmp904) ;
// ATSlocal_void (tmp905) ;
// ATSlocal_void (tmp906) ;
ATSlocal (ats_ptr_type, tmp907) ;
// ATSlocal_void (tmp908) ;
// ATSlocal_void (tmp909) ;
// ATSlocal_void (tmp910) ;
// ATSlocal_void (tmp911) ;
// ATSlocal_void (tmp912) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr:
tmp588 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_loc) ;
tmp589 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_111 */
__ats_lab_111_0:
if (((ats_sum_ptr_type)tmp589)->tag != 0) { goto __ats_lab_112_0 ; }
__ats_lab_111_1:
tmp590 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = d1exp_tr_dqid_7 (arg0, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp590) ;
break ;

/* branch: __ats_lab_112 */
__ats_lab_112_0:
if (((ats_sum_ptr_type)tmp589)->tag != 1) { goto __ats_lab_113_0 ; }
__ats_lab_112_1:
tmp591 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp592 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp587 = d1exp_tr_dqid_7 (arg0, tmp591, tmp592) ;
break ;

/* branch: __ats_lab_113 */
__ats_lab_113_0:
if (((ats_sum_ptr_type)tmp589)->tag != 3) { goto __ats_lab_114_0 ; }
__ats_lab_113_1:
tmp593 = ats_caselptrlab_mac(anairiats_sum_23, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_int (tmp588, tmp593) ;
break ;

/* branch: __ats_lab_114 */
__ats_lab_114_0:
if (((ats_sum_ptr_type)tmp589)->tag != 4) { goto __ats_lab_115_0 ; }
__ats_lab_114_1:
tmp594 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_intrep (tmp588, tmp594) ;
break ;

/* branch: __ats_lab_115 */
__ats_lab_115_0:
if (((ats_sum_ptr_type)tmp589)->tag != 5) { goto __ats_lab_116_0 ; }
__ats_lab_115_1:
tmp595 = ats_caselptrlab_mac(anairiats_sum_24, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool (tmp588, tmp595) ;
break ;

/* branch: __ats_lab_116 */
__ats_lab_116_0:
if (((ats_sum_ptr_type)tmp589)->tag != 6) { goto __ats_lab_117_0 ; }
__ats_lab_116_1:
tmp596 = ats_caselptrlab_mac(anairiats_sum_25, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_char (tmp588, tmp596) ;
break ;

/* branch: __ats_lab_117 */
__ats_lab_117_0:
if (((ats_sum_ptr_type)tmp589)->tag != 7) { goto __ats_lab_118_0 ; }
__ats_lab_117_1:
tmp597 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_float (tmp588, tmp597) ;
break ;

/* branch: __ats_lab_118 */
__ats_lab_118_0:
if (((ats_sum_ptr_type)tmp589)->tag != 8) { goto __ats_lab_119_0 ; }
__ats_lab_118_1:
tmp598 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_string (tmp588, tmp598) ;
break ;

/* branch: __ats_lab_119 */
__ats_lab_119_0:
if (((ats_sum_ptr_type)tmp589)->tag != 9) { goto __ats_lab_120_0 ; }
__ats_lab_119_1:
tmp599 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_i0nt (tmp588, tmp599) ;
break ;

/* branch: __ats_lab_120 */
__ats_lab_120_0:
if (((ats_sum_ptr_type)tmp589)->tag != 10) { goto __ats_lab_121_0 ; }
__ats_lab_120_1:
tmp600 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_c0har (tmp588, tmp600) ;
break ;

/* branch: __ats_lab_121 */
__ats_lab_121_0:
if (((ats_sum_ptr_type)tmp589)->tag != 11) { goto __ats_lab_122_0 ; }
__ats_lab_121_1:
tmp601 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_f0loat (tmp588, tmp601) ;
break ;

/* branch: __ats_lab_122 */
__ats_lab_122_0:
if (((ats_sum_ptr_type)tmp589)->tag != 12) { goto __ats_lab_123_0 ; }
__ats_lab_122_1:
tmp602 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_s0tring (tmp588, tmp602) ;
break ;

/* branch: __ats_lab_123 */
__ats_lab_123_0:
if (((ats_sum_ptr_type)tmp589)->tag != 15) { goto __ats_lab_124_0 ; }
__ats_lab_123_1:
tmp603 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cstsp (tmp588, tmp603) ;
break ;

/* branch: __ats_lab_124 */
__ats_lab_124_0:
if (((ats_sum_ptr_type)tmp589)->tag != 16) { goto __ats_lab_125_0 ; }
__ats_lab_124_1:
tmp604 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp605 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp604) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_literal (tmp588, tmp605) ;
break ;

/* branch: __ats_lab_125 */
__ats_lab_125_0:
if (((ats_sum_ptr_type)tmp589)->tag != 13) { goto __ats_lab_126_0 ; }
__ats_lab_125_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_top (tmp588) ;
break ;

/* branch: __ats_lab_126 */
__ats_lab_126_0:
if (((ats_sum_ptr_type)tmp589)->tag != 14) { goto __ats_lab_127_0 ; }
__ats_lab_126_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp588) ;
break ;

/* branch: __ats_lab_127 */
__ats_lab_127_0:
if (((ats_sum_ptr_type)tmp589)->tag != 17) { goto __ats_lab_128_0 ; }
__ats_lab_127_1:
tmp606 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp607 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp608 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp606) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extval (tmp588, tmp608, tmp607) ;
break ;

/* branch: __ats_lab_128 */
__ats_lab_128_0:
if (((ats_sum_ptr_type)tmp589)->tag != 18) { goto __ats_lab_129_0 ; }
__ats_lab_128_1:
tmp609 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp610 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp611 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
tmp612 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp609) ;
tmp613 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp611) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extfcall (tmp588, tmp612, tmp610, tmp613) ;
break ;

/* branch: __ats_lab_129 */
__ats_lab_129_0:
if (((ats_sum_ptr_type)tmp589)->tag != 19) { goto __ats_lab_130_0 ; }
__ats_lab_129_1:
tmp614 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_0) ;
tmp615 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_1) ;
tmp616 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_2) ;
tmp617 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_3) ;
tmp618 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp614) ;
tmp619 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp615) ;
tmp620 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp617) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extmcall (tmp588, tmp618, tmp619, tmp616, tmp620) ;
break ;

/* branch: __ats_lab_130 */
__ats_lab_130_0:
if (((ats_sum_ptr_type)tmp589)->tag != 61) { goto __ats_lab_131_0 ; }
__ats_lab_130_1:
tmp621 = ats_caselptrlab_mac(anairiats_sum_23, tmp589, atslab_0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_loopexn (tmp588, tmp621) ;
break ;

/* branch: __ats_lab_131 */
__ats_lab_131_0:
if (((ats_sum_ptr_type)tmp589)->tag != 20) { goto __ats_lab_132_0 ; }
__ats_lab_131_1:
tmp622 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp623 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp624 = un_d1exp_sing_65 (tmp623) ;
tmp625 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (tmp622) ;
tmp626 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp624) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_foldat (tmp588, tmp625, tmp626) ;
break ;

/* branch: __ats_lab_132 */
__ats_lab_132_0:
if (((ats_sum_ptr_type)tmp589)->tag != 21) { goto __ats_lab_133_0 ; }
__ats_lab_132_1:
tmp627 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp628 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp629 = un_d1exp_sing_65 (tmp628) ;
tmp630 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (tmp627) ;
tmp631 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp629) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_freeat (tmp588, tmp630, tmp631) ;
break ;

/* branch: __ats_lab_133 */
__ats_lab_133_0:
if (((ats_sum_ptr_type)tmp589)->tag != 22) { goto __ats_lab_134_0 ; }
__ats_lab_133_1:
tmp632 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp633 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp634 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, tmp632), atslab_dqi0de_qua) ;
tmp635 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, tmp632), atslab_dqi0de_sym) ;
tmp636 = d1exp_tr_dqid_7 (arg0, tmp634, tmp635) ;
tmp637 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__t1mpmarglst_tr (tmp633) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tmpid (tmp588, tmp636, tmp637) ;
break ;

/* branch: __ats_lab_134 */
__ats_lab_134_0:
if (((ats_sum_ptr_type)tmp589)->tag != 23) { goto __ats_lab_135_0 ; }
__ats_lab_134_1:
tmp638 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp639 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
/* tmp640 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp641 = ats_selsin_mac(tmp640, atslab_1) */ ;
tmp642 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp638) ;
tmp643 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp639) ;
/* tmp644 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let (tmp588, tmp642, tmp643) ;
break ;

/* branch: __ats_lab_135 */
__ats_lab_135_0:
if (((ats_sum_ptr_type)tmp589)->tag != 24) { goto __ats_lab_136_0 ; }
__ats_lab_135_1:
tmp645 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp646 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
/* tmp647 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp648 = ats_selsin_mac(tmp647, atslab_1) */ ;
tmp649 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp646) ;
tmp650 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp645) ;
/* tmp651 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_where (tmp588, tmp650, tmp649) ;
break ;

/* branch: __ats_lab_136 */
__ats_lab_136_0:
if (((ats_sum_ptr_type)tmp589)->tag != 25) { goto __ats_lab_137_0 ; }
__ats_lab_136_1:
tmp652 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
/* tmp653 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp654 = ats_selsin_mac(tmp653, atslab_1) */ ;
tmp655 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp652) ;
tmp656 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp588) ;
/* tmp657 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let (tmp588, tmp655, tmp656) ;
break ;

/* branch: __ats_lab_137 */
__ats_lab_137_0:
if (((ats_sum_ptr_type)tmp589)->tag != 26) { goto __ats_lab_140_0 ; }
__ats_lab_137_1:
tmp658 = ats_caselptrlab_mac(anairiats_sum_29, tmp589, atslab_0) ;
tmp659 = ats_caselptrlab_mac(anairiats_sum_29, tmp589, atslab_1) ;
tmp660 = ats_caselptrlab_mac(anairiats_sum_29, tmp589, atslab_2) ;
tmp661 = ats_caselptrlab_mac(anairiats_sum_29, tmp589, atslab_3) ;
tmp662 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, tmp658), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_138 */
__ats_lab_138_0:
if (((ats_sum_ptr_type)tmp662)->tag != 27) { goto __ats_lab_139_0 ; }
__ats_lab_138_1:
tmp663 = ats_caselptrlab_mac(anairiats_sum_4, tmp662, atslab_0) ;
tmp664 = ats_caselptrlab_mac(anairiats_sum_4, tmp662, atslab_1) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, tmp658, tmp663, tmp664, tmp659, tmp660, tmp661) ;
break ;

/* branch: __ats_lab_139 */
__ats_lab_139_0:
__ats_lab_139_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn (arg0, tmp658, tmp659, tmp660, tmp661) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_140 */
__ats_lab_140_0:
if (((ats_sum_ptr_type)tmp589)->tag != 27) { goto __ats_lab_141_0 ; }
__ats_lab_140_1:
tmp665 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp666 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp667 = (ats_sum_ptr_type)0 ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, arg0, tmp665, tmp666, tmp588, -2, tmp667) ;
break ;

/* branch: __ats_lab_141 */
__ats_lab_141_0:
if (((ats_sum_ptr_type)tmp589)->tag != 28) { goto __ats_lab_142_0 ; }
__ats_lab_141_1:
tmp668 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp669 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp668) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sing (tmp588, tmp669) ;
break ;

/* branch: __ats_lab_142 */
__ats_lab_142_0:
if (((ats_sum_ptr_type)tmp589)->tag != 29) { goto __ats_lab_145_0 ; }
__ats_lab_142_1:
tmp670 = ats_caselptrlab_mac(anairiats_sum_12, tmp589, atslab_0) ;
tmp671 = ats_caselptrlab_mac(anairiats_sum_12, tmp589, atslab_1) ;
do {
/* branch: __ats_lab_143 */
__ats_lab_143_0:
if (tmp671 == (ats_sum_ptr_type)0) { goto __ats_lab_144_0 ; }
__ats_lab_143_1:
tmp672 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp671) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_list (tmp588, tmp670, tmp672) ;
break ;

/* branch: __ats_lab_144 */
__ats_lab_144_0:
// if (tmp671 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_144_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp588) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_145 */
__ats_lab_145_0:
if (((ats_sum_ptr_type)tmp589)->tag != 30) { goto __ats_lab_146_0 ; }
__ats_lab_145_1:
tmp673 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_0) ;
tmp674 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_1) ;
tmp675 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_2) ;
tmp676 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_3) ;
tmp677 = i1nvresstate_tr_37 (tmp673) ;
tmp678 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp674) ;
tmp679 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp675) ;
tmp680 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp676) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifhead (tmp588, tmp677, tmp678, tmp679, tmp680) ;
break ;

/* branch: __ats_lab_146 */
__ats_lab_146_0:
if (((ats_sum_ptr_type)tmp589)->tag != 31) { goto __ats_lab_147_0 ; }
__ats_lab_146_1:
tmp681 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_0) ;
tmp682 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_1) ;
tmp683 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_2) ;
tmp684 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_3) ;
tmp685 = i1nvresstate_tr_37 (tmp681) ;
tmp686 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_bool (tmp682) ;
tmp687 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp683) ;
tmp688 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp684) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sifhead (tmp588, tmp685, tmp686, tmp687, tmp688) ;
break ;

/* branch: __ats_lab_147 */
__ats_lab_147_0:
if (((ats_sum_ptr_type)tmp589)->tag != 32) { goto __ats_lab_148_0 ; }
__ats_lab_147_1:
tmp689 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp690 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp691 = i1nvresstate_tr_37 (tmp689) ;
tmp692 = i1fclist_tr_40 (tmp690) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifcasehd (tmp588, tmp691, tmp692) ;
break ;

/* branch: __ats_lab_148 */
__ats_lab_148_0:
if (((ats_sum_ptr_type)tmp589)->tag != 33) { goto __ats_lab_149_0 ; }
__ats_lab_148_1:
tmp693 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_0) ;
tmp694 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_1) ;
tmp695 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_2) ;
tmp696 = ats_caselptrlab_mac(anairiats_sum_27, tmp589, atslab_3) ;
tmp697 = i1nvresstate_tr_37 (tmp694) ;
tmp698 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp695) ;
tmp699 = list_length_01410_ats_ptr_type (tmp698) ;
tmp701 = atspre_igt (tmp699, 0) ;
if (tmp701) {
tmp700 = tmp698 ;
} else {
tmp702 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp588) ;
tmp703 = (ats_sum_ptr_type)0 ;
tmp700 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp700, atslab_0, tmp702) ;
ats_selptrset_mac(anairiats_sum_8, tmp700, atslab_1, tmp703) ;
} /* end of [if] */
tmp705 = atspre_igt (tmp699, 0) ;
if (tmp705) {
tmp704 = tmp699 ;
} else {
tmp704 = 1 ;
} /* end of [if] */
tmp706 = c1laulst_tr_45 (tmp704, tmp696) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_casehead (tmp588, tmp693, tmp697, tmp700, tmp706) ;
break ;

/* branch: __ats_lab_149 */
__ats_lab_149_0:
if (((ats_sum_ptr_type)tmp589)->tag != 34) { goto __ats_lab_150_0 ; }
__ats_lab_149_1:
tmp707 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp708 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp709 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
tmp710 = i1nvresstate_tr_37 (tmp707) ;
tmp711 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup (tmp708) ;
tmp712 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, tmp711), atslab_s2exp_srt) ;
tmp713 = sc1laulst_trdn_47 (tmp709, tmp712) ;
/* tmp714 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck (tmp588, tmp713, tmp712) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_scasehead (tmp588, tmp710, tmp711, tmp713) ;
break ;

/* branch: __ats_lab_150 */
__ats_lab_150_0:
if (((ats_sum_ptr_type)tmp589)->tag != 35) { goto __ats_lab_156_0 ; }
__ats_lab_150_1:
tmp715 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_0) ;
tmp716 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_1) ;
tmp717 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_2) ;
do {
/* branch: __ats_lab_151 */
__ats_lab_151_0:
if (tmp716 == (ats_sum_ptr_type)0) { goto __ats_lab_155_0 ; }
__ats_lab_151_1:
tmp719 = ats_caselptrlab_mac(anairiats_sum_7, tmp716, atslab_0) ;
do {
/* branch: __ats_lab_152 */
__ats_lab_152_0:
if (tmp715 != 0) { goto __ats_lab_153_0 ; }
__ats_lab_152_1:
tmp720 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_t0ype (tmp719) ;
break ;

/* branch: __ats_lab_153 */
__ats_lab_153_0:
if (tmp715 != 1) { goto __ats_lab_154_0 ; }
__ats_lab_153_1:
tmp720 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp719) ;
break ;

/* branch: __ats_lab_154 */
__ats_lab_154_0:
__ats_lab_154_1:
tmp720 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp719) ;
break ;
} while (0) ;
tmp718 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp718, atslab_0, tmp720) ;
break ;

/* branch: __ats_lab_155 */
__ats_lab_155_0:
// if (tmp716 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_155_1:
tmp718 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp721 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp717) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lst (tmp588, tmp715, tmp718, tmp721) ;
break ;

/* branch: __ats_lab_156 */
__ats_lab_156_0:
if (((ats_sum_ptr_type)tmp589)->tag != 36) { goto __ats_lab_157_0 ; }
__ats_lab_156_1:
tmp722 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_0) ;
tmp723 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_1) ;
tmp724 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_2) ;
tmp725 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp724) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tup (tmp588, tmp722, tmp723, tmp725) ;
break ;

/* branch: __ats_lab_157 */
__ats_lab_157_0:
if (((ats_sum_ptr_type)tmp589)->tag != 37) { goto __ats_lab_158_0 ; }
__ats_lab_157_1:
tmp726 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_0) ;
tmp727 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_1) ;
tmp728 = ats_caselptrlab_mac(anairiats_sum_32, tmp589, atslab_2) ;
tmp729 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp728, &_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_rec (tmp588, tmp726, tmp727, ats_castfn_mac(ats_ptr_type, tmp729)) ;
break ;

/* branch: __ats_lab_158 */
__ats_lab_158_0:
if (((ats_sum_ptr_type)tmp589)->tag != 38) { goto __ats_lab_159_0 ; }
__ats_lab_158_1:
tmp730 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp731 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp730) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_seq2 (tmp588, tmp731) ;
break ;

/* branch: __ats_lab_159 */
__ats_lab_159_0:
if (((ats_sum_ptr_type)tmp589)->tag != 39) { goto __ats_lab_160_0 ; }
__ats_lab_159_1:
tmp732 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp733 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp734 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
tmp587 = d1exp_tr_arrsub_29 (arg0, tmp732, tmp733, tmp734) ;
break ;

/* branch: __ats_lab_160 */
__ats_lab_160_0:
if (((ats_sum_ptr_type)tmp589)->tag != 41) { goto __ats_lab_163_0 ; }
__ats_lab_160_1:
tmp735 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp736 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp737 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1expopt_trup (tmp735) ;
do {
/* branch: __ats_lab_161 */
__ats_lab_161_0:
if (tmp737 == (ats_sum_ptr_type)0) { goto __ats_lab_162_0 ; }
__ats_lab_161_1:
tmp739 = ats_caselptrlab_mac(anairiats_sum_7, tmp737, atslab_0) ;
tmp738 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp738, atslab_0, tmp739) ;
break ;

/* branch: __ats_lab_162 */
__ats_lab_162_0:
// if (tmp737 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_162_1:
tmp738 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp740 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp736) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrpsz (tmp588, tmp738, tmp740) ;
break ;

/* branch: __ats_lab_163 */
__ats_lab_163_0:
if (((ats_sum_ptr_type)tmp589)->tag != 40) { goto __ats_lab_168_0 ; }
__ats_lab_163_1:
tmp741 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp742 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp743 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
do {
/* branch: __ats_lab_164 */
__ats_lab_164_0:
if (tmp742 == (ats_sum_ptr_type)0) { goto __ats_lab_167_0 ; }
__ats_lab_164_1:
do {
/* branch: __ats_lab_165 */
__ats_lab_165_0:
if (tmp743 == (ats_sum_ptr_type)0) { goto __ats_lab_166_0 ; }
__ats_lab_165_1:
tmp744 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype ;
break ;

/* branch: __ats_lab_166 */
__ats_lab_166_0:
// if (tmp743 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_166_1:
tmp744 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_167 */
__ats_lab_167_0:
// if (tmp742 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_167_1:
tmp744 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype ;
break ;
} while (0) ;
tmp745 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp741, tmp744) ;
tmp746 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp742) ;
tmp747 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp743) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrinit (tmp588, tmp745, tmp746, tmp747) ;
break ;

/* branch: __ats_lab_168 */
__ats_lab_168_0:
if (((ats_sum_ptr_type)tmp589)->tag != 42) { goto __ats_lab_169_0 ; }
__ats_lab_168_1:
tmp748 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp749 = un_d1exp_sing_65 (tmp748) ;
tmp750 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp749) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ptrof (tmp588, tmp750) ;
break ;

/* branch: __ats_lab_169 */
__ats_lab_169_0:
if (((ats_sum_ptr_type)tmp589)->tag != 43) { goto __ats_lab_170_0 ; }
__ats_lab_169_1:
tmp751 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp752 = un_d1exp_sing_65 (tmp751) ;
tmp753 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp752) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_viewat (tmp588, tmp753) ;
break ;

/* branch: __ats_lab_170 */
__ats_lab_170_0:
if (((ats_sum_ptr_type)tmp589)->tag != 44) { goto __ats_lab_175_0 ; }
__ats_lab_170_1:
tmp754 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_0) ;
tmp755 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_1) ;
tmp756 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_2) ;
tmp757 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp755) ;
tmp758 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr (tmp756) ;
tmp759 = atspre_eq_int_int (tmp754, 0) ;
if (tmp759) {
tmp760 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp757), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_171 */
__ats_lab_171_0:
if (((ats_sum_ptr_type)tmp760)->tag != 39) { goto __ats_lab_174_0 ; }
__ats_lab_171_1:
tmp761 = ats_caselptrlab_mac(anairiats_sum_4, tmp760, atslab_0) ;
tmp762 = ats_caselptrlab_mac(anairiats_sum_4, tmp760, atslab_1) ;
tmp763 = list_extend_01337_ats_ptr_type (tmp762, tmp758) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot (tmp588, tmp761, ats_castfn_mac(ats_ptr_type, tmp763)) ;
break ;

/* branch: __ats_lab_174 */
__ats_lab_174_0:
__ats_lab_174_1:
tmp775 = (ats_sum_ptr_type)0 ;
tmp774 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp774, atslab_0, tmp758) ;
ats_selptrset_mac(anairiats_sum_8, tmp774, atslab_1, tmp775) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot (tmp588, tmp757, tmp774) ;
break ;
} while (0) ;
} else {
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_ptr (tmp588, tmp757, tmp758) ;
} /* end of [if] */
break ;

/* branch: __ats_lab_175 */
__ats_lab_175_0:
if (((ats_sum_ptr_type)tmp589)->tag != 45) { goto __ats_lab_176_0 ; }
__ats_lab_175_1:
tmp776 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp777 = un_d1exp_sing_65 (tmp776) ;
tmp778 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp777) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_raise (tmp588, tmp778) ;
break ;

/* branch: __ats_lab_176 */
__ats_lab_176_0:
if (((ats_sum_ptr_type)tmp589)->tag != 46) { goto __ats_lab_177_0 ; }
__ats_lab_176_1:
tmp779 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp780 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp781 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp779) ;
tmp782 = un_d1exp_sing_65 (tmp780) ;
tmp783 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp782) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_effmask (tmp588, tmp781, tmp783) ;
break ;

/* branch: __ats_lab_177 */
__ats_lab_177_0:
if (((ats_sum_ptr_type)tmp589)->tag != 47) { goto __ats_lab_178_0 ; }
__ats_lab_177_1:
tmp784 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp785 = un_d1exp_sing_65 (tmp784) ;
tmp786 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp785) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_showtype (tmp588, tmp786) ;
break ;

/* branch: __ats_lab_178 */
__ats_lab_178_0:
if (((ats_sum_ptr_type)tmp589)->tag != 48) { goto __ats_lab_179_0 ; }
__ats_lab_178_1:
tmp787 = ats_caselptrlab_mac(anairiats_sum_12, tmp589, atslab_0) ;
tmp788 = ats_caselptrlab_mac(anairiats_sum_12, tmp589, atslab_1) ;
tmp789 = un_d1exp_sing_65 (tmp788) ;
tmp790 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp789) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vcopyenv (tmp588, tmp787, tmp790) ;
break ;

/* branch: __ats_lab_179 */
__ats_lab_179_0:
if (((ats_sum_ptr_type)tmp589)->tag != 49) { goto __ats_lab_188_0 ; }
__ats_lab_179_1:
tmp791 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp799 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp791) ;
tmp801 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp799), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_184 */
__ats_lab_184_0:
if (((ats_sum_ptr_type)tmp801)->tag != 1) { goto __ats_lab_185_0 ; }
__ats_lab_184_1:
tmp802 = ats_caselptrlab_mac(anairiats_sum_6, tmp801, atslab_0) ;
tmp803 = (ats_sum_ptr_type)0 ;
tmp800 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp800, atslab_0, tmp802) ;
ats_selptrset_mac(anairiats_sum_8, tmp800, atslab_1, tmp803) ;
break ;

/* branch: __ats_lab_185 */
__ats_lab_185_0:
if (((ats_sum_ptr_type)tmp801)->tag != 33) { goto __ats_lab_186_0 ; }
__ats_lab_185_1:
tmp804 = ats_caselptrlab_mac(anairiats_sum_6, tmp801, atslab_0) ;
tmp805 = (ats_sum_ptr_type)0 ;
tmp800 = auxlst2_70 (tmp804, tmp805) ;
break ;

/* branch: __ats_lab_186 */
__ats_lab_186_0:
if (((ats_sum_ptr_type)tmp801)->tag != 34) { goto __ats_lab_187_0 ; }
__ats_lab_186_1:
tmp806 = ats_caselptrlab_mac(anairiats_sum_12, tmp801, atslab_1) ;
tmp800 = auxlst_69 (tmp806) ;
break ;

/* branch: __ats_lab_187 */
__ats_lab_187_0:
__ats_lab_187_1:
tmp800 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tempenver (tmp588, tmp800) ;
break ;

/* branch: __ats_lab_188 */
__ats_lab_188_0:
if (((ats_sum_ptr_type)tmp589)->tag != 51) { goto __ats_lab_189_0 ; }
__ats_lab_188_1:
tmp807 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp808 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp809 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparg_tr (tmp807) ;
tmp810 = un_d1exp_sing_65 (tmp808) ;
tmp811 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp810) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_exist (tmp588, tmp809, tmp811) ;
break ;

/* branch: __ats_lab_189 */
__ats_lab_189_0:
if (((ats_sum_ptr_type)tmp589)->tag != 52) { goto __ats_lab_190_0 ; }
__ats_lab_189_1:
tmp812 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_0) ;
tmp813 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_1) ;
tmp814 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_2) ;
tmp815 = d1exp_tr_arg_body_31 (tmp813, tmp814) ;
tmp816 = ats_select_mac(tmp815, atslab_0) ;
tmp817 = ats_select_mac(tmp815, atslab_1) ;
tmp818 = ats_select_mac(tmp815, atslab_2) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_dyn (tmp588, tmp812, tmp816, tmp817, tmp818) ;
break ;

/* branch: __ats_lab_190 */
__ats_lab_190_0:
if (((ats_sum_ptr_type)tmp589)->tag != 53) { goto __ats_lab_191_0 ; }
__ats_lab_190_1:
tmp819 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_0) ;
tmp820 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_1) ;
tmp821 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_2) ;
tmp822 = d1exp_tr_arg_body_31 (tmp820, tmp821) ;
tmp823 = ats_select_mac(tmp822, atslab_0) ;
tmp824 = ats_select_mac(tmp822, atslab_1) ;
tmp825 = ats_select_mac(tmp822, atslab_2) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_laminit_dyn (tmp588, tmp819, tmp823, tmp824, tmp825) ;
break ;

/* branch: __ats_lab_191 */
__ats_lab_191_0:
if (((ats_sum_ptr_type)tmp589)->tag != 54) { goto __ats_lab_192_0 ; }
__ats_lab_191_1:
tmp826 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp827 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
tmp828 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trup (tmp826) ;
tmp829 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp827) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_met_new (tmp588, tmp828, tmp829) ;
break ;

/* branch: __ats_lab_192 */
__ats_lab_192_0:
if (((ats_sum_ptr_type)tmp589)->tag != 57) { goto __ats_lab_193_0 ; }
__ats_lab_192_1:
tmp830 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_0) ;
tmp831 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_1) ;
tmp832 = ats_caselptrlab_mac(anairiats_sum_31, tmp589, atslab_2) ;
tmp834 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_34, tmp831), atslab_i0de_loc) ;
tmp835 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_34, tmp831), atslab_i0de_sym) ;
tmp833 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp834, tmp835) ;
/* tmp836 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix (tmp833, ats_true_bool) ;
/* tmp837 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_push_nil () ;
/* tmp838 = ats_selsin_mac(tmp837, atslab_1) */ ;
/* tmp839 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar (tmp833) ;
tmp840 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp832) ;
/* tmp841 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pop_free () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_fix (tmp588, tmp830, tmp833, tmp840) ;
break ;

/* branch: __ats_lab_193 */
__ats_lab_193_0:
if (((ats_sum_ptr_type)tmp589)->tag != 56) { goto __ats_lab_194_0 ; }
__ats_lab_193_1:
tmp842 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp843 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
/* tmp844 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp845 = ats_selsin_mac(tmp844, atslab_1) */ ;
tmp846 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp842) ;
tmp847 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp843) ;
/* tmp848 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp849 = ats_select_mac(tmp846, atslab_s2qua_svs) ;
tmp850 = ats_select_mac(tmp846, atslab_s2qua_sps) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_sta (tmp588, tmp849, tmp850, tmp847) ;
break ;

/* branch: __ats_lab_194 */
__ats_lab_194_0:
if (((ats_sum_ptr_type)tmp589)->tag != 58) { goto __ats_lab_195_0 ; }
__ats_lab_194_1:
tmp587 = d1exp_tr_delay_32 (arg0) ;
break ;

/* branch: __ats_lab_195 */
__ats_lab_195_0:
if (((ats_sum_ptr_type)tmp589)->tag != 60) { goto __ats_lab_196_0 ; }
__ats_lab_195_1:
tmp851 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp852 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp853 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
/* tmp854 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp855 = ats_selsin_mac(tmp854, atslab_1) */ ;
tmp856 = loopi1nv_tr_38 (tmp851) ;
tmp857 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp852) ;
tmp858 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp853) ;
/* tmp859 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_while (tmp588, tmp856, tmp857, tmp858) ;
break ;

/* branch: __ats_lab_196 */
__ats_lab_196_0:
if (((ats_sum_ptr_type)tmp589)->tag != 59) { goto __ats_lab_199_0 ; }
__ats_lab_196_1:
tmp860 = ats_caselptrlab_mac(anairiats_sum_35, tmp589, atslab_0) ;
tmp861 = ats_caselptrlab_mac(anairiats_sum_35, tmp589, atslab_1) ;
tmp862 = ats_caselptrlab_mac(anairiats_sum_35, tmp589, atslab_2) ;
tmp863 = ats_caselptrlab_mac(anairiats_sum_35, tmp589, atslab_3) ;
tmp864 = ats_caselptrlab_mac(anairiats_sum_35, tmp589, atslab_4) ;
tmp865 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp861) ;
/* tmp866 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp867 = ats_selsin_mac(tmp866, atslab_1) */ ;
tmp868 = loopi1nv_tr_38 (tmp860) ;
tmp870 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, tmp862), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_197 */
__ats_lab_197_0:
if (((ats_sum_ptr_type)tmp870)->tag != 14) { goto __ats_lab_198_0 ; }
__ats_lab_197_1:
tmp869 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool (tmp588, ats_true_bool) ;
break ;

/* branch: __ats_lab_198 */
__ats_lab_198_0:
__ats_lab_198_1:
tmp869 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp862) ;
break ;
} while (0) ;
tmp871 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp863) ;
tmp872 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp864) ;
/* tmp873 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_for (tmp588, tmp868, tmp865, tmp869, tmp871, tmp872) ;
break ;

/* branch: __ats_lab_199 */
__ats_lab_199_0:
if (((ats_sum_ptr_type)tmp589)->tag != 62) { goto __ats_lab_200_0 ; }
__ats_lab_199_1:
tmp874 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_0) ;
tmp875 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_1) ;
tmp876 = ats_caselptrlab_mac(anairiats_sum_26, tmp589, atslab_2) ;
tmp877 = i1nvresstate_tr_37 (tmp874) ;
tmp878 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp875) ;
tmp879 = c1laulst_tr_45 (1, tmp876) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_trywith (tmp588, tmp877, tmp878, tmp879) ;
break ;

/* branch: __ats_lab_200 */
__ats_lab_200_0:
if (((ats_sum_ptr_type)tmp589)->tag != 63) { goto __ats_lab_201_0 ; }
__ats_lab_200_1:
tmp880 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp881 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp882 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp880) ;
tmp883 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp881) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type (tmp588, tmp882, tmp883) ;
break ;

/* branch: __ats_lab_201 */
__ats_lab_201_0:
if (((ats_sum_ptr_type)tmp589)->tag != 64) { goto __ats_lab_202_0 ; }
__ats_lab_201_1:
tmp884 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp885 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp886 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp884) ;
tmp887 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp885) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff (tmp588, tmp886, tmp887) ;
break ;

/* branch: __ats_lab_202 */
__ats_lab_202_0:
if (((ats_sum_ptr_type)tmp589)->tag != 65) { goto __ats_lab_203_0 ; }
__ats_lab_202_1:
tmp888 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
tmp889 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_1) ;
tmp890 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp888) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo (tmp588, tmp890, tmp889) ;
break ;

/* branch: __ats_lab_203 */
__ats_lab_203_0:
if (((ats_sum_ptr_type)tmp589)->tag != 66) { goto __ats_lab_204_0 ; }
__ats_lab_203_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn (arg0) ;
break ;

/* branch: __ats_lab_204 */
__ats_lab_204_0:
if (((ats_sum_ptr_type)tmp589)->tag != 67) { goto __ats_lab_205_0 ; }
__ats_lab_204_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun (arg0) ;
break ;

/* branch: __ats_lab_205 */
__ats_lab_205_0:
if (((ats_sum_ptr_type)tmp589)->tag != 68) { goto __ats_lab_206_0 ; }
__ats_lab_205_1:
tmp891 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp892 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp891) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solassert (tmp588, tmp892) ;
break ;

/* branch: __ats_lab_206 */
__ats_lab_206_0:
if (((ats_sum_ptr_type)tmp589)->tag != 69) { goto __ats_lab_207_0 ; }
__ats_lab_206_1:
tmp893 = ats_caselptrlab_mac(anairiats_sum_6, tmp589, atslab_0) ;
tmp894 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp893, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solverify (tmp588, tmp894) ;
break ;

/* branch: __ats_lab_207 */
__ats_lab_207_0:
if (((ats_sum_ptr_type)tmp589)->tag != 70) { goto __ats_lab_208_0 ; }
__ats_lab_207_1:
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp588) ;
break ;

/* branch: __ats_lab_208 */
__ats_lab_208_0:
if (((ats_sum_ptr_type)tmp589)->tag != 2) { goto __ats_lab_209_0 ; }
__ats_lab_208_1:
tmp895 = ats_caselptrlab_mac(anairiats_sum_4, tmp589, atslab_0) ;
/* tmp896 = */ prerr_error2_loc_02395_ (tmp588) ;
/* tmp897 = */ atspre_prerr_string (ATSstrcst(": the external id [")) ;
/* tmp898 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp895) ;
/* tmp899 = */ atspre_prerr_string (ATSstrcst("] cannot be handled.")) ;
/* tmp900 = */ atspre_prerr_newline () ;
tmp902 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp902)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp902, atslab_0, arg0) ;
/* tmp901 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp902) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp588) ;
break ;

/* branch: __ats_lab_209 */
__ats_lab_209_0:
if (((ats_sum_ptr_type)tmp589)->tag != 50) { goto __ats_lab_210_0 ; }
__ats_lab_209_1:
/* tmp903 = */ prerr_error2_loc_02395_ (tmp588) ;
/* tmp904 = */ atspre_prerr_string (ATSstrcst(": this form of expression is only allowed to occur as an argument.")) ;
/* tmp905 = */ atspre_prerr_newline () ;
tmp907 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp907)->tag = 27 ;
ats_selptrset_mac(anairiats_sum_6, tmp907, atslab_0, arg0) ;
/* tmp906 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp907) ;
tmp587 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp588) ;
break ;

/* branch: __ats_lab_210 */
__ats_lab_210_0:
__ats_lab_210_1:
/* tmp908 = */ prerr_interror_loc_02393_ (tmp588) ;
/* tmp909 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr")) ;
/* tmp910 = */ atspre_prerr_string (ATSstrcst(": not yet implemented: d1e0 = ")) ;
/* tmp911 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp912 = */ atspre_prerr_newline () ;
/* tmp587 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp587) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 48195(line=2060, offs=13) -- 48238(line=2060, offs=56)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp913) ;
ATSlocal (ats_ptr_type, tmp914) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr:
tmp914 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr) ;
tmp913 = ats_castfn_mac(ats_ptr_type, tmp914) ;
return (tmp913) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 48263(line=2063, offs=13) -- 48350(line=2066, offs=59)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp915) ;
ATSlocal (ats_ptr_type, tmp916) ;
ATSlocal (ats_ptr_type, tmp917) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr:
do {
/* branch: __ats_lab_211 */
__ats_lab_211_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_212_0 ; }
__ats_lab_211_1:
tmp916 = ats_caselptrlab_mac(anairiats_sum_7, arg0, atslab_0) ;
tmp917 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp916) ;
tmp915 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp915, atslab_0, tmp917) ;
break ;

/* branch: __ats_lab_212 */
__ats_lab_212_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_212_1:
tmp915 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp915) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 48424(line=2072, offs=13) -- 48514(line=2074, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp918) ;
ATSlocal (ats_ptr_type, tmp919) ;
ATSlocal (ats_ptr_type, tmp920) ;
ATSlocal (ats_ptr_type, tmp921) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr:
// 
tmp919 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp920 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp921 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp920) ;
tmp918 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__labd2exp_make (tmp919, tmp921) ;
return (tmp918) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 48580(line=2079, offs=10) -- 49547(line=2118, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp922) ;
ATSlocal (ats_ptr_type, tmp923) ;
ATSlocal (ats_ptr_type, tmp924) ;
ATSlocal (ats_ptr_type, tmp925) ;
ATSlocal (ats_ptr_type, tmp926) ;
ATSlocal (ats_ptr_type, tmp927) ;
ATSlocal (ats_ptr_type, tmp928) ;
ATSlocal (ats_ptr_type, tmp929) ;
ATSlocal (ats_ptr_type, tmp930) ;
ATSlocal (ats_ptr_type, tmp931) ;
ATSlocal (ats_ptr_type, tmp932) ;
ATSlocal (ats_ptr_type, tmp933) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr:
tmp923 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg0), atslab_d1lab_loc) ;
tmp924 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg0), atslab_d1lab_node) ;
do {
/* branch: __ats_lab_213 */
__ats_lab_213_0:
if (((ats_sum_ptr_type)tmp924)->tag != 0) { goto __ats_lab_220_0 ; }
__ats_lab_213_1:
tmp925 = ats_caselptrlab_mac(anairiats_sum_6, tmp924, atslab_0) ;
tmp926 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_dotize (tmp925) ;
tmp927 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (tmp926) ;
do {
/* branch: __ats_lab_214 */
__ats_lab_214_0:
if (tmp927 == (ats_sum_ptr_type)0) { goto __ats_lab_219_0 ; }
__ats_lab_214_1:
tmp929 = ats_caselptrlab_mac(anairiats_sum_7, tmp927, atslab_0) ;
ATS_FREE(tmp927) ;
do {
/* branch: __ats_lab_215 */
__ats_lab_215_0:
if (((ats_sum_ptr_type)tmp929)->tag != 4) { goto __ats_lab_218_0 ; }
__ats_lab_215_1:
tmp930 = ats_caselptrlab_mac(anairiats_sum_4, tmp929, atslab_1) ;
do {
/* branch: __ats_lab_216 */
__ats_lab_216_0:
if (tmp930 != (ats_sum_ptr_type)0) { goto __ats_lab_217_0 ; }
__ats_lab_216_1:
tmp928 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_217 */
__ats_lab_217_0:
// if (tmp930 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_217_1:
tmp931 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp923, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp926, tmp930) ;
tmp928 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
ats_selptrset_mac(anairiats_sum_7, tmp928, atslab_0, tmp931) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_218 */
__ats_lab_218_0:
__ats_lab_218_1:
tmp928 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_219 */
__ats_lab_219_0:
// if (tmp927 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_219_1:
tmp928 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp922 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_lab (tmp923, tmp925, tmp928) ;
break ;

/* branch: __ats_lab_220 */
__ats_lab_220_0:
// if (((ats_sum_ptr_type)tmp924)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_220_1:
tmp932 = ats_caselptrlab_mac(anairiats_sum_6, tmp924, atslab_0) ;
tmp933 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp932) ;
tmp922 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_ind (tmp923, tmp933) ;
break ;
} while (0) ;
return (tmp922) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 49943(line=2139, offs=1) -- 50227(line=2150, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr_cst_76 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp936) ;
// ATSlocal_void (tmp937) ;
ATSlocal (ats_ptr_type, tmp938) ;
// ATSlocal_void (tmp939) ;
// ATSlocal_void (tmp940) ;
// ATSlocal_void (tmp941) ;
// ATSlocal_void (tmp942) ;
// ATSlocal_void (tmp943) ;
ATSlocal (ats_ptr_type, tmp944) ;

__ats_lab_auxerr_cst_76:
tmp938 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, env1), atslab_d2exp_loc) ;
/* tmp937 = */ prerr_error2_loc_02395_ (tmp938) ;
/* tmp939 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp940 = */ atspre_prerr_string (ATSstrcst(": the dynamic constant [")) ;
/* tmp941 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst (arg0) ;
/* tmp942 = */ atspre_prerr_string (ATSstrcst("] should be instantiated.")) ;
/* tmp943 = */ atspre_prerr_newline () ;
tmp944 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp944)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_6, tmp944, atslab_0, env0) ;
/* tmp936 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp944) ;
return /* (tmp936) */ ;
} /* end of [auxerr_cst_76] */

typedef struct {
ats_fun_ptr_type closure_fun ;
ats_ptr_type closure_env_0 ;
ats_ptr_type closure_env_1 ;
} auxerr_cst_76_closure_type ;

ats_void_type
auxerr_cst_76_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
auxerr_cst_76 (((auxerr_cst_76_closure_type*)cloptr)->closure_env_0, ((auxerr_cst_76_closure_type*)cloptr)->closure_env_1, arg0) ; return ;
} /* end of function */

ATSinline()
ats_void_type
auxerr_cst_76_closure_init (auxerr_cst_76_closure_type *p_clo, ats_ptr_type env0, ats_ptr_type env1) {
p_clo->closure_fun = (ats_fun_ptr_type)&auxerr_cst_76_clofun ;
p_clo->closure_env_0 = env0 ;
p_clo->closure_env_1 = env1 ;
return ;
} /* end of function */

ats_clo_ptr_type
auxerr_cst_76_closure_make (ats_ptr_type env0, ats_ptr_type env1) {
auxerr_cst_76_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr_cst_76_closure_type)) ;
auxerr_cst_76_closure_init (p_clo, env0, env1) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 50235(line=2153, offs=1) -- 50478(line=2163, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr1_tmpid_77 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp945) ;
// ATSlocal_void (tmp946) ;
ATSlocal (ats_ptr_type, tmp947) ;
// ATSlocal_void (tmp948) ;
// ATSlocal_void (tmp949) ;
// ATSlocal_void (tmp950) ;
// ATSlocal_void (tmp951) ;

__ats_lab_auxerr1_tmpid_77:
tmp947 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_loc) ;
/* tmp946 = */ prerr_error2_loc_02395_ (tmp947) ;
/* tmp948 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp949 = */ atspre_prerr_string (ATSstrcst(": a declared dynamic constant is expected instead of [")) ;
/* tmp950 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2exp (arg0) ;
/* tmp951 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp945 = */ atspre_prerr_newline () ;
return /* (tmp945) */ ;
} /* end of [auxerr1_tmpid_77] */

typedef struct {
ats_fun_ptr_type closure_fun ;
} auxerr1_tmpid_77_closure_type ;

ats_void_type
auxerr1_tmpid_77_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
auxerr1_tmpid_77 (arg0) ; return ;
} /* end of function */

ATSinline()
ats_void_type
auxerr1_tmpid_77_closure_init (auxerr1_tmpid_77_closure_type *p_clo) {
p_clo->closure_fun = (ats_fun_ptr_type)&auxerr1_tmpid_77_clofun ;
return ;
} /* end of function */

ats_clo_ptr_type
auxerr1_tmpid_77_closure_make () {
auxerr1_tmpid_77_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr1_tmpid_77_closure_type)) ;
auxerr1_tmpid_77_closure_init (p_clo) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 50483(line=2165, offs=1) -- 50804(line=2176, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr2_tmpid_78 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp952) ;
// ATSlocal_void (tmp953) ;
ATSlocal (ats_ptr_type, tmp954) ;
// ATSlocal_void (tmp955) ;
// ATSlocal_void (tmp956) ;
// ATSlocal_void (tmp957) ;
// ATSlocal_void (tmp958) ;
// ATSlocal_void (tmp959) ;
ATSlocal (ats_ptr_type, tmp960) ;

__ats_lab_auxerr2_tmpid_78:
tmp954 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_loc) ;
/* tmp953 = */ prerr_error2_loc_02395_ (tmp954) ;
/* tmp955 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp956 = */ atspre_prerr_string (ATSstrcst(": the dynamic constant [")) ;
/* tmp957 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst (arg1) ;
/* tmp958 = */ atspre_prerr_string (ATSstrcst("] is required to be be fully instantiated.")) ;
/* tmp959 = */ atspre_prerr_newline () ;
tmp960 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp960)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_6, tmp960, atslab_0, env0) ;
/* tmp952 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp960) ;
return /* (tmp952) */ ;
} /* end of [auxerr2_tmpid_78] */

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

ats_void_type
auxerr2_tmpid_78_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1) {
auxerr2_tmpid_78 (((auxerr2_tmpid_78_closure_type*)cloptr)->closure_env_0, arg0, arg1) ; return ;
} /* end of function */

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

ats_clo_ptr_type
auxerr2_tmpid_78_closure_make (ats_ptr_type env0) {
auxerr2_tmpid_78_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr2_tmpid_78_closure_type)) ;
auxerr2_tmpid_78_closure_init (p_clo, env0) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list.dats: 52087(line=1854, offs=21) -- 52314(line=1862, offs=6)
*/
ATSstaticdec()
ats_int_type
list_length_compare_01411_ats_ptr_type_2cats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp979) ;
ATSlocal (ats_ptr_type, tmp980) ;
ATSlocal (ats_ptr_type, tmp981) ;

__ats_lab_list_length_compare_01411_ats_ptr_type_2cats_ptr_type:
do {
/* branch: __ats_lab_224 */
__ats_lab_224_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_227_0 ; }
__ats_lab_224_1:
tmp980 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
do {
/* branch: __ats_lab_225 */
__ats_lab_225_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_226_0 ; }
__ats_lab_225_1:
tmp981 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
arg0 = tmp980 ;
arg1 = tmp981 ;
goto __ats_lab_list_length_compare_01411_ats_ptr_type_2cats_ptr_type ; // tail call
break ;

/* branch: __ats_lab_226 */
__ats_lab_226_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_226_1:
tmp979 = 1 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_227 */
__ats_lab_227_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_227_1:
do {
/* branch: __ats_lab_228 */
__ats_lab_228_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_229_0 ; }
__ats_lab_228_1:
tmp979 = -1 ;
break ;

/* branch: __ats_lab_229 */
__ats_lab_229_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_229_1:
tmp979 = 0 ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp979) ;
} /* end of [list_length_compare_01411_ats_ptr_type_2cats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats: 49873(line=2133, offs=14) -- 52228(line=2236, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp934) ;
ATSlocal (ats_ptr_type, tmp935) ;
ATSlocal (ats_ptr_type, tmp961) ;
ATSlocal (ats_ptr_type, tmp962) ;
ATSlocal (ats_bool_type, tmp963) ;
// ATSlocal_void (tmp964) ;
ATSlocal (ats_ptr_type, tmp965) ;
ATSlocal (ats_ptr_type, tmp966) ;
ATSlocal (ats_ptr_type, tmp967) ;
ATSlocal (ats_ptr_type, tmp968) ;
ATSlocal (ats_ptr_type, tmp969) ;
ATSlocal (ats_ptr_type, tmp970) ;
ATSlocal (ats_ptr_type, tmp971) ;
ATSlocal (ats_ptr_type, tmp972) ;
ATSlocal (ats_ptr_type, tmp973) ;
ATSlocal (ats_int_type, tmp974) ;
ATSlocal (anairiats_rec_3, tmp975) ;
ATSlocal (ats_ptr_type, tmp976) ;
ATSlocal (ats_ptr_type, tmp977) ;
ATSlocal (ats_int_type, tmp978) ;
// ATSlocal_void (tmp982) ;
ATSlocal (ats_bool_type, tmp983) ;
// ATSlocal_void (tmp984) ;
// ATSlocal_void (tmp985) ;
ATSlocal (ats_ptr_type, tmp986) ;
// ATSlocal_void (tmp987) ;
// ATSlocal_void (tmp988) ;
// ATSlocal_void (tmp989) ;
// ATSlocal_void (tmp990) ;
ATSlocal (ats_ptr_type, tmp991) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr:
tmp935 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (ats_castfn_mac(ats_ptr_type, arg0)) ;
tmp961 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp935), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_221 */
__ats_lab_221_0:
if (((ats_sum_ptr_type)tmp961)->tag != 0) { goto __ats_lab_222_0 ; }
__ats_lab_221_1:
tmp962 = ats_caselptrlab_mac(anairiats_sum_6, tmp961, atslab_0) ;
tmp963 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_tmpcst (tmp962) ;
if (tmp963) {
/* tmp964 = */ auxerr_cst_76 (arg0, tmp935, tmp962) ;
} else {
/* empty */
} /* end of [if] */
tmp934 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp962) ;
break ;

/* branch: __ats_lab_222 */
__ats_lab_222_0:
if (((ats_sum_ptr_type)tmp961)->tag != 24) { goto __ats_lab_231_0 ; }
__ats_lab_222_1:
tmp965 = ats_caselptrlab_mac(anairiats_sum_4, tmp961, atslab_0) ;
tmp966 = ats_caselptrlab_mac(anairiats_sum_4, tmp961, atslab_1) ;
tmp967 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp965), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_223 */
__ats_lab_223_0:
if (((ats_sum_ptr_type)tmp967)->tag != 0) { goto __ats_lab_230_0 ; }
__ats_lab_223_1:
tmp968 = ats_caselptrlab_mac(anairiats_sum_6, tmp967, atslab_0) ;
tmp969 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp935), atslab_d2exp_loc) ;
tmp970 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__location_rightmost (tmp969) ;
tmp971 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp968) ;
tmp972 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_decarg (tmp968) ;
tmp973 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp968) ;
/* ats_int_type tmp974 ; */
tmp974 = 0 ;
tmp975 = patsopt_s2exp_tmp_instantiate_tmpmarglst (tmp973, tmp970, tmp972, tmp966, (&tmp974)) ;
tmp976 = ats_select_mac(tmp975, atslab_0) ;
tmp977 = ats_select_mac(tmp975, atslab_1) ;
tmp978 = list_length_compare_01411_ats_ptr_type_2cats_ptr_type (tmp966, tmp977) ;
tmp983 = atspre_ilt (tmp978, 0) ;
if (tmp983) {
/* tmp982 = */ auxerr2_tmpid_78 (arg0, tmp965, tmp968) ;
} else {
/* empty */
} /* end of [if] */
tmp934 = tmp976 ;
break ;

/* branch: __ats_lab_230 */
__ats_lab_230_0:
__ats_lab_230_1:
/* tmp984 = */ auxerr1_tmpid_77 (tmp965) ;
tmp934 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err () ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_231 */
__ats_lab_231_0:
__ats_lab_231_1:
tmp986 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp935), atslab_d2exp_loc) ;
/* tmp985 = */ prerr_error2_loc_02395_ (tmp986) ;
/* tmp987 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/home/hwxi/Research/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp988 = */ atspre_print_string (ATSstrcst(": [$d2ctype] can only be applied to a declared dynamic constant.")) ;
/* tmp989 = */ atspre_print_newline () ;
tmp991 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
((ats_sum_ptr_type)tmp991)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_6, tmp991, atslab_0, arg0) ;
/* tmp990 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp991) ;
tmp934 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err () ;
break ;
} while (0) ;
return (tmp934) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr] */

/* static load function */

// extern ats_void_type _2home_2hwxi_2Research_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 _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2edats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_lexing_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload (void) ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload () {
static int _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag = 0 ;
if (_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag) return ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag = 1 ;

// _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_atspre_2edats__staload () ;
// ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2edats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_error_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_location_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_lexing_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload () ;

_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0.tag = 0 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1.tag = 1 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2.tag = 2 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3.tag = 3 ;
return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload_flag ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload () {
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload_flag = 1 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_dynexp_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 () ;
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_2libats_2ngc_2SATS_2deque_arr_2esats__lemma_deque_param_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_encode_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_decode_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_v_clear_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_insert_beg_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_insert_end_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_remove_beg_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats__DEQUEarr_remove_end_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2libats_2ngc_2DATS_2deque_arr_2edats____assert_prfck () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_utils_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_dynexp_dats.c] */
