/*
**
** The C code is generated by ATS/Anairiats
** The compilation time is: 2019-12-18:  5h:29m
**
*/

/* 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_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

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

typedef
struct {
ats_ptr_type atslab_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 {
ats_ptr_type atslab_0 ;
} anairiats_sum_4 ;

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

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

typedef struct {
int tag ;
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 ;
} 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, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKencode_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKdecode_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__MSKxstage_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0YNQnone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__DL0ABELED_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__E1XPfun_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__WTHS1EXPLSTnil_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__P1Tlist_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1LABlab_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1LABind_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edqid_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eidextapp_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eint_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eintrep_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ebool_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Echar_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efloat_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Estring_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ei0nt_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ec0har_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ef0loat_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Es0tring_12) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etop_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eempty_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ecstsp_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etyrep_16) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eliteral_17) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextval_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextfcall_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eextmcall_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efoldat_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efreeat_22) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etmpid_23) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elet_24) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ewhere_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edecseq_26) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eapp_dyn_27) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eapp_sta_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esing_29) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elist_30) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eifhead_31) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esifhead_32) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eifcasehd_33) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ecasehead_34) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Escasehead_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elst_36) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etup_37) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Erec_38) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eseq_39) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrsub_40) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrinit_41) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Earrpsz_42) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eptrof_43) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eviewat_44) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eselab_45) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eraise_46) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eeffmask_47) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Evararg_48) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Evcopyenv_49) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eshowtype_50) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etempenver_51) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esexparg_52) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eexist_53) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_dyn_54) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elaminit_dyn_55) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_met_56) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Elam_sta_syn_58) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efix_59) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Edelay_60) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Efor_61) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Ewhile_62) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eloopexn_63) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Etrywith_64) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_type_65) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_effc_66) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eann_funclo_67) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Emacsyn_68) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Emacfun_69) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esolassert_70) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Esolverify_71) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__D1Eerrexp_72) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTBASdef_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__S2RTbas_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__SP2Tcon_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__SP2Terr_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMcst_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMvar_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMcon_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMe1xp_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMsymdef_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMmacdef_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2ITMmacvar_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__P2Tlist_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Ecst_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Evar_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Etmpid_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Esing_34) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Elist_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__D2Eselab_40) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_S1Ed2ctype_tr_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_sort_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_repeat_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_sc2laulst_coverck_missing_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_macdef_check_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_macvar_check_26) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_d1exp_tr_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_i1nvarg_tr_30) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__T2E_c1lau_tr_31) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2) ;
ATSextern_val(ats_sum_type, _2tmp_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_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__fprint_stropt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_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, _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr) () ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQ) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQCOLON) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_label_2esats__label_dotize) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__d0ynq_none) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_is_none) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_reverse) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__e1xp_normalize) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__e1xp_make_d1exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_get_sconlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt) (ats_ptr_type) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype) ;
ATSextern_val(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype) ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dstag) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2cst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_decarg) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type) (ats_ptr_type) ;
ATSextern_fun(ats_bool_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_tmpcst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2at_any) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2exp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_int) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_intrep) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool) (ats_ptr_type, ats_bool_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_char) (ats_ptr_type, ats_char_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_float) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_string) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_i0nt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_c0har) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_f0loat) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_s0tring) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_top) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cstsp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tyrep) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_literal) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extval) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_loopexn) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_foldat) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_freeat) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tmpid) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_where) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifcasehd) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sing) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_list) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_seq2) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_deref) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_assgn) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_xchng) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrpsz) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ptrof) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_viewat) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_ptr) (ats_ptr_type, ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_raise) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_effmask) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vararg) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vcopyenv) (ats_ptr_type, ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_showtype) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tempenver) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_exist) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_met_new) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_delay) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macfun) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solassert) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solverify) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__labd2exp_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_lab) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_ind) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvarg_make) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvresstate_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2fcl_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__gm2at_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__sc2lau_make) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity) (ats_ptr_type, ats_int_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sp1at_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1expopt_trup) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_bool) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_t0ype) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_int) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_res_impred) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(anairiats_rec_2, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparg_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__t1mpmarglst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1atlst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr_arg) (ats_ptr_type, ats_ref_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_sp2at) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil) () ;
ATSextern_fun(ats_int_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_inc) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_dec) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pop_free) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_push_nil) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop) () ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push) () ;
ATSextern_fun(ats_ptr_type, _2tmp_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, _2tmp_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, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2tmp_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 _2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
extern
ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* assuming abstract types */
/* sum constructor declarations */
ATSglobal(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
ATSglobal(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1) ;
ATSglobal(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2) ;
ATSglobal(ats_sum_type, _2tmp_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_02397_ () ;
static
ats_ptr_type dynspecid_of_dqid_1 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type prerr_interror_loc_02399_ (ats_ptr_type arg0) ;
static
ats_ptr_type d2sym_bang_2 (ats_ptr_type arg0) ;
static
ats_ptr_type d2sym_lrbrackets_4 (ats_ptr_type arg0) ;
static
ats_void_type prerr_ERROR_beg_02395_ () ;
static
ats_void_type prerr_error2_loc_02401_ (ats_ptr_type arg0) ;
static
ats_void_type prerr_ERROR_end_02396_ () ;
static
ats_void_type macdef_check_5 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type macvar_check_9 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type auxerr_11 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type d1exp_tr_dqid_10 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_ptr_type d1exp_tr_app_dyn_dqid_15 (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_19 (ats_ptr_type env0, ats_ptr_type arg0) ;
static
ats_clo_ptr_type __ats_fun_19_closure_make (ats_ptr_type env0) ;
static
ats_ptr_type __ats_fun_19_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_ptr_type app_21 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type loop_23 (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_16 (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_17 (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_25 (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_18 (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 d1exp_tr_arrsub_30 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_ptr_type d1exp_tr_wths1explst_31 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
anairiats_rec_10 d1exp_tr_arg_body_32 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type d1exp_tr_delay_33 (ats_ptr_type arg0) ;
static
ats_void_type auxerr1_35 (ats_ptr_type arg0) ;
static
ats_void_type auxerr2_36 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvarg_tr_34 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvarglst_tr_37 (ats_ptr_type arg0) ;
static
ats_ptr_type i1nvresstate_tr_38 (ats_ptr_type arg0) ;
static
ats_ptr_type loopi1nv_tr_39 (ats_ptr_type arg0) ;
static
ats_ptr_type i1fcl_tr_40 (ats_ptr_type arg0) ;
static
ats_ptr_type i1fclist_tr_41 (ats_ptr_type arg0) ;
static
ats_ptr_type gm1at_tr_42 (ats_ptr_type arg0) ;
static
ats_void_type auxerr_44 (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_43 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type c1laulst_tr_46 (ats_int_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type sc1lau_trdn_47 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type sc1laulst_trdn_48 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_int_type sc2lau_get_dstag_49 (ats_ptr_type arg0) ;
static
ats_void_type auxerr_lt_50 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr_gts_51 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2, ats_int_type arg3) ;
static
ats_void_type loop_55 (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_56 (ats_ref_type arg0, ats_ref_type arg1) ;
static
ats_clo_ptr_type __ats_fun_56_closure_make () ;
static
ats_int_type __ats_fun_56_clofun (ats_clo_ptr_type cloptr, ats_ref_type arg0, ats_ref_type arg1) ;
static
ats_void_type split_58 (ats_ref_type arg0, ats_int_type arg1, ats_ref_type arg2) ;
static
ats_void_type merge_59 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ref_type arg3) ;
static
ats_int_type loop_61 (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_52 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type loop_62 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3) ;
static
ats_void_type auxmain2_53 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type auxerr1_64 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr2_65 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type un_d1exp_sing_66 (ats_ptr_type arg0) ;
static
ats_void_type loop_69 (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_70 (ats_ptr_type arg0) ;
static
ats_ptr_type auxlst2_71 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type auxerr_cst_77 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type arg0) ;
static
ats_clo_ptr_type auxerr_cst_77_closure_make (ats_ptr_type env0, ats_ptr_type env1) ;
static
ats_void_type auxerr_cst_77_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_void_type auxerr1_tmpid_78 (ats_ptr_type arg0) ;
static
ats_clo_ptr_type auxerr1_tmpid_78_closure_make () ;
static
ats_void_type auxerr1_tmpid_78_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) ;
static
ats_void_type auxerr2_tmpid_79 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_clo_ptr_type auxerr2_tmpid_79_closure_make (ats_ptr_type env0) ;
static
ats_void_type auxerr2_tmpid_79_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 */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 1773(line=60, offs=3) -- 1812(line=60, offs=42)
*/
ATSstaticdec()
ats_void_type
prerr_FILENAME_02397_ () {
/* local vardec */
// ATSlocal_void (tmp0) ;

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

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 3128(line=141, offs=1) -- 3534(line=159, 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 (tmp2 != (ats_sum_ptr_type)0) { goto __ats_lab_5_0 ; }
__ats_lab_0_1:
do {
/* branch: __ats_lab_1 */
__ats_lab_1_0:
__ats_lab_1_1:
tmp3 = _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (arg1, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG) ;
if (!tmp3) { goto __ats_lab_2_1 ; }
tmp1 = (ats_sum_ptr_type)(&_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0) ;
break ;

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

/* branch: __ats_lab_3 */
__ats_lab_3_0:
__ats_lab_3_1:
tmp5 = _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__eq_symbol_symbol (arg1, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_COLONEQCOLON) ;
if (!tmp5) { goto __ats_lab_4_1 ; }
tmp1 = (ats_sum_ptr_type)(&_2tmp_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)(&_2tmp_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)(&_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3) ;
break ;
} while (0) ;
return (tmp1) ;
} /* end of [dynspecid_of_dqid_1] */

/*
// /tmp/ATS-Postiats/src/pats_errmsg.dats: 1766(line=59, offs=19) -- 1906(line=65, offs=2)
*/
ATSstaticdec()
ats_void_type
prerr_interror_loc_02399_ (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp19) ;
// ATSlocal_void (tmp20) ;
// ATSlocal_void (tmp21) ;
// ATSlocal_void (tmp22) ;

__ats_lab_prerr_interror_loc_02399_:
/* tmp20 = */ _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp21 = */ atspre_prerr_string (ATSstrcst(": INTERROR(")) ;
/* tmp22 = */ prerr_FILENAME_02397_ () ;
/* tmp19 = */ atspre_prerr_string (ATSstrcst(")")) ;
return /* (tmp19) */ ;
} /* end of [prerr_interror_loc_02399_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 3591(line=164, offs=1) -- 4326(line=204, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d2sym_bang_2 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_int_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_ptr_type, tmp9) ;
ATSlocal (ats_int_type, tmp11) ;
ATSlocal (ats_ptr_type, tmp12) ;
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_int_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;
// ATSlocal_void (tmp16) ;
ATSlocal (ats_bool_type, tmp17) ;
// ATSlocal_void (tmp18) ;
// ATSlocal_void (tmp23) ;
// ATSlocal_void (tmp24) ;
ATSlocal (ats_ptr_type, tmp25) ;

__ats_lab_d2sym_bang_2:
/* ats_int_type tmp7 ; */
tmp7 = 0 ;
/* ats_ptr_type tmp8 ; */
tmp8 = (ats_sum_ptr_type)0 ;
tmp9 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG) ;
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (tmp9 != (ats_sum_ptr_type)0) { goto __ats_lab_7_0 ; }
__ats_lab_6_1:
tmp11 = atspre_iadd (tmp7, 1) ;
tmp7 = tmp11 ;
break ;

/* branch: __ats_lab_7 */
__ats_lab_7_0:
// if (tmp9 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_7_1:
tmp12 = ats_caselptrlab_mac(anairiats_sum_4, tmp9, atslab_0) ;
ATS_FREE(tmp9) ;
do {
/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (((ats_sum_ptr_type)tmp12)->tag != 4) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
tmp13 = ats_caselptrlab_mac(anairiats_sum_5, tmp12, atslab_1) ;
tmp8 = tmp13 ;
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
__ats_lab_9_1:
tmp14 = atspre_iadd (tmp7, 1) ;
tmp7 = tmp14 ;
break ;
} while (0) ;
break ;
} while (0) ;
tmp15 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp17 = atspre_gt_int_int (tmp7, 0) ;
if (tmp17) {
/* tmp18 = */ prerr_interror_loc_02399_ (tmp15) ;
/* tmp23 = */ atspre_prerr_string (ATSstrcst(": d2sym_bang: d1e0 = ")) ;
/* tmp24 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp16 = */ atspre_prerr_newline () ;
} else {
/* empty */
} /* end of [if] */
tmp25 = _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__d0ynq_none (tmp15) ;
tmp6 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp15, tmp25, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_BANG, tmp8) ;
return (tmp6) ;
} /* end of [d2sym_bang_2] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 4355(line=207, offs=1) -- 5108(line=247, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d2sym_lrbrackets_4 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp26) ;
ATSlocal (ats_int_type, tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;
ATSlocal (ats_ptr_type, tmp29) ;
ATSlocal (ats_int_type, tmp31) ;
ATSlocal (ats_ptr_type, tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;
ATSlocal (ats_int_type, tmp34) ;
ATSlocal (ats_ptr_type, tmp35) ;
// ATSlocal_void (tmp36) ;
ATSlocal (ats_bool_type, tmp37) ;
// ATSlocal_void (tmp38) ;
// ATSlocal_void (tmp39) ;
// ATSlocal_void (tmp40) ;
ATSlocal (ats_ptr_type, tmp41) ;

__ats_lab_d2sym_lrbrackets_4:
/* ats_int_type tmp27 ; */
tmp27 = 0 ;
/* ats_ptr_type tmp28 ; */
tmp28 = (ats_sum_ptr_type)0 ;
tmp29 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS) ;
do {
/* branch: __ats_lab_10 */
__ats_lab_10_0:
if (tmp29 != (ats_sum_ptr_type)0) { goto __ats_lab_11_0 ; }
__ats_lab_10_1:
tmp31 = atspre_iadd (tmp27, 1) ;
tmp27 = tmp31 ;
break ;

/* branch: __ats_lab_11 */
__ats_lab_11_0:
// if (tmp29 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_11_1:
tmp32 = ats_caselptrlab_mac(anairiats_sum_4, tmp29, atslab_0) ;
ATS_FREE(tmp29) ;
do {
/* branch: __ats_lab_12 */
__ats_lab_12_0:
if (((ats_sum_ptr_type)tmp32)->tag != 4) { goto __ats_lab_13_0 ; }
__ats_lab_12_1:
tmp33 = ats_caselptrlab_mac(anairiats_sum_5, tmp32, atslab_1) ;
tmp28 = tmp33 ;
break ;

/* branch: __ats_lab_13 */
__ats_lab_13_0:
__ats_lab_13_1:
tmp34 = atspre_iadd (tmp27, 1) ;
tmp27 = tmp34 ;
break ;
} while (0) ;
break ;
} while (0) ;
tmp35 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp37 = atspre_gt_int_int (tmp27, 0) ;
if (tmp37) {
/* tmp38 = */ prerr_interror_loc_02399_ (tmp35) ;
/* tmp39 = */ atspre_prerr_string (ATSstrcst(": d2sym_lrbrackets: d1e0 = ")) ;
/* tmp40 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp36 = */ atspre_prerr_newline () ;
} else {
/* empty */
} /* end of [if] */
tmp41 = _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__d0ynq_none (tmp35) ;
tmp26 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp35, tmp41, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_LRBRACKETS, tmp28) ;
return (tmp26) ;
} /* end of [d2sym_lrbrackets_4] */

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

__ats_lab_prerr_ERROR_beg_02395_:
/* tmp48 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):beg**\n")) ;
return /* (tmp48) */ ;
} /* end of [prerr_ERROR_beg_02395_] */

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

__ats_lab_prerr_error2_loc_02401_:
/* tmp51 = */ _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__prerr_location (arg0) ;
/* tmp50 = */ atspre_prerr_string (ATSstrcst(": error(2)")) ;
return /* (tmp50) */ ;
} /* end of [prerr_error2_loc_02401_] */

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

__ats_lab_prerr_ERROR_end_02396_:
/* tmp58 = */ atspre_prerr_string (ATSstrcst("**ERROR(000000):end**\n")) ;
return /* (tmp58) */ ;
} /* end of [prerr_ERROR_end_02396_] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 5164(line=252, offs=1) -- 6166(line=291, offs=4)
*/
ATSstaticdec()
ats_void_type
macdef_check_5 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp42) ;
ATSlocal (ats_int_type, tmp43) ;
ATSlocal (ats_int_type, tmp44) ;
ATSlocal (ats_bool_type, tmp45) ;
ATSlocal (ats_bool_type, tmp46) ;
// ATSlocal_void (tmp47) ;
// ATSlocal_void (tmp49) ;
// ATSlocal_void (tmp52) ;
// ATSlocal_void (tmp53) ;
// ATSlocal_void (tmp54) ;
// ATSlocal_void (tmp55) ;
// ATSlocal_void (tmp56) ;
// ATSlocal_void (tmp57) ;
ATSlocal (ats_ptr_type, tmp59) ;
ATSlocal (ats_bool_type, tmp60) ;
// ATSlocal_void (tmp61) ;
// ATSlocal_void (tmp62) ;
// ATSlocal_void (tmp63) ;
// ATSlocal_void (tmp64) ;
// ATSlocal_void (tmp65) ;
// ATSlocal_void (tmp66) ;
// ATSlocal_void (tmp67) ;
// ATSlocal_void (tmp68) ;
ATSlocal (ats_ptr_type, tmp69) ;

__ats_lab_macdef_check_5:
tmp43 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get () ;
tmp44 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2mac_get_kind (arg1) ;
tmp45 = atspre_gt_int_int (tmp43, 0) ;
if (tmp45) {
tmp46 = atspre_gte_int_int (tmp44, 1) ;
if (tmp46) {
/* tmp47 = */ prerr_ERROR_beg_02395_ () ;
/* tmp49 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp52 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp53 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp54 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp55 = */ atspre_prerr_string (ATSstrcst("] refers to a macdef in long form but one in short form is expected.")) ;
/* tmp56 = */ atspre_prerr_newline () ;
/* tmp57 = */ prerr_ERROR_end_02396_ () ;
tmp59 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp59)->tag = 25 ;
ats_selptrset_mac(anairiats_sum_5, tmp59, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp59, atslab_1, arg1) ;
/* tmp42 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp59) ;
} else {
/* empty */
} /* end of [if] */
} else {
tmp60 = atspre_eq_int_int (tmp44, 0) ;
if (tmp60) {
/* tmp61 = */ prerr_ERROR_beg_02395_ () ;
/* tmp62 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp63 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp64 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp65 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp66 = */ atspre_prerr_string (ATSstrcst("] refers to a macdef in short form but one in long form is expected.")) ;
/* tmp67 = */ atspre_prerr_newline () ;
/* tmp68 = */ prerr_ERROR_end_02396_ () ;
tmp69 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp69)->tag = 25 ;
ats_selptrset_mac(anairiats_sum_5, tmp69, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp69, atslab_1, arg1) ;
/* tmp42 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp69) ;
} else {
/* empty */
} /* end of [if] */
} /* end of [if] */
return /* (tmp42) */ ;
} /* end of [macdef_check_5] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 6200(line=293, offs=5) -- 6626(line=310, offs=4)
*/
ATSstaticdec()
ats_void_type
macvar_check_9 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp70) ;
ATSlocal (ats_int_type, tmp71) ;
ATSlocal (ats_bool_type, tmp72) ;
// ATSlocal_void (tmp73) ;
// ATSlocal_void (tmp74) ;
// ATSlocal_void (tmp75) ;
// ATSlocal_void (tmp76) ;
// ATSlocal_void (tmp77) ;
// ATSlocal_void (tmp78) ;
ATSlocal (ats_ptr_type, tmp79) ;

__ats_lab_macvar_check_9:
tmp71 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_get () ;
tmp72 = atspre_gt_int_int (tmp71, 0) ;
if (tmp72) {
/* tmp73 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp74 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp75 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp76 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp77 = */ atspre_prerr_string (ATSstrcst("] refers incorrectly to a macro argument variable.")) ;
/* tmp78 = */ atspre_prerr_newline () ;
tmp79 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp79)->tag = 26 ;
ats_selptrset_mac(anairiats_sum_5, tmp79, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp79, atslab_1, arg1) ;
/* tmp70 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp79) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp70) */ ;
} /* end of [macvar_check_9] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 6754(line=321, offs=1) -- 7104(line=334, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr_11 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp81) ;
// ATSlocal_void (tmp82) ;
ATSlocal (ats_ptr_type, tmp83) ;
// ATSlocal_void (tmp84) ;
// ATSlocal_void (tmp85) ;
// ATSlocal_void (tmp86) ;
// ATSlocal_void (tmp87) ;
// ATSlocal_void (tmp88) ;
// ATSlocal_void (tmp89) ;
ATSlocal (ats_ptr_type, tmp90) ;

__ats_lab_auxerr_11:
tmp83 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
/* tmp82 = */ prerr_error2_loc_02401_ (tmp83) ;
/* tmp84 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_dqid")) ;
/* tmp85 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp86 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg1) ;
/* tmp87 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg2) ;
/* tmp88 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp89 = */ atspre_prerr_newline () ;
tmp90 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp90)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp90, atslab_0, arg0) ;
/* tmp81 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp90) ;
return /* (tmp81) */ ;
} /* end of [auxerr_11] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 6678(line=315, offs=1) -- 8679(line=397, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_dqid_10 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp80) ;
ATSlocal (ats_ptr_type, tmp91) ;
ATSlocal (ats_ptr_type, tmp92) ;
ATSlocal (ats_ptr_type, tmp93) ;
ATSlocal (ats_ptr_type, tmp94) ;
ATSlocal (ats_ptr_type, tmp95) ;
ATSlocal (ats_ptr_type, tmp96) ;
ATSlocal (ats_ptr_type, tmp97) ;
ATSlocal (ats_ptr_type, tmp98) ;
ATSlocal (ats_ptr_type, tmp99) ;
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_void (tmp107) ;
ATSlocal (ats_ptr_type, tmp108) ;
// ATSlocal_void (tmp109) ;
// ATSlocal_void (tmp110) ;

__ats_lab_d1exp_tr_dqid_10:
tmp91 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp92 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg1, arg2) ;
do {
/* branch: __ats_lab_14 */
__ats_lab_14_0:
if (tmp92 == (ats_sum_ptr_type)0) { goto __ats_lab_22_0 ; }
__ats_lab_14_1:
tmp93 = ats_caselptrlab_mac(anairiats_sum_4, tmp92, atslab_0) ;
ATS_FREE(tmp92) ;
do {
/* branch: __ats_lab_15 */
__ats_lab_15_0:
if (((ats_sum_ptr_type)tmp93)->tag != 0) { goto __ats_lab_16_0 ; }
__ats_lab_15_1:
tmp94 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst (tmp91, tmp94) ;
break ;

/* branch: __ats_lab_16 */
__ats_lab_16_0:
if (((ats_sum_ptr_type)tmp93)->tag != 1) { goto __ats_lab_17_0 ; }
__ats_lab_16_1:
tmp95 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp91, tmp95) ;
break ;

/* branch: __ats_lab_17 */
__ats_lab_17_0:
if (((ats_sum_ptr_type)tmp93)->tag != 2) { goto __ats_lab_18_0 ; }
__ats_lab_17_1:
tmp96 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
tmp97 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity (tmp96, 0) ;
if (tmp97 == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 7429(line=350, offs=11) -- 7454(line=350, offs=36)") ; }
tmp98 = ats_caselptrlab_mac(anairiats_sum_8, tmp97, atslab_0) ;
tmp99 = _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__location_rightmost (tmp91) ;
tmp100 = (ats_sum_ptr_type)0 ;
tmp101 = (ats_sum_ptr_type)0 ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_con (tmp91, tmp98, tmp91, tmp100, -1, tmp99, tmp101) ;
break ;

/* branch: __ats_lab_18 */
__ats_lab_18_0:
if (((ats_sum_ptr_type)tmp93)->tag != 3) { goto __ats_lab_19_0 ; }
__ats_lab_18_1:
tmp102 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
tmp103 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp91, tmp102) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp103) ;
break ;

/* branch: __ats_lab_19 */
__ats_lab_19_0:
if (((ats_sum_ptr_type)tmp93)->tag != 4) { goto __ats_lab_20_0 ; }
__ats_lab_19_1:
tmp104 = ats_caselptrlab_mac(anairiats_sum_5, tmp93, atslab_1) ;
tmp105 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp91, arg1, arg2, tmp104) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym (tmp91, tmp105) ;
break ;

/* branch: __ats_lab_20 */
__ats_lab_20_0:
if (((ats_sum_ptr_type)tmp93)->tag != 5) { goto __ats_lab_21_0 ; }
__ats_lab_20_1:
tmp106 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
/* tmp107 = */ macdef_check_5 (tmp91, tmp106, arg1, arg2) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac (tmp91, tmp106) ;
break ;

/* branch: __ats_lab_21 */
__ats_lab_21_0:
// if (((ats_sum_ptr_type)tmp93)->tag != 6) { ats_deadcode_failure_handle () ; }
__ats_lab_21_1:
tmp108 = ats_caselptrlab_mac(anairiats_sum_7, tmp93, atslab_0) ;
/* tmp109 = */ macvar_check_9 (tmp91, tmp108, arg1, arg2) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp91, tmp108) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_22 */
__ats_lab_22_0:
// if (tmp92 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_22_1:
/* tmp110 = */ auxerr_11 (arg0, arg1, arg2) ;
tmp80 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp91) ;
break ;
} while (0) ;
return (tmp80) ;
} /* end of [d1exp_tr_dqid_10] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 9351(line=434, offs=3) -- 9777(line=452, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp111) ;
ATSlocal (ats_ptr_type, tmp112) ;
ATSlocal (ats_ptr_type, tmp113) ;
ATSlocal (ats_ptr_type, tmp114) ;
ATSlocal (ats_ptr_type, tmp115) ;
ATSlocal (ats_ptr_type, tmp116) ;
// ATSlocal_void (tmp117) ;
// ATSlocal_void (tmp118) ;
// ATSlocal_void (tmp119) ;
// ATSlocal_void (tmp120) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref:
tmp112 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_23 */
__ats_lab_23_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_24_0 ; }
tmp113 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp113 != (ats_sum_ptr_type)0) { goto __ats_lab_24_0 ; }
__ats_lab_23_1:
tmp114 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp115 = d2sym_bang_2 (tmp114) ;
tmp116 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp114) ;
tmp111 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_deref (tmp112, tmp115, tmp116) ;
break ;

/* branch: __ats_lab_24 */
__ats_lab_24_0:
__ats_lab_24_1:
/* tmp117 = */ prerr_interror_loc_02399_ (tmp112) ;
/* tmp118 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_deref: d1e0 = ")) ;
/* tmp119 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp120 = */ atspre_prerr_newline () ;
/* tmp111 = */ _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp111) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 9833(line=456, offs=3) -- 10233(line=471, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp121) ;
ATSlocal (ats_ptr_type, tmp122) ;
ATSlocal (ats_ptr_type, tmp123) ;
ATSlocal (ats_ptr_type, tmp124) ;
ATSlocal (ats_ptr_type, tmp125) ;
ATSlocal (ats_ptr_type, tmp126) ;
ATSlocal (ats_ptr_type, tmp127) ;
ATSlocal (ats_ptr_type, tmp128) ;
// ATSlocal_void (tmp129) ;
// ATSlocal_void (tmp130) ;
// ATSlocal_void (tmp131) ;
// ATSlocal_void (tmp132) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn:
tmp122 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_25 */
__ats_lab_25_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_26_0 ; }
tmp123 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp123 == (ats_sum_ptr_type)0) { goto __ats_lab_26_0 ; }
tmp124 = ats_caselptrlab_mac(anairiats_sum_8, tmp123, atslab_1) ;
if (tmp124 != (ats_sum_ptr_type)0) { goto __ats_lab_26_0 ; }
__ats_lab_25_1:
tmp125 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp126 = ats_caselptrlab_mac(anairiats_sum_8, tmp123, atslab_0) ;
tmp127 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp125) ;
tmp128 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp126) ;
tmp121 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_assgn (tmp122, tmp127, tmp128) ;
break ;

/* branch: __ats_lab_26 */
__ats_lab_26_0:
__ats_lab_26_1:
/* tmp129 = */ prerr_interror_loc_02399_ (tmp122) ;
/* tmp130 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_assgn: d1e0 = ")) ;
/* tmp131 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp132 = */ atspre_prerr_newline () ;
/* tmp121 = */ _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp121) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 10289(line=475, offs=3) -- 10689(line=490, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp133) ;
ATSlocal (ats_ptr_type, tmp134) ;
ATSlocal (ats_ptr_type, tmp135) ;
ATSlocal (ats_ptr_type, tmp136) ;
ATSlocal (ats_ptr_type, tmp137) ;
ATSlocal (ats_ptr_type, tmp138) ;
ATSlocal (ats_ptr_type, tmp139) ;
ATSlocal (ats_ptr_type, tmp140) ;
// ATSlocal_void (tmp141) ;
// ATSlocal_void (tmp142) ;
// ATSlocal_void (tmp143) ;
// ATSlocal_void (tmp144) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng:
tmp134 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_27 */
__ats_lab_27_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_28_0 ; }
tmp135 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
if (tmp135 == (ats_sum_ptr_type)0) { goto __ats_lab_28_0 ; }
tmp136 = ats_caselptrlab_mac(anairiats_sum_8, tmp135, atslab_1) ;
if (tmp136 != (ats_sum_ptr_type)0) { goto __ats_lab_28_0 ; }
__ats_lab_27_1:
tmp137 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp138 = ats_caselptrlab_mac(anairiats_sum_8, tmp135, atslab_0) ;
tmp139 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp137) ;
tmp140 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp138) ;
tmp133 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_xchng (tmp134, tmp139, tmp140) ;
break ;

/* branch: __ats_lab_28 */
__ats_lab_28_0:
__ats_lab_28_1:
/* tmp141 = */ prerr_interror_loc_02399_ (tmp134) ;
/* tmp142 = */ atspre_prerr_string (ATSstrcst(": d1exp_tr_xchng: d1e0 = ")) ;
/* tmp143 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp144 = */ atspre_prerr_newline () ;
/* tmp133 = */ _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp133) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 10743(line=495, offs=1) -- 12038(line=538, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_dyn_dqid_15 (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, tmp145) ;
ATSlocal (ats_ptr_type, tmp146) ;
ATSlocal (ats_ptr_type, tmp147) ;
ATSlocal (ats_ptr_type, tmp148) ;
ATSlocal (ats_ptr_type, tmp149) ;
ATSlocal (ats_ptr_type, tmp150) ;
// ATSlocal_void (tmp151) ;
ATSlocal (ats_ptr_type, tmp152) ;
// ATSlocal_void (tmp153) ;
// ATSlocal_void (tmp154) ;
// ATSlocal_void (tmp155) ;
// ATSlocal_void (tmp156) ;
// ATSlocal_void (tmp157) ;
// ATSlocal_void (tmp158) ;
// ATSlocal_void (tmp159) ;
ATSlocal (ats_ptr_type, tmp160) ;
ATSlocal (ats_ptr_type, tmp161) ;

__ats_lab_d1exp_tr_app_dyn_dqid_15:
tmp146 = dynspecid_of_dqid_1 (arg2, arg3) ;
do {
/* branch: __ats_lab_29 */
__ats_lab_29_0:
if (((ats_sum_ptr_type)tmp146)->tag != 0) { goto __ats_lab_30_0 ; }
__ats_lab_29_1:
tmp145 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_deref (arg0, arg6) ;
break ;

/* branch: __ats_lab_30 */
__ats_lab_30_0:
if (((ats_sum_ptr_type)tmp146)->tag != 1) { goto __ats_lab_31_0 ; }
__ats_lab_30_1:
tmp145 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_assgn (arg0, arg6) ;
break ;

/* branch: __ats_lab_31 */
__ats_lab_31_0:
if (((ats_sum_ptr_type)tmp146)->tag != 2) { goto __ats_lab_32_0 ; }
__ats_lab_31_1:
tmp145 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_xchng (arg0, arg6) ;
break ;

/* branch: __ats_lab_32 */
__ats_lab_32_0:
__ats_lab_32_1:
tmp147 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg2, arg3) ;
do {
/* branch: __ats_lab_33 */
__ats_lab_33_0:
if (tmp147 == (ats_sum_ptr_type)0) { goto __ats_lab_36_0 ; }
__ats_lab_33_1:
tmp148 = ats_caselptrlab_mac(anairiats_sum_4, tmp147, atslab_0) ;
ATS_FREE(tmp147) ;
do {
/* branch: __ats_lab_34 */
__ats_lab_34_0:
if (((ats_sum_ptr_type)tmp148)->tag != 3) { goto __ats_lab_35_0 ; }
__ats_lab_34_1:
tmp149 = ats_caselptrlab_mac(anairiats_sum_7, tmp148, atslab_0) ;
tmp145 = d1exp_tr_app_dyn_e1xp_16 (arg0, arg1, tmp149, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_35 */
__ats_lab_35_0:
__ats_lab_35_1:
tmp150 = (ats_sum_ptr_type)0 ;
tmp145 = d1exp_tr_app_sta_dyn_dqid_itm_18 (arg0, arg1, arg1, arg2, arg3, tmp148, tmp150, arg4, arg5, arg6) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_36 */
__ats_lab_36_0:
// if (tmp147 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_36_1:
tmp152 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_loc) ;
/* tmp151 = */ prerr_error2_loc_02401_ (tmp152) ;
/* tmp153 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_dyn_dqid")) ;
/* tmp154 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
/* tmp155 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg2) ;
/* tmp156 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg3) ;
/* tmp157 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp158 = */ atspre_prerr_newline () ;
tmp160 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp160)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp160, atslab_0, arg0) ;
/* tmp159 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp160) ;
tmp161 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp145 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp161) ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp145) ;
} /* end of [d1exp_tr_app_dyn_dqid_15] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 12469(line=563, offs=20) -- 12537(line=563, offs=88)
*/
ATSstaticdec()
ats_ptr_type
__ats_fun_19 (ats_ptr_type env0, ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp166) ;

__ats_lab___ats_fun_19:
tmp166 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__e1xp_make_d1exp (env0, arg0) ;
return (tmp166) ;
} /* end of [__ats_fun_19] */

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

ats_ptr_type
__ats_fun_19_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
return __ats_fun_19 (((__ats_fun_19_closure_type*)cloptr)->closure_env_0, arg0) ;
} /* end of function */

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

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 53639(line=1919, offs=6) -- 53788(line=1925, offs=6)
*/
ATSstaticdec()
ats_ptr_type
app_21 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp170) ;

__ats_lab_app_21:
tmp170 = ((ats_ptr_type(*)(ats_clo_ptr_type, ats_ptr_type))(ats_closure_fun(arg1))) (arg1, arg0) ;
return (tmp170) ;
} /* end of [app_21] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 52519(line=1874, offs=5) -- 52952(line=1891, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_23 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (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) ;

__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:
tmp173 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp174 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp175 = ((ats_ptr_type(*)(ats_ptr_type, ats_ptr_type))arg1) (tmp173, arg3) ;
tmp176 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp176, atslab_0, tmp175) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp176 ;
// if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp177 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp174 ;
arg1 = arg1 ;
arg2 = tmp177 ;
arg3 = arg3 ;
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:
tmp178 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp178 ;
break ;
} while (0) ;
return /* (tmp172) */ ;
} /* end of [loop_23] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 52444(line=1870, offs=3) -- 53099(line=1899, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_map_funenv_01412_ats_ptr_type_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp171) ;
ATSlocal (ats_ptr_type, tmp179) ;
// ATSlocal_void (tmp180) ;

__ats_lab_list_map_funenv_01412_ats_ptr_type_ats_ptr_type:
/* ats_ptr_type tmp179 ; */
/* tmp180 = */ loop_23 (arg0, arg1, (&tmp179), arg2) ;
tmp171 = tmp179 ;
return (tmp171) ;
} /* end of [list_map_funenv_01412_ats_ptr_type_ats_ptr_type] */

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp169) ;

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

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 12078(line=541, offs=1) -- 13120(line=587, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_dyn_e1xp_16 (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, tmp162) ;
ATSlocal (ats_ptr_type, tmp163) ;
ATSlocal (ats_ptr_type, tmp164) ;
ATSlocal (ats_ptr_type, tmp165) ;
ATSlocal (__ats_fun_19_closure_type, tmp167) ;
ATSlocal (ats_ptr_type, tmp168) ;
ATSlocal (ats_ptr_type, tmp181) ;
ATSlocal (ats_ptr_type, tmp182) ;
ATSlocal (ats_ptr_type, tmp183) ;
ATSlocal (ats_ptr_type, tmp184) ;
ATSlocal (ats_ptr_type, tmp185) ;

__ats_lab_d1exp_tr_app_dyn_e1xp_16:
tmp163 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_9, arg2), atslab_e1xp_node) ;
do {
/* branch: __ats_lab_37 */
__ats_lab_37_0:
if (((ats_sum_ptr_type)tmp163)->tag != 10) { goto __ats_lab_40_0 ; }
__ats_lab_37_1:
tmp164 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
/* ats_ptr_type tmp165 ; */
tmp165 = &(tmp167) ;
__ats_fun_19_closure_init (tmp165, tmp164) ; // closure initialization
tmp168 = list_map_vclo_01414_ats_ptr_type_ats_ptr_type (arg5, tmp165) ;
tmp181 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__e1xp_app (tmp164, arg2, tmp164, ats_castfn_mac(ats_ptr_type, tmp168)) ;
tmp182 = _2tmp_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__e1xp_normalize (tmp181) ;
tmp183 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp164, tmp182) ;
tmp162 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp183) ;
break ;

/* branch: __ats_lab_40 */
__ats_lab_40_0:
__ats_lab_40_1:
tmp184 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_loc) ;
tmp185 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp184, arg2) ;
tmp162 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn (arg0, tmp185, arg3, arg4, arg5) ;
break ;
} while (0) ;
return (tmp162) ;
} /* end of [d1exp_tr_app_dyn_e1xp_16] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 13160(line=590, offs=1) -- 14105(line=626, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_sta_dyn_dqid_17 (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, tmp186) ;
ATSlocal (ats_ptr_type, tmp187) ;
ATSlocal (ats_ptr_type, tmp188) ;
// ATSlocal_void (tmp189) ;
ATSlocal (ats_ptr_type, tmp190) ;
// ATSlocal_void (tmp191) ;
// ATSlocal_void (tmp192) ;
// ATSlocal_void (tmp193) ;
// ATSlocal_void (tmp194) ;
// ATSlocal_void (tmp195) ;
// ATSlocal_void (tmp196) ;
// ATSlocal_void (tmp197) ;
ATSlocal (ats_ptr_type, tmp198) ;
ATSlocal (ats_ptr_type, tmp199) ;

__ats_lab_d1exp_tr_app_sta_dyn_dqid_17:
tmp187 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find_qua (arg3, arg4) ;
do {
/* branch: __ats_lab_41 */
__ats_lab_41_0:
if (tmp187 == (ats_sum_ptr_type)0) { goto __ats_lab_42_0 ; }
__ats_lab_41_1:
tmp188 = ats_caselptrlab_mac(anairiats_sum_4, tmp187, atslab_0) ;
ATS_FREE(tmp187) ;
tmp186 = d1exp_tr_app_sta_dyn_dqid_itm_18 (arg0, arg1, arg1, arg3, arg4, tmp188, arg5, arg6, arg7, arg8) ;
break ;

/* branch: __ats_lab_42 */
__ats_lab_42_0:
// if (tmp187 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_42_1:
tmp190 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_loc) ;
/* tmp189 = */ prerr_error2_loc_02401_ (tmp190) ;
/* tmp191 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_sta_dyn_dqid")) ;
/* tmp192 = */ atspre_prerr_string (ATSstrcst(": unrecognized dynamic identifier [")) ;
/* tmp193 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg3) ;
/* tmp194 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg4) ;
/* tmp195 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp196 = */ atspre_prerr_newline () ;
tmp198 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp198)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp198, atslab_0, arg0) ;
/* tmp197 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp198) ;
tmp199 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp186 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp199) ;
break ;
} while (0) ;
return (tmp186) ;
} /* end of [d1exp_tr_app_sta_dyn_dqid_17] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 51781(line=1842, offs=7) -- 51921(line=1845, offs=6)
*/
ATSstaticdec()
ats_int_type
loop_25 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp215) ;
ATSlocal (ats_ptr_type, tmp216) ;
ATSlocal (ats_int_type, tmp217) ;

__ats_lab_loop_25:
do {
/* branch: __ats_lab_46 */
__ats_lab_46_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_47_0 ; }
__ats_lab_46_1:
tmp216 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp217 = atspre_isucc (arg1) ;
arg0 = tmp216 ;
arg1 = tmp217 ;
goto __ats_lab_loop_25 ; // tail call
break ;

/* branch: __ats_lab_47 */
__ats_lab_47_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_47_1:
tmp215 = arg1 ;
break ;
} while (0) ;
return (tmp215) ;
} /* end of [loop_25] */

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

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

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 14149(line=629, offs=1) -- 17389(line=771, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_app_sta_dyn_dqid_itm_18 (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, tmp200) ;
ATSlocal (ats_ptr_type, tmp201) ;
ATSlocal (ats_ptr_type, tmp202) ;
ATSlocal (ats_ptr_type, tmp203) ;
ATSlocal (ats_ptr_type, tmp204) ;
ATSlocal (ats_ptr_type, tmp205) ;
ATSlocal (ats_ptr_type, tmp206) ;
ATSlocal (ats_ptr_type, tmp207) ;
ATSlocal (ats_ptr_type, tmp208) ;
ATSlocal (ats_ptr_type, tmp209) ;
ATSlocal (ats_ptr_type, tmp210) ;
ATSlocal (ats_ptr_type, tmp211) ;
ATSlocal (ats_ptr_type, tmp212) ;
ATSlocal (ats_int_type, tmp213) ;
ATSlocal (ats_ptr_type, tmp218) ;
ATSlocal (ats_ptr_type, tmp219) ;
ATSlocal (ats_ptr_type, tmp220) ;
ATSlocal (ats_ptr_type, tmp221) ;
ATSlocal (ats_int_type, tmp222) ;
ATSlocal (ats_bool_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) ;
ATSlocal (ats_ptr_type, tmp231) ;
ATSlocal (ats_ptr_type, tmp232) ;
// ATSlocal_void (tmp233) ;
ATSlocal (ats_ptr_type, tmp234) ;
ATSlocal (ats_ptr_type, tmp235) ;
ATSlocal (ats_ptr_type, tmp236) ;
// ATSlocal_void (tmp237) ;
// ATSlocal_void (tmp238) ;
// ATSlocal_void (tmp239) ;
// ATSlocal_void (tmp240) ;
// ATSlocal_void (tmp241) ;
// ATSlocal_void (tmp242) ;
// ATSlocal_void (tmp243) ;
// ATSlocal_void (tmp244) ;
ATSlocal (ats_ptr_type, tmp245) ;

__ats_lab_d1exp_tr_app_sta_dyn_dqid_itm_18:
tmp201 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp202 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_loc) ;
tmp203 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg2), atslab_d1exp_loc) ;
do {
/* branch: __ats_lab_43 */
__ats_lab_43_0:
if (((ats_sum_ptr_type)arg5)->tag != 0) { goto __ats_lab_44_0 ; }
__ats_lab_43_1:
tmp204 = ats_caselptrlab_mac(anairiats_sum_7, arg5, atslab_0) ;
tmp205 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cst (tmp203, tmp204) ;
tmp206 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp207 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp201, tmp202, tmp205, tmp206, arg7, arg8, tmp207) ;
break ;

/* branch: __ats_lab_44 */
__ats_lab_44_0:
if (((ats_sum_ptr_type)arg5)->tag != 1) { goto __ats_lab_45_0 ; }
__ats_lab_44_1:
tmp208 = ats_caselptrlab_mac(anairiats_sum_7, arg5, atslab_0) ;
tmp209 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_var (tmp203, tmp208) ;
tmp210 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp211 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp201, tmp202, tmp209, tmp210, arg7, arg8, tmp211) ;
break ;

/* branch: __ats_lab_45 */
__ats_lab_45_0:
if (((ats_sum_ptr_type)arg5)->tag != 2) { goto __ats_lab_48_0 ; }
__ats_lab_45_1:
tmp212 = ats_caselptrlab_mac(anairiats_sum_7, arg5, atslab_0) ;
tmp213 = list_length_01410_ats_ptr_type (arg9) ;
tmp218 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2con_select_arity (tmp212, tmp213) ;
if (tmp218 == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 15576(line=691, offs=9) -- 15604(line=691, offs=37)") ; }
tmp219 = ats_caselptrlab_mac(anairiats_sum_8, tmp218, atslab_0) ;
tmp220 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp221 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp223 = atspre_gte_int_int (arg8, -1) ;
if (tmp223) {
tmp222 = arg8 ;
} else {
tmp222 = -1 ;
} /* end of [if] */
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_con (tmp201, tmp219, tmp202, tmp220, tmp222, arg7, tmp221) ;
break ;

/* branch: __ats_lab_48 */
__ats_lab_48_0:
if (((ats_sum_ptr_type)arg5)->tag != 3) { goto __ats_lab_49_0 ; }
__ats_lab_48_1:
tmp224 = ats_caselptrlab_mac(anairiats_sum_7, arg5, atslab_0) ;
tmp225 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__d1exp_make_e1xp (tmp203, tmp224) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, arg1, tmp225, arg6, arg7, arg8, arg9) ;
break ;

/* branch: __ats_lab_49 */
__ats_lab_49_0:
if (((ats_sum_ptr_type)arg5)->tag != 4) { goto __ats_lab_50_0 ; }
__ats_lab_49_1:
tmp226 = ats_caselptrlab_mac(anairiats_sum_5, arg5, atslab_1) ;
tmp227 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp203, arg3, arg4, tmp226) ;
tmp228 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sym (tmp203, tmp227) ;
tmp229 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp230 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp201, tmp202, tmp228, tmp229, arg7, arg8, tmp230) ;
break ;

/* branch: __ats_lab_50 */
__ats_lab_50_0:
if (((ats_sum_ptr_type)arg5)->tag != 5) { goto __ats_lab_51_0 ; }
__ats_lab_50_1:
tmp231 = ats_caselptrlab_mac(anairiats_sum_7, arg5, atslab_0) ;
tmp232 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg2), atslab_d1exp_loc) ;
/* tmp233 = */ macdef_check_5 (tmp232, tmp231, arg3, arg4) ;
tmp234 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_mac (tmp232, tmp231) ;
tmp235 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg6) ;
tmp236 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg9) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp201, tmp202, tmp234, tmp235, arg7, arg8, tmp236) ;
break ;

/* branch: __ats_lab_51 */
__ats_lab_51_0:
__ats_lab_51_1:
/* tmp237 = */ prerr_error2_loc_02401_ (tmp203) ;
/* tmp238 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr_app_sta_dyn_dqid_itm")) ;
/* tmp239 = */ atspre_prerr_string (ATSstrcst(": the identifier [")) ;
/* tmp240 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (arg3) ;
/* tmp241 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (arg4) ;
/* tmp242 = */ atspre_prerr_string (ATSstrcst("] does not refer to any variable, constant or constructor.")) ;
/* tmp243 = */ atspre_prerr_newline () ;
tmp245 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp245)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp245, atslab_0, arg0) ;
/* tmp244 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp245) ;
tmp200 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp201) ;
break ;
} while (0) ;
return (tmp200) ;
} /* end of [d1exp_tr_app_sta_dyn_dqid_itm_18] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 17481(line=777, offs=1) -- 18055(line=803, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_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, tmp246) ;
ATSlocal (ats_ptr_type, tmp247) ;
ATSlocal (ats_ptr_type, tmp248) ;
ATSlocal (ats_ptr_type, tmp249) ;
ATSlocal (ats_ptr_type, tmp250) ;
ATSlocal (ats_ptr_type, tmp251) ;
ATSlocal (ats_ptr_type, tmp252) ;
ATSlocal (ats_ptr_type, tmp253) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn:
tmp247 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_52 */
__ats_lab_52_0:
if (((ats_sum_ptr_type)tmp247)->tag != 0) { goto __ats_lab_53_0 ; }
__ats_lab_52_1:
tmp248 = ats_caselptrlab_mac(anairiats_sum_7, tmp247, atslab_0) ;
tmp246 = d1exp_tr_app_dyn_dqid_15 (arg0, arg1, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp248, arg2, arg3, arg4) ;
break ;

/* branch: __ats_lab_53 */
__ats_lab_53_0:
if (((ats_sum_ptr_type)tmp247)->tag != 1) { goto __ats_lab_54_0 ; }
__ats_lab_53_1:
tmp249 = ats_caselptrlab_mac(anairiats_sum_5, tmp247, atslab_0) ;
tmp250 = ats_caselptrlab_mac(anairiats_sum_5, tmp247, atslab_1) ;
tmp246 = d1exp_tr_app_dyn_dqid_15 (arg0, arg1, tmp249, tmp250, arg2, arg3, arg4) ;
break ;

/* branch: __ats_lab_54 */
__ats_lab_54_0:
__ats_lab_54_1:
tmp251 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
tmp252 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg4) ;
tmp253 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp246 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_dyn (tmp253, tmp251, arg3, arg2, tmp252) ;
break ;
} while (0) ;
return (tmp246) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 18117(line=807, offs=1) -- 18863(line=835, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_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, tmp254) ;
ATSlocal (ats_ptr_type, tmp255) ;
ATSlocal (ats_ptr_type, tmp256) ;
ATSlocal (ats_ptr_type, tmp257) ;
ATSlocal (ats_ptr_type, tmp258) ;
ATSlocal (ats_ptr_type, tmp259) ;
ATSlocal (ats_ptr_type, tmp260) ;
ATSlocal (ats_ptr_type, tmp261) ;
ATSlocal (ats_ptr_type, tmp262) ;
ATSlocal (ats_ptr_type, tmp263) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn:
tmp255 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg2), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_55 */
__ats_lab_55_0:
if (((ats_sum_ptr_type)tmp255)->tag != 0) { goto __ats_lab_56_0 ; }
__ats_lab_55_1:
tmp256 = ats_caselptrlab_mac(anairiats_sum_7, tmp255, atslab_0) ;
tmp254 = d1exp_tr_app_sta_dyn_dqid_17 (arg0, arg1, arg2, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp256, arg3, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_56 */
__ats_lab_56_0:
if (((ats_sum_ptr_type)tmp255)->tag != 1) { goto __ats_lab_57_0 ; }
__ats_lab_56_1:
tmp257 = ats_caselptrlab_mac(anairiats_sum_5, tmp255, atslab_0) ;
tmp258 = ats_caselptrlab_mac(anairiats_sum_5, tmp255, atslab_1) ;
tmp254 = d1exp_tr_app_sta_dyn_dqid_17 (arg0, arg1, arg2, tmp257, tmp258, arg3, arg4, arg5, arg6) ;
break ;

/* branch: __ats_lab_57 */
__ats_lab_57_0:
__ats_lab_57_1:
tmp259 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg2) ;
tmp260 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (arg3) ;
tmp261 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg6) ;
tmp262 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp263 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg1), atslab_d1exp_loc) ;
tmp254 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_app_sta_dyn (tmp262, tmp263, tmp259, tmp260, arg4, arg5, tmp261) ;
break ;
} while (0) ;
return (tmp254) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 18997(line=845, offs=16) -- 19856(line=885, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp264) ;
ATSlocal (ats_ptr_type, tmp265) ;
ATSlocal (ats_ptr_type, tmp266) ;
ATSlocal (ats_ptr_type, tmp267) ;
ATSlocal (ats_ptr_type, tmp268) ;
// ATSlocal_void (tmp269) ;
ATSlocal (ats_ptr_type, tmp270) ;
// ATSlocal_void (tmp271) ;
// ATSlocal_void (tmp272) ;
ATSlocal (ats_ptr_type, tmp273) ;
// ATSlocal_void (tmp274) ;
// ATSlocal_void (tmp275) ;
ATSlocal (ats_ptr_type, tmp276) ;
// ATSlocal_void (tmp277) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn:
tmp265 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp266 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp266)->tag != 68) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 19043(line=848, offs=5) -- 19081(line=848, offs=43)") ; }
tmp267 = ats_caselptrlab_mac(anairiats_sum_5, tmp266, atslab_0) ;
tmp268 = ats_caselptrlab_mac(anairiats_sum_5, tmp266, atslab_1) ;
do {
/* branch: __ats_lab_58 */
__ats_lab_58_0:
if (((ats_sum_ptr_type)tmp267)->tag != 2) { goto __ats_lab_59_0 ; }
__ats_lab_58_1:
/* tmp269 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp265) ;
tmp270 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp268) ;
/* tmp271 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp265) ;
tmp264 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp265, tmp267, tmp270) ;
break ;

/* branch: __ats_lab_59 */
__ats_lab_59_0:
if (((ats_sum_ptr_type)tmp267)->tag != 1) { goto __ats_lab_60_0 ; }
__ats_lab_59_1:
/* tmp272 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp265) ;
tmp273 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp268) ;
/* tmp274 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp265) ;
tmp264 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp265, tmp267, tmp273) ;
break ;

/* branch: __ats_lab_60 */
__ats_lab_60_0:
// if (((ats_sum_ptr_type)tmp267)->tag != 0) { ats_deadcode_failure_handle () ; }
__ats_lab_60_1:
/* tmp275 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_inc (tmp265) ;
tmp276 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp268) ;
/* tmp277 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_maclev_dec (tmp265) ;
tmp264 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macsyn (tmp265, tmp267, tmp276) ;
break ;
} while (0) ;
return (tmp264) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 19985(line=895, offs=16) -- 20148(line=904, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun (ats_ptr_type arg0) {
/* local vardec */
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) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun:
tmp279 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp280 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp280)->tag != 69) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 20031(line=898, offs=5) -- 20071(line=898, offs=45)") ; }
tmp281 = ats_caselptrlab_mac(anairiats_sum_5, tmp280, atslab_0) ;
tmp282 = ats_caselptrlab_mac(anairiats_sum_5, tmp280, atslab_1) ;
tmp283 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp282) ;
tmp278 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_macfun (tmp279, tmp281, tmp283) ;
return (tmp278) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 20203(line=909, offs=1) -- 20472(line=920, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_arrsub_30 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp284) ;
ATSlocal (ats_ptr_type, tmp285) ;
ATSlocal (ats_ptr_type, tmp286) ;
ATSlocal (ats_ptr_type, tmp287) ;
ATSlocal (ats_ptr_type, tmp288) ;

__ats_lab_d1exp_tr_arrsub_30:
tmp285 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp286 = d2sym_lrbrackets_4 (arg0) ;
tmp287 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
tmp288 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (arg3) ;
tmp284 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrsub (tmp285, tmp286, tmp287, arg2, tmp288) ;
return (tmp284) ;
} /* end of [d1exp_tr_arrsub_30] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 20573(line=927, offs=1) -- 21561(line=962, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_wths1explst_31 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp289) ;
ATSlocal (ats_ptr_type, tmp290) ;
ATSlocal (ats_ptr_type, tmp291) ;
ATSlocal (ats_ptr_type, tmp292) ;
ATSlocal (ats_ptr_type, tmp293) ;
ATSlocal (ats_ptr_type, tmp294) ;
ATSlocal (ats_ptr_type, tmp295) ;
ATSlocal (ats_ptr_type, tmp296) ;
ATSlocal (ats_ptr_type, tmp297) ;
ATSlocal (ats_ptr_type, tmp298) ;
ATSlocal (ats_ptr_type, tmp299) ;
ATSlocal (ats_ptr_type, tmp300) ;
ATSlocal (ats_ptr_type, tmp301) ;
ATSlocal (ats_ptr_type, tmp302) ;
// ATSlocal_void (tmp303) ;
// ATSlocal_void (tmp304) ;
// ATSlocal_void (tmp305) ;
// ATSlocal_void (tmp306) ;
// ATSlocal_void (tmp307) ;
ATSlocal (ats_ptr_type, tmp308) ;

__ats_lab_d1exp_tr_wths1explst_31:
tmp290 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp291 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_61 */
__ats_lab_61_0:
if (((ats_sum_ptr_type)tmp291)->tag != 65) { goto __ats_lab_62_0 ; }
__ats_lab_61_1:
tmp292 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_0) ;
tmp293 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_1) ;
tmp294 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp292) ;
tmp295 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_res_impred (tmp293, arg1) ;
tmp289 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type (tmp290, tmp294, tmp295) ;
break ;

/* branch: __ats_lab_62 */
__ats_lab_62_0:
if (((ats_sum_ptr_type)tmp291)->tag != 66) { goto __ats_lab_63_0 ; }
__ats_lab_62_1:
tmp296 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_0) ;
tmp297 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_1) ;
tmp298 = d1exp_tr_wths1explst_31 (tmp296, arg1) ;
tmp299 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp297) ;
tmp289 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff (tmp290, tmp298, tmp299) ;
break ;

/* branch: __ats_lab_63 */
__ats_lab_63_0:
if (((ats_sum_ptr_type)tmp291)->tag != 67) { goto __ats_lab_64_0 ; }
__ats_lab_63_1:
tmp300 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_0) ;
tmp301 = ats_caselptrlab_mac(anairiats_sum_5, tmp291, atslab_1) ;
tmp302 = d1exp_tr_wths1explst_31 (tmp300, arg1) ;
tmp289 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo (tmp290, tmp302, tmp301) ;
break ;

/* branch: __ats_lab_64 */
__ats_lab_64_0:
__ats_lab_64_1:
/* tmp303 = */ prerr_error2_loc_02401_ (tmp290) ;
/* tmp304 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_wths1explst_tr")) ;
/* tmp305 = */ atspre_prerr_string (ATSstrcst(": the dynamic expression is expected to be ascribed a type but it is not.")) ;
/* tmp306 = */ atspre_prerr_newline () ;
tmp308 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp308)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp308, atslab_0, arg0) ;
/* tmp307 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp308) ;
tmp289 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp290) ;
break ;
} while (0) ;
return (tmp289) ;
} /* end of [d1exp_tr_wths1explst_31] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 21603(line=965, offs=1) -- 22764(line=1003, offs=4)
*/
ATSstaticdec()
anairiats_rec_10
d1exp_tr_arg_body_32 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (anairiats_rec_10, tmp309) ;
ATSlocal (ats_ptr_type, tmp310) ;
ATSlocal (ats_ptr_type, tmp311) ;
ATSlocal (ats_ptr_type, tmp312) ;
ATSlocal (ats_int_type, tmp313) ;
ATSlocal (ats_ptr_type, tmp314) ;
ATSlocal (ats_ptr_type, tmp315) ;
ATSlocal (ats_int_type, tmp316) ;
ATSlocal (ats_ptr_type, tmp317) ;
ATSlocal (ats_ptr_type, tmp318) ;
// ATSlocal_void (tmp319) ;
// ATSlocal_void (tmp320) ;
// ATSlocal_void (tmp321) ;
ATSlocal (ats_ptr_type, tmp322) ;
ATSlocal (ats_ptr_type, tmp323) ;
// ATSlocal_void (tmp324) ;
ATSlocal (ats_ptr_type, tmp325) ;
ATSlocal (ats_ptr_type, tmp326) ;
// ATSlocal_void (tmp327) ;
// ATSlocal_void (tmp328) ;
ATSlocal (ats_bool_type, tmp329) ;
ATSlocal (ats_ptr_type, tmp330) ;
// ATSlocal_void (tmp331) ;
// ATSlocal_void (tmp332) ;

__ats_lab_d1exp_tr_arg_body_32:
/* ats_ptr_type tmp310 ; */
tmp310 = (ats_sum_ptr_type)(&_2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__WTHS1EXPLSTnil_0) ;
tmp311 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr_arg (arg0, (&tmp310)) ;
tmp312 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_reverse (tmp310) ;
tmp310 = tmp312 ;
/* ats_int_type tmp313 ; */
tmp313 = -1 ;
tmp315 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp311), atslab_p2at_node) ;
do {
/* branch: __ats_lab_65 */
__ats_lab_65_0:
if (((ats_sum_ptr_type)tmp315)->tag != 18) { goto __ats_lab_66_0 ; }
__ats_lab_65_1:
tmp316 = ats_caselptrlab_mac(anairiats_sum_12, tmp315, atslab_0) ;
tmp317 = ats_caselptrlab_mac(anairiats_sum_12, tmp315, atslab_1) ;
tmp313 = tmp316 ;
tmp314 = tmp317 ;
break ;

/* branch: __ats_lab_66 */
__ats_lab_66_0:
__ats_lab_66_1:
tmp318 = (ats_sum_ptr_type)0 ;
tmp314 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp314, atslab_0, tmp311) ;
ats_selptrset_mac(anairiats_sum_8, tmp314, atslab_1, tmp318) ;
break ;
} while (0) ;
/* tmp319 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp320 = ats_selsin_mac(tmp319, atslab_1) */ ;
tmp323 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp311), atslab_p2at_svs) ;
tmp322 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp323) ;
/* tmp321 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp322) ;
tmp326 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp311), atslab_p2at_dvs) ;
tmp325 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp326) ;
/* tmp324 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp325) ;
/* tmp327 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_inc () ;
/* tmp328 = ats_selsin_mac(tmp327, atslab_1) */ ;
tmp329 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__wths1explst_is_none (tmp310) ;
if (tmp329) {
tmp330 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (arg1) ;
} else {
tmp330 = d1exp_tr_wths1explst_31 (arg1, tmp310) ;
} /* end of [if] */
/* tmp331 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2varlev_dec () ;
/* tmp332 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp309.atslab_0 = tmp313 ;
tmp309.atslab_1 = tmp314 ;
tmp309.atslab_2 = tmp330 ;

return (tmp309) ;
} /* end of [d1exp_tr_arg_body_32] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 22821(line=1008, offs=1) -- 23642(line=1045, offs=4)
*/
ATSstaticdec()
ats_ptr_type
d1exp_tr_delay_33 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp333) ;
ATSlocal (ats_ptr_type, tmp334) ;
ATSlocal (ats_ptr_type, tmp335) ;
ATSlocal (ats_int_type, tmp336) ;
ATSlocal (ats_ptr_type, tmp337) ;
ATSlocal (ats_bool_type, tmp338) ;
ATSlocal (ats_ptr_type, tmp339) ;
ATSlocal (ats_ptr_type, tmp340) ;
ATSlocal (ats_ptr_type, tmp341) ;
ATSlocal (ats_ptr_type, tmp342) ;
ATSlocal (ats_ptr_type, tmp343) ;
ATSlocal (ats_ptr_type, tmp344) ;
ATSlocal (ats_ptr_type, tmp345) ;
ATSlocal (ats_ptr_type, tmp346) ;
ATSlocal (ats_ptr_type, tmp347) ;
ATSlocal (ats_ptr_type, tmp348) ;
ATSlocal (ats_ptr_type, tmp349) ;

__ats_lab_d1exp_tr_delay_33:
tmp334 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp335 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
if (((ats_sum_ptr_type)tmp335)->tag != 60) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 22966(line=1016, offs=5) -- 23003(line=1016, offs=42)") ; }
tmp336 = ats_caselptrlab_mac(anairiats_sum_12, tmp335, atslab_0) ;
tmp337 = ats_caselptrlab_mac(anairiats_sum_12, tmp335, atslab_1) ;
do {
/* branch: __ats_lab_67 */
__ats_lab_67_0:
__ats_lab_67_1:
tmp338 = atspre_eq_int_int (tmp336, 0) ;
if (!tmp338) { goto __ats_lab_68_1 ; }
tmp339 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp337) ;
tmp333 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_delay (tmp334, tmp339) ;
break ;

/* branch: __ats_lab_68 */
__ats_lab_68_0:
__ats_lab_68_1:
tmp340 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, tmp337), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_69 */
__ats_lab_69_0:
if (((ats_sum_ptr_type)tmp340)->tag != 30) { goto __ats_lab_72_0 ; }
__ats_lab_69_1:
tmp341 = ats_caselptrlab_mac(anairiats_sum_12, tmp340, atslab_1) ;
do {
/* branch: __ats_lab_70 */
__ats_lab_70_0:
if (tmp341 == (ats_sum_ptr_type)0) { goto __ats_lab_71_0 ; }
tmp342 = ats_caselptrlab_mac(anairiats_sum_8, tmp341, atslab_1) ;
if (tmp342 == (ats_sum_ptr_type)0) { goto __ats_lab_71_0 ; }
__ats_lab_70_1:
tmp343 = ats_caselptrlab_mac(anairiats_sum_8, tmp341, atslab_0) ;
tmp344 = ats_caselptrlab_mac(anairiats_sum_8, tmp342, atslab_0) ;
tmp345 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp343) ;
tmp346 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp344) ;
tmp347 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp347, atslab_0, tmp346) ;
tmp333 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay (tmp334, tmp345, tmp347) ;
break ;

/* branch: __ats_lab_71 */
__ats_lab_71_0:
__ats_lab_71_1:
tmp348 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp337) ;
tmp333 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none (tmp334, tmp348) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_72 */
__ats_lab_72_0:
__ats_lab_72_1:
tmp349 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp337) ;
tmp333 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ldelay_none (tmp334, tmp349) ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp333) ;
} /* end of [d1exp_tr_delay_33] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 23756(line=1052, offs=5) -- 24115(line=1060, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr1_35 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp351) ;
// ATSlocal_void (tmp352) ;
ATSlocal (ats_ptr_type, tmp353) ;
// ATSlocal_void (tmp354) ;
// ATSlocal_void (tmp355) ;
// ATSlocal_void (tmp356) ;
ATSlocal (ats_ptr_type, tmp357) ;
// ATSlocal_void (tmp358) ;
// ATSlocal_void (tmp359) ;
ATSlocal (ats_ptr_type, tmp360) ;

__ats_lab_auxerr1_35:
tmp353 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_loc) ;
/* tmp352 = */ prerr_error2_loc_02401_ (tmp353) ;
/* tmp354 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("i1nvarglst_tr")) ;
/* tmp355 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
tmp357 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
/* tmp356 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp357) ;
/* tmp358 = */ atspre_prerr_string (ATSstrcst("] should refer to a variable but it does not.")) ;
/* tmp359 = */ atspre_prerr_newline () ;
tmp360 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp360)->tag = 30 ;
ats_selptrset_mac(anairiats_sum_7, tmp360, atslab_0, arg0) ;
/* tmp351 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp360) ;
return /* (tmp351) */ ;
} /* end of [auxerr1_35] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 24140(line=1061, offs=5) -- 24472(line=1069, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr2_36 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp361) ;
// ATSlocal_void (tmp362) ;
ATSlocal (ats_ptr_type, tmp363) ;
// ATSlocal_void (tmp364) ;
// ATSlocal_void (tmp365) ;
// ATSlocal_void (tmp366) ;
ATSlocal (ats_ptr_type, tmp367) ;
// ATSlocal_void (tmp368) ;
// ATSlocal_void (tmp369) ;
ATSlocal (ats_ptr_type, tmp370) ;

__ats_lab_auxerr2_36:
tmp363 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_loc) ;
/* tmp362 = */ prerr_error2_loc_02401_ (tmp363) ;
/* tmp364 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("i1nvarglst_tr")) ;
/* tmp365 = */ atspre_prerr_string (ATSstrcst(": the dynamic identifier [")) ;
tmp367 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
/* tmp366 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp367) ;
/* tmp368 = */ atspre_prerr_string (ATSstrcst("] is unrecognized.")) ;
/* tmp369 = */ atspre_prerr_newline () ;
tmp370 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp370)->tag = 30 ;
ats_selptrset_mac(anairiats_sum_7, tmp370, atslab_0, arg0) ;
/* tmp361 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp370) ;
return /* (tmp361) */ ;
} /* end of [auxerr2_36] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 23696(line=1049, offs=5) -- 25172(line=1099, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvarg_tr_34 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp350) ;
ATSlocal (ats_ptr_type, tmp371) ;
ATSlocal (ats_ptr_type, 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) ;
ATSlocal (ats_ptr_type, tmp378) ;
ATSlocal (ats_ptr_type, tmp379) ;
// ATSlocal_void (tmp380) ;
// ATSlocal_void (tmp381) ;

__ats_lab_i1nvarg_tr_34:
tmp372 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_sym) ;
tmp371 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (tmp372) ;
do {
/* branch: __ats_lab_73 */
__ats_lab_73_0:
if (tmp371 == (ats_sum_ptr_type)0) { goto __ats_lab_78_0 ; }
__ats_lab_73_1:
tmp373 = ats_caselptrlab_mac(anairiats_sum_4, tmp371, atslab_0) ;
ATS_FREE(tmp371) ;
do {
/* branch: __ats_lab_74 */
__ats_lab_74_0:
if (((ats_sum_ptr_type)tmp373)->tag != 1) { goto __ats_lab_77_0 ; }
__ats_lab_74_1:
tmp374 = ats_caselptrlab_mac(anairiats_sum_7, tmp373, atslab_0) ;
tmp376 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_13, arg0), atslab_i1nvarg_type) ;
do {
/* branch: __ats_lab_75 */
__ats_lab_75_0:
if (tmp376 == (ats_sum_ptr_type)0) { goto __ats_lab_76_0 ; }
__ats_lab_75_1:
tmp377 = ats_caselptrlab_mac(anairiats_sum_4, tmp376, atslab_0) ;
tmp378 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp377) ;
tmp375 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp375, atslab_0, tmp378) ;
break ;

/* branch: __ats_lab_76 */
__ats_lab_76_0:
// if (tmp376 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_76_1:
tmp375 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp379 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvarg_make (tmp374, tmp375) ;
tmp350 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp350, atslab_0, tmp379) ;
break ;

/* branch: __ats_lab_77 */
__ats_lab_77_0:
__ats_lab_77_1:
/* tmp380 = */ auxerr1_35 (arg0) ;
tmp350 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_78 */
__ats_lab_78_0:
// if (tmp371 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_78_1:
/* tmp381 = */ auxerr2_36 (arg0) ;
tmp350 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp350) ;
} /* end of [i1nvarg_tr_34] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 25201(line=1102, offs=1) -- 25623(line=1119, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvarglst_tr_37 (ats_ptr_type arg0) {
/* local vardec */
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) ;

__ats_lab_i1nvarglst_tr_37:
do {
/* branch: __ats_lab_79 */
__ats_lab_79_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_82_0 ; }
__ats_lab_79_1:
tmp383 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp384 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp385 = i1nvarg_tr_34 (tmp383) ;
do {
/* branch: __ats_lab_80 */
__ats_lab_80_0:
if (tmp385 == (ats_sum_ptr_type)0) { goto __ats_lab_81_0 ; }
__ats_lab_80_1:
tmp386 = ats_caselptrlab_mac(anairiats_sum_4, tmp385, atslab_0) ;
ATS_FREE(tmp385) ;
tmp387 = i1nvarglst_tr_37 (tmp384) ;
tmp382 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp382, atslab_0, tmp386) ;
ats_selptrset_mac(anairiats_sum_8, tmp382, atslab_1, tmp387) ;
break ;

/* branch: __ats_lab_81 */
__ats_lab_81_0:
// if (tmp385 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_81_1:
arg0 = tmp384 ;
goto __ats_lab_i1nvarglst_tr_37 ; // tail call
break ;
} while (0) ;
break ;

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

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 25655(line=1122, offs=1) -- 25876(line=1128, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1nvresstate_tr_38 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp388) ;
ATSlocal (anairiats_rec_2, tmp389) ;
ATSlocal (ats_ptr_type, tmp390) ;
ATSlocal (ats_ptr_type, tmp391) ;
ATSlocal (ats_ptr_type, tmp392) ;
ATSlocal (ats_ptr_type, tmp393) ;
ATSlocal (ats_ptr_type, tmp394) ;

__ats_lab_i1nvresstate_tr_38:
tmp390 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_i1nvresstate_qua) ;
tmp389 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp390) ;
tmp392 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_14, arg0), atslab_i1nvresstate_arg) ;
tmp391 = i1nvarglst_tr_37 (tmp392) ;
tmp393 = ats_select_mac(tmp389, atslab_s2qua_svs) ;
tmp394 = ats_select_mac(tmp389, atslab_s2qua_sps) ;
tmp388 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2nvresstate_make (tmp393, tmp394, tmp391) ;
return (tmp388) ;
} /* end of [i1nvresstate_tr_38] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 25910(line=1131, offs=1) -- 26419(line=1147, offs=4)
*/
ATSstaticdec()
ats_ptr_type
loopi1nv_tr_39 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp395) ;
ATSlocal (ats_ptr_type, tmp396) ;
ATSlocal (anairiats_rec_2, tmp397) ;
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) ;
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) ;

__ats_lab_loopi1nv_tr_39:
tmp396 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_loc) ;
tmp398 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_qua) ;
tmp397 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp398) ;
tmp399 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_met) ;
do {
/* branch: __ats_lab_83 */
__ats_lab_83_0:
if (tmp399 == (ats_sum_ptr_type)0) { goto __ats_lab_84_0 ; }
__ats_lab_83_1:
tmp401 = ats_caselptrlab_mac(anairiats_sum_4, tmp399, atslab_0) ;
tmp402 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trdn_int (tmp401) ;
tmp400 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp400, atslab_0, tmp402) ;
break ;

/* branch: __ats_lab_84 */
__ats_lab_84_0:
// if (tmp399 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_84_1:
tmp400 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp404 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_arg) ;
tmp403 = i1nvarglst_tr_37 (tmp404) ;
tmp406 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_15, arg0), atslab_loopi1nv_res) ;
tmp405 = i1nvresstate_tr_38 (tmp406) ;
tmp407 = ats_select_mac(tmp397, atslab_s2qua_svs) ;
tmp408 = ats_select_mac(tmp397, atslab_s2qua_sps) ;
tmp395 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__loopi2nv_make (tmp396, tmp407, tmp408, tmp400, tmp403, tmp405) ;
return (tmp395) ;
} /* end of [loopi1nv_tr_39] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 26470(line=1152, offs=1) -- 26633(line=1158, offs=4)
*/
ATSstaticdec()
ats_ptr_type
i1fcl_tr_40 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp409) ;
ATSlocal (ats_ptr_type, tmp410) ;
ATSlocal (ats_ptr_type, tmp411) ;
ATSlocal (ats_ptr_type, tmp412) ;
ATSlocal (ats_ptr_type, tmp413) ;
ATSlocal (ats_ptr_type, tmp414) ;

__ats_lab_i1fcl_tr_40:
tmp411 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_test) ;
tmp410 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp411) ;
tmp413 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_body) ;
tmp412 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp413) ;
tmp414 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg0), atslab_i1fcl_loc) ;
tmp409 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__i2fcl_make (tmp414, tmp410, tmp412) ;
return (tmp409) ;
} /* end of [i1fcl_tr_40] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 26660(line=1161, offs=1) -- 26821(line=1168, offs=2)
*/
ATSstaticdec()
ats_ptr_type
i1fclist_tr_41 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp415) ;
ATSlocal (ats_ptr_type, tmp416) ;
ATSlocal (ats_ptr_type, tmp417) ;
ATSlocal (ats_ptr_type, tmp418) ;
ATSlocal (ats_ptr_type, tmp419) ;

__ats_lab_i1fclist_tr_41:
do {
/* branch: __ats_lab_85 */
__ats_lab_85_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_86_0 ; }
__ats_lab_85_1:
tmp416 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp417 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp418 = i1fcl_tr_40 (tmp416) ;
tmp419 = i1fclist_tr_41 (tmp417) ;
tmp415 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp415, atslab_0, tmp418) ;
ats_selptrset_mac(anairiats_sum_8, tmp415, atslab_1, tmp419) ;
break ;

/* branch: __ats_lab_86 */
__ats_lab_86_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_86_1:
tmp415 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp415) ;
} /* end of [i1fclist_tr_41] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 26875(line=1173, offs=1) -- 27404(line=1193, offs=4)
*/
ATSstaticdec()
ats_ptr_type
gm1at_tr_42 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp420) ;
ATSlocal (ats_ptr_type, tmp421) ;
ATSlocal (ats_ptr_type, tmp422) ;
ATSlocal (ats_ptr_type, tmp423) ;
ATSlocal (ats_ptr_type, tmp424) ;
ATSlocal (ats_ptr_type, tmp425) ;
ATSlocal (ats_ptr_type, tmp426) ;
ATSlocal (ats_ptr_type, tmp427) ;
ATSlocal (ats_ptr_type, tmp428) ;
// ATSlocal_void (tmp429) ;
ATSlocal (ats_ptr_type, tmp430) ;
ATSlocal (ats_ptr_type, tmp431) ;
// ATSlocal_void (tmp432) ;
ATSlocal (ats_ptr_type, tmp433) ;

__ats_lab_gm1at_tr_42:
tmp422 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_exp) ;
tmp421 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp422) ;
tmp424 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_pat) ;
do {
/* branch: __ats_lab_87 */
__ats_lab_87_0:
if (tmp424 == (ats_sum_ptr_type)0) { goto __ats_lab_88_0 ; }
__ats_lab_87_1:
tmp425 = ats_caselptrlab_mac(anairiats_sum_4, tmp424, atslab_0) ;
tmp426 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1at_tr (tmp425) ;
tmp428 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp426), atslab_p2at_svs) ;
tmp427 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp428) ;
/* tmp429 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp427) ;
tmp431 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_11, tmp426), atslab_p2at_dvs) ;
tmp430 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp431) ;
/* tmp432 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp430) ;
tmp423 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp423, atslab_0, tmp426) ;
break ;

/* branch: __ats_lab_88 */
__ats_lab_88_0:
// if (tmp424 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_88_1:
tmp423 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp433 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg0), atslab_gm1at_loc) ;
tmp420 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__gm2at_make (tmp433, tmp421, tmp423) ;
return (tmp420) ;
} /* end of [gm1at_tr_42] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 27513(line=1201, offs=5) -- 27915(line=1216, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_44 (ats_ptr_type arg0, ats_int_type arg1, ats_int_type arg2) {
/* local vardec */
// ATSlocal_void (tmp435) ;
// ATSlocal_void (tmp436) ;
ATSlocal (ats_ptr_type, tmp437) ;
// ATSlocal_void (tmp438) ;
// ATSlocal_void (tmp439) ;
// ATSlocal_void (tmp440) ;
ATSlocal (ats_ptr_type, tmp441) ;
ATSlocal (ats_bool_type, tmp442) ;
// ATSlocal_void (tmp443) ;
// ATSlocal_void (tmp444) ;
ATSlocal (ats_ptr_type, tmp445) ;

__ats_lab_auxerr_44:
tmp437 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg0), atslab_c1lau_loc) ;
/* tmp436 = */ prerr_error2_loc_02401_ (tmp437) ;
/* tmp438 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("c1lau_tr")) ;
/* tmp439 = */ atspre_prerr_string (ATSstrcst(": this clause should contain ")) ;
tmp442 = atspre_gte_int_int (arg1, arg2) ;
if (tmp442) {
tmp441 = ATSstrcst("more") ;
} else {
tmp441 = ATSstrcst("fewer") ;
} /* end of [if] */
/* tmp440 = */ atspre_prerr_string (tmp441) ;
/* tmp443 = */ atspre_prerr_string (ATSstrcst(" patterns.")) ;
/* tmp444 = */ atspre_prerr_newline () ;
tmp445 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp445)->tag = 31 ;
ats_selptrset_mac(anairiats_sum_7, tmp445, atslab_0, arg0) ;
/* tmp435 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp445) ;
return /* (tmp435) */ ;
} /* end of [auxerr_44] */

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

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

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 27452(line=1198, offs=1) -- 29169(line=1287, offs=4)
*/
ATSstaticdec()
ats_ptr_type
c1lau_tr_43 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp434) ;
ATSlocal (ats_ptr_type, tmp446) ;
ATSlocal (ats_ptr_type, tmp447) ;
ATSlocal (ats_ptr_type, tmp448) ;
ATSlocal (ats_ptr_type, tmp449) ;
ATSlocal (ats_ptr_type, tmp450) ;
ATSlocal (ats_ptr_type, tmp451) ;
ATSlocal (ats_ptr_type, tmp452) ;
ATSlocal (ats_int_type, tmp453) ;
ATSlocal (ats_ptr_type, tmp454) ;
ATSlocal (ats_bool_type, tmp455) ;
ATSlocal (ats_ptr_type, tmp456) ;
ATSlocal (ats_ptr_type, tmp457) ;
ATSlocal (ats_int_type, tmp458) ;
ATSlocal (ats_bool_type, tmp459) ;
// ATSlocal_void (tmp460) ;
ATSlocal (ats_bool_type, tmp461) ;
// ATSlocal_void (tmp462) ;
// ATSlocal_void (tmp463) ;
ATSlocal (ats_ptr_type, tmp464) ;
ATSlocal (ats_ptr_type, tmp465) ;
// ATSlocal_void (tmp466) ;
ATSlocal (ats_ptr_type, tmp467) ;
ATSlocal (ats_ptr_type, tmp468) ;
// ATSlocal_void (tmp469) ;
ATSlocal (ats_ptr_type, tmp470) ;
ATSlocal (ats_ptr_type, tmp471) ;
ATSlocal (ats_ptr_type, tmp473) ;
ATSlocal (ats_ptr_type, tmp474) ;
// ATSlocal_void (tmp475) ;
ATSlocal (ats_int_type, tmp476) ;
ATSlocal (ats_int_type, tmp477) ;

__ats_lab_c1lau_tr_43:
tmp446 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_loc) ;
tmp447 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_pat) ;
tmp449 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, tmp447), atslab_p1at_node) ;
do {
/* branch: __ats_lab_89 */
__ats_lab_89_0:
if (((ats_sum_ptr_type)tmp449)->tag != 14) { goto __ats_lab_90_0 ; }
__ats_lab_89_1:
tmp450 = ats_caselptrlab_mac(anairiats_sum_12, tmp449, atslab_1) ;
tmp448 = tmp450 ;
break ;

/* branch: __ats_lab_90 */
__ats_lab_90_0:
__ats_lab_90_1:
tmp451 = (ats_sum_ptr_type)0 ;
tmp448 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp448, atslab_0, tmp447) ;
ats_selptrset_mac(anairiats_sum_8, tmp448, atslab_1, tmp451) ;
break ;
} while (0) ;
tmp452 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__p1atlst_tr (tmp448) ;
tmp453 = list_length_01410_ats_ptr_type (tmp452) ;
tmp455 = atspre_igt (tmp453, 0) ;
if (tmp455) {
tmp454 = tmp452 ;
} else {
tmp456 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2at_any (tmp446) ;
tmp457 = (ats_sum_ptr_type)0 ;
tmp454 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp454, atslab_0, tmp456) ;
ats_selptrset_mac(anairiats_sum_8, tmp454, atslab_1, tmp457) ;
} /* end of [if] */
tmp459 = atspre_igt (tmp453, 0) ;
if (tmp459) {
tmp458 = tmp453 ;
} else {
tmp458 = 1 ;
} /* end of [if] */
tmp461 = atspre_neq_int_int (arg0, tmp458) ;
if (tmp461) {
/* tmp460 = */ auxerr_44 (arg1, arg0, tmp458) ;
} else {
/* empty */
} /* end of [if] */
/* tmp462 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp463 = ats_selsin_mac(tmp462, atslab_1) */ ;
tmp465 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_svs_union (tmp454) ;
tmp464 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp465) ;
/* tmp466 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_svarlst (tmp464) ;
tmp468 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__p2atlst_dvs_union (tmp454) ;
tmp467 = _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__lstord2list (tmp468) ;
/* tmp469 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvarlst (tmp467) ;
tmp470 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_gua) ;
tmp471 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp470, &gm1at_tr_42) ;
tmp474 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_body) ;
tmp473 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp474) ;
/* tmp475 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp476 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_seq) ;
tmp477 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_c1lau_neg) ;
tmp434 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__c2lau_make (tmp446, tmp454, ats_castfn_mac(ats_ptr_type, tmp471), tmp476, tmp477, tmp473) ;
return (tmp434) ;
} /* end of [c1lau_tr_43] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 29196(line=1289, offs=5) -- 29395(line=1295, offs=2)
*/
ATSstaticdec()
ats_ptr_type
c1laulst_tr_46 (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp478) ;
ATSlocal (ats_ptr_type, tmp479) ;
ATSlocal (ats_ptr_type, tmp480) ;
ATSlocal (ats_ptr_type, tmp481) ;
ATSlocal (ats_ptr_type, tmp482) ;

__ats_lab_c1laulst_tr_46:
do {
/* branch: __ats_lab_91 */
__ats_lab_91_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_92_0 ; }
__ats_lab_91_1:
tmp479 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp480 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp481 = c1lau_tr_43 (arg0, tmp479) ;
tmp482 = c1laulst_tr_46 (arg0, tmp480) ;
tmp478 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp478, atslab_0, tmp481) ;
ats_selptrset_mac(anairiats_sum_8, tmp478, atslab_1, tmp482) ;
break ;

/* branch: __ats_lab_92 */
__ats_lab_92_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_92_1:
tmp478 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp478) ;
} /* end of [c1laulst_tr_46] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 29446(line=1299, offs=5) -- 29808(line=1310, offs=4)
*/
ATSstaticdec()
ats_ptr_type
sc1lau_trdn_47 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp483) ;
ATSlocal (ats_ptr_type, tmp484) ;
// ATSlocal_void (tmp485) ;
// ATSlocal_void (tmp486) ;
ATSlocal (ats_ptr_type, tmp487) ;
// ATSlocal_void (tmp488) ;
ATSlocal (ats_ptr_type, tmp489) ;
ATSlocal (ats_ptr_type, tmp490) ;
// ATSlocal_void (tmp491) ;
ATSlocal (ats_ptr_type, tmp492) ;

__ats_lab_sc1lau_trdn_47:
tmp484 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_pat) ;
/* tmp485 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp486 = ats_selsin_mac(tmp485, atslab_1) */ ;
tmp487 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sp1at_trdn (tmp484, arg1) ;
/* tmp488 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_add_sp2at (tmp487) ;
tmp490 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_body) ;
tmp489 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp490) ;
/* tmp491 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp492 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg0), atslab_sc1lau_loc) ;
tmp483 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__sc2lau_make (tmp492, tmp487, tmp489) ;
return (tmp483) ;
} /* end of [sc1lau_trdn_47] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 29836(line=1312, offs=5) -- 30034(line=1319, offs=2)
*/
ATSstaticdec()
ats_ptr_type
sc1laulst_trdn_48 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp493) ;
ATSlocal (ats_ptr_type, tmp494) ;
ATSlocal (ats_ptr_type, tmp495) ;
ATSlocal (ats_ptr_type, tmp496) ;
ATSlocal (ats_ptr_type, tmp497) ;

__ats_lab_sc1laulst_trdn_48:
do {
/* branch: __ats_lab_93 */
__ats_lab_93_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_94_0 ; }
__ats_lab_93_1:
tmp494 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp495 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp496 = sc1lau_trdn_47 (tmp494, arg1) ;
tmp497 = sc1laulst_trdn_48 (tmp495, arg1) ;
tmp493 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp493, atslab_0, tmp496) ;
ats_selptrset_mac(anairiats_sum_8, tmp493, atslab_1, tmp497) ;
break ;

/* branch: __ats_lab_94 */
__ats_lab_94_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_94_1:
tmp493 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp493) ;
} /* end of [sc1laulst_trdn_48] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 30137(line=1329, offs=1) -- 30352(line=1340, offs=4)
*/
ATSstaticdec()
ats_int_type
sc2lau_get_dstag_49 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_int_type, tmp498) ;
ATSlocal (ats_ptr_type, tmp499) ;
ATSlocal (ats_ptr_type, tmp500) ;
ATSlocal (ats_ptr_type, tmp501) ;

__ats_lab_sc2lau_get_dstag_49:
tmp499 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg0), atslab_sc2lau_pat) ;
tmp500 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_22, tmp499), atslab_sp2at_node) ;
do {
/* branch: __ats_lab_95 */
__ats_lab_95_0:
if (tmp500 == (ats_sum_ptr_type)0) { goto __ats_lab_96_0 ; }
__ats_lab_95_1:
tmp501 = ats_caselptrlab_mac(anairiats_sum_8, tmp500, atslab_0) ;
tmp498 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_dstag (tmp501) ;
break ;

/* branch: __ats_lab_96 */
__ats_lab_96_0:
// if (tmp500 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_96_1:
tmp498 = -1 ;
break ;
} while (0) ;
return (tmp498) ;
} /* end of [sc2lau_get_dstag_49] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 30387(line=1342, offs=5) -- 30657(line=1350, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_lt_50 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp502) ;
ATSlocal (ats_ptr_type, tmp503) ;
// ATSlocal_void (tmp504) ;
// ATSlocal_void (tmp505) ;
// ATSlocal_void (tmp506) ;
ATSlocal (ats_ptr_type, tmp507) ;

__ats_lab_auxerr_lt_50:
tmp503 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_sc2lau_loc) ;
/* tmp504 = */ prerr_error2_loc_02401_ (tmp503) ;
/* tmp505 = */ atspre_prerr_string (ATSstrcst(": the static clause is repeated.")) ;
/* tmp506 = */ atspre_prerr_newline () ;
tmp507 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp507)->tag = 14 ;
ats_selptrset_mac(anairiats_sum_5, tmp507, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp507, atslab_1, arg1) ;
/* tmp502 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp507) ;
return /* (tmp502) */ ;
} /* end of [auxerr_lt_50] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 30685(line=1352, offs=5) -- 31400(line=1378, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr_gts_51 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2, ats_int_type arg3) {
/* local vardec */
// ATSlocal_void (tmp508) ;
ATSlocal (ats_bool_type, tmp509) ;
ATSlocal (ats_ptr_type, tmp510) ;
ATSlocal (ats_ptr_type, tmp511) ;
ATSlocal (ats_bool_type, tmp512) ;
ATSlocal (ats_int_type, tmp513) ;
ATSlocal (ats_int_type, tmp514) ;
// ATSlocal_void (tmp515) ;
// ATSlocal_void (tmp516) ;
// ATSlocal_void (tmp517) ;
// ATSlocal_void (tmp518) ;
// ATSlocal_void (tmp519) ;
// ATSlocal_void (tmp520) ;
ATSlocal (ats_ptr_type, tmp521) ;
ATSlocal (ats_int_type, tmp522) ;

__ats_lab_auxerr_gts_51:
tmp509 = atspre_lt_int_int (arg2, arg3) ;
if (tmp509) {
do {
/* branch: __ats_lab_97 */
__ats_lab_97_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_98_0 ; }
__ats_lab_97_1:
tmp510 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp511 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp512 = atspre_gt_int_int (arg2, 0) ;
if (tmp512) {
tmp513 = atspre_sub_int_int (arg2, 1) ;
tmp514 = atspre_sub_int_int (arg3, 1) ;
arg0 = arg0 ;
arg1 = tmp511 ;
arg2 = tmp513 ;
arg3 = tmp514 ;
goto __ats_lab_auxerr_gts_51 ; // tail call
} else {
/* tmp515 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp516 = */ atspre_prerr_string (ATSstrcst(": the static clause associated with [")) ;
/* tmp517 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2cst (tmp510) ;
/* tmp518 = */ atspre_prerr_string (ATSstrcst("] is missing.")) ;
/* tmp519 = */ atspre_prerr_newline () ;
tmp521 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp521)->tag = 15 ;
ats_selptrset_mac(anairiats_sum_5, tmp521, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp521, atslab_1, tmp510) ;
/* tmp520 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp521) ;
tmp522 = atspre_sub_int_int (arg3, 1) ;
arg0 = arg0 ;
arg1 = tmp511 ;
arg2 = 0 ;
arg3 = tmp522 ;
goto __ats_lab_auxerr_gts_51 ; // tail call
} /* end of [if] */
break ;

/* branch: __ats_lab_98 */
__ats_lab_98_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_98_1:
break ;
} while (0) ;
} else {
/* empty */
} /* end of [if] */
return /* (tmp508) */ ;
} /* end of [auxerr_gts_51] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 12687(line=466, offs=7) -- 13058(line=477, offs=43)
*/
ATSstaticdec()
ats_void_type
loop_55 (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp526) ;
ATSlocal (ats_ptr_type, tmp527) ;
ATSlocal (ats_ptr_type, tmp528) ;
ATSlocal (ats_ptr_type, tmp529) ;
ATSlocal (ats_ptr_type, tmp530) ;
ATSlocal (ats_ptr_type, tmp531) ;

__ats_lab_loop_55:
do {
/* branch: __ats_lab_99 */
__ats_lab_99_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_100_0 ; }
__ats_lab_99_1:
tmp527 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp528 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp529 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp529, atslab_0, tmp527) ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp529 ;
// if (ats_ptrget_mac(ats_ptr_type, arg1) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp530 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg1), atslab_1) ;
arg0 = tmp528 ;
arg1 = tmp530 ;
goto __ats_lab_loop_55 ; // tail call
break ;

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

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp525) ;
ATSlocal (ats_ptr_type, tmp532) ;
// ATSlocal_void (tmp533) ;

__ats_lab_list_copy_01322_ats_ptr_type:
/* ats_ptr_type tmp532 ; */
/* tmp533 = */ loop_55 (arg0, (&tmp532)) ;
tmp525 = tmp532 ;
return (tmp525) ;
} /* end of [list_copy_01322_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 31588(line=1390, offs=18) -- 31694(line=1393, offs=65)
*/
ATSstaticdec()
ats_int_type
__ats_fun_56 (ats_ref_type arg0, ats_ref_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp535) ;
ATSlocal (ats_int_type, tmp536) ;
ATSlocal (ats_int_type, tmp537) ;

__ats_lab___ats_fun_56:
tmp536 = sc2lau_get_dstag_49 (ats_ptrget_mac(ats_ptr_type, arg0)) ;
tmp537 = sc2lau_get_dstag_49 (ats_ptrget_mac(ats_ptr_type, arg1)) ;
tmp535 = atspre_sub_int_int (tmp536, tmp537) ;
return (tmp535) ;
} /* end of [__ats_fun_56] */

typedef struct {
ats_fun_ptr_type closure_fun ;
} __ats_fun_56_closure_type ;

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

ATSinline()
ats_void_type
__ats_fun_56_closure_init (__ats_fun_56_closure_type *p_clo) {
p_clo->closure_fun = (ats_fun_ptr_type)&__ats_fun_56_clofun ;
return ;
} /* end of function */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list_vt.dats: 16240(line=604, offs=5) -- 16603(line=618, offs=6)
*/
ATSstaticdec()
ats_void_type
split_58 (ats_ref_type arg0, ats_int_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp541) ;
ATSlocal (ats_bool_type, tmp542) ;
ATSlocal (ats_ptr_type, tmp543) ;
ATSlocal (ats_int_type, tmp544) ;
ATSlocal (ats_ptr_type, tmp545) ;

__ats_lab_split_58:
tmp542 = atspre_igt (arg1, 0) ;
if (tmp542) {
// if (ats_ptrget_mac(ats_ptr_type, arg0) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp543 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg0), atslab_1) ;
tmp544 = atspre_isub (arg1, 1) ;
arg0 = tmp543 ;
arg1 = tmp544 ;
arg2 = arg2 ;
goto __ats_lab_split_58 ; // tail call
} else {
ats_ptrget_mac(ats_ptr_type, arg2) = ats_ptrget_mac(ats_ptr_type, arg0) ;
tmp545 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg0) = tmp545 ;
} /* end of [if] */
return /* (tmp541) */ ;
} /* end of [split_58] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list_vt.dats: 16641(line=620, offs=5) -- 17444(line=646, offs=36)
*/
ATSstaticdec()
ats_void_type
merge_59 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2, ats_ref_type arg3) {
/* local vardec */
// ATSlocal_void (tmp546) ;
ATSlocal (ats_ptr_type, tmp547) ;
ATSlocal (ats_ptr_type, tmp548) ;
ATSlocal (ats_ptr_type, tmp549) ;
ATSlocal (ats_ptr_type, tmp550) ;
ATSlocal (ats_int_type, tmp551) ;
ATSlocal (ats_bool_type, tmp552) ;
// ATSlocal_void (tmp553) ;
ATSlocal (ats_ptr_type, tmp554) ;
// ATSlocal_void (tmp555) ;
ATSlocal (ats_ptr_type, tmp556) ;

__ats_lab_merge_59:
do {
/* branch: __ats_lab_101 */
__ats_lab_101_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_104_0 ; }
__ats_lab_101_1:
tmp547 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp548 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
do {
/* branch: __ats_lab_102 */
__ats_lab_102_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_103_0 ; }
__ats_lab_102_1:
tmp549 = &ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp550 = &ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
tmp551 = ((ats_int_type(*)(ats_clo_ptr_type, ats_ref_type, ats_ref_type))(ats_closure_fun(arg2))) (arg2, tmp547, tmp549) ;
tmp552 = atspre_lte_int_int (tmp551, 0) ;
if (tmp552) {
tmp554 = ats_ptrget_mac(ats_ptr_type, tmp548) ;
/* tmp553 = */ merge_59 (tmp554, arg1, arg2, tmp548) ;
ats_ptrget_mac(ats_ptr_type, arg3) = arg0 ;
} else {
tmp556 = ats_ptrget_mac(ats_ptr_type, tmp550) ;
/* tmp555 = */ merge_59 (arg0, tmp556, arg2, tmp550) ;
ats_ptrget_mac(ats_ptr_type, arg3) = arg1 ;
} /* end of [if] */
break ;

/* branch: __ats_lab_103 */
__ats_lab_103_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_103_1:
ats_ptrget_mac(ats_ptr_type, arg3) = arg0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_104 */
__ats_lab_104_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_104_1:
ats_ptrget_mac(ats_ptr_type, arg3) = arg1 ;
break ;
} while (0) ;
return /* (tmp546) */ ;
} /* end of [merge_59] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list_vt.dats: 5506(line=202, offs=7) -- 5735(line=208, offs=6)
*/
ATSstaticdec()
ats_int_type
loop_61 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_int_type, tmp559) ;
ATSlocal (ats_ptr_type, tmp560) ;
ATSlocal (ats_ptr_type, tmp561) ;
ATSlocal (ats_int_type, tmp562) ;

__ats_lab_loop_61:
do {
/* branch: __ats_lab_105 */
__ats_lab_105_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_106_0 ; }
__ats_lab_105_1:
tmp560 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp561 = ats_ptrget_mac(ats_ptr_type, tmp560) ;
tmp562 = atspre_iadd (arg1, 1) ;
arg0 = tmp561 ;
arg1 = tmp562 ;
goto __ats_lab_loop_61 ; // tail call
break ;

/* branch: __ats_lab_106 */
__ats_lab_106_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_106_1:
tmp559 = arg1 ;
break ;
} while (0) ;
return (tmp559) ;
} /* end of [loop_61] */

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp558) ;

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

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp540) ;
ATSlocal (ats_int_type, tmp557) ;
ATSlocal (ats_bool_type, tmp563) ;
ATSlocal (ats_ptr_type, tmp564) ;
ATSlocal (ats_ptr_type, tmp565) ;
// ATSlocal_void (tmp566) ;
ATSlocal (ats_int_type, tmp567) ;
ATSlocal (ats_int_type, tmp568) ;
ATSlocal (ats_ptr_type, tmp569) ;
ATSlocal (ats_ptr_type, tmp570) ;
// ATSlocal_void (tmp571) ;

__ats_lab_list_vt_mergesort_01524_ats_ptr_type:
tmp557 = list_vt_length_01501_ats_ptr_type (arg0) ;
tmp563 = atspre_igte (tmp557, 2) ;
if (tmp563) {
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp564 = &ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
/* ats_ptr_type tmp565 ; */
tmp568 = atspre_isub (tmp557, 1) ;
tmp567 = atspre_idiv (tmp568, 2) ;
/* tmp566 = */ split_58 (tmp564, tmp567, (&tmp565)) ;
tmp569 = list_vt_mergesort_01524_ats_ptr_type (arg0, arg1) ;
tmp570 = list_vt_mergesort_01524_ats_ptr_type (tmp565, arg1) ;
/* tmp571 = */ merge_59 (tmp569, tmp570, arg1, (&tmp565)) ;
tmp540 = tmp565 ;
} else {
tmp540 = arg0 ;
} /* end of [if] */
return (tmp540) ;
} /* end of [list_vt_mergesort_01524_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 31429(line=1380, offs=5) -- 31823(line=1400, offs=4)
*/
ATSstaticdec()
ats_void_type
auxmain1_52 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp523) ;
ATSlocal (ats_ptr_type, tmp524) ;
ATSlocal (ats_ptr_type, tmp534) ;
ATSlocal (__ats_fun_56_closure_type, tmp538) ;
ATSlocal (ats_ptr_type, tmp539) ;

__ats_lab_auxmain1_52:
tmp524 = list_copy_01322_ats_ptr_type (arg1) ;
/* ats_ptr_type tmp534 ; */
tmp534 = &(tmp538) ;
__ats_fun_56_closure_init (tmp534) ; // closure initialization
tmp539 = list_vt_mergesort_01524_ats_ptr_type (tmp524, tmp534) ;
/* tmp523 = */ auxmain2_53 (arg0, tmp539, arg2) ;
return /* (tmp523) */ ;
} /* end of [auxmain1_52] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 31946(line=1408, offs=5) -- 32664(line=1438, offs=4)
*/
ATSstaticdec()
ats_void_type
loop_62 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_int_type arg3) {
/* local vardec */
// ATSlocal_void (tmp573) ;
ATSlocal (ats_ptr_type, tmp574) ;
ATSlocal (ats_ptr_type, tmp575) ;
ATSlocal (ats_int_type, tmp576) ;
ATSlocal (ats_bool_type, tmp577) ;
ATSlocal (ats_bool_type, tmp578) ;
// ATSlocal_void (tmp579) ;
// ATSlocal_void (tmp580) ;
ATSlocal (ats_int_type, tmp581) ;
ATSlocal (ats_int_type, tmp582) ;

__ats_lab_loop_62:
do {
/* branch: __ats_lab_107 */
__ats_lab_107_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_108_0 ; }
__ats_lab_107_1:
tmp574 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_0) ;
tmp575 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
ATS_FREE(arg1) ;
tmp576 = sc2lau_get_dstag_49 (tmp574) ;
tmp577 = atspre_gte_int_int (tmp576, 0) ;
if (tmp577) {
tmp578 = atspre_lt_int_int (tmp576, arg3) ;
if (tmp578) {
/* tmp579 = */ auxerr_lt_50 (arg0, tmp574) ;
arg0 = arg0 ;
arg1 = tmp575 ;
arg2 = arg2 ;
arg3 = arg3 ;
goto __ats_lab_loop_62 ; // tail call
} else {
/* tmp580 = */ auxerr_gts_51 (arg0, arg2, arg3, tmp576) ;
tmp581 = atspre_add_int_int (tmp576, 1) ;
arg0 = arg0 ;
arg1 = tmp575 ;
arg2 = arg2 ;
arg3 = tmp581 ;
goto __ats_lab_loop_62 ; // tail call
} /* end of [if] */
} else {
arg0 = arg0 ;
arg1 = tmp575 ;
arg2 = arg2 ;
arg3 = arg3 ;
goto __ats_lab_loop_62 ; // tail call
} /* end of [if] */
break ;

/* branch: __ats_lab_108 */
__ats_lab_108_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_108_1:
tmp582 = list_length_01410_ats_ptr_type (arg2) ;
/* tmp573 = */ auxerr_gts_51 (arg0, arg2, arg3, tmp582) ;
break ;
} while (0) ;
return /* (tmp573) */ ;
} /* end of [loop_62] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 31850(line=1402, offs=5) -- 32766(line=1444, offs=4)
*/
ATSstaticdec()
ats_void_type
auxmain2_53 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp572) ;
ATSlocal (ats_ptr_type, tmp583) ;

__ats_lab_auxmain2_53:
tmp583 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rtdat_get_sconlst (arg2) ;
/* tmp572 = */ loop_62 (arg0, arg1, tmp583, 0) ;
return /* (tmp572) */ ;
} /* end of [auxmain2_53] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 32879(line=1453, offs=1) -- 33222(line=1463, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr1_64 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp585) ;
// ATSlocal_void (tmp586) ;
// ATSlocal_void (tmp587) ;
// ATSlocal_void (tmp588) ;
// ATSlocal_void (tmp589) ;
// ATSlocal_void (tmp590) ;
ATSlocal (ats_ptr_type, tmp591) ;

__ats_lab_auxerr1_64:
/* tmp586 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp587 = */ atspre_prerr_string (ATSstrcst(": the static expression being analyzed is of the sort [")) ;
/* tmp588 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg1) ;
/* tmp589 = */ atspre_prerr_string (ATSstrcst("], which is not a base sort as is required.")) ;
/* tmp590 = */ atspre_prerr_newline () ;
tmp591 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp591)->tag = 13 ;
ats_selptrset_mac(anairiats_sum_5, tmp591, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp591, atslab_1, arg1) ;
/* tmp585 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp591) ;
return /* (tmp585) */ ;
} /* end of [auxerr1_64] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 33247(line=1465, offs=1) -- 33589(line=1475, offs=4)
*/
ATSstaticdec()
ats_void_type
auxerr2_65 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp592) ;
// ATSlocal_void (tmp593) ;
// ATSlocal_void (tmp594) ;
// ATSlocal_void (tmp595) ;
// ATSlocal_void (tmp596) ;
// ATSlocal_void (tmp597) ;
ATSlocal (ats_ptr_type, tmp598) ;

__ats_lab_auxerr2_65:
/* tmp593 = */ prerr_error2_loc_02401_ (arg0) ;
/* tmp594 = */ atspre_prerr_string (ATSstrcst(": the static expression being analyzed is of the sort [")) ;
/* tmp595 = */ _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2rt (arg1) ;
/* tmp596 = */ atspre_prerr_string (ATSstrcst("], which is not a datasort as is required.")) ;
/* tmp597 = */ atspre_prerr_newline () ;
tmp598 = ATS_MALLOC(sizeof(anairiats_sum_5)) ;
((ats_sum_ptr_type)tmp598)->tag = 13 ;
ats_selptrset_mac(anairiats_sum_5, tmp598, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_5, tmp598, atslab_1, arg1) ;
/* tmp592 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp598) ;
return /* (tmp592) */ ;
} /* end of [auxerr2_65] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 32843(line=1450, offs=3) -- 33860(line=1487, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp584) ;
ATSlocal (ats_ptr_type, tmp599) ;
ATSlocal (ats_ptr_type, tmp600) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck:
do {
/* branch: __ats_lab_109 */
__ats_lab_109_0:
if (((ats_sum_ptr_type)arg2)->tag != 0) { goto __ats_lab_112_0 ; }
__ats_lab_109_1:
tmp599 = ats_caselptrlab_mac(anairiats_sum_7, arg2, atslab_0) ;
do {
/* branch: __ats_lab_110 */
__ats_lab_110_0:
if (((ats_sum_ptr_type)tmp599)->tag != 2) { goto __ats_lab_111_0 ; }
__ats_lab_110_1:
tmp600 = ats_caselptrlab_mac(anairiats_sum_7, tmp599, atslab_0) ;
/* tmp584 = */ auxmain1_52 (arg0, arg1, tmp600) ;
break ;

/* branch: __ats_lab_111 */
__ats_lab_111_0:
__ats_lab_111_1:
/* tmp584 = */ auxerr2_65 (arg0, arg2) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_112 */
__ats_lab_112_0:
__ats_lab_112_1:
/* tmp584 = */ auxerr1_64 (arg0, arg2) ;
break ;
} while (0) ;
return /* (tmp584) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 33942(line=1494, offs=1) -- 34061(line=1501, offs=2)
*/
ATSstaticdec()
ats_ptr_type
un_d1exp_sing_66 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp601) ;
ATSlocal (ats_ptr_type, tmp602) ;
ATSlocal (ats_ptr_type, tmp603) ;

__ats_lab_un_d1exp_sing_66:
tmp602 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_113 */
__ats_lab_113_0:
if (((ats_sum_ptr_type)tmp602)->tag != 29) { goto __ats_lab_114_0 ; }
__ats_lab_113_1:
tmp603 = ats_caselptrlab_mac(anairiats_sum_7, tmp602, atslab_0) ;
arg0 = tmp603 ;
goto __ats_lab_un_d1exp_sing_66 ; // tail call
break ;

/* branch: __ats_lab_114 */
__ats_lab_114_0:
__ats_lab_114_1:
tmp601 = arg0 ;
break ;
} while (0) ;
return (tmp601) ;
} /* end of [un_d1exp_sing_66] */

/*
// /home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 19194(line=690, offs=7) -- 19604(line=704, offs=6)
*/
ATSstaticdec()
ats_void_type
loop_69 (ats_ptr_type arg0, ats_ptr_type arg1, ats_ref_type arg2) {
/* local vardec */
// ATSlocal_void (tmp785) ;
ATSlocal (ats_ptr_type, tmp786) ;
ATSlocal (ats_ptr_type, tmp787) ;
ATSlocal (ats_ptr_type, tmp788) ;
ATSlocal (ats_ptr_type, tmp789) ;
ATSlocal (ats_ptr_type, tmp790) ;
ATSlocal (ats_ptr_type, tmp791) ;

__ats_lab_loop_69:
do {
/* branch: __ats_lab_177 */
__ats_lab_177_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_178_0 ; }
__ats_lab_177_1:
tmp786 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp787 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp788 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp788, atslab_0, tmp786) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp788 ;
if (ats_ptrget_mac(ats_ptr_type, arg2) == (ats_sum_ptr_type)0) { ats_caseof_failure_handle ("/home/ats-lang-anairiats-0.2.12/prelude/DATS/list.dats: 19444(line=699, offs=13) -- 19470(line=699, offs=39)") ; }
tmp789 = &ats_caselptrlab_mac(anairiats_sum_8, ats_ptrget_mac(ats_ptr_type, arg2), atslab_1) ;
arg0 = tmp787 ;
arg1 = arg1 ;
arg2 = tmp789 ;
goto __ats_lab_loop_69 ; // tail call
break ;

/* branch: __ats_lab_178 */
__ats_lab_178_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_178_1:
tmp791 = (ats_sum_ptr_type)0 ;
tmp790 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp790, atslab_0, arg1) ;
ats_selptrset_mac(anairiats_sum_8, tmp790, atslab_1, tmp791) ;
ats_ptrget_mac(ats_ptr_type, arg2) = tmp790 ;
break ;
} while (0) ;
return /* (tmp785) */ ;
} /* end of [loop_69] */

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp783) ;
ATSlocal (ats_ptr_type, tmp784) ;
// ATSlocal_void (tmp792) ;

__ats_lab_list_extend_01337_ats_ptr_type:
/* ats_ptr_type tmp784 ; */
/* tmp792 = */ loop_69 (arg0, arg1, (&tmp784)) ;
tmp783 = tmp784 ;
return (tmp783) ;
} /* end of [list_extend_01337_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 44036(line=1939, offs=9) -- 44216(line=1947, offs=6)
*/
ATSstaticdec()
ats_ptr_type
auxlst_70 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp814) ;
ATSlocal (ats_ptr_type, tmp815) ;
ATSlocal (ats_ptr_type, tmp816) ;

__ats_lab_auxlst_70:
do {
/* branch: __ats_lab_186 */
__ats_lab_186_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_187_0 ; }
__ats_lab_186_1:
tmp814 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_187 */
__ats_lab_187_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_187_1:
tmp815 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp816 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp814 = auxlst2_71 (tmp815, tmp816) ;
break ;
} while (0) ;
return (tmp814) ;
} /* end of [auxlst_70] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 44250(line=1949, offs=9) -- 44493(line=1960, offs=6)
*/
ATSstaticdec()
ats_ptr_type
auxlst2_71 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp817) ;
ATSlocal (ats_ptr_type, tmp818) ;
ATSlocal (ats_ptr_type, tmp819) ;
ATSlocal (ats_ptr_type, tmp820) ;

__ats_lab_auxlst2_71:
tmp818 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_188 */
__ats_lab_188_0:
if (((ats_sum_ptr_type)tmp818)->tag != 1) { goto __ats_lab_189_0 ; }
__ats_lab_188_1:
tmp819 = ats_caselptrlab_mac(anairiats_sum_7, tmp818, atslab_0) ;
tmp820 = auxlst_70 (arg1) ;
tmp817 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp817, atslab_0, tmp819) ;
ats_selptrset_mac(anairiats_sum_8, tmp817, atslab_1, tmp820) ;
break ;

/* branch: __ats_lab_189 */
__ats_lab_189_0:
__ats_lab_189_1:
tmp817 = auxlst_70 (arg1) ;
break ;
} while (0) ;
return (tmp817) ;
} /* end of [auxlst2_71] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 34134(line=1506, offs=10) -- 49443(line=2149, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (ats_ptr_type arg0) {
/* local vardec */
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_int_type, tmp610) ;
ATSlocal (ats_ptr_type, tmp611) ;
ATSlocal (ats_bool_type, tmp612) ;
ATSlocal (ats_char_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_ptr_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 (ats_int_type, tmp640) ;
ATSlocal (ats_ptr_type, tmp641) ;
ATSlocal (ats_ptr_type, tmp642) ;
ATSlocal (ats_ptr_type, tmp643) ;
ATSlocal (ats_ptr_type, tmp644) ;
ATSlocal (ats_ptr_type, tmp645) ;
ATSlocal (ats_ptr_type, tmp646) ;
ATSlocal (ats_ptr_type, tmp647) ;
ATSlocal (ats_ptr_type, tmp648) ;
ATSlocal (ats_ptr_type, tmp649) ;
ATSlocal (ats_ptr_type, tmp650) ;
ATSlocal (ats_ptr_type, tmp651) ;
ATSlocal (ats_ptr_type, tmp652) ;
ATSlocal (ats_ptr_type, tmp653) ;
ATSlocal (ats_ptr_type, tmp654) ;
ATSlocal (ats_ptr_type, tmp655) ;
ATSlocal (ats_ptr_type, tmp656) ;
ATSlocal (ats_ptr_type, tmp657) ;
ATSlocal (ats_ptr_type, tmp658) ;
// ATSlocal_void (tmp659) ;
// ATSlocal_void (tmp660) ;
ATSlocal (ats_ptr_type, tmp661) ;
ATSlocal (ats_ptr_type, tmp662) ;
// ATSlocal_void (tmp663) ;
ATSlocal (ats_ptr_type, tmp664) ;
ATSlocal (ats_ptr_type, tmp665) ;
// ATSlocal_void (tmp666) ;
// ATSlocal_void (tmp667) ;
ATSlocal (ats_ptr_type, tmp668) ;
ATSlocal (ats_ptr_type, tmp669) ;
// ATSlocal_void (tmp670) ;
ATSlocal (ats_ptr_type, tmp671) ;
// ATSlocal_void (tmp672) ;
// ATSlocal_void (tmp673) ;
ATSlocal (ats_ptr_type, tmp674) ;
ATSlocal (ats_ptr_type, tmp675) ;
// ATSlocal_void (tmp676) ;
ATSlocal (ats_ptr_type, tmp677) ;
ATSlocal (ats_ptr_type, tmp678) ;
ATSlocal (ats_int_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_int_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_ptr_type, tmp699) ;
ATSlocal (ats_ptr_type, tmp700) ;
ATSlocal (ats_ptr_type, tmp701) ;
ATSlocal (ats_ptr_type, tmp702) ;
ATSlocal (ats_ptr_type, tmp703) ;
ATSlocal (ats_ptr_type, tmp704) ;
ATSlocal (ats_ptr_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 (ats_ptr_type, tmp714) ;
ATSlocal (ats_ptr_type, tmp715) ;
ATSlocal (ats_ptr_type, tmp716) ;
ATSlocal (ats_ptr_type, tmp717) ;
ATSlocal (ats_int_type, tmp718) ;
ATSlocal (ats_ptr_type, tmp719) ;
ATSlocal (ats_bool_type, tmp720) ;
ATSlocal (ats_ptr_type, tmp721) ;
ATSlocal (ats_ptr_type, tmp722) ;
ATSlocal (ats_int_type, tmp723) ;
ATSlocal (ats_bool_type, tmp724) ;
ATSlocal (ats_ptr_type, tmp725) ;
ATSlocal (ats_ptr_type, tmp726) ;
ATSlocal (ats_ptr_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_void (tmp733) ;
ATSlocal (ats_int_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_int_type, tmp741) ;
ATSlocal (ats_int_type, tmp742) ;
ATSlocal (ats_ptr_type, tmp743) ;
ATSlocal (ats_ptr_type, tmp744) ;
ATSlocal (ats_int_type, tmp745) ;
ATSlocal (ats_int_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_ptr_type, tmp754) ;
ATSlocal (ats_ptr_type, tmp755) ;
ATSlocal (ats_ptr_type, tmp756) ;
ATSlocal (ats_ptr_type, tmp757) ;
ATSlocal (ats_ptr_type, tmp758) ;
ATSlocal (ats_ptr_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, tmp764) ;
ATSlocal (ats_ptr_type, tmp765) ;
ATSlocal (ats_ptr_type, 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) ;
ATSlocal (ats_int_type, tmp773) ;
ATSlocal (ats_ptr_type, tmp774) ;
ATSlocal (ats_ptr_type, tmp775) ;
ATSlocal (ats_ptr_type, tmp776) ;
ATSlocal (ats_ptr_type, tmp777) ;
ATSlocal (ats_bool_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, tmp793) ;
ATSlocal (ats_ptr_type, tmp794) ;
ATSlocal (ats_ptr_type, tmp795) ;
ATSlocal (ats_ptr_type, tmp796) ;
ATSlocal (ats_ptr_type, tmp797) ;
ATSlocal (ats_ptr_type, tmp798) ;
ATSlocal (ats_ptr_type, tmp799) ;
ATSlocal (ats_ptr_type, tmp800) ;
ATSlocal (ats_ptr_type, tmp801) ;
ATSlocal (ats_ptr_type, tmp802) ;
ATSlocal (ats_ptr_type, tmp803) ;
ATSlocal (ats_ptr_type, tmp804) ;
ATSlocal (ats_ptr_type, tmp805) ;
ATSlocal (ats_int_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_ptr_type, tmp812) ;
ATSlocal (ats_ptr_type, tmp813) ;
ATSlocal (ats_ptr_type, tmp821) ;
ATSlocal (ats_ptr_type, tmp822) ;
ATSlocal (ats_ptr_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_ptr_type, tmp830) ;
ATSlocal (ats_ptr_type, tmp831) ;
ATSlocal (ats_ptr_type, tmp832) ;
ATSlocal (ats_ptr_type, tmp833) ;
ATSlocal (ats_int_type, tmp834) ;
ATSlocal (ats_ptr_type, tmp835) ;
ATSlocal (ats_ptr_type, tmp836) ;
ATSlocal (anairiats_rec_10, tmp837) ;
ATSlocal (ats_int_type, tmp838) ;
ATSlocal (ats_ptr_type, tmp839) ;
ATSlocal (ats_ptr_type, tmp840) ;
ATSlocal (ats_int_type, tmp841) ;
ATSlocal (ats_ptr_type, tmp842) ;
ATSlocal (ats_ptr_type, tmp843) ;
ATSlocal (anairiats_rec_10, tmp844) ;
ATSlocal (ats_int_type, tmp845) ;
ATSlocal (ats_ptr_type, tmp846) ;
ATSlocal (ats_ptr_type, tmp847) ;
ATSlocal (ats_ptr_type, tmp848) ;
ATSlocal (ats_ptr_type, tmp849) ;
ATSlocal (ats_ptr_type, tmp850) ;
ATSlocal (ats_ptr_type, tmp851) ;
ATSlocal (ats_int_type, tmp852) ;
ATSlocal (ats_ptr_type, tmp853) ;
ATSlocal (ats_ptr_type, tmp854) ;
ATSlocal (ats_ptr_type, tmp855) ;
ATSlocal (ats_ptr_type, tmp856) ;
ATSlocal (ats_ptr_type, tmp857) ;
// ATSlocal_void (tmp858) ;
// ATSlocal_void (tmp859) ;
// ATSlocal_void (tmp860) ;
// ATSlocal_void (tmp861) ;
ATSlocal (ats_ptr_type, tmp862) ;
// ATSlocal_void (tmp863) ;
ATSlocal (ats_ptr_type, tmp864) ;
ATSlocal (ats_ptr_type, tmp865) ;
// ATSlocal_void (tmp866) ;
// ATSlocal_void (tmp867) ;
ATSlocal (anairiats_rec_2, tmp868) ;
ATSlocal (ats_ptr_type, tmp869) ;
// ATSlocal_void (tmp870) ;
ATSlocal (ats_ptr_type, tmp871) ;
ATSlocal (ats_ptr_type, tmp872) ;
ATSlocal (ats_ptr_type, tmp873) ;
ATSlocal (ats_ptr_type, tmp874) ;
ATSlocal (ats_ptr_type, tmp875) ;
// ATSlocal_void (tmp876) ;
// ATSlocal_void (tmp877) ;
ATSlocal (ats_ptr_type, tmp878) ;
ATSlocal (ats_ptr_type, tmp879) ;
ATSlocal (ats_ptr_type, tmp880) ;
// ATSlocal_void (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_void (tmp888) ;
// ATSlocal_void (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_void (tmp895) ;
ATSlocal (ats_ptr_type, tmp896) ;
ATSlocal (ats_ptr_type, tmp897) ;
ATSlocal (ats_ptr_type, tmp898) ;
ATSlocal (ats_ptr_type, tmp899) ;
ATSlocal (ats_ptr_type, tmp900) ;
ATSlocal (ats_ptr_type, tmp901) ;
ATSlocal (ats_ptr_type, tmp902) ;
ATSlocal (ats_ptr_type, tmp903) ;
ATSlocal (ats_ptr_type, tmp904) ;
ATSlocal (ats_ptr_type, tmp905) ;
ATSlocal (ats_ptr_type, tmp906) ;
ATSlocal (ats_ptr_type, tmp907) ;
ATSlocal (ats_ptr_type, tmp908) ;
ATSlocal (ats_ptr_type, tmp909) ;
ATSlocal (ats_ptr_type, tmp910) ;
ATSlocal (ats_ptr_type, tmp911) ;
ATSlocal (ats_ptr_type, tmp912) ;
ATSlocal (ats_ptr_type, tmp913) ;
ATSlocal (ats_ptr_type, tmp914) ;
ATSlocal (ats_ptr_type, tmp915) ;
ATSlocal (ats_ptr_type, tmp916) ;
ATSlocal (ats_ptr_type, tmp917) ;
// ATSlocal_void (tmp918) ;
// ATSlocal_void (tmp919) ;
// ATSlocal_void (tmp920) ;
// ATSlocal_void (tmp921) ;
// ATSlocal_void (tmp922) ;
// ATSlocal_void (tmp923) ;
ATSlocal (ats_ptr_type, tmp924) ;
// ATSlocal_void (tmp925) ;
// ATSlocal_void (tmp926) ;
// ATSlocal_void (tmp927) ;
// ATSlocal_void (tmp928) ;
ATSlocal (ats_ptr_type, tmp929) ;
// ATSlocal_void (tmp930) ;
// ATSlocal_void (tmp931) ;
// ATSlocal_void (tmp932) ;
// ATSlocal_void (tmp933) ;
// ATSlocal_void (tmp934) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr:
tmp605 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_loc) ;
tmp606 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, arg0), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_115 */
__ats_lab_115_0:
if (((ats_sum_ptr_type)tmp606)->tag != 0) { goto __ats_lab_116_0 ; }
__ats_lab_115_1:
tmp607 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = d1exp_tr_dqid_10 (arg0, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp607) ;
break ;

/* branch: __ats_lab_116 */
__ats_lab_116_0:
if (((ats_sum_ptr_type)tmp606)->tag != 1) { goto __ats_lab_117_0 ; }
__ats_lab_116_1:
tmp608 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp609 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp604 = d1exp_tr_dqid_10 (arg0, tmp608, tmp609) ;
break ;

/* branch: __ats_lab_117 */
__ats_lab_117_0:
if (((ats_sum_ptr_type)tmp606)->tag != 3) { goto __ats_lab_118_0 ; }
__ats_lab_117_1:
tmp610 = ats_caselptrlab_mac(anairiats_sum_23, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_int (tmp605, tmp610) ;
break ;

/* branch: __ats_lab_118 */
__ats_lab_118_0:
if (((ats_sum_ptr_type)tmp606)->tag != 4) { goto __ats_lab_119_0 ; }
__ats_lab_118_1:
tmp611 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_intrep (tmp605, tmp611) ;
break ;

/* branch: __ats_lab_119 */
__ats_lab_119_0:
if (((ats_sum_ptr_type)tmp606)->tag != 5) { goto __ats_lab_120_0 ; }
__ats_lab_119_1:
tmp612 = ats_caselptrlab_mac(anairiats_sum_24, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool (tmp605, tmp612) ;
break ;

/* branch: __ats_lab_120 */
__ats_lab_120_0:
if (((ats_sum_ptr_type)tmp606)->tag != 6) { goto __ats_lab_121_0 ; }
__ats_lab_120_1:
tmp613 = ats_caselptrlab_mac(anairiats_sum_25, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_char (tmp605, tmp613) ;
break ;

/* branch: __ats_lab_121 */
__ats_lab_121_0:
if (((ats_sum_ptr_type)tmp606)->tag != 7) { goto __ats_lab_122_0 ; }
__ats_lab_121_1:
tmp614 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_float (tmp605, tmp614) ;
break ;

/* branch: __ats_lab_122 */
__ats_lab_122_0:
if (((ats_sum_ptr_type)tmp606)->tag != 8) { goto __ats_lab_123_0 ; }
__ats_lab_122_1:
tmp615 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_string (tmp605, tmp615) ;
break ;

/* branch: __ats_lab_123 */
__ats_lab_123_0:
if (((ats_sum_ptr_type)tmp606)->tag != 9) { goto __ats_lab_124_0 ; }
__ats_lab_123_1:
tmp616 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_i0nt (tmp605, tmp616) ;
break ;

/* branch: __ats_lab_124 */
__ats_lab_124_0:
if (((ats_sum_ptr_type)tmp606)->tag != 10) { goto __ats_lab_125_0 ; }
__ats_lab_124_1:
tmp617 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_c0har (tmp605, tmp617) ;
break ;

/* branch: __ats_lab_125 */
__ats_lab_125_0:
if (((ats_sum_ptr_type)tmp606)->tag != 11) { goto __ats_lab_126_0 ; }
__ats_lab_125_1:
tmp618 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_f0loat (tmp605, tmp618) ;
break ;

/* branch: __ats_lab_126 */
__ats_lab_126_0:
if (((ats_sum_ptr_type)tmp606)->tag != 12) { goto __ats_lab_127_0 ; }
__ats_lab_126_1:
tmp619 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_s0tring (tmp605, tmp619) ;
break ;

/* branch: __ats_lab_127 */
__ats_lab_127_0:
if (((ats_sum_ptr_type)tmp606)->tag != 15) { goto __ats_lab_128_0 ; }
__ats_lab_127_1:
tmp620 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_cstsp (tmp605, tmp620) ;
break ;

/* branch: __ats_lab_128 */
__ats_lab_128_0:
if (((ats_sum_ptr_type)tmp606)->tag != 16) { goto __ats_lab_129_0 ; }
__ats_lab_128_1:
tmp621 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp622 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp621) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tyrep (tmp605, tmp622) ;
break ;

/* branch: __ats_lab_129 */
__ats_lab_129_0:
if (((ats_sum_ptr_type)tmp606)->tag != 17) { goto __ats_lab_130_0 ; }
__ats_lab_129_1:
tmp623 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp624 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp623) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_literal (tmp605, tmp624) ;
break ;

/* branch: __ats_lab_130 */
__ats_lab_130_0:
if (((ats_sum_ptr_type)tmp606)->tag != 13) { goto __ats_lab_131_0 ; }
__ats_lab_130_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_top (tmp605) ;
break ;

/* branch: __ats_lab_131 */
__ats_lab_131_0:
if (((ats_sum_ptr_type)tmp606)->tag != 14) { goto __ats_lab_132_0 ; }
__ats_lab_131_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp605) ;
break ;

/* branch: __ats_lab_132 */
__ats_lab_132_0:
if (((ats_sum_ptr_type)tmp606)->tag != 18) { goto __ats_lab_133_0 ; }
__ats_lab_132_1:
tmp625 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp626 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp627 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp625) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extval (tmp605, tmp627, tmp626) ;
break ;

/* branch: __ats_lab_133 */
__ats_lab_133_0:
if (((ats_sum_ptr_type)tmp606)->tag != 19) { goto __ats_lab_134_0 ; }
__ats_lab_133_1:
tmp628 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp629 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp630 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
tmp631 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp628) ;
tmp632 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp630) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extfcall (tmp605, tmp631, tmp629, tmp632) ;
break ;

/* branch: __ats_lab_134 */
__ats_lab_134_0:
if (((ats_sum_ptr_type)tmp606)->tag != 20) { goto __ats_lab_135_0 ; }
__ats_lab_134_1:
tmp633 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_0) ;
tmp634 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_1) ;
tmp635 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_2) ;
tmp636 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_3) ;
tmp637 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp633) ;
tmp638 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp634) ;
tmp639 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp636) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_extmcall (tmp605, tmp637, tmp638, tmp635, tmp639) ;
break ;

/* branch: __ats_lab_135 */
__ats_lab_135_0:
if (((ats_sum_ptr_type)tmp606)->tag != 63) { goto __ats_lab_136_0 ; }
__ats_lab_135_1:
tmp640 = ats_caselptrlab_mac(anairiats_sum_23, tmp606, atslab_0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_loopexn (tmp605, tmp640) ;
break ;

/* branch: __ats_lab_136 */
__ats_lab_136_0:
if (((ats_sum_ptr_type)tmp606)->tag != 21) { goto __ats_lab_137_0 ; }
__ats_lab_136_1:
tmp641 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp642 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp643 = un_d1exp_sing_66 (tmp642) ;
tmp644 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (tmp641) ;
tmp645 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp643) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_foldat (tmp605, tmp644, tmp645) ;
break ;

/* branch: __ats_lab_137 */
__ats_lab_137_0:
if (((ats_sum_ptr_type)tmp606)->tag != 22) { goto __ats_lab_138_0 ; }
__ats_lab_137_1:
tmp646 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp647 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp648 = un_d1exp_sing_66 (tmp647) ;
tmp649 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparglst_tr (tmp646) ;
tmp650 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp648) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_freeat (tmp605, tmp649, tmp650) ;
break ;

/* branch: __ats_lab_138 */
__ats_lab_138_0:
if (((ats_sum_ptr_type)tmp606)->tag != 23) { goto __ats_lab_139_0 ; }
__ats_lab_138_1:
tmp651 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp652 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp653 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, tmp651), atslab_dqi0de_qua) ;
tmp654 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_28, tmp651), atslab_dqi0de_sym) ;
tmp655 = d1exp_tr_dqid_10 (arg0, tmp653, tmp654) ;
tmp656 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__t1mpmarglst_tr (tmp652) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tmpid (tmp605, tmp655, tmp656) ;
break ;

/* branch: __ats_lab_139 */
__ats_lab_139_0:
if (((ats_sum_ptr_type)tmp606)->tag != 24) { goto __ats_lab_140_0 ; }
__ats_lab_139_1:
tmp657 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp658 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
/* tmp659 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp660 = ats_selsin_mac(tmp659, atslab_1) */ ;
tmp661 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp657) ;
tmp662 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp658) ;
/* tmp663 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let (tmp605, tmp661, tmp662) ;
break ;

/* branch: __ats_lab_140 */
__ats_lab_140_0:
if (((ats_sum_ptr_type)tmp606)->tag != 25) { goto __ats_lab_141_0 ; }
__ats_lab_140_1:
tmp664 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp665 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
/* tmp666 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp667 = ats_selsin_mac(tmp666, atslab_1) */ ;
tmp668 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp665) ;
tmp669 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp664) ;
/* tmp670 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_where (tmp605, tmp669, tmp668) ;
break ;

/* branch: __ats_lab_141 */
__ats_lab_141_0:
if (((ats_sum_ptr_type)tmp606)->tag != 26) { goto __ats_lab_142_0 ; }
__ats_lab_141_1:
tmp671 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
/* tmp672 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_push () ;
/* tmp673 = ats_selsin_mac(tmp672, atslab_1) */ ;
tmp674 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1eclist_tr (tmp671) ;
tmp675 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp605) ;
/* tmp676 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_trans2_env_pop () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_let (tmp605, tmp674, tmp675) ;
break ;

/* branch: __ats_lab_142 */
__ats_lab_142_0:
if (((ats_sum_ptr_type)tmp606)->tag != 27) { goto __ats_lab_145_0 ; }
__ats_lab_142_1:
tmp677 = ats_caselptrlab_mac(anairiats_sum_29, tmp606, atslab_0) ;
tmp678 = ats_caselptrlab_mac(anairiats_sum_29, tmp606, atslab_1) ;
tmp679 = ats_caselptrlab_mac(anairiats_sum_29, tmp606, atslab_2) ;
tmp680 = ats_caselptrlab_mac(anairiats_sum_29, tmp606, atslab_3) ;
tmp681 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, tmp677), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_143 */
__ats_lab_143_0:
if (((ats_sum_ptr_type)tmp681)->tag != 28) { goto __ats_lab_144_0 ; }
__ats_lab_143_1:
tmp682 = ats_caselptrlab_mac(anairiats_sum_5, tmp681, atslab_0) ;
tmp683 = ats_caselptrlab_mac(anairiats_sum_5, tmp681, atslab_1) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, tmp677, tmp682, tmp683, tmp678, tmp679, tmp680) ;
break ;

/* branch: __ats_lab_144 */
__ats_lab_144_0:
__ats_lab_144_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_dyn (arg0, tmp677, tmp678, tmp679, tmp680) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_145 */
__ats_lab_145_0:
if (((ats_sum_ptr_type)tmp606)->tag != 28) { goto __ats_lab_146_0 ; }
__ats_lab_145_1:
tmp684 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp685 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp686 = (ats_sum_ptr_type)0 ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_app_sta_dyn (arg0, arg0, tmp684, tmp685, tmp605, -2, tmp686) ;
break ;

/* branch: __ats_lab_146 */
__ats_lab_146_0:
if (((ats_sum_ptr_type)tmp606)->tag != 29) { goto __ats_lab_147_0 ; }
__ats_lab_146_1:
tmp687 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp688 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp687) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sing (tmp605, tmp688) ;
break ;

/* branch: __ats_lab_147 */
__ats_lab_147_0:
if (((ats_sum_ptr_type)tmp606)->tag != 30) { goto __ats_lab_150_0 ; }
__ats_lab_147_1:
tmp689 = ats_caselptrlab_mac(anairiats_sum_12, tmp606, atslab_0) ;
tmp690 = ats_caselptrlab_mac(anairiats_sum_12, tmp606, atslab_1) ;
do {
/* branch: __ats_lab_148 */
__ats_lab_148_0:
if (tmp690 == (ats_sum_ptr_type)0) { goto __ats_lab_149_0 ; }
__ats_lab_148_1:
tmp691 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp690) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_list (tmp605, tmp689, tmp691) ;
break ;

/* branch: __ats_lab_149 */
__ats_lab_149_0:
// if (tmp690 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_149_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp605) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_150 */
__ats_lab_150_0:
if (((ats_sum_ptr_type)tmp606)->tag != 31) { goto __ats_lab_151_0 ; }
__ats_lab_150_1:
tmp692 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_0) ;
tmp693 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_1) ;
tmp694 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_2) ;
tmp695 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_3) ;
tmp696 = i1nvresstate_tr_38 (tmp692) ;
tmp697 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp693) ;
tmp698 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp694) ;
tmp699 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp695) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifhead (tmp605, tmp696, tmp697, tmp698, tmp699) ;
break ;

/* branch: __ats_lab_151 */
__ats_lab_151_0:
if (((ats_sum_ptr_type)tmp606)->tag != 32) { goto __ats_lab_152_0 ; }
__ats_lab_151_1:
tmp700 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_0) ;
tmp701 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_1) ;
tmp702 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_2) ;
tmp703 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_3) ;
tmp704 = i1nvresstate_tr_38 (tmp700) ;
tmp705 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_bool (tmp701) ;
tmp706 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp702) ;
tmp707 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp703) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sifhead (tmp605, tmp704, tmp705, tmp706, tmp707) ;
break ;

/* branch: __ats_lab_152 */
__ats_lab_152_0:
if (((ats_sum_ptr_type)tmp606)->tag != 33) { goto __ats_lab_153_0 ; }
__ats_lab_152_1:
tmp708 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp709 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp710 = i1nvresstate_tr_38 (tmp708) ;
tmp711 = i1fclist_tr_41 (tmp709) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ifcasehd (tmp605, tmp710, tmp711) ;
break ;

/* branch: __ats_lab_153 */
__ats_lab_153_0:
if (((ats_sum_ptr_type)tmp606)->tag != 34) { goto __ats_lab_154_0 ; }
__ats_lab_153_1:
tmp712 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_0) ;
tmp713 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_1) ;
tmp714 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_2) ;
tmp715 = ats_caselptrlab_mac(anairiats_sum_27, tmp606, atslab_3) ;
tmp716 = i1nvresstate_tr_38 (tmp713) ;
tmp717 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp714) ;
tmp718 = list_length_01410_ats_ptr_type (tmp717) ;
tmp720 = atspre_igt (tmp718, 0) ;
if (tmp720) {
tmp719 = tmp717 ;
} else {
tmp721 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_empty (tmp605) ;
tmp722 = (ats_sum_ptr_type)0 ;
tmp719 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp719, atslab_0, tmp721) ;
ats_selptrset_mac(anairiats_sum_8, tmp719, atslab_1, tmp722) ;
} /* end of [if] */
tmp724 = atspre_igt (tmp718, 0) ;
if (tmp724) {
tmp723 = tmp718 ;
} else {
tmp723 = 1 ;
} /* end of [if] */
tmp725 = c1laulst_tr_46 (tmp723, tmp715) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_casehead (tmp605, tmp712, tmp716, tmp719, tmp725) ;
break ;

/* branch: __ats_lab_154 */
__ats_lab_154_0:
if (((ats_sum_ptr_type)tmp606)->tag != 35) { goto __ats_lab_155_0 ; }
__ats_lab_154_1:
tmp726 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp727 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp728 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
tmp729 = i1nvresstate_tr_38 (tmp726) ;
tmp730 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trup (tmp727) ;
tmp731 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, tmp730), atslab_s2exp_srt) ;
tmp732 = sc1laulst_trdn_48 (tmp728, tmp731) ;
/* tmp733 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__sc2laulst_coverck (tmp605, tmp732, tmp731) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_scasehead (tmp605, tmp729, tmp730, tmp732) ;
break ;

/* branch: __ats_lab_155 */
__ats_lab_155_0:
if (((ats_sum_ptr_type)tmp606)->tag != 36) { goto __ats_lab_161_0 ; }
__ats_lab_155_1:
tmp734 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_0) ;
tmp735 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_1) ;
tmp736 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_2) ;
do {
/* branch: __ats_lab_156 */
__ats_lab_156_0:
if (tmp735 == (ats_sum_ptr_type)0) { goto __ats_lab_160_0 ; }
__ats_lab_156_1:
tmp738 = ats_caselptrlab_mac(anairiats_sum_4, tmp735, atslab_0) ;
do {
/* branch: __ats_lab_157 */
__ats_lab_157_0:
if (tmp734 != 0) { goto __ats_lab_158_0 ; }
__ats_lab_157_1:
tmp739 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_t0ype (tmp738) ;
break ;

/* branch: __ats_lab_158 */
__ats_lab_158_0:
if (tmp734 != 1) { goto __ats_lab_159_0 ; }
__ats_lab_158_1:
tmp739 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_vt0ype (tmp738) ;
break ;

/* branch: __ats_lab_159 */
__ats_lab_159_0:
__ats_lab_159_1:
tmp739 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp738) ;
break ;
} while (0) ;
tmp737 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp737, atslab_0, tmp739) ;
break ;

/* branch: __ats_lab_160 */
__ats_lab_160_0:
// if (tmp735 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_160_1:
tmp737 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp740 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp736) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lst (tmp605, tmp734, tmp737, tmp740) ;
break ;

/* branch: __ats_lab_161 */
__ats_lab_161_0:
if (((ats_sum_ptr_type)tmp606)->tag != 37) { goto __ats_lab_162_0 ; }
__ats_lab_161_1:
tmp741 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_0) ;
tmp742 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_1) ;
tmp743 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_2) ;
tmp744 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp743) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tup (tmp605, tmp741, tmp742, tmp744) ;
break ;

/* branch: __ats_lab_162 */
__ats_lab_162_0:
if (((ats_sum_ptr_type)tmp606)->tag != 38) { goto __ats_lab_163_0 ; }
__ats_lab_162_1:
tmp745 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_0) ;
tmp746 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_1) ;
tmp747 = ats_caselptrlab_mac(anairiats_sum_32, tmp606, atslab_2) ;
tmp748 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (tmp747, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_rec (tmp605, tmp745, tmp746, ats_castfn_mac(ats_ptr_type, tmp748)) ;
break ;

/* branch: __ats_lab_163 */
__ats_lab_163_0:
if (((ats_sum_ptr_type)tmp606)->tag != 39) { goto __ats_lab_164_0 ; }
__ats_lab_163_1:
tmp749 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp750 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp749) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_seq2 (tmp605, tmp750) ;
break ;

/* branch: __ats_lab_164 */
__ats_lab_164_0:
if (((ats_sum_ptr_type)tmp606)->tag != 40) { goto __ats_lab_165_0 ; }
__ats_lab_164_1:
tmp751 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp752 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp753 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
tmp604 = d1exp_tr_arrsub_30 (arg0, tmp751, tmp752, tmp753) ;
break ;

/* branch: __ats_lab_165 */
__ats_lab_165_0:
if (((ats_sum_ptr_type)tmp606)->tag != 42) { goto __ats_lab_168_0 ; }
__ats_lab_165_1:
tmp754 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp755 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp756 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1expopt_trup (tmp754) ;
do {
/* branch: __ats_lab_166 */
__ats_lab_166_0:
if (tmp756 == (ats_sum_ptr_type)0) { goto __ats_lab_167_0 ; }
__ats_lab_166_1:
tmp758 = ats_caselptrlab_mac(anairiats_sum_4, tmp756, atslab_0) ;
tmp757 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp757, atslab_0, tmp758) ;
break ;

/* branch: __ats_lab_167 */
__ats_lab_167_0:
// if (tmp756 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_167_1:
tmp757 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp759 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp755) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrpsz (tmp605, tmp757, tmp759) ;
break ;

/* branch: __ats_lab_168 */
__ats_lab_168_0:
if (((ats_sum_ptr_type)tmp606)->tag != 41) { goto __ats_lab_173_0 ; }
__ats_lab_168_1:
tmp760 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp761 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp762 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
do {
/* branch: __ats_lab_169 */
__ats_lab_169_0:
if (tmp761 == (ats_sum_ptr_type)0) { goto __ats_lab_172_0 ; }
__ats_lab_169_1:
do {
/* branch: __ats_lab_170 */
__ats_lab_170_0:
if (tmp762 == (ats_sum_ptr_type)0) { goto __ats_lab_171_0 ; }
__ats_lab_170_1:
tmp763 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_t0ype ;
break ;

/* branch: __ats_lab_171 */
__ats_lab_171_0:
// if (tmp762 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_171_1:
tmp763 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_172 */
__ats_lab_172_0:
// if (tmp761 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_172_1:
tmp763 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_vt0ype ;
break ;
} while (0) ;
tmp764 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp760, tmp763) ;
tmp765 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (tmp761) ;
tmp766 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp762) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_arrinit (tmp605, tmp764, tmp765, tmp766) ;
break ;

/* branch: __ats_lab_173 */
__ats_lab_173_0:
if (((ats_sum_ptr_type)tmp606)->tag != 43) { goto __ats_lab_174_0 ; }
__ats_lab_173_1:
tmp767 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp768 = un_d1exp_sing_66 (tmp767) ;
tmp769 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp768) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ptrof (tmp605, tmp769) ;
break ;

/* branch: __ats_lab_174 */
__ats_lab_174_0:
if (((ats_sum_ptr_type)tmp606)->tag != 44) { goto __ats_lab_175_0 ; }
__ats_lab_174_1:
tmp770 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp771 = un_d1exp_sing_66 (tmp770) ;
tmp772 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp771) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_viewat (tmp605, tmp772) ;
break ;

/* branch: __ats_lab_175 */
__ats_lab_175_0:
if (((ats_sum_ptr_type)tmp606)->tag != 45) { goto __ats_lab_180_0 ; }
__ats_lab_175_1:
tmp773 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_0) ;
tmp774 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_1) ;
tmp775 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_2) ;
tmp776 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp774) ;
tmp777 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr (tmp775) ;
tmp778 = atspre_eq_int_int (tmp773, 0) ;
if (tmp778) {
tmp779 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp776), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_176 */
__ats_lab_176_0:
if (((ats_sum_ptr_type)tmp779)->tag != 40) { goto __ats_lab_179_0 ; }
__ats_lab_176_1:
tmp780 = ats_caselptrlab_mac(anairiats_sum_5, tmp779, atslab_0) ;
tmp781 = ats_caselptrlab_mac(anairiats_sum_5, tmp779, atslab_1) ;
tmp782 = list_extend_01337_ats_ptr_type (tmp781, tmp777) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot (tmp605, tmp780, ats_castfn_mac(ats_ptr_type, tmp782)) ;
break ;

/* branch: __ats_lab_179 */
__ats_lab_179_0:
__ats_lab_179_1:
tmp794 = (ats_sum_ptr_type)0 ;
tmp793 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp793, atslab_0, tmp777) ;
ats_selptrset_mac(anairiats_sum_8, tmp793, atslab_1, tmp794) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_dot (tmp605, tmp776, tmp793) ;
break ;
} while (0) ;
} else {
tmp795 = d2sym_bang_2 (tmp774) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_sel_ptr (tmp605, tmp795, tmp776, tmp777) ;
} /* end of [if] */
break ;

/* branch: __ats_lab_180 */
__ats_lab_180_0:
if (((ats_sum_ptr_type)tmp606)->tag != 46) { goto __ats_lab_181_0 ; }
__ats_lab_180_1:
tmp796 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp797 = un_d1exp_sing_66 (tmp796) ;
tmp798 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp797) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_raise (tmp605, tmp798) ;
break ;

/* branch: __ats_lab_181 */
__ats_lab_181_0:
if (((ats_sum_ptr_type)tmp606)->tag != 47) { goto __ats_lab_182_0 ; }
__ats_lab_181_1:
tmp799 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp800 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp801 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp799) ;
tmp802 = un_d1exp_sing_66 (tmp800) ;
tmp803 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp802) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_effmask (tmp605, tmp801, tmp803) ;
break ;

/* branch: __ats_lab_182 */
__ats_lab_182_0:
if (((ats_sum_ptr_type)tmp606)->tag != 48) { goto __ats_lab_183_0 ; }
__ats_lab_182_1:
tmp804 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp805 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp804) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vararg (tmp605, tmp805) ;
break ;

/* branch: __ats_lab_183 */
__ats_lab_183_0:
if (((ats_sum_ptr_type)tmp606)->tag != 49) { goto __ats_lab_184_0 ; }
__ats_lab_183_1:
tmp806 = ats_caselptrlab_mac(anairiats_sum_12, tmp606, atslab_0) ;
tmp807 = ats_caselptrlab_mac(anairiats_sum_12, tmp606, atslab_1) ;
tmp808 = un_d1exp_sing_66 (tmp807) ;
tmp809 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp808) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_vcopyenv (tmp605, tmp806, tmp809) ;
break ;

/* branch: __ats_lab_184 */
__ats_lab_184_0:
if (((ats_sum_ptr_type)tmp606)->tag != 50) { goto __ats_lab_185_0 ; }
__ats_lab_184_1:
tmp810 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp811 = un_d1exp_sing_66 (tmp810) ;
tmp812 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp811) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_showtype (tmp605, tmp812) ;
break ;

/* branch: __ats_lab_185 */
__ats_lab_185_0:
if (((ats_sum_ptr_type)tmp606)->tag != 51) { goto __ats_lab_194_0 ; }
__ats_lab_185_1:
tmp813 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp821 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp813) ;
tmp823 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp821), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_190 */
__ats_lab_190_0:
if (((ats_sum_ptr_type)tmp823)->tag != 1) { goto __ats_lab_191_0 ; }
__ats_lab_190_1:
tmp824 = ats_caselptrlab_mac(anairiats_sum_7, tmp823, atslab_0) ;
tmp825 = (ats_sum_ptr_type)0 ;
tmp822 = ATS_MALLOC(sizeof(anairiats_sum_8)) ;
ats_selptrset_mac(anairiats_sum_8, tmp822, atslab_0, tmp824) ;
ats_selptrset_mac(anairiats_sum_8, tmp822, atslab_1, tmp825) ;
break ;

/* branch: __ats_lab_191 */
__ats_lab_191_0:
if (((ats_sum_ptr_type)tmp823)->tag != 34) { goto __ats_lab_192_0 ; }
__ats_lab_191_1:
tmp826 = ats_caselptrlab_mac(anairiats_sum_7, tmp823, atslab_0) ;
tmp827 = (ats_sum_ptr_type)0 ;
tmp822 = auxlst2_71 (tmp826, tmp827) ;
break ;

/* branch: __ats_lab_192 */
__ats_lab_192_0:
if (((ats_sum_ptr_type)tmp823)->tag != 35) { goto __ats_lab_193_0 ; }
__ats_lab_192_1:
tmp828 = ats_caselptrlab_mac(anairiats_sum_12, tmp823, atslab_1) ;
tmp822 = auxlst_70 (tmp828) ;
break ;

/* branch: __ats_lab_193 */
__ats_lab_193_0:
__ats_lab_193_1:
tmp822 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_tempenver (tmp605, tmp822) ;
break ;

/* branch: __ats_lab_194 */
__ats_lab_194_0:
if (((ats_sum_ptr_type)tmp606)->tag != 53) { goto __ats_lab_195_0 ; }
__ats_lab_194_1:
tmp829 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp830 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp831 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exparg_tr (tmp829) ;
tmp832 = un_d1exp_sing_66 (tmp830) ;
tmp833 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp832) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_exist (tmp605, tmp831, tmp833) ;
break ;

/* branch: __ats_lab_195 */
__ats_lab_195_0:
if (((ats_sum_ptr_type)tmp606)->tag != 54) { goto __ats_lab_196_0 ; }
__ats_lab_195_1:
tmp834 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_0) ;
tmp835 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_1) ;
tmp836 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_2) ;
tmp837 = d1exp_tr_arg_body_32 (tmp835, tmp836) ;
tmp838 = ats_select_mac(tmp837, atslab_0) ;
tmp839 = ats_select_mac(tmp837, atslab_1) ;
tmp840 = ats_select_mac(tmp837, atslab_2) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_dyn (tmp605, tmp834, tmp838, tmp839, tmp840) ;
break ;

/* branch: __ats_lab_196 */
__ats_lab_196_0:
if (((ats_sum_ptr_type)tmp606)->tag != 55) { goto __ats_lab_197_0 ; }
__ats_lab_196_1:
tmp841 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_0) ;
tmp842 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_1) ;
tmp843 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_2) ;
tmp844 = d1exp_tr_arg_body_32 (tmp842, tmp843) ;
tmp845 = ats_select_mac(tmp844, atslab_0) ;
tmp846 = ats_select_mac(tmp844, atslab_1) ;
tmp847 = ats_select_mac(tmp844, atslab_2) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_laminit_dyn (tmp605, tmp841, tmp845, tmp846, tmp847) ;
break ;

/* branch: __ats_lab_197 */
__ats_lab_197_0:
if (((ats_sum_ptr_type)tmp606)->tag != 56) { goto __ats_lab_198_0 ; }
__ats_lab_197_1:
tmp848 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp849 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
tmp850 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1explst_trup (tmp848) ;
tmp851 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp849) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_met_new (tmp605, tmp850, tmp851) ;
break ;

/* branch: __ats_lab_198 */
__ats_lab_198_0:
if (((ats_sum_ptr_type)tmp606)->tag != 59) { goto __ats_lab_199_0 ; }
__ats_lab_198_1:
tmp852 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_0) ;
tmp853 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_1) ;
tmp854 = ats_caselptrlab_mac(anairiats_sum_31, tmp606, atslab_2) ;
tmp856 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_34, tmp853), atslab_i0de_loc) ;
tmp857 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_34, tmp853), atslab_i0de_sym) ;
tmp855 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_make (tmp856, tmp857) ;
/* tmp858 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2var_set_isfix (tmp855, ats_true_bool) ;
/* tmp859 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_push_nil () ;
/* tmp860 = ats_selsin_mac(tmp859, atslab_1) */ ;
/* tmp861 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_add_dvar (tmp855) ;
tmp862 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp854) ;
/* tmp863 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_pop_free () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_fix (tmp605, tmp852, tmp855, tmp862) ;
break ;

/* branch: __ats_lab_199 */
__ats_lab_199_0:
if (((ats_sum_ptr_type)tmp606)->tag != 58) { goto __ats_lab_200_0 ; }
__ats_lab_199_1:
tmp864 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp865 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
/* tmp866 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp867 = ats_selsin_mac(tmp866, atslab_1) */ ;
tmp868 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1qualst_tr (tmp864) ;
tmp869 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp865) ;
/* tmp870 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp871 = ats_select_mac(tmp868, atslab_s2qua_svs) ;
tmp872 = ats_select_mac(tmp868, atslab_s2qua_sps) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_lam_sta (tmp605, tmp871, tmp872, tmp869) ;
break ;

/* branch: __ats_lab_200 */
__ats_lab_200_0:
if (((ats_sum_ptr_type)tmp606)->tag != 60) { goto __ats_lab_201_0 ; }
__ats_lab_200_1:
tmp604 = d1exp_tr_delay_33 (arg0) ;
break ;

/* branch: __ats_lab_201 */
__ats_lab_201_0:
if (((ats_sum_ptr_type)tmp606)->tag != 62) { goto __ats_lab_202_0 ; }
__ats_lab_201_1:
tmp873 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp874 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp875 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
/* tmp876 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp877 = ats_selsin_mac(tmp876, atslab_1) */ ;
tmp878 = loopi1nv_tr_39 (tmp873) ;
tmp879 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp874) ;
tmp880 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp875) ;
/* tmp881 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_while (tmp605, tmp878, tmp879, tmp880) ;
break ;

/* branch: __ats_lab_202 */
__ats_lab_202_0:
if (((ats_sum_ptr_type)tmp606)->tag != 61) { goto __ats_lab_205_0 ; }
__ats_lab_202_1:
tmp882 = ats_caselptrlab_mac(anairiats_sum_35, tmp606, atslab_0) ;
tmp883 = ats_caselptrlab_mac(anairiats_sum_35, tmp606, atslab_1) ;
tmp884 = ats_caselptrlab_mac(anairiats_sum_35, tmp606, atslab_2) ;
tmp885 = ats_caselptrlab_mac(anairiats_sum_35, tmp606, atslab_3) ;
tmp886 = ats_caselptrlab_mac(anairiats_sum_35, tmp606, atslab_4) ;
tmp887 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp883) ;
/* tmp888 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_push_nil () ;
/* tmp889 = ats_selsin_mac(tmp888, atslab_1) */ ;
tmp890 = loopi1nv_tr_39 (tmp882) ;
tmp892 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_6, tmp884), atslab_d1exp_node) ;
do {
/* branch: __ats_lab_203 */
__ats_lab_203_0:
if (((ats_sum_ptr_type)tmp892)->tag != 14) { goto __ats_lab_204_0 ; }
__ats_lab_203_1:
tmp891 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_bool (tmp605, ats_true_bool) ;
break ;

/* branch: __ats_lab_204 */
__ats_lab_204_0:
__ats_lab_204_1:
tmp891 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp884) ;
break ;
} while (0) ;
tmp893 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp885) ;
tmp894 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp886) ;
/* tmp895 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_s2expenv_pop_free () ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_for (tmp605, tmp890, tmp887, tmp891, tmp893, tmp894) ;
break ;

/* branch: __ats_lab_205 */
__ats_lab_205_0:
if (((ats_sum_ptr_type)tmp606)->tag != 64) { goto __ats_lab_206_0 ; }
__ats_lab_205_1:
tmp896 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_0) ;
tmp897 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_1) ;
tmp898 = ats_caselptrlab_mac(anairiats_sum_26, tmp606, atslab_2) ;
tmp899 = i1nvresstate_tr_38 (tmp896) ;
tmp900 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp897) ;
tmp901 = c1laulst_tr_46 (1, tmp898) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_trywith (tmp605, tmp899, tmp900, tmp901) ;
break ;

/* branch: __ats_lab_206 */
__ats_lab_206_0:
if (((ats_sum_ptr_type)tmp606)->tag != 65) { goto __ats_lab_207_0 ; }
__ats_lab_206_1:
tmp902 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp903 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp904 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp902) ;
tmp905 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn_impred (tmp903) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_type (tmp605, tmp904, tmp905) ;
break ;

/* branch: __ats_lab_207 */
__ats_lab_207_0:
if (((ats_sum_ptr_type)tmp606)->tag != 66) { goto __ats_lab_208_0 ; }
__ats_lab_207_1:
tmp906 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp907 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp908 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp906) ;
tmp909 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__effcst_tr (tmp907) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_seff (tmp605, tmp908, tmp909) ;
break ;

/* branch: __ats_lab_208 */
__ats_lab_208_0:
if (((ats_sum_ptr_type)tmp606)->tag != 67) { goto __ats_lab_209_0 ; }
__ats_lab_208_1:
tmp910 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
tmp911 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_1) ;
tmp912 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp910) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_ann_funclo (tmp605, tmp912, tmp911) ;
break ;

/* branch: __ats_lab_209 */
__ats_lab_209_0:
if (((ats_sum_ptr_type)tmp606)->tag != 68) { goto __ats_lab_210_0 ; }
__ats_lab_209_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macsyn (arg0) ;
break ;

/* branch: __ats_lab_210 */
__ats_lab_210_0:
if (((ats_sum_ptr_type)tmp606)->tag != 69) { goto __ats_lab_211_0 ; }
__ats_lab_210_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__d1exp_tr_macfun (arg0) ;
break ;

/* branch: __ats_lab_211 */
__ats_lab_211_0:
if (((ats_sum_ptr_type)tmp606)->tag != 70) { goto __ats_lab_212_0 ; }
__ats_lab_211_1:
tmp913 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp914 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp913) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solassert (tmp605, tmp914) ;
break ;

/* branch: __ats_lab_212 */
__ats_lab_212_0:
if (((ats_sum_ptr_type)tmp606)->tag != 71) { goto __ats_lab_213_0 ; }
__ats_lab_212_1:
tmp915 = ats_caselptrlab_mac(anairiats_sum_7, tmp606, atslab_0) ;
tmp916 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1exp_trdn (tmp915, _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2rt_prop) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_solverify (tmp605, tmp916) ;
break ;

/* branch: __ats_lab_213 */
__ats_lab_213_0:
if (((ats_sum_ptr_type)tmp606)->tag != 72) { goto __ats_lab_214_0 ; }
__ats_lab_213_1:
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp605) ;
break ;

/* branch: __ats_lab_214 */
__ats_lab_214_0:
if (((ats_sum_ptr_type)tmp606)->tag != 2) { goto __ats_lab_215_0 ; }
__ats_lab_214_1:
tmp917 = ats_caselptrlab_mac(anairiats_sum_5, tmp606, atslab_0) ;
/* tmp918 = */ prerr_error2_loc_02401_ (tmp605) ;
/* tmp919 = */ atspre_prerr_string (ATSstrcst(": the external id [")) ;
/* tmp920 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__prerr_symbol (tmp917) ;
/* tmp921 = */ atspre_prerr_string (ATSstrcst("] cannot be handled.")) ;
/* tmp922 = */ atspre_prerr_newline () ;
tmp924 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp924)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp924, atslab_0, arg0) ;
/* tmp923 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp924) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp605) ;
break ;

/* branch: __ats_lab_215 */
__ats_lab_215_0:
if (((ats_sum_ptr_type)tmp606)->tag != 52) { goto __ats_lab_216_0 ; }
__ats_lab_215_1:
/* tmp925 = */ prerr_error2_loc_02401_ (tmp605) ;
/* tmp926 = */ atspre_prerr_string (ATSstrcst(": this form of expression is only allowed to occur as an argument.")) ;
/* tmp927 = */ atspre_prerr_newline () ;
tmp929 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp929)->tag = 28 ;
ats_selptrset_mac(anairiats_sum_7, tmp929, atslab_0, arg0) ;
/* tmp928 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp929) ;
tmp604 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2exp_errexp (tmp605) ;
break ;

/* branch: __ats_lab_216 */
__ats_lab_216_0:
__ats_lab_216_1:
/* tmp930 = */ prerr_interror_loc_02399_ (tmp605) ;
/* tmp931 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("d1exp_tr")) ;
/* tmp932 = */ atspre_prerr_string (ATSstrcst(": not yet implemented: d1e0 = ")) ;
/* tmp933 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__prerr_d1exp (arg0) ;
/* tmp934 = */ atspre_prerr_newline () ;
/* tmp604 = */ _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__abort_interr () ;
break ;
} while (0) ;
return (tmp604) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 49525(line=2154, offs=13) -- 49568(line=2154, offs=56)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp935) ;
ATSlocal (ats_ptr_type, tmp936) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr:
tmp936 = list_map_fun_01413_ats_ptr_type_ats_ptr_type (arg0, &_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr) ;
tmp935 = ats_castfn_mac(ats_ptr_type, tmp936) ;
return (tmp935) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 49593(line=2157, offs=13) -- 49680(line=2160, offs=59)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp937) ;
ATSlocal (ats_ptr_type, tmp938) ;
ATSlocal (ats_ptr_type, tmp939) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr:
do {
/* branch: __ats_lab_217 */
__ats_lab_217_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_218_0 ; }
__ats_lab_217_1:
tmp938 = ats_caselptrlab_mac(anairiats_sum_4, arg0, atslab_0) ;
tmp939 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp938) ;
tmp937 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp937, atslab_0, tmp939) ;
break ;

/* branch: __ats_lab_218 */
__ats_lab_218_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_218_1:
tmp937 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp937) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1expopt_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 49754(line=2166, offs=13) -- 49844(line=2168, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp940) ;
ATSlocal (ats_ptr_type, tmp941) ;
ATSlocal (ats_ptr_type, tmp942) ;
ATSlocal (ats_ptr_type, tmp943) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr:
// 
tmp941 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_0) ;
tmp942 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
tmp943 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (tmp942) ;
tmp940 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__labd2exp_make (tmp941, tmp943) ;
return (tmp940) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__labd1exp_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 49910(line=2173, offs=10) -- 50877(line=2212, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp944) ;
ATSlocal (ats_ptr_type, tmp945) ;
ATSlocal (ats_ptr_type, tmp946) ;
ATSlocal (ats_ptr_type, tmp947) ;
ATSlocal (ats_ptr_type, tmp948) ;
ATSlocal (ats_ptr_type, tmp949) ;
ATSlocal (ats_ptr_type, tmp950) ;
ATSlocal (ats_ptr_type, tmp951) ;
ATSlocal (ats_ptr_type, tmp952) ;
ATSlocal (ats_ptr_type, tmp953) ;
ATSlocal (ats_ptr_type, tmp954) ;
ATSlocal (ats_ptr_type, tmp955) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr:
tmp945 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg0), atslab_d1lab_loc) ;
tmp946 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg0), atslab_d1lab_node) ;
do {
/* branch: __ats_lab_219 */
__ats_lab_219_0:
if (((ats_sum_ptr_type)tmp946)->tag != 0) { goto __ats_lab_226_0 ; }
__ats_lab_219_1:
tmp947 = ats_caselptrlab_mac(anairiats_sum_7, tmp946, atslab_0) ;
tmp948 = _2tmp_2ATS_2dPostiats_2src_2pats_label_2esats__label_dotize (tmp947) ;
tmp949 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__the_d2expenv_find (tmp948) ;
do {
/* branch: __ats_lab_220 */
__ats_lab_220_0:
if (tmp949 == (ats_sum_ptr_type)0) { goto __ats_lab_225_0 ; }
__ats_lab_220_1:
tmp951 = ats_caselptrlab_mac(anairiats_sum_4, tmp949, atslab_0) ;
ATS_FREE(tmp949) ;
do {
/* branch: __ats_lab_221 */
__ats_lab_221_0:
if (((ats_sum_ptr_type)tmp951)->tag != 4) { goto __ats_lab_224_0 ; }
__ats_lab_221_1:
tmp952 = ats_caselptrlab_mac(anairiats_sum_5, tmp951, atslab_1) ;
do {
/* branch: __ats_lab_222 */
__ats_lab_222_0:
if (tmp952 != (ats_sum_ptr_type)0) { goto __ats_lab_223_0 ; }
__ats_lab_222_1:
tmp950 = (ats_sum_ptr_type)0 ;
break ;

/* branch: __ats_lab_223 */
__ats_lab_223_0:
// if (tmp952 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_223_1:
tmp953 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2sym_make (tmp945, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__the_d0ynq_none, tmp948, tmp952) ;
tmp950 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp950, atslab_0, tmp953) ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_224 */
__ats_lab_224_0:
__ats_lab_224_1:
tmp950 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_225 */
__ats_lab_225_0:
// if (tmp949 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_225_1:
tmp950 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
tmp944 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_lab (tmp945, tmp947, tmp950) ;
break ;

/* branch: __ats_lab_226 */
__ats_lab_226_0:
// if (((ats_sum_ptr_type)tmp946)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_226_1:
tmp954 = ats_caselptrlab_mac(anairiats_sum_7, tmp946, atslab_0) ;
tmp955 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1explst_tr (tmp954) ;
tmp944 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2lab_ind (tmp945, tmp955) ;
break ;
} while (0) ;
return (tmp944) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1lab_tr] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 51273(line=2233, offs=1) -- 51557(line=2244, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr_cst_77 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp958) ;
// ATSlocal_void (tmp959) ;
ATSlocal (ats_ptr_type, tmp960) ;
// ATSlocal_void (tmp961) ;
// ATSlocal_void (tmp962) ;
// ATSlocal_void (tmp963) ;
// ATSlocal_void (tmp964) ;
// ATSlocal_void (tmp965) ;
ATSlocal (ats_ptr_type, tmp966) ;

__ats_lab_auxerr_cst_77:
tmp960 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, env1), atslab_d2exp_loc) ;
/* tmp959 = */ prerr_error2_loc_02401_ (tmp960) ;
/* tmp961 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp962 = */ atspre_prerr_string (ATSstrcst(": the dynamic constant [")) ;
/* tmp963 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst (arg0) ;
/* tmp964 = */ atspre_prerr_string (ATSstrcst("] should be instantiated.")) ;
/* tmp965 = */ atspre_prerr_newline () ;
tmp966 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp966)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_7, tmp966, atslab_0, env0) ;
/* tmp958 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp966) ;
return /* (tmp958) */ ;
} /* end of [auxerr_cst_77] */

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

ats_void_type
auxerr_cst_77_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0) {
auxerr_cst_77 (((auxerr_cst_77_closure_type*)cloptr)->closure_env_0, ((auxerr_cst_77_closure_type*)cloptr)->closure_env_1, arg0) ; return ;
} /* end of function */

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

ats_clo_ptr_type
auxerr_cst_77_closure_make (ats_ptr_type env0, ats_ptr_type env1) {
auxerr_cst_77_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr_cst_77_closure_type)) ;
auxerr_cst_77_closure_init (p_clo, env0, env1) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 51565(line=2247, offs=1) -- 51808(line=2257, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr1_tmpid_78 (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp967) ;
// ATSlocal_void (tmp968) ;
ATSlocal (ats_ptr_type, tmp969) ;
// ATSlocal_void (tmp970) ;
// ATSlocal_void (tmp971) ;
// ATSlocal_void (tmp972) ;
// ATSlocal_void (tmp973) ;

__ats_lab_auxerr1_tmpid_78:
tmp969 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_loc) ;
/* tmp968 = */ prerr_error2_loc_02401_ (tmp969) ;
/* tmp970 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp971 = */ atspre_prerr_string (ATSstrcst(": a declared dynamic constant is expected instead of [")) ;
/* tmp972 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2exp (arg0) ;
/* tmp973 = */ atspre_prerr_string (ATSstrcst("].")) ;
/* tmp967 = */ atspre_prerr_newline () ;
return /* (tmp967) */ ;
} /* end of [auxerr1_tmpid_78] */

typedef struct {
ats_fun_ptr_type closure_fun ;
} auxerr1_tmpid_78_closure_type ;

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

ATSinline()
ats_void_type
auxerr1_tmpid_78_closure_init (auxerr1_tmpid_78_closure_type *p_clo) {
p_clo->closure_fun = (ats_fun_ptr_type)&auxerr1_tmpid_78_clofun ;
return ;
} /* end of function */

ats_clo_ptr_type
auxerr1_tmpid_78_closure_make () {
auxerr1_tmpid_78_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr1_tmpid_78_closure_type)) ;
auxerr1_tmpid_78_closure_init (p_clo) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 51813(line=2259, offs=1) -- 52134(line=2270, offs=2)
*/
ATSstaticdec()
ats_void_type
auxerr2_tmpid_79 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp974) ;
// ATSlocal_void (tmp975) ;
ATSlocal (ats_ptr_type, tmp976) ;
// ATSlocal_void (tmp977) ;
// ATSlocal_void (tmp978) ;
// ATSlocal_void (tmp979) ;
// ATSlocal_void (tmp980) ;
// ATSlocal_void (tmp981) ;
ATSlocal (ats_ptr_type, tmp982) ;

__ats_lab_auxerr2_tmpid_79:
tmp976 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg0), atslab_d2exp_loc) ;
/* tmp975 = */ prerr_error2_loc_02401_ (tmp976) ;
/* tmp977 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp978 = */ atspre_prerr_string (ATSstrcst(": the dynamic constant [")) ;
/* tmp979 = */ _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__prerr_d2cst (arg1) ;
/* tmp980 = */ atspre_prerr_string (ATSstrcst("] is required to be be fully instantiated.")) ;
/* tmp981 = */ atspre_prerr_newline () ;
tmp982 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp982)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_7, tmp982, atslab_0, env0) ;
/* tmp974 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp982) ;
return /* (tmp974) */ ;
} /* end of [auxerr2_tmpid_79] */

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

ats_void_type
auxerr2_tmpid_79_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1) {
auxerr2_tmpid_79 (((auxerr2_tmpid_79_closure_type*)cloptr)->closure_env_0, arg0, arg1) ; return ;
} /* end of function */

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

ats_clo_ptr_type
auxerr2_tmpid_79_closure_make (ats_ptr_type env0) {
auxerr2_tmpid_79_closure_type *p_clo = ATS_MALLOC(sizeof(auxerr2_tmpid_79_closure_type)) ;
auxerr2_tmpid_79_closure_init (p_clo, env0) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /home/ats-lang-anairiats-0.2.12/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, tmp1001) ;
ATSlocal (ats_ptr_type, tmp1002) ;
ATSlocal (ats_ptr_type, tmp1003) ;

__ats_lab_list_length_compare_01411_ats_ptr_type_2cats_ptr_type:
do {
/* branch: __ats_lab_230 */
__ats_lab_230_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_233_0 ; }
__ats_lab_230_1:
tmp1002 = ats_caselptrlab_mac(anairiats_sum_8, arg0, atslab_1) ;
do {
/* branch: __ats_lab_231 */
__ats_lab_231_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_232_0 ; }
__ats_lab_231_1:
tmp1003 = ats_caselptrlab_mac(anairiats_sum_8, arg1, atslab_1) ;
arg0 = tmp1002 ;
arg1 = tmp1003 ;
goto __ats_lab_list_length_compare_01411_ats_ptr_type_2cats_ptr_type ; // tail call
break ;

/* branch: __ats_lab_232 */
__ats_lab_232_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_232_1:
tmp1001 = 1 ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_233 */
__ats_lab_233_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_233_1:
do {
/* branch: __ats_lab_234 */
__ats_lab_234_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_235_0 ; }
__ats_lab_234_1:
tmp1001 = -1 ;
break ;

/* branch: __ats_lab_235 */
__ats_lab_235_0:
// if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_235_1:
tmp1001 = 0 ;
break ;
} while (0) ;
break ;
} while (0) ;
return (tmp1001) ;
} /* end of [list_length_compare_01411_ats_ptr_type_2cats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_trans2_dynexp.dats: 51203(line=2227, offs=14) -- 53558(line=2330, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp956) ;
ATSlocal (ats_ptr_type, tmp957) ;
ATSlocal (ats_ptr_type, tmp983) ;
ATSlocal (ats_ptr_type, tmp984) ;
ATSlocal (ats_bool_type, tmp985) ;
// ATSlocal_void (tmp986) ;
ATSlocal (ats_ptr_type, tmp987) ;
ATSlocal (ats_ptr_type, tmp988) ;
ATSlocal (ats_ptr_type, tmp989) ;
ATSlocal (ats_ptr_type, tmp990) ;
ATSlocal (ats_ptr_type, tmp991) ;
ATSlocal (ats_ptr_type, tmp992) ;
ATSlocal (ats_ptr_type, tmp993) ;
ATSlocal (ats_ptr_type, tmp994) ;
ATSlocal (ats_ptr_type, tmp995) ;
ATSlocal (ats_int_type, tmp996) ;
ATSlocal (anairiats_rec_3, tmp997) ;
ATSlocal (ats_ptr_type, tmp998) ;
ATSlocal (ats_ptr_type, tmp999) ;
ATSlocal (ats_int_type, tmp1000) ;
// ATSlocal_void (tmp1004) ;
ATSlocal (ats_bool_type, tmp1005) ;
// ATSlocal_void (tmp1006) ;
// ATSlocal_void (tmp1007) ;
ATSlocal (ats_ptr_type, tmp1008) ;
// ATSlocal_void (tmp1009) ;
// ATSlocal_void (tmp1010) ;
// ATSlocal_void (tmp1011) ;
// ATSlocal_void (tmp1012) ;
ATSlocal (ats_ptr_type, tmp1013) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr:
tmp957 = _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__d1exp_tr (ats_castfn_mac(ats_ptr_type, arg0)) ;
tmp983 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp957), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_227 */
__ats_lab_227_0:
if (((ats_sum_ptr_type)tmp983)->tag != 0) { goto __ats_lab_228_0 ; }
__ats_lab_227_1:
tmp984 = ats_caselptrlab_mac(anairiats_sum_7, tmp983, atslab_0) ;
tmp985 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_is_tmpcst (tmp984) ;
if (tmp985) {
/* tmp986 = */ auxerr_cst_77 (arg0, tmp957, tmp984) ;
} else {
/* empty */
} /* end of [if] */
tmp956 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp984) ;
break ;

/* branch: __ats_lab_228 */
__ats_lab_228_0:
if (((ats_sum_ptr_type)tmp983)->tag != 25) { goto __ats_lab_237_0 ; }
__ats_lab_228_1:
tmp987 = ats_caselptrlab_mac(anairiats_sum_5, tmp983, atslab_0) ;
tmp988 = ats_caselptrlab_mac(anairiats_sum_5, tmp983, atslab_1) ;
tmp989 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp987), atslab_d2exp_node) ;
do {
/* branch: __ats_lab_229 */
__ats_lab_229_0:
if (((ats_sum_ptr_type)tmp989)->tag != 0) { goto __ats_lab_236_0 ; }
__ats_lab_229_1:
tmp990 = ats_caselptrlab_mac(anairiats_sum_7, tmp989, atslab_0) ;
tmp991 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp957), atslab_d2exp_loc) ;
tmp992 = _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__location_rightmost (tmp991) ;
tmp993 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp990) ;
tmp994 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_decarg (tmp990) ;
tmp995 = _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__d2cst_get_type (tmp990) ;
/* ats_int_type tmp996 ; */
tmp996 = 0 ;
tmp997 = patsopt_s2exp_tmp_instantiate_tmpmarglst (tmp995, tmp992, tmp994, tmp988, (&tmp996)) ;
tmp998 = ats_select_mac(tmp997, atslab_0) ;
tmp999 = ats_select_mac(tmp997, atslab_1) ;
tmp1000 = list_length_compare_01411_ats_ptr_type_2cats_ptr_type (tmp988, tmp999) ;
tmp1005 = atspre_ilt (tmp1000, 0) ;
if (tmp1005) {
/* tmp1004 = */ auxerr2_tmpid_79 (arg0, tmp987, tmp990) ;
} else {
/* empty */
} /* end of [if] */
tmp956 = tmp998 ;
break ;

/* branch: __ats_lab_236 */
__ats_lab_236_0:
__ats_lab_236_1:
/* tmp1006 = */ auxerr1_tmpid_78 (tmp987) ;
tmp956 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err () ;
break ;
} while (0) ;
break ;

/* branch: __ats_lab_237 */
__ats_lab_237_0:
__ats_lab_237_1:
tmp1008 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, tmp957), atslab_d2exp_loc) ;
/* tmp1007 = */ prerr_error2_loc_02401_ (tmp1008) ;
/* tmp1009 = */ patsopt_prerrf_ifdebug (ATSstrcst(": [%s]: %s"), ATSstrcst("/tmp/ATS-Postiats/src/pats_trans2_dynexp.dats"), ATSstrcst("S1Ed2ctype_tr")) ;
/* tmp1010 = */ atspre_print_string (ATSstrcst(": [$d2ctype] can only be applied to a declared dynamic constant.")) ;
/* tmp1011 = */ atspre_print_newline () ;
tmp1013 = ATS_MALLOC(sizeof(anairiats_sum_7)) ;
((ats_sum_ptr_type)tmp1013)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_7, tmp1013, atslab_0, arg0) ;
/* tmp1012 = */ _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__the_trans2errlst_add (tmp1013) ;
tmp956 = _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2exp_s2rt_err () ;
break ;
} while (0) ;
return (tmp956) ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__S1Ed2ctype_tr] */

/* static load function */

// extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_atspre_2edats__staload (void) ;
// extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload (void) ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload () {
static int _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag = 0 ;
if (_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag) return ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__staload_flag = 1 ;

// _2tmp_2ATS_2dPostiats_2src_2pats_atspre_2edats__staload () ;
// ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_error_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_errmsg_2edats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_location_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_basics_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp1_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_e1xpval_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_dynexp1_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_dynexp2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_env_2esats__staload () ;

_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDderef_0.tag = 0 ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDassgn_1.tag = 1 ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDxchng_2.tag = 2 ;
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__SPDIDnone_3.tag = 3 ;
return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload_flag ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload () {
_2tmp_2ATS_2dPostiats_2src_2pats_trans2_dynexp_2edats__dynload_flag = 1 ;
_2tmp_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 () ;
_2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats____assert_prfck () ;
_2tmp_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] */
