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

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

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

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_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"
/* external codes at top */
/* type definitions */
typedef
struct {
ats_ptr_type atslab_token_loc ;
ats_ptr_type atslab_token_node ;
} anairiats_rec_0 ;

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

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

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

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

typedef
struct {
ats_ptr_type atslab_s0rtq_loc ;
ats_ptr_type atslab_s0rtq_node ;
} anairiats_rec_5 ;

typedef struct {
ats_ptr_type atslab_0 ;
} anairiats_sum_6 ;

typedef
struct {
ats_ptr_type atslab_s0taq_loc ;
ats_ptr_type atslab_s0taq_node ;
} anairiats_rec_7 ;

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

typedef
struct {
ats_ptr_type atslab_d0ynq_loc ;
ats_ptr_type atslab_d0ynq_node ;
} anairiats_rec_9 ;

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

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

typedef
struct {
ats_ptr_type atslab_e0xp_loc ;
ats_ptr_type atslab_e0xp_node ;
} anairiats_rec_12 ;

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

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

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

typedef
struct {
ats_ptr_type atslab_l0ab_loc ;
ats_ptr_type atslab_l0ab_lab ;
} anairiats_rec_16 ;

typedef
struct {
ats_ptr_type atslab_s0rt_loc ;
ats_ptr_type atslab_s0rt_node ;
} anairiats_rec_17 ;

typedef
struct {
ats_ptr_type atslab_d0atsrtcon_loc ;
ats_ptr_type atslab_d0atsrtcon_sym ;
ats_ptr_type atslab_d0atsrtcon_arg ;
} anairiats_rec_18 ;

typedef
struct {
ats_ptr_type atslab_d0atsrtdec_loc ;
ats_ptr_type atslab_d0atsrtdec_sym ;
ats_ptr_type atslab_d0atsrtdec_con ;
} anairiats_rec_19 ;

typedef
struct {
ats_ptr_type atslab_a0srt_loc ;
ats_ptr_type atslab_a0srt_sym ;
ats_ptr_type atslab_a0srt_srt ;
} anairiats_rec_20 ;

typedef
struct {
ats_ptr_type atslab_a0msrt_loc ;
ats_ptr_type atslab_a0msrt_arg ;
} anairiats_rec_21 ;

typedef
struct {
ats_ptr_type atslab_s0rtext_loc ;
ats_ptr_type atslab_s0rtext_node ;
} anairiats_rec_22 ;

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

typedef
struct {
ats_ptr_type atslab_s0qua_loc ;
ats_ptr_type atslab_s0qua_node ;
} anairiats_rec_24 ;

typedef
struct {
ats_ptr_type atslab_s0exp_loc ;
ats_ptr_type atslab_s0exp_node ;
} anairiats_rec_25 ;

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

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

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

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

typedef
struct {
ats_ptr_type atslab_q0marg_loc ;
ats_ptr_type atslab_q0marg_arg ;
} anairiats_rec_30 ;

typedef
struct {
ats_ptr_type atslab_p0at_loc ;
ats_ptr_type atslab_p0at_node ;
} anairiats_rec_31 ;

typedef
struct {
ats_ptr_type atslab_labp0at_loc ;
ats_ptr_type atslab_labp0at_node ;
} anairiats_rec_32 ;

typedef
struct {
ats_ptr_type atslab_d0exp_loc ;
ats_ptr_type atslab_d0exp_node ;
} anairiats_rec_33 ;

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

typedef
struct {
ats_ptr_type atslab_s0tacon_loc ;
ats_ptr_type atslab_s0tacon_sym ;
ats_ptr_type atslab_s0tacon_arg ;
ats_ptr_type atslab_s0tacon_def ;
} anairiats_rec_35 ;

typedef
struct {
ats_ptr_type atslab_s0tacst_loc ;
ats_ptr_type atslab_s0tacst_sym ;
ats_ptr_type atslab_s0tacst_arg ;
ats_ptr_type atslab_s0tacst_res ;
ats_ptr_type atslab_s0tacst_extopt ;
} anairiats_rec_36 ;

typedef
struct {
ats_ptr_type atslab_d0ecl_loc ;
ats_ptr_type atslab_d0ecl_node ;
} anairiats_rec_37 ;

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

/* 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, _2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__T_INT_150) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__T_CHAR_151) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__T_FLOAT_152) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_lexing_2esats__T_STRING_154) ;
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__CSTSPmyfil_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__CSTSPmyloc_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__CSTSPmyfun_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTQnone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTQsymdot_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0TAQnone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0TAQsymdot_1) ;
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__D0YNQsymdot_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0RECint_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0RECi0de_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0RECi0de_adj_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__F0XTYinf_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__F0XTYpre_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__F0XTYpos_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPACTerror_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPACTprerr_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPACTprint_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPACTassert_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPint_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPchar_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPfloat_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPstring_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPstringid_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPapp_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPfun_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPeval_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPlist_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__E0XPif_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__SL0ABELED_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_syntax_2esats__S0RTide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTqid_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTapp_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTlist_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0RTtype_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0QUAprop_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0QUAvars_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0TEsrt_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0TEsub_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Esqid_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eopid_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eint_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Echar_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Efloat_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Estring_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eextype_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eextkind_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eapp_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Elam_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eimp_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Elist_12) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Elist2_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Etyarr_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Etytup_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Etyrec_16) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Etyrec_ext_17) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Euni_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eexi_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Eann_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0Ed2ctype_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0EXPARGone_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0EXPARGall_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__S0EXPARGseq_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__LABP0ATnorm_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__LABP0ATomit_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tdqid_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Topid_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tint_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tchar_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tfloat_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tstring_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tapp_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tlist_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tlst_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Ttup_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Trec_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tfree_12) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tunfold_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Texist_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tsvararg_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Trefas_16) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Tann_17) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__P0Terr_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eide_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Edqid_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eopid_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eidext_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eint_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Echar_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Efloat_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Estring_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eempty_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ecstsp_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Etyrep_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eliteral_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Elet_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Edeclseq_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ewhere_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eapp_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Elist_22) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eifhead_23) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esifhead_24) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eifcasehd_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ecasehead_26) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Escasehead_27) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Elst_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Etup_29) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Erec_30) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eseq_31) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Earrsub_32) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Earrpsz_33) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Earrinit_34) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eptrof_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eviewat_36) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esel_lab_37) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esel_ind_38) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eraise_39) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eeffmask_40) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eeffmask_arg_41) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Evararg_42) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Evcopyenv_43) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eshowtype_44) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Etempenver_45) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esexparg_46) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eann_48) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Elam_49) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Efix_50) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Edelay_51) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Efor_52) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ewhile_53) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Eloopexn_54) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Etrywith_55) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esolassert_57) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Esolverify_58) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cfixity_0) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cnonfix_1) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Csymintr_2) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Csymelim_3) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Coverload_4) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ce0xpdef_5) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ce0xpundef_6) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ce0xpact_7) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cpragma_8) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ccodegen_9) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cdatsrts_10) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Csrtdefs_11) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cstacsts_12) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cstacons_13) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Ctkindef_14) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Csexpdefs_15) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Csaspdec_16) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Creassume_17) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cexndecs_18) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cdatdecs_19) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cclassdec_20) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cextype_21) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cextype_22) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cextvar_23) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cextcode_24) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cdcstdecs_25) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cimpdec_26) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cmacdefs_27) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cfundecs_28) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cvaldecs_29) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cvardecs_30) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cinclude_31) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cstaload_32) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cstaloadnm_33) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cstaloadloc_34) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Crequire_35) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cdynload_36) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Clocal_37) ;
ATSextern_val(ats_sum_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__D0Cguadecl_38) ;

/* external dynamic constant declarations */
ATSextern_fun(ats_void_type, atspre_fprint_newline) (ats_ptr_type) ;
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_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_eq_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_void_type, atspre_fprint_int) (ats_ptr_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_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_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_ptr_type, ats_malloc_gc) (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_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, _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__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_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbolopt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_label_2esats__fprint_label) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_cstsp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0xty) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xpactkind) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xplst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0atsrtdec) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qualst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marg) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exparg) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labp0at) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0expopt) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labd0exp) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ecl) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist) (ats_ptr_type, ats_ptr_type) ;

/* external dynamic terminating constant declarations */
#ifdef _ATS_PROOFCHECK
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2list_2esats__list_length_is_nonnegative_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2list_vt_2esats__list_vt_length_is_nonnegative_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_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 */
/* exn constructor declarations */
/* global dynamic (non-functional) constant declarations */
/* internal function declarations */
static
ats_void_type aux_29 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type env2, ats_ptr_type arg0, ats_int_type arg1) ;
static
ats_clo_ptr_type aux_29_closure_make (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type env2) ;
static
ats_void_type aux_29_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_int_type arg1) ;
static
ats_void_type fprintlst_01696_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) ;
static
ats_void_type fprintopt_01697_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ;
static
ats_void_type fprint_d0atsrtcon_34 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type fprint_a0srt_36 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type fprint_a0msrt_37 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type fprint_s0tacon_54 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_void_type fprint_s0tacst_55 (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_syntax_print.dats: 1707(line=54, offs=3) -- 1944(line=64, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp0) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
/* tmp0 = */ atspre_fprint_string (arg0, ATSstrcst("MSKencode")) ;
break ;

/* branch: __ats_lab_1 */
__ats_lab_1_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_2_0 ; }
__ats_lab_1_1:
/* tmp0 = */ atspre_fprint_string (arg0, ATSstrcst("MSKdecode")) ;
break ;

/* branch: __ats_lab_2 */
__ats_lab_2_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_2_1:
/* tmp0 = */ atspre_fprint_string (arg0, ATSstrcst("MSKxstage")) ;
break ;
} while (0) ;
return /* (tmp0) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2003(line=67, offs=18) -- 2042(line=67, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_macsynkind (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp1) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_macsynkind:
/* tmp1 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind (stdout, arg0) ;
return /* (tmp1) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_macsynkind] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2070(line=69, offs=18) -- 2109(line=69, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_macsynkind (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp2) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_macsynkind:
/* tmp2 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_macsynkind (stderr, arg0) ;
return /* (tmp2) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_macsynkind] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2157(line=75, offs=3) -- 2350(line=79, offs=56)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_cstsp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp3) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_cstsp:
do {
/* branch: __ats_lab_3 */
__ats_lab_3_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_4_0 ; }
__ats_lab_3_1:
/* tmp3 = */ atspre_fprint_string (arg0, ATSstrcst("$myfilename")) ;
break ;

/* branch: __ats_lab_4 */
__ats_lab_4_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_5_0 ; }
__ats_lab_4_1:
/* tmp3 = */ atspre_fprint_string (arg0, ATSstrcst("$mylocation")) ;
break ;

/* branch: __ats_lab_5 */
__ats_lab_5_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_5_1:
/* tmp3 = */ atspre_fprint_string (arg0, ATSstrcst("$myfunction")) ;
break ;
} while (0) ;
return /* (tmp3) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_cstsp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2552(line=90, offs=3) -- 2643(line=95, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt:
tmp5 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg1), atslab_token_node) ;
if (((ats_sum_ptr_type)tmp5)->tag != 150) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_syntax_print.dats: 2574(line=92, offs=5) -- 2608(line=93, offs=29)") ; }
tmp6 = ats_caselptrlab_mac(anairiats_sum_1, tmp5, atslab_1) ;
/* tmp4 = */ atspre_fprint_string (arg0, tmp6) ;
return /* (tmp4) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2694(line=99, offs=3) -- 2772(line=101, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_char_type, tmp9) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har:
tmp8 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg1), atslab_token_node) ;
if (((ats_sum_ptr_type)tmp8)->tag != 151) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_syntax_print.dats: 2715(line=100, offs=7) -- 2742(line=100, offs=34)") ; }
tmp9 = ats_caselptrlab_mac(anairiats_sum_2, tmp8, atslab_0) ;
/* tmp7 = */ atspre_fprint_char (arg0, tmp9) ;
return /* (tmp7) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2825(line=105, offs=3) -- 2923(line=110, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;
ATSlocal (ats_ptr_type, tmp12) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat:
tmp11 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg1), atslab_token_node) ;
if (((ats_sum_ptr_type)tmp11)->tag != 152) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_syntax_print.dats: 2847(line=107, offs=5) -- 2888(line=108, offs=34)") ; }
tmp12 = ats_caselptrlab_mac(anairiats_sum_1, tmp11, atslab_1) ;
/* tmp10 = */ atspre_fprint_string (arg0, tmp12) ;
return /* (tmp10) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 2978(line=114, offs=3) -- 3060(line=116, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring:
tmp14 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg1), atslab_token_node) ;
if (((ats_sum_ptr_type)tmp14)->tag != 154) { ats_caseof_failure_handle ("/tmp/ATS-Postiats/src/pats_syntax_print.dats: 2999(line=115, offs=7) -- 3028(line=115, offs=36)") ; }
tmp15 = ats_caselptrlab_mac(anairiats_sum_3, tmp14, atslab_0) ;
/* tmp13 = */ atspre_fprint_string (arg0, tmp15) ;
return /* (tmp13) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3132(line=122, offs=3) -- 3174(line=122, offs=45)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de:
tmp17 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_4, arg1), atslab_i0de_sym) ;
/* tmp16 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp17) ;
return /* (tmp16) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3221(line=125, offs=22) -- 3254(line=125, offs=55)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_i0de (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp18) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_i0de:
/* tmp18 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (stdout, arg0) ;
return /* (tmp18) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_i0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3276(line=126, offs=22) -- 3309(line=126, offs=55)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp19) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de:
/* tmp19 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (stderr, arg0) ;
return /* (tmp19) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_i0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3355(line=131, offs=14) -- 3525(line=137, offs=6)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp20) ;
ATSlocal (ats_ptr_type, tmp21) ;
ATSlocal (ats_ptr_type, tmp22) ;
// ATSlocal_void (tmp23) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq:
tmp21 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_5, arg1), atslab_s0rtq_node) ;
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (tmp21 != (ats_sum_ptr_type)0) { goto __ats_lab_7_0 ; }
__ats_lab_6_1:
break ;

/* branch: __ats_lab_7 */
__ats_lab_7_0:
// if (tmp21 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_7_1:
tmp22 = ats_caselptrlab_mac(anairiats_sum_6, tmp21, atslab_0) ;
/* tmp23 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp22) ;
/* tmp20 = */ atspre_fprint_string (arg0, ATSstrcst(".")) ;
break ;
} while (0) ;
return /* (tmp20) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3574(line=140, offs=23) -- 3608(line=140, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0rtq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp24) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0rtq:
/* tmp24 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq (stdout, arg0) ;
return /* (tmp24) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0rtq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3631(line=141, offs=23) -- 3665(line=141, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0rtq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp25) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0rtq:
/* tmp25 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq (stderr, arg0) ;
return /* (tmp25) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0rtq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 3711(line=146, offs=14) -- 3881(line=152, offs=6)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp26) ;
ATSlocal (ats_ptr_type, tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;
// ATSlocal_void (tmp29) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq:
tmp27 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_7, arg1), atslab_s0taq_node) ;
do {
/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (tmp27 != (ats_sum_ptr_type)0) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
// if (tmp27 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_9_1:
tmp28 = ats_caselptrlab_mac(anairiats_sum_6, tmp27, atslab_0) ;
/* tmp29 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp28) ;
/* tmp26 = */ atspre_fprint_string (arg0, ATSstrcst(".")) ;
break ;
} while (0) ;
return /* (tmp26) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 4100(line=166, offs=23) -- 4134(line=166, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0taq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp30) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0taq:
/* tmp30 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq (stdout, arg0) ;
return /* (tmp30) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_s0taq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 4157(line=167, offs=23) -- 4191(line=167, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp31) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq:
/* tmp31 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq (stderr, arg0) ;
return /* (tmp31) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_s0taq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 4217(line=170, offs=15) -- 4320(line=173, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_sqi0de (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp32) ;
// ATSlocal_void (tmp33) ;
ATSlocal (ats_ptr_type, tmp34) ;
ATSlocal (ats_ptr_type, tmp35) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_sqi0de:
tmp34 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_8, arg1), atslab_sqi0de_qua) ;
/* tmp33 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq (arg0, tmp34) ;
tmp35 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_8, arg1), atslab_sqi0de_sym) ;
/* tmp32 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp35) ;
return /* (tmp32) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_sqi0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 4394(line=179, offs=3) -- 4561(line=189, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp36) ;
ATSlocal (ats_ptr_type, tmp37) ;
ATSlocal (ats_ptr_type, tmp38) ;
// ATSlocal_void (tmp39) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq:
tmp37 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_9, arg1), atslab_d0ynq_node) ;
do {
/* branch: __ats_lab_10 */
__ats_lab_10_0:
if (tmp37 != (ats_sum_ptr_type)0) { goto __ats_lab_11_0 ; }
__ats_lab_10_1:
break ;

/* branch: __ats_lab_11 */
__ats_lab_11_0:
// if (tmp37 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_11_1:
tmp38 = ats_caselptrlab_mac(anairiats_sum_6, tmp37, atslab_0) ;
/* tmp39 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp38) ;
/* tmp36 = */ atspre_fprint_string (arg0, ATSstrcst(".")) ;
break ;
} while (0) ;
return /* (tmp36) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 4947(line=212, offs=12) -- 4980(line=212, offs=45)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_d0ynq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp40) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_d0ynq:
/* tmp40 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (stdout, arg0) ;
return /* (tmp40) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_d0ynq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5002(line=214, offs=12) -- 5035(line=214, offs=45)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp41) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq:
/* tmp41 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (stderr, arg0) ;
return /* (tmp41) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_d0ynq] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5085(line=219, offs=14) -- 5186(line=223, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp42) ;
// ATSlocal_void (tmp43) ;
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de:
tmp44 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_10, arg1), atslab_dqi0de_qua) ;
/* tmp43 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (arg0, tmp44) ;
tmp45 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_10, arg1), atslab_dqi0de_sym) ;
/* tmp42 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp45) ;
return /* (tmp42) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5238(line=226, offs=13) -- 5272(line=226, offs=47)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_dqi0de (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp46) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_dqi0de:
/* tmp46 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de (stdout, arg0) ;
return /* (tmp46) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__print_dqi0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5295(line=228, offs=13) -- 5329(line=228, offs=47)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_dqi0de (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp47) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_dqi0de:
/* tmp47 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de (stderr, arg0) ;
return /* (tmp47) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__prerr_dqi0de] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5379(line=234, offs=3) -- 5605(line=246, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0rec (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp48) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0rec:
do {
/* branch: __ats_lab_12 */
__ats_lab_12_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_13_0 ; }
__ats_lab_12_1:
/* tmp48 = */ atspre_fprint_string (arg0, ATSstrcst("P0RECint(...)")) ;
break ;

/* branch: __ats_lab_13 */
__ats_lab_13_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_14_0 ; }
__ats_lab_13_1:
/* tmp48 = */ atspre_fprint_string (arg0, ATSstrcst("P0RECi0de(...)")) ;
break ;

/* branch: __ats_lab_14 */
__ats_lab_14_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_14_1:
/* tmp48 = */ atspre_fprint_string (arg0, ATSstrcst("P0RECi0de_adj(...)")) ;
break ;
} while (0) ;
return /* (tmp48) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0rec] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5678(line=252, offs=3) -- 5882(line=262, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0xty (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp49) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0xty:
do {
/* branch: __ats_lab_15 */
__ats_lab_15_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_16_0 ; }
__ats_lab_15_1:
/* tmp49 = */ atspre_fprint_string (arg0, ATSstrcst("F0XTYinf(...)")) ;
break ;

/* branch: __ats_lab_16 */
__ats_lab_16_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_17_0 ; }
__ats_lab_16_1:
/* tmp49 = */ atspre_fprint_string (arg0, ATSstrcst("F0XTYpre(...)")) ;
break ;

/* branch: __ats_lab_17 */
__ats_lab_17_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_17_1:
/* tmp49 = */ atspre_fprint_string (arg0, ATSstrcst("F0XTYpos(...)")) ;
break ;
} while (0) ;
return /* (tmp49) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0xty] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 5961(line=268, offs=3) -- 6232(line=276, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xpactkind (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp50) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xpactkind:
do {
/* branch: __ats_lab_18 */
__ats_lab_18_0:
if (((ats_sum_ptr_type)arg1)->tag != 3) { goto __ats_lab_19_0 ; }
__ats_lab_18_1:
/* tmp50 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPACTassert")) ;
break ;

/* branch: __ats_lab_19 */
__ats_lab_19_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_20_0 ; }
__ats_lab_19_1:
/* tmp50 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPACTerror")) ;
break ;

/* branch: __ats_lab_20 */
__ats_lab_20_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_21_0 ; }
__ats_lab_20_1:
/* tmp50 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPACTprint")) ;
break ;

/* branch: __ats_lab_21 */
__ats_lab_21_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_21_1:
/* tmp50 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPACTprint")) ;
break ;
} while (0) ;
return /* (tmp50) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xpactkind] */

/*
// /tmp/ATS-Postiats/src/pats_utils.dats: 11884(line=651, offs=1) -- 12164(line=665, offs=2)
*/
ATSstaticdec()
ats_void_type
aux_29 (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type env2, ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
// ATSlocal_void (tmp82) ;
ATSlocal (ats_ptr_type, tmp83) ;
ATSlocal (ats_ptr_type, tmp84) ;
// ATSlocal_void (tmp85) ;
ATSlocal (ats_bool_type, tmp86) ;
// ATSlocal_void (tmp87) ;
ATSlocal (ats_int_type, tmp88) ;

__ats_lab_aux_29:
do {
/* branch: __ats_lab_30 */
__ats_lab_30_0:
if (arg0 != (ats_sum_ptr_type)0) { goto __ats_lab_31_0 ; }
__ats_lab_30_1:
break ;

/* branch: __ats_lab_31 */
__ats_lab_31_0:
// if (arg0 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_31_1:
tmp83 = ats_caselptrlab_mac(anairiats_sum_14, arg0, atslab_0) ;
tmp84 = ats_caselptrlab_mac(anairiats_sum_14, arg0, atslab_1) ;
tmp86 = atspre_gt_int_int (arg1, 0) ;
if (tmp86) {
/* tmp85 = */ atspre_fprint_string (env0, env1) ;
} else {
/* empty */
} /* end of [if] */
/* tmp87 = */ ((ats_void_type(*)(ats_ptr_type, ats_ptr_type))env2) (env0, tmp83) ;
tmp88 = atspre_add_int_int (arg1, 1) ;
arg0 = tmp84 ;
arg1 = tmp88 ;
goto __ats_lab_aux_29 ; // tail call
break ;
} while (0) ;
return /* (tmp82) */ ;
} /* end of [aux_29] */

typedef struct {
ats_fun_ptr_type closure_fun ;
ats_ptr_type closure_env_0 ;
ats_ptr_type closure_env_1 ;
ats_ptr_type closure_env_2 ;
} aux_29_closure_type ;

ats_void_type
aux_29_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_int_type arg1) {
aux_29 (((aux_29_closure_type*)cloptr)->closure_env_0, ((aux_29_closure_type*)cloptr)->closure_env_1, ((aux_29_closure_type*)cloptr)->closure_env_2, arg0, arg1) ; return ;
} /* end of function */

ATSinline()
ats_void_type
aux_29_closure_init (aux_29_closure_type *p_clo, ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type env2) {
p_clo->closure_fun = (ats_fun_ptr_type)&aux_29_clofun ;
p_clo->closure_env_0 = env0 ;
p_clo->closure_env_1 = env1 ;
p_clo->closure_env_2 = env2 ;
return ;
} /* end of function */

ats_clo_ptr_type
aux_29_closure_make (ats_ptr_type env0, ats_ptr_type env1, ats_ptr_type env2) {
aux_29_closure_type *p_clo = ATS_MALLOC(sizeof(aux_29_closure_type)) ;
aux_29_closure_init (p_clo, env0, env1, env2) ;
return (ats_clo_ptr_type)p_clo ;
} /* end of function */

/*
// /tmp/ATS-Postiats/src/pats_utils.dats: 11844(line=646, offs=11) -- 12207(line=669, offs=4)
*/
ATSstaticdec()
ats_void_type
fprintlst_01696_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp81) ;

__ats_lab_fprintlst_01696_ats_ptr_type:
/* tmp81 = */ aux_29 (arg0, arg2, arg3, arg1, 0) ;
return /* (tmp81) */ ;
} /* end of [fprintlst_01696_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_utils.dats: 12283(line=676, offs=1) -- 12550(line=689, offs=8)
*/
ATSstaticdec()
ats_void_type
fprintopt_01697_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
// ATSlocal_void (tmp106) ;
ATSlocal (ats_ptr_type, tmp107) ;
// ATSlocal_void (tmp108) ;
// ATSlocal_void (tmp109) ;

__ats_lab_fprintopt_01697_ats_ptr_type:
do {
/* branch: __ats_lab_35 */
__ats_lab_35_0:
if (arg1 != (ats_sum_ptr_type)0) { goto __ats_lab_36_0 ; }
__ats_lab_35_1:
/* tmp106 = */ atspre_fprint_string (arg0, ATSstrcst("None()")) ;
break ;

/* branch: __ats_lab_36 */
__ats_lab_36_0:
// if (arg1 == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_36_1:
tmp107 = ats_caselptrlab_mac(anairiats_sum_6, arg1, atslab_0) ;
/* tmp108 = */ atspre_fprint_string (arg0, ATSstrcst("Some(")) ;
/* tmp109 = */ ((ats_void_type(*)(ats_ptr_type, ats_ptr_type))arg2) (arg0, tmp107) ;
/* tmp106 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;
} while (0) ;
return /* (tmp106) */ ;
} /* end of [fprintopt_01697_ats_ptr_type] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 6318(line=284, offs=3) -- 8124(line=351, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp51) ;
ATSlocal (ats_ptr_type, tmp52) ;
ATSlocal (ats_ptr_type, tmp53) ;
// ATSlocal_void (tmp54) ;
// ATSlocal_void (tmp55) ;
ATSlocal (ats_ptr_type, tmp56) ;
// ATSlocal_void (tmp57) ;
// ATSlocal_void (tmp58) ;
ATSlocal (ats_ptr_type, tmp59) ;
// ATSlocal_void (tmp60) ;
// ATSlocal_void (tmp61) ;
ATSlocal (ats_ptr_type, tmp62) ;
// ATSlocal_void (tmp63) ;
// ATSlocal_void (tmp64) ;
ATSlocal (ats_ptr_type, tmp65) ;
// ATSlocal_void (tmp66) ;
// ATSlocal_void (tmp67) ;
ATSlocal (ats_ptr_type, tmp68) ;
// ATSlocal_void (tmp69) ;
// ATSlocal_void (tmp70) ;
ATSlocal (ats_ptr_type, tmp71) ;
ATSlocal (ats_ptr_type, tmp72) ;
// ATSlocal_void (tmp73) ;
// ATSlocal_void (tmp74) ;
// ATSlocal_void (tmp75) ;
// ATSlocal_void (tmp76) ;
ATSlocal (ats_ptr_type, tmp77) ;
ATSlocal (ats_ptr_type, tmp78) ;
// ATSlocal_void (tmp79) ;
// ATSlocal_void (tmp80) ;
// ATSlocal_void (tmp89) ;
// ATSlocal_void (tmp90) ;
ATSlocal (ats_ptr_type, tmp91) ;
// ATSlocal_void (tmp92) ;
// ATSlocal_void (tmp93) ;
ATSlocal (ats_ptr_type, tmp94) ;
// ATSlocal_void (tmp95) ;
// ATSlocal_void (tmp96) ;
ATSlocal (ats_ptr_type, tmp97) ;
ATSlocal (ats_ptr_type, tmp98) ;
ATSlocal (ats_ptr_type, tmp99) ;
// ATSlocal_void (tmp100) ;
// ATSlocal_void (tmp101) ;
// ATSlocal_void (tmp102) ;
// ATSlocal_void (tmp103) ;
// ATSlocal_void (tmp104) ;
// ATSlocal_void (tmp105) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp:
tmp52 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_12, arg1), atslab_e0xp_node) ;
do {
/* branch: __ats_lab_22 */
__ats_lab_22_0:
if (((ats_sum_ptr_type)tmp52)->tag != 0) { goto __ats_lab_23_0 ; }
__ats_lab_22_1:
tmp53 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp54 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPide(")) ;
/* tmp55 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp53) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_23 */
__ats_lab_23_0:
if (((ats_sum_ptr_type)tmp52)->tag != 2) { goto __ats_lab_24_0 ; }
__ats_lab_23_1:
tmp56 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp57 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPchar(")) ;
/* tmp58 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har (arg0, tmp56) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_24 */
__ats_lab_24_0:
if (((ats_sum_ptr_type)tmp52)->tag != 1) { goto __ats_lab_25_0 ; }
__ats_lab_24_1:
tmp59 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp60 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPint(")) ;
/* tmp61 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt (arg0, tmp59) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_25 */
__ats_lab_25_0:
if (((ats_sum_ptr_type)tmp52)->tag != 3) { goto __ats_lab_26_0 ; }
__ats_lab_25_1:
tmp62 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp63 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPfloat(")) ;
/* tmp64 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat (arg0, tmp62) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_26 */
__ats_lab_26_0:
if (((ats_sum_ptr_type)tmp52)->tag != 4) { goto __ats_lab_27_0 ; }
__ats_lab_26_1:
tmp65 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp66 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPstring(")) ;
/* tmp67 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring (arg0, tmp65) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_27 */
__ats_lab_27_0:
if (((ats_sum_ptr_type)tmp52)->tag != 5) { goto __ats_lab_28_0 ; }
__ats_lab_27_1:
tmp68 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp69 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPstringid(")) ;
/* tmp70 = */ atspre_fprint_string (arg0, tmp68) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_28 */
__ats_lab_28_0:
if (((ats_sum_ptr_type)tmp52)->tag != 6) { goto __ats_lab_29_0 ; }
__ats_lab_28_1:
tmp71 = ats_caselptrlab_mac(anairiats_sum_13, tmp52, atslab_0) ;
tmp72 = ats_caselptrlab_mac(anairiats_sum_13, tmp52, atslab_1) ;
/* tmp73 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPapp(")) ;
/* tmp74 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp71) ;
/* tmp75 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp76 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp72) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_29 */
__ats_lab_29_0:
if (((ats_sum_ptr_type)tmp52)->tag != 7) { goto __ats_lab_32_0 ; }
__ats_lab_29_1:
tmp77 = ats_caselptrlab_mac(anairiats_sum_13, tmp52, atslab_0) ;
tmp78 = ats_caselptrlab_mac(anairiats_sum_13, tmp52, atslab_1) ;
/* tmp79 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPfun(")) ;
/* tmp80 = */ fprintlst_01696_ats_ptr_type (arg0, tmp77, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol) ;
/* tmp89 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp90 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp78) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_32 */
__ats_lab_32_0:
if (((ats_sum_ptr_type)tmp52)->tag != 8) { goto __ats_lab_33_0 ; }
__ats_lab_32_1:
tmp91 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp92 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPeval(")) ;
/* tmp93 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp91) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_33 */
__ats_lab_33_0:
if (((ats_sum_ptr_type)tmp52)->tag != 9) { goto __ats_lab_34_0 ; }
__ats_lab_33_1:
tmp94 = ats_caselptrlab_mac(anairiats_sum_3, tmp52, atslab_0) ;
/* tmp95 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPlist(")) ;
/* tmp96 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xplst (arg0, tmp94) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_34 */
__ats_lab_34_0:
// if (((ats_sum_ptr_type)tmp52)->tag != 10) { ats_deadcode_failure_handle () ; }
__ats_lab_34_1:
tmp97 = ats_caselptrlab_mac(anairiats_sum_15, tmp52, atslab_0) ;
tmp98 = ats_caselptrlab_mac(anairiats_sum_15, tmp52, atslab_1) ;
tmp99 = ats_caselptrlab_mac(anairiats_sum_15, tmp52, atslab_2) ;
/* tmp100 = */ atspre_fprint_string (arg0, ATSstrcst("E0XPif(")) ;
/* tmp101 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp97) ;
/* tmp102 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp103 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp98) ;
/* tmp104 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp105 = */ fprintopt_01697_ats_ptr_type (arg0, tmp99, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) ;
/* tmp51 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;
} while (0) ;
return /* (tmp51) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 8175(line=354, offs=16) -- 8237(line=355, offs=51)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xplst (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp110) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xplst:
/* tmp110 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) ;
return /* (tmp110) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xplst] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 8311(line=361, offs=3) -- 8352(line=361, offs=44)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp111) ;
ATSlocal (ats_ptr_type, tmp112) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab:
tmp112 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_16, arg1), atslab_l0ab_lab) ;
/* tmp111 = */ _2tmp_2ATS_2dPostiats_2src_2pats_label_2esats__fprint_label (arg0, tmp112) ;
return /* (tmp111) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 8421(line=367, offs=13) -- 9277(line=399, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (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) ;
ATSlocal (ats_ptr_type, tmp121) ;
// ATSlocal_void (tmp122) ;
// ATSlocal_void (tmp123) ;
ATSlocal (ats_ptr_type, tmp124) ;
ATSlocal (ats_ptr_type, tmp125) ;
// ATSlocal_void (tmp126) ;
// ATSlocal_void (tmp127) ;
// ATSlocal_void (tmp128) ;
ATSlocal (ats_ptr_type, tmp129) ;
// ATSlocal_void (tmp130) ;
// ATSlocal_void (tmp131) ;
ATSlocal (ats_int_type, tmp132) ;
// ATSlocal_void (tmp133) ;
// ATSlocal_void (tmp134) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt:
tmp114 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_17, arg1), atslab_s0rt_node) ;
do {
/* branch: __ats_lab_37 */
__ats_lab_37_0:
if (((ats_sum_ptr_type)tmp114)->tag != 2) { goto __ats_lab_38_0 ; }
__ats_lab_37_1:
tmp115 = ats_caselptrlab_mac(anairiats_sum_13, tmp114, atslab_0) ;
tmp116 = ats_caselptrlab_mac(anairiats_sum_13, tmp114, atslab_1) ;
/* tmp117 = */ atspre_fprint_string (arg0, ATSstrcst("S0RTapp(")) ;
/* tmp118 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp115) ;
/* tmp119 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp120 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp116) ;
/* tmp113 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_38 */
__ats_lab_38_0:
if (((ats_sum_ptr_type)tmp114)->tag != 0) { goto __ats_lab_39_0 ; }
__ats_lab_38_1:
tmp121 = ats_caselptrlab_mac(anairiats_sum_3, tmp114, atslab_0) ;
/* tmp122 = */ atspre_fprint_string (arg0, ATSstrcst("S0RTide(")) ;
/* tmp123 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp121) ;
/* tmp113 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_39 */
__ats_lab_39_0:
if (((ats_sum_ptr_type)tmp114)->tag != 1) { goto __ats_lab_40_0 ; }
__ats_lab_39_1:
tmp124 = ats_caselptrlab_mac(anairiats_sum_13, tmp114, atslab_0) ;
tmp125 = ats_caselptrlab_mac(anairiats_sum_13, tmp114, atslab_1) ;
/* tmp126 = */ atspre_fprint_string (arg0, ATSstrcst("S0RTqid(")) ;
/* tmp127 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtq (arg0, tmp124) ;
/* tmp128 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp125) ;
/* tmp113 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_40 */
__ats_lab_40_0:
if (((ats_sum_ptr_type)tmp114)->tag != 3) { goto __ats_lab_41_0 ; }
__ats_lab_40_1:
tmp129 = ats_caselptrlab_mac(anairiats_sum_3, tmp114, atslab_0) ;
/* tmp130 = */ atspre_fprint_string (arg0, ATSstrcst("S0RTlist(")) ;
/* tmp131 = */ fprintlst_01696_ats_ptr_type (arg0, tmp129, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt) ;
/* tmp113 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_41 */
__ats_lab_41_0:
// if (((ats_sum_ptr_type)tmp114)->tag != 4) { ats_deadcode_failure_handle () ; }
__ats_lab_41_1:
tmp132 = ats_caselptrlab_mac(anairiats_sum_11, tmp114, atslab_0) ;
/* tmp133 = */ atspre_fprint_string (arg0, ATSstrcst("S0RTtype(")) ;
/* tmp134 = */ atspre_fprint_int (arg0, tmp132) ;
/* tmp113 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;
} while (0) ;
return /* (tmp113) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 9328(line=403, offs=5) -- 9723(line=416, offs=2)
*/
ATSstaticdec()
ats_void_type
fprint_d0atsrtcon_34 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp135) ;
// ATSlocal_void (tmp136) ;
ATSlocal (ats_ptr_type, tmp137) ;
ATSlocal (ats_ptr_type, tmp138) ;
ATSlocal (ats_ptr_type, tmp139) ;
// ATSlocal_void (tmp140) ;

__ats_lab_fprint_d0atsrtcon_34:
tmp137 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_d0atsrtcon_sym) ;
/* tmp136 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp137) ;
tmp138 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_18, arg1), atslab_d0atsrtcon_arg) ;
do {
/* branch: __ats_lab_42 */
__ats_lab_42_0:
if (tmp138 == (ats_sum_ptr_type)0) { goto __ats_lab_43_0 ; }
__ats_lab_42_1:
tmp139 = ats_caselptrlab_mac(anairiats_sum_6, tmp138, atslab_0) ;
/* tmp140 = */ atspre_fprint_string (arg0, ATSstrcst(" of ")) ;
/* tmp135 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp139) ;
break ;

/* branch: __ats_lab_43 */
__ats_lab_43_0:
// if (tmp138 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_43_1:
/* tmp135 = */ atspre_fprint_string (arg0, ATSstrcst(" of ()")) ;
break ;
} while (0) ;
return /* (tmp135) */ ;
} /* end of [fprint_d0atsrtcon_34] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 9783(line=419, offs=19) -- 9976(line=424, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0atsrtdec (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp141) ;
// ATSlocal_void (tmp142) ;
ATSlocal (ats_ptr_type, tmp143) ;
// ATSlocal_void (tmp144) ;
ATSlocal (ats_ptr_type, tmp145) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0atsrtdec:
tmp143 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, arg1), atslab_d0atsrtdec_sym) ;
/* tmp142 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp143) ;
/* tmp144 = */ atspre_fprint_string (arg0, ATSstrcst(" = ")) ;
tmp145 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_19, arg1), atslab_d0atsrtdec_con) ;
/* tmp141 = */ fprintlst_01696_ats_ptr_type (arg0, tmp145, ATSstrcst(" | "), &fprint_d0atsrtcon_34) ;
return /* (tmp141) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0atsrtdec] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 10033(line=428, offs=5) -- 10323(line=438, offs=2)
*/
ATSstaticdec()
ats_void_type
fprint_a0srt_36 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp146) ;
// ATSlocal_void (tmp147) ;
ATSlocal (ats_ptr_type, tmp148) ;
ATSlocal (ats_ptr_type, tmp149) ;
// ATSlocal_void (tmp150) ;
ATSlocal (ats_ptr_type, tmp151) ;

__ats_lab_fprint_a0srt_36:
tmp148 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg1), atslab_a0srt_sym) ;
do {
/* branch: __ats_lab_44 */
__ats_lab_44_0:
if (tmp148 == (ats_sum_ptr_type)0) { goto __ats_lab_45_0 ; }
__ats_lab_44_1:
tmp149 = ats_caselptrlab_mac(anairiats_sum_6, tmp148, atslab_0) ;
/* tmp150 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp149) ;
/* tmp147 = */ atspre_fprint_string (arg0, ATSstrcst(": ")) ;
break ;

/* branch: __ats_lab_45 */
__ats_lab_45_0:
// if (tmp148 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_45_1:
break ;
} while (0) ;
tmp151 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_20, arg1), atslab_a0srt_srt) ;
/* tmp146 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp151) ;
return /* (tmp146) */ ;
} /* end of [fprint_a0srt_36] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 10354(line=440, offs=5) -- 10556(line=446, offs=2)
*/
ATSstaticdec()
ats_void_type
fprint_a0msrt_37 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp152) ;
// ATSlocal_void (tmp153) ;
// ATSlocal_void (tmp154) ;
ATSlocal (ats_ptr_type, tmp155) ;

__ats_lab_fprint_a0msrt_37:
/* tmp153 = */ atspre_fprint_string (arg0, ATSstrcst("(")) ;
tmp155 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_21, arg1), atslab_a0msrt_arg) ;
/* tmp154 = */ fprintlst_01696_ats_ptr_type (arg0, tmp155, ATSstrcst(", "), &fprint_a0srt_36) ;
/* tmp152 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
return /* (tmp152) */ ;
} /* end of [fprint_a0msrt_37] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 10630(line=451, offs=16) -- 11320(line=477, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp156) ;
ATSlocal (ats_ptr_type, tmp157) ;
ATSlocal (ats_ptr_type, tmp158) ;
// ATSlocal_void (tmp159) ;
// ATSlocal_void (tmp160) ;
ATSlocal (ats_ptr_type, tmp161) ;
ATSlocal (ats_ptr_type, tmp162) ;
ATSlocal (ats_ptr_type, tmp163) ;
ATSlocal (ats_ptr_type, tmp164) ;
// ATSlocal_void (tmp165) ;
// ATSlocal_void (tmp166) ;
// ATSlocal_void (tmp167) ;
// ATSlocal_void (tmp168) ;
// ATSlocal_void (tmp169) ;
// ATSlocal_void (tmp170) ;
// ATSlocal_void (tmp171) ;
// ATSlocal_void (tmp172) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext:
tmp157 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_22, arg1), atslab_s0rtext_node) ;
do {
/* branch: __ats_lab_46 */
__ats_lab_46_0:
if (((ats_sum_ptr_type)tmp157)->tag != 0) { goto __ats_lab_47_0 ; }
__ats_lab_46_1:
tmp158 = ats_caselptrlab_mac(anairiats_sum_3, tmp157, atslab_0) ;
/* tmp159 = */ atspre_fprint_string (arg0, ATSstrcst("S0TEsrt(")) ;
/* tmp160 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp158) ;
/* tmp156 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_47 */
__ats_lab_47_0:
// if (((ats_sum_ptr_type)tmp157)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_47_1:
tmp161 = ats_caselptrlab_mac(anairiats_sum_23, tmp157, atslab_0) ;
tmp162 = ats_caselptrlab_mac(anairiats_sum_23, tmp157, atslab_1) ;
tmp163 = ats_caselptrlab_mac(anairiats_sum_23, tmp157, atslab_2) ;
tmp164 = ats_caselptrlab_mac(anairiats_sum_23, tmp157, atslab_3) ;
/* tmp165 = */ atspre_fprint_string (arg0, ATSstrcst("S0TEsub(")) ;
/* tmp166 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (arg0, tmp161) ;
/* tmp167 = */ atspre_fprint_string (arg0, ATSstrcst(": ")) ;
/* tmp168 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext (arg0, tmp162) ;
/* tmp169 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp170 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp163) ;
do {
/* branch: __ats_lab_48 */
__ats_lab_48_0:
if (tmp164 == (ats_sum_ptr_type)0) { goto __ats_lab_49_0 ; }
__ats_lab_48_1:
/* tmp172 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp171 = */ fprintlst_01696_ats_ptr_type (arg0, tmp164, ATSstrcst("; "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp) ;
break ;

/* branch: __ats_lab_49 */
__ats_lab_49_0:
// if (tmp164 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_49_1:
break ;
} while (0) ;
/* tmp156 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;
} while (0) ;
return /* (tmp156) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 11393(line=482, offs=14) -- 12010(line=507, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp173) ;
ATSlocal (ats_ptr_type, tmp174) ;
ATSlocal (ats_ptr_type, tmp175) ;
// ATSlocal_void (tmp176) ;
// ATSlocal_void (tmp177) ;
ATSlocal (ats_ptr_type, tmp178) ;
ATSlocal (ats_ptr_type, tmp179) ;
ATSlocal (ats_ptr_type, tmp180) ;
// ATSlocal_void (tmp181) ;
// ATSlocal_void (tmp182) ;
// ATSlocal_void (tmp183) ;
// ATSlocal_void (tmp184) ;
// ATSlocal_void (tmp185) ;
// ATSlocal_void (tmp186) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua:
tmp174 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_24, arg1), atslab_s0qua_node) ;
do {
/* branch: __ats_lab_50 */
__ats_lab_50_0:
if (((ats_sum_ptr_type)tmp174)->tag != 0) { goto __ats_lab_51_0 ; }
__ats_lab_50_1:
tmp175 = ats_caselptrlab_mac(anairiats_sum_3, tmp174, atslab_0) ;
/* tmp176 = */ atspre_fprint_string (arg0, ATSstrcst("S0QUAprop(")) ;
/* tmp177 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp175) ;
/* tmp173 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_51 */
__ats_lab_51_0:
// if (((ats_sum_ptr_type)tmp174)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_51_1:
tmp178 = ats_caselptrlab_mac(anairiats_sum_15, tmp174, atslab_0) ;
tmp179 = ats_caselptrlab_mac(anairiats_sum_15, tmp174, atslab_1) ;
tmp180 = ats_caselptrlab_mac(anairiats_sum_15, tmp174, atslab_2) ;
/* tmp181 = */ atspre_fprint_string (arg0, ATSstrcst("S0QUAvar(")) ;
/* tmp182 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (arg0, tmp178) ;
do {
/* branch: __ats_lab_52 */
__ats_lab_52_0:
if (tmp179 == (ats_sum_ptr_type)0) { goto __ats_lab_53_0 ; }
__ats_lab_52_1:
/* tmp184 = */ atspre_fprint_string (arg0, ATSstrcst(", ")) ;
/* tmp183 = */ fprintlst_01696_ats_ptr_type (arg0, tmp179, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) ;
break ;

/* branch: __ats_lab_53 */
__ats_lab_53_0:
// if (tmp179 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_53_1:
break ;
} while (0) ;
/* tmp185 = */ atspre_fprint_string (arg0, ATSstrcst(": ")) ;
/* tmp186 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rtext (arg0, tmp180) ;
/* tmp173 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;
} while (0) ;
return /* (tmp173) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 12063(line=510, offs=17) -- 12120(line=511, offs=46)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qualst (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp187) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qualst:
/* tmp187 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua) ;
return /* (tmp187) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qualst] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 12194(line=517, offs=14) -- 16071(line=686, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp188) ;
ATSlocal (ats_ptr_type, tmp189) ;
ATSlocal (ats_ptr_type, tmp190) ;
// ATSlocal_void (tmp191) ;
// ATSlocal_void (tmp192) ;
ATSlocal (ats_ptr_type, tmp193) ;
ATSlocal (ats_ptr_type, tmp194) ;
// ATSlocal_void (tmp195) ;
// ATSlocal_void (tmp196) ;
// ATSlocal_void (tmp197) ;
ATSlocal (ats_ptr_type, tmp198) ;
// ATSlocal_void (tmp199) ;
// ATSlocal_void (tmp200) ;
ATSlocal (ats_ptr_type, tmp201) ;
// ATSlocal_void (tmp202) ;
// ATSlocal_void (tmp203) ;
ATSlocal (ats_ptr_type, tmp204) ;
// ATSlocal_void (tmp205) ;
// ATSlocal_void (tmp206) ;
ATSlocal (ats_ptr_type, tmp207) ;
// ATSlocal_void (tmp208) ;
// ATSlocal_void (tmp209) ;
ATSlocal (ats_ptr_type, tmp210) ;
// ATSlocal_void (tmp211) ;
// ATSlocal_void (tmp212) ;
ATSlocal (ats_ptr_type, tmp213) ;
ATSlocal (ats_ptr_type, tmp214) ;
// ATSlocal_void (tmp215) ;
// ATSlocal_void (tmp216) ;
// ATSlocal_void (tmp217) ;
// ATSlocal_void (tmp218) ;
ATSlocal (ats_ptr_type, tmp219) ;
ATSlocal (ats_ptr_type, tmp220) ;
// ATSlocal_void (tmp221) ;
// ATSlocal_void (tmp222) ;
// ATSlocal_void (tmp223) ;
// ATSlocal_void (tmp224) ;
ATSlocal (ats_ptr_type, tmp225) ;
ATSlocal (ats_ptr_type, tmp226) ;
// ATSlocal_void (tmp227) ;
// ATSlocal_void (tmp228) ;
// ATSlocal_void (tmp229) ;
// ATSlocal_void (tmp230) ;
// ATSlocal_void (tmp231) ;
// ATSlocal_void (tmp232) ;
ATSlocal (ats_ptr_type, tmp233) ;
ATSlocal (ats_ptr_type, tmp234) ;
// ATSlocal_void (tmp235) ;
// ATSlocal_void (tmp236) ;
// ATSlocal_void (tmp237) ;
// ATSlocal_void (tmp238) ;
ATSlocal (ats_ptr_type, tmp239) ;
// ATSlocal_void (tmp240) ;
// ATSlocal_void (tmp241) ;
ATSlocal (ats_ptr_type, tmp242) ;
ATSlocal (ats_ptr_type, tmp243) ;
// ATSlocal_void (tmp244) ;
// ATSlocal_void (tmp245) ;
// ATSlocal_void (tmp246) ;
// ATSlocal_void (tmp247) ;
ATSlocal (ats_ptr_type, tmp248) ;
ATSlocal (ats_ptr_type, tmp249) ;
// ATSlocal_void (tmp250) ;
// ATSlocal_void (tmp251) ;
// ATSlocal_void (tmp252) ;
// ATSlocal_void (tmp253) ;
ATSlocal (ats_int_type, tmp254) ;
ATSlocal (ats_int_type, tmp255) ;
ATSlocal (ats_ptr_type, tmp256) ;
// ATSlocal_void (tmp257) ;
// ATSlocal_void (tmp258) ;
// ATSlocal_void (tmp259) ;
// ATSlocal_void (tmp260) ;
// ATSlocal_void (tmp261) ;
// ATSlocal_void (tmp262) ;
ATSlocal (ats_int_type, tmp263) ;
ATSlocal (ats_int_type, tmp264) ;
ATSlocal (ats_ptr_type, tmp265) ;
// ATSlocal_void (tmp266) ;
// ATSlocal_void (tmp267) ;
// ATSlocal_void (tmp268) ;
// ATSlocal_void (tmp269) ;
// ATSlocal_void (tmp270) ;
// ATSlocal_void (tmp271) ;
ATSlocal (ats_ptr_type, tmp272) ;
ATSlocal (ats_int_type, tmp273) ;
ATSlocal (ats_ptr_type, tmp274) ;
// ATSlocal_void (tmp275) ;
// ATSlocal_void (tmp276) ;
// ATSlocal_void (tmp277) ;
// ATSlocal_void (tmp278) ;
// ATSlocal_void (tmp279) ;
// ATSlocal_void (tmp280) ;
ATSlocal (ats_ptr_type, tmp281) ;
// ATSlocal_void (tmp282) ;
// ATSlocal_void (tmp283) ;
ATSlocal (ats_int_type, tmp284) ;
ATSlocal (ats_ptr_type, tmp285) ;
// ATSlocal_void (tmp286) ;
// ATSlocal_void (tmp287) ;
// ATSlocal_void (tmp288) ;
// ATSlocal_void (tmp289) ;
ATSlocal (ats_ptr_type, tmp290) ;
ATSlocal (ats_ptr_type, tmp291) ;
// ATSlocal_void (tmp292) ;
// ATSlocal_void (tmp293) ;
// ATSlocal_void (tmp294) ;
// ATSlocal_void (tmp295) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp:
tmp189 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_25, arg1), atslab_s0exp_node) ;
do {
/* branch: __ats_lab_54 */
__ats_lab_54_0:
if (((ats_sum_ptr_type)tmp189)->tag != 0) { goto __ats_lab_55_0 ; }
__ats_lab_54_1:
tmp190 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp191 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eide(")) ;
/* tmp192 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp190) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_55 */
__ats_lab_55_0:
if (((ats_sum_ptr_type)tmp189)->tag != 1) { goto __ats_lab_56_0 ; }
__ats_lab_55_1:
tmp193 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp194 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp195 = */ atspre_fprint_string (arg0, ATSstrcst("S0Esqid(")) ;
/* tmp196 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0taq (arg0, tmp193) ;
/* tmp197 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp194) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_56 */
__ats_lab_56_0:
if (((ats_sum_ptr_type)tmp189)->tag != 2) { goto __ats_lab_57_0 ; }
__ats_lab_56_1:
tmp198 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp199 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eopid(")) ;
/* tmp200 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp198) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_57 */
__ats_lab_57_0:
if (((ats_sum_ptr_type)tmp189)->tag != 3) { goto __ats_lab_58_0 ; }
__ats_lab_57_1:
tmp201 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp202 = */ atspre_fprint_string (arg0, ATSstrcst("S0Ei0nt(")) ;
/* tmp203 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt (arg0, tmp201) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_58 */
__ats_lab_58_0:
if (((ats_sum_ptr_type)tmp189)->tag != 4) { goto __ats_lab_59_0 ; }
__ats_lab_58_1:
tmp204 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp205 = */ atspre_fprint_string (arg0, ATSstrcst("S0Echar(")) ;
/* tmp206 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har (arg0, tmp204) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_59 */
__ats_lab_59_0:
if (((ats_sum_ptr_type)tmp189)->tag != 5) { goto __ats_lab_60_0 ; }
__ats_lab_59_1:
tmp207 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp208 = */ atspre_fprint_string (arg0, ATSstrcst("S0Efloat(")) ;
/* tmp209 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat (arg0, tmp207) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_60 */
__ats_lab_60_0:
if (((ats_sum_ptr_type)tmp189)->tag != 6) { goto __ats_lab_61_0 ; }
__ats_lab_60_1:
tmp210 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp211 = */ atspre_fprint_string (arg0, ATSstrcst("S0Estring(")) ;
/* tmp212 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring (arg0, tmp210) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_61 */
__ats_lab_61_0:
if (((ats_sum_ptr_type)tmp189)->tag != 7) { goto __ats_lab_62_0 ; }
__ats_lab_61_1:
tmp213 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp214 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp215 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eextype(")) ;
/* tmp216 = */ atspre_fprint_string (arg0, tmp213) ;
/* tmp217 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp218 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp214) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_62 */
__ats_lab_62_0:
if (((ats_sum_ptr_type)tmp189)->tag != 8) { goto __ats_lab_63_0 ; }
__ats_lab_62_1:
tmp219 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp220 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp221 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eextkind(")) ;
/* tmp222 = */ atspre_fprint_string (arg0, tmp219) ;
/* tmp223 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp224 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp220) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_63 */
__ats_lab_63_0:
if (((ats_sum_ptr_type)tmp189)->tag != 9) { goto __ats_lab_64_0 ; }
__ats_lab_63_1:
tmp225 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp226 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp227 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eapp(")) ;
/* tmp228 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp225) ;
/* tmp229 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp230 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp226) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_64 */
__ats_lab_64_0:
if (((ats_sum_ptr_type)tmp189)->tag != 11) { goto __ats_lab_65_0 ; }
__ats_lab_64_1:
/* tmp231 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eimp(")) ;
/* tmp232 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_65 */
__ats_lab_65_0:
if (((ats_sum_ptr_type)tmp189)->tag != 10) { goto __ats_lab_66_0 ; }
__ats_lab_65_1:
tmp233 = ats_caselptrlab_mac(anairiats_sum_15, tmp189, atslab_1) ;
tmp234 = ats_caselptrlab_mac(anairiats_sum_15, tmp189, atslab_2) ;
/* tmp235 = */ atspre_fprint_string (arg0, ATSstrcst("S0Elam(")) ;
/* tmp236 = */ fprintopt_01697_ats_ptr_type (arg0, tmp233, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt) ;
/* tmp237 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp238 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp234) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_66 */
__ats_lab_66_0:
if (((ats_sum_ptr_type)tmp189)->tag != 12) { goto __ats_lab_67_0 ; }
__ats_lab_66_1:
tmp239 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp240 = */ atspre_fprint_string (arg0, ATSstrcst("S0Elist(")) ;
/* tmp241 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp239) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_67 */
__ats_lab_67_0:
if (((ats_sum_ptr_type)tmp189)->tag != 13) { goto __ats_lab_68_0 ; }
__ats_lab_67_1:
tmp242 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp243 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp244 = */ atspre_fprint_string (arg0, ATSstrcst("S0Elist2(")) ;
/* tmp245 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp242) ;
/* tmp246 = */ atspre_fprint_string (arg0, ATSstrcst(" | ")) ;
/* tmp247 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp243) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_68 */
__ats_lab_68_0:
if (((ats_sum_ptr_type)tmp189)->tag != 14) { goto __ats_lab_69_0 ; }
__ats_lab_68_1:
tmp248 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp249 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp250 = */ atspre_fprint_string (arg0, ATSstrcst("S0Etyarr(")) ;
/* tmp251 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp248) ;
/* tmp252 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp253 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp249) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_69 */
__ats_lab_69_0:
if (((ats_sum_ptr_type)tmp189)->tag != 15) { goto __ats_lab_70_0 ; }
__ats_lab_69_1:
tmp254 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_0) ;
tmp255 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_1) ;
tmp256 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_2) ;
/* tmp257 = */ atspre_fprint_string (arg0, ATSstrcst("S0Etytup(")) ;
/* tmp258 = */ atspre_fprint_int (arg0, tmp254) ;
/* tmp259 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp260 = */ atspre_fprint_int (arg0, tmp255) ;
/* tmp261 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp262 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp256) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_70 */
__ats_lab_70_0:
if (((ats_sum_ptr_type)tmp189)->tag != 16) { goto __ats_lab_71_0 ; }
__ats_lab_70_1:
tmp263 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_0) ;
tmp264 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_1) ;
tmp265 = ats_caselptrlab_mac(anairiats_sum_26, tmp189, atslab_2) ;
/* tmp266 = */ atspre_fprint_string (arg0, ATSstrcst("S0Etyrec(")) ;
/* tmp267 = */ atspre_fprint_int (arg0, tmp263) ;
/* tmp268 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp269 = */ atspre_fprint_int (arg0, tmp264) ;
/* tmp270 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp271 = */ fprintlst_01696_ats_ptr_type (arg0, tmp265, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_71 */
__ats_lab_71_0:
if (((ats_sum_ptr_type)tmp189)->tag != 17) { goto __ats_lab_72_0 ; }
__ats_lab_71_1:
tmp272 = ats_caselptrlab_mac(anairiats_sum_27, tmp189, atslab_0) ;
tmp273 = ats_caselptrlab_mac(anairiats_sum_27, tmp189, atslab_1) ;
tmp274 = ats_caselptrlab_mac(anairiats_sum_27, tmp189, atslab_2) ;
/* tmp275 = */ atspre_fprint_string (arg0, ATSstrcst("S0Etyrec_ext(")) ;
/* tmp276 = */ atspre_fprint_string (arg0, tmp272) ;
/* tmp277 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp278 = */ atspre_fprint_int (arg0, tmp273) ;
/* tmp279 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp280 = */ fprintlst_01696_ats_ptr_type (arg0, tmp274, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_72 */
__ats_lab_72_0:
if (((ats_sum_ptr_type)tmp189)->tag != 18) { goto __ats_lab_73_0 ; }
__ats_lab_72_1:
tmp281 = ats_caselptrlab_mac(anairiats_sum_3, tmp189, atslab_0) ;
/* tmp282 = */ atspre_fprint_string (arg0, ATSstrcst("S0Euni(")) ;
/* tmp283 = */ fprintlst_01696_ats_ptr_type (arg0, tmp281, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_73 */
__ats_lab_73_0:
if (((ats_sum_ptr_type)tmp189)->tag != 19) { goto __ats_lab_74_0 ; }
__ats_lab_73_1:
tmp284 = ats_caselptrlab_mac(anairiats_sum_28, tmp189, atslab_0) ;
tmp285 = ats_caselptrlab_mac(anairiats_sum_28, tmp189, atslab_1) ;
/* tmp286 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eexi(")) ;
/* tmp287 = */ atspre_fprint_int (arg0, tmp284) ;
/* tmp288 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp289 = */ fprintlst_01696_ats_ptr_type (arg0, tmp285, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qua) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_74 */
__ats_lab_74_0:
if (((ats_sum_ptr_type)tmp189)->tag != 20) { goto __ats_lab_75_0 ; }
__ats_lab_74_1:
tmp290 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_0) ;
tmp291 = ats_caselptrlab_mac(anairiats_sum_13, tmp189, atslab_1) ;
/* tmp292 = */ atspre_fprint_string (arg0, ATSstrcst("S0Eann(")) ;
/* tmp293 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp290) ;
/* tmp294 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp295 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp291) ;
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_75 */
__ats_lab_75_0:
// if (((ats_sum_ptr_type)tmp189)->tag != 21) { ats_deadcode_failure_handle () ; }
__ats_lab_75_1:
/* tmp188 = */ atspre_fprint_string (arg0, ATSstrcst("S0Ed2ctype(...)")) ;
break ;
} while (0) ;
return /* (tmp188) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 16147(line=692, offs=3) -- 16202(line=692, offs=58)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp296) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst:
/* tmp296 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp) ;
return /* (tmp296) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 16260(line=697, offs=3) -- 16311(line=697, offs=54)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp297) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt:
/* tmp297 = */ fprintopt_01697_ats_ptr_type (arg0, arg1, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp) ;
return /* (tmp297) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 16390(line=704, offs=3) -- 16702(line=715, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exparg (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp298) ;
ATSlocal (ats_ptr_type, tmp299) ;
// ATSlocal_void (tmp300) ;
// ATSlocal_void (tmp301) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exparg:
do {
/* branch: __ats_lab_76 */
__ats_lab_76_0:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_77_0 ; }
__ats_lab_76_1:
/* tmp298 = */ atspre_fprint_string (arg0, ATSstrcst("{..}")) ;
break ;

/* branch: __ats_lab_77 */
__ats_lab_77_0:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_78_0 ; }
__ats_lab_77_1:
/* tmp298 = */ atspre_fprint_string (arg0, ATSstrcst("{...}")) ;
break ;

/* branch: __ats_lab_78 */
__ats_lab_78_0:
// if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_78_1:
tmp299 = ats_caselptrlab_mac(anairiats_sum_3, arg1, atslab_0) ;
/* tmp300 = */ atspre_fprint_string (arg0, ATSstrcst("{")) ;
/* tmp301 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0explst (arg0, tmp299) ;
/* tmp298 = */ atspre_fprint_string (arg0, ATSstrcst("}")) ;
break ;
} while (0) ;
return /* (tmp298) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exparg] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 16781(line=721, offs=3) -- 16943(line=726, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp302) ;
ATSlocal (ats_ptr_type, tmp303) ;
ATSlocal (ats_ptr_type, tmp304) ;
// ATSlocal_void (tmp305) ;
// ATSlocal_void (tmp306) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp:
// 
tmp303 = ats_caselptrlab_mac(anairiats_sum_29, arg1, atslab_0) ;
tmp304 = ats_caselptrlab_mac(anairiats_sum_29, arg1, atslab_2) ;
/* tmp305 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab (arg0, tmp303) ;
/* tmp306 = */ atspre_fprint_string (arg0, ATSstrcst("= ")) ;
/* tmp302 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp304) ;
return /* (tmp302) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labs0exp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 17020(line=732, offs=3) -- 17153(line=736, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marg (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp307) ;
// ATSlocal_void (tmp308) ;
// ATSlocal_void (tmp309) ;
ATSlocal (ats_ptr_type, tmp310) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marg:
/* tmp308 = */ atspre_fprint_string (arg0, ATSstrcst("{")) ;
tmp310 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_30, arg1), atslab_q0marg_arg) ;
/* tmp309 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0qualst (arg0, tmp310) ;
/* tmp307 = */ atspre_fprint_string (arg0, ATSstrcst("}")) ;
return /* (tmp307) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marg] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 17210(line=740, offs=3) -- 17264(line=740, offs=57)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marglst (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp311) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marglst:
/* tmp311 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst(""), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marg) ;
return /* (tmp311) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_q0marglst] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 17338(line=746, offs=13) -- 20297(line=871, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp312) ;
ATSlocal (ats_ptr_type, tmp313) ;
ATSlocal (ats_ptr_type, tmp314) ;
// ATSlocal_void (tmp315) ;
// ATSlocal_void (tmp316) ;
ATSlocal (ats_ptr_type, tmp317) ;
// ATSlocal_void (tmp318) ;
// ATSlocal_void (tmp319) ;
ATSlocal (ats_ptr_type, tmp320) ;
ATSlocal (ats_ptr_type, tmp321) ;
// ATSlocal_void (tmp322) ;
// ATSlocal_void (tmp323) ;
// ATSlocal_void (tmp324) ;
ATSlocal (ats_ptr_type, tmp325) ;
// ATSlocal_void (tmp326) ;
// ATSlocal_void (tmp327) ;
ATSlocal (ats_ptr_type, tmp328) ;
// ATSlocal_void (tmp329) ;
// ATSlocal_void (tmp330) ;
ATSlocal (ats_ptr_type, tmp331) ;
// ATSlocal_void (tmp332) ;
// ATSlocal_void (tmp333) ;
ATSlocal (ats_ptr_type, tmp334) ;
// ATSlocal_void (tmp335) ;
// ATSlocal_void (tmp336) ;
ATSlocal (ats_ptr_type, tmp337) ;
// ATSlocal_void (tmp338) ;
// ATSlocal_void (tmp339) ;
// ATSlocal_void (tmp340) ;
ATSlocal (ats_int_type, tmp341) ;
ATSlocal (ats_ptr_type, tmp342) ;
// ATSlocal_void (tmp343) ;
// ATSlocal_void (tmp344) ;
// ATSlocal_void (tmp345) ;
// ATSlocal_void (tmp346) ;
ATSlocal (ats_int_type, tmp347) ;
ATSlocal (ats_ptr_type, tmp348) ;
// ATSlocal_void (tmp349) ;
// ATSlocal_void (tmp350) ;
// ATSlocal_void (tmp351) ;
// ATSlocal_void (tmp352) ;
ATSlocal (ats_int_type, tmp353) ;
ATSlocal (ats_int_type, tmp354) ;
ATSlocal (ats_ptr_type, tmp355) ;
// ATSlocal_void (tmp356) ;
// ATSlocal_void (tmp357) ;
// ATSlocal_void (tmp358) ;
// ATSlocal_void (tmp359) ;
// ATSlocal_void (tmp360) ;
// ATSlocal_void (tmp361) ;
ATSlocal (ats_int_type, tmp362) ;
ATSlocal (ats_int_type, tmp363) ;
ATSlocal (ats_ptr_type, tmp364) ;
// ATSlocal_void (tmp365) ;
// ATSlocal_void (tmp366) ;
// ATSlocal_void (tmp367) ;
// ATSlocal_void (tmp368) ;
// ATSlocal_void (tmp369) ;
// ATSlocal_void (tmp370) ;
ATSlocal (ats_ptr_type, tmp371) ;
// ATSlocal_void (tmp372) ;
// ATSlocal_void (tmp373) ;
ATSlocal (ats_ptr_type, tmp374) ;
// ATSlocal_void (tmp375) ;
// ATSlocal_void (tmp376) ;
// ATSlocal_void (tmp377) ;
// ATSlocal_void (tmp378) ;
// ATSlocal_void (tmp379) ;
// ATSlocal_void (tmp380) ;
ATSlocal (ats_ptr_type, tmp381) ;
ATSlocal (ats_ptr_type, tmp382) ;
// ATSlocal_void (tmp383) ;
// ATSlocal_void (tmp384) ;
// ATSlocal_void (tmp385) ;
// ATSlocal_void (tmp386) ;
ATSlocal (ats_ptr_type, tmp387) ;
ATSlocal (ats_ptr_type, tmp388) ;
// ATSlocal_void (tmp389) ;
// ATSlocal_void (tmp390) ;
// ATSlocal_void (tmp391) ;
// ATSlocal_void (tmp392) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at:
tmp313 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_31, arg1), atslab_p0at_node) ;
do {
/* branch: __ats_lab_79 */
__ats_lab_79_0:
if (((ats_sum_ptr_type)tmp313)->tag != 0) { goto __ats_lab_80_0 ; }
__ats_lab_79_1:
tmp314 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp315 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tide(")) ;
/* tmp316 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp314) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_80 */
__ats_lab_80_0:
if (((ats_sum_ptr_type)tmp313)->tag != 2) { goto __ats_lab_81_0 ; }
__ats_lab_80_1:
tmp317 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp318 = */ atspre_fprint_string (arg0, ATSstrcst("P0Topid(")) ;
/* tmp319 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp317) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_81 */
__ats_lab_81_0:
if (((ats_sum_ptr_type)tmp313)->tag != 1) { goto __ats_lab_82_0 ; }
__ats_lab_81_1:
tmp320 = ats_caselptrlab_mac(anairiats_sum_13, tmp313, atslab_0) ;
tmp321 = ats_caselptrlab_mac(anairiats_sum_13, tmp313, atslab_1) ;
/* tmp322 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tdqid(")) ;
/* tmp323 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (arg0, tmp320) ;
/* tmp324 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp321) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_82 */
__ats_lab_82_0:
if (((ats_sum_ptr_type)tmp313)->tag != 3) { goto __ats_lab_83_0 ; }
__ats_lab_82_1:
tmp325 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp326 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tint(")) ;
/* tmp327 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt (arg0, tmp325) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_83 */
__ats_lab_83_0:
if (((ats_sum_ptr_type)tmp313)->tag != 4) { goto __ats_lab_84_0 ; }
__ats_lab_83_1:
tmp328 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp329 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tchar(")) ;
/* tmp330 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har (arg0, tmp328) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_84 */
__ats_lab_84_0:
if (((ats_sum_ptr_type)tmp313)->tag != 5) { goto __ats_lab_85_0 ; }
__ats_lab_84_1:
tmp331 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp332 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tfloat(")) ;
/* tmp333 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat (arg0, tmp331) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_85 */
__ats_lab_85_0:
if (((ats_sum_ptr_type)tmp313)->tag != 6) { goto __ats_lab_86_0 ; }
__ats_lab_85_1:
tmp334 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp335 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tstring(")) ;
/* tmp336 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring (arg0, tmp334) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_86 */
__ats_lab_86_0:
if (((ats_sum_ptr_type)tmp313)->tag != 7) { goto __ats_lab_87_0 ; }
__ats_lab_86_1:
tmp337 = ats_caselptrlab_mac(anairiats_sum_13, tmp313, atslab_0) ;
/* tmp338 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tapp(")) ;
/* tmp339 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp337) ;
/* tmp340 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_87 */
__ats_lab_87_0:
if (((ats_sum_ptr_type)tmp313)->tag != 8) { goto __ats_lab_88_0 ; }
__ats_lab_87_1:
tmp341 = ats_caselptrlab_mac(anairiats_sum_28, tmp313, atslab_0) ;
tmp342 = ats_caselptrlab_mac(anairiats_sum_28, tmp313, atslab_1) ;
/* tmp343 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tlist(")) ;
/* tmp344 = */ atspre_fprint_int (arg0, tmp341) ;
/* tmp345 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp346 = */ fprintlst_01696_ats_ptr_type (arg0, tmp342, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_88 */
__ats_lab_88_0:
if (((ats_sum_ptr_type)tmp313)->tag != 9) { goto __ats_lab_89_0 ; }
__ats_lab_88_1:
tmp347 = ats_caselptrlab_mac(anairiats_sum_28, tmp313, atslab_0) ;
tmp348 = ats_caselptrlab_mac(anairiats_sum_28, tmp313, atslab_1) ;
/* tmp349 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tlst(")) ;
/* tmp350 = */ atspre_fprint_int (arg0, tmp347) ;
/* tmp351 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp352 = */ fprintlst_01696_ats_ptr_type (arg0, tmp348, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_89 */
__ats_lab_89_0:
if (((ats_sum_ptr_type)tmp313)->tag != 11) { goto __ats_lab_90_0 ; }
__ats_lab_89_1:
tmp353 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_0) ;
tmp354 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_1) ;
tmp355 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_2) ;
/* tmp356 = */ atspre_fprint_string (arg0, ATSstrcst("P0Trec(")) ;
/* tmp357 = */ atspre_fprint_int (arg0, tmp353) ;
/* tmp358 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp359 = */ atspre_fprint_int (arg0, tmp354) ;
/* tmp360 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp361 = */ fprintlst_01696_ats_ptr_type (arg0, tmp355, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labp0at) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_90 */
__ats_lab_90_0:
if (((ats_sum_ptr_type)tmp313)->tag != 10) { goto __ats_lab_91_0 ; }
__ats_lab_90_1:
tmp362 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_0) ;
tmp363 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_1) ;
tmp364 = ats_caselptrlab_mac(anairiats_sum_26, tmp313, atslab_2) ;
/* tmp365 = */ atspre_fprint_string (arg0, ATSstrcst("P0Ttup(")) ;
/* tmp366 = */ atspre_fprint_int (arg0, tmp362) ;
/* tmp367 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp368 = */ atspre_fprint_int (arg0, tmp363) ;
/* tmp369 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp370 = */ fprintlst_01696_ats_ptr_type (arg0, tmp364, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_91 */
__ats_lab_91_0:
if (((ats_sum_ptr_type)tmp313)->tag != 12) { goto __ats_lab_92_0 ; }
__ats_lab_91_1:
tmp371 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp372 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tfree(")) ;
/* tmp373 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp371) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_92 */
__ats_lab_92_0:
if (((ats_sum_ptr_type)tmp313)->tag != 13) { goto __ats_lab_93_0 ; }
__ats_lab_92_1:
tmp374 = ats_caselptrlab_mac(anairiats_sum_3, tmp313, atslab_0) ;
/* tmp375 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tunfold(")) ;
/* tmp376 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp374) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_93 */
__ats_lab_93_0:
if (((ats_sum_ptr_type)tmp313)->tag != 14) { goto __ats_lab_94_0 ; }
__ats_lab_93_1:
/* tmp377 = */ atspre_fprint_string (arg0, ATSstrcst("P0Texist(")) ;
/* tmp378 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_94 */
__ats_lab_94_0:
if (((ats_sum_ptr_type)tmp313)->tag != 15) { goto __ats_lab_95_0 ; }
__ats_lab_94_1:
/* tmp379 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tsvararg(")) ;
/* tmp380 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_95 */
__ats_lab_95_0:
if (((ats_sum_ptr_type)tmp313)->tag != 16) { goto __ats_lab_96_0 ; }
__ats_lab_95_1:
tmp381 = ats_caselptrlab_mac(anairiats_sum_15, tmp313, atslab_0) ;
tmp382 = ats_caselptrlab_mac(anairiats_sum_15, tmp313, atslab_2) ;
/* tmp383 = */ atspre_fprint_string (arg0, ATSstrcst("P0Trefas(")) ;
/* tmp384 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp381) ;
/* tmp385 = */ atspre_fprint_string (arg0, ATSstrcst(", ")) ;
/* tmp386 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp382) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_96 */
__ats_lab_96_0:
if (((ats_sum_ptr_type)tmp313)->tag != 17) { goto __ats_lab_97_0 ; }
__ats_lab_96_1:
tmp387 = ats_caselptrlab_mac(anairiats_sum_13, tmp313, atslab_0) ;
tmp388 = ats_caselptrlab_mac(anairiats_sum_13, tmp313, atslab_1) ;
/* tmp389 = */ atspre_fprint_string (arg0, ATSstrcst("P0Tann(")) ;
/* tmp390 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp387) ;
/* tmp391 = */ atspre_fprint_string (arg0, ATSstrcst(": ")) ;
/* tmp392 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp388) ;
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_97 */
__ats_lab_97_0:
// if (((ats_sum_ptr_type)tmp313)->tag != 18) { ats_deadcode_failure_handle () ; }
__ats_lab_97_1:
/* tmp312 = */ atspre_fprint_string (arg0, ATSstrcst("P0Terr()")) ;
break ;
} while (0) ;
return /* (tmp312) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 20369(line=876, offs=16) -- 20629(line=883, offs=49)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labp0at (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp393) ;
ATSlocal (ats_ptr_type, tmp394) ;
ATSlocal (ats_ptr_type, tmp395) ;
ATSlocal (ats_ptr_type, tmp396) ;
// ATSlocal_void (tmp397) ;
// ATSlocal_void (tmp398) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labp0at:
tmp394 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_32, arg1), atslab_labp0at_node) ;
do {
/* branch: __ats_lab_98 */
__ats_lab_98_0:
if (tmp394 == (ats_sum_ptr_type)0) { goto __ats_lab_99_0 ; }
__ats_lab_98_1:
tmp395 = ats_caselptrlab_mac(anairiats_sum_14, tmp394, atslab_0) ;
tmp396 = ats_caselptrlab_mac(anairiats_sum_14, tmp394, atslab_1) ;
/* tmp397 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab (arg0, tmp395) ;
/* tmp398 = */ atspre_fprint_string (arg0, ATSstrcst("= ")) ;
/* tmp393 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_p0at (arg0, tmp396) ;
break ;

/* branch: __ats_lab_99 */
__ats_lab_99_0:
// if (tmp394 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_99_1:
/* tmp393 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
break ;
} while (0) ;
return /* (tmp393) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labp0at] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 20702(line=889, offs=14) -- 27632(line=1214, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp399) ;
ATSlocal (ats_ptr_type, tmp400) ;
ATSlocal (ats_ptr_type, tmp401) ;
// ATSlocal_void (tmp402) ;
// ATSlocal_void (tmp403) ;
ATSlocal (ats_ptr_type, tmp404) ;
// ATSlocal_void (tmp405) ;
// ATSlocal_void (tmp406) ;
ATSlocal (ats_ptr_type, tmp407) ;
ATSlocal (ats_ptr_type, tmp408) ;
// ATSlocal_void (tmp409) ;
// ATSlocal_void (tmp410) ;
// ATSlocal_void (tmp411) ;
// ATSlocal_void (tmp412) ;
ATSlocal (ats_ptr_type, tmp413) ;
// ATSlocal_void (tmp414) ;
// ATSlocal_void (tmp415) ;
ATSlocal (ats_ptr_type, tmp416) ;
// ATSlocal_void (tmp417) ;
// ATSlocal_void (tmp418) ;
ATSlocal (ats_ptr_type, tmp419) ;
// ATSlocal_void (tmp420) ;
// ATSlocal_void (tmp421) ;
ATSlocal (ats_ptr_type, tmp422) ;
// ATSlocal_void (tmp423) ;
// ATSlocal_void (tmp424) ;
ATSlocal (ats_ptr_type, tmp425) ;
// ATSlocal_void (tmp426) ;
// ATSlocal_void (tmp427) ;
ATSlocal (ats_ptr_type, tmp428) ;
// ATSlocal_void (tmp429) ;
// ATSlocal_void (tmp430) ;
ATSlocal (ats_ptr_type, tmp431) ;
// ATSlocal_void (tmp432) ;
// ATSlocal_void (tmp433) ;
ATSlocal (ats_ptr_type, tmp434) ;
// ATSlocal_void (tmp435) ;
// ATSlocal_void (tmp436) ;
ATSlocal (ats_ptr_type, tmp437) ;
ATSlocal (ats_ptr_type, tmp438) ;
// ATSlocal_void (tmp439) ;
// ATSlocal_void (tmp440) ;
// ATSlocal_void (tmp441) ;
// ATSlocal_void (tmp442) ;
ATSlocal (ats_int_type, tmp443) ;
ATSlocal (ats_ptr_type, tmp444) ;
// ATSlocal_void (tmp445) ;
// ATSlocal_void (tmp446) ;
// ATSlocal_void (tmp447) ;
// ATSlocal_void (tmp448) ;
ATSlocal (ats_ptr_type, tmp449) ;
ATSlocal (ats_ptr_type, tmp450) ;
ATSlocal (ats_ptr_type, tmp451) ;
// ATSlocal_void (tmp452) ;
// ATSlocal_void (tmp453) ;
// ATSlocal_void (tmp454) ;
// ATSlocal_void (tmp455) ;
// ATSlocal_void (tmp456) ;
// ATSlocal_void (tmp457) ;
ATSlocal (ats_ptr_type, tmp458) ;
ATSlocal (ats_ptr_type, tmp459) ;
ATSlocal (ats_ptr_type, tmp460) ;
// ATSlocal_void (tmp461) ;
// ATSlocal_void (tmp462) ;
// ATSlocal_void (tmp463) ;
// ATSlocal_void (tmp464) ;
// ATSlocal_void (tmp465) ;
// ATSlocal_void (tmp466) ;
// ATSlocal_void (tmp467) ;
// ATSlocal_void (tmp468) ;
// ATSlocal_void (tmp469) ;
// ATSlocal_void (tmp470) ;
// ATSlocal_void (tmp471) ;
// ATSlocal_void (tmp472) ;
ATSlocal (ats_int_type, tmp473) ;
ATSlocal (ats_ptr_type, tmp474) ;
ATSlocal (ats_ptr_type, tmp475) ;
// ATSlocal_void (tmp476) ;
// ATSlocal_void (tmp477) ;
// ATSlocal_void (tmp478) ;
// ATSlocal_void (tmp479) ;
// ATSlocal_void (tmp480) ;
// ATSlocal_void (tmp481) ;
ATSlocal (ats_int_type, tmp482) ;
ATSlocal (ats_int_type, tmp483) ;
ATSlocal (ats_ptr_type, tmp484) ;
// ATSlocal_void (tmp485) ;
// ATSlocal_void (tmp486) ;
// ATSlocal_void (tmp487) ;
// ATSlocal_void (tmp488) ;
// ATSlocal_void (tmp489) ;
// ATSlocal_void (tmp490) ;
ATSlocal (ats_int_type, tmp491) ;
ATSlocal (ats_int_type, tmp492) ;
ATSlocal (ats_ptr_type, tmp493) ;
// ATSlocal_void (tmp494) ;
// ATSlocal_void (tmp495) ;
// ATSlocal_void (tmp496) ;
// ATSlocal_void (tmp497) ;
// ATSlocal_void (tmp498) ;
// ATSlocal_void (tmp499) ;
ATSlocal (ats_ptr_type, tmp500) ;
// ATSlocal_void (tmp501) ;
// ATSlocal_void (tmp502) ;
// ATSlocal_void (tmp503) ;
// ATSlocal_void (tmp504) ;
// ATSlocal_void (tmp505) ;
// ATSlocal_void (tmp506) ;
// ATSlocal_void (tmp507) ;
// ATSlocal_void (tmp508) ;
ATSlocal (ats_int_type, tmp509) ;
ATSlocal (ats_ptr_type, tmp510) ;
// ATSlocal_void (tmp511) ;
// ATSlocal_void (tmp512) ;
// ATSlocal_void (tmp513) ;
// ATSlocal_void (tmp514) ;
ATSlocal (ats_int_type, tmp515) ;
// ATSlocal_void (tmp516) ;
// ATSlocal_void (tmp517) ;
// ATSlocal_void (tmp518) ;
// ATSlocal_void (tmp519) ;
ATSlocal (ats_ptr_type, tmp520) ;
// ATSlocal_void (tmp521) ;
// ATSlocal_void (tmp522) ;
ATSlocal (ats_ptr_type, tmp523) ;
// ATSlocal_void (tmp524) ;
// ATSlocal_void (tmp525) ;
ATSlocal (ats_int_type, tmp526) ;
ATSlocal (ats_ptr_type, tmp527) ;
// ATSlocal_void (tmp528) ;
// ATSlocal_void (tmp529) ;
// ATSlocal_void (tmp530) ;
// ATSlocal_void (tmp531) ;
ATSlocal (ats_ptr_type, tmp532) ;
// ATSlocal_void (tmp533) ;
// ATSlocal_void (tmp534) ;
ATSlocal (ats_ptr_type, tmp535) ;
// ATSlocal_void (tmp536) ;
// ATSlocal_void (tmp537) ;
ATSlocal (ats_ptr_type, tmp538) ;
// ATSlocal_void (tmp539) ;
// ATSlocal_void (tmp540) ;
ATSlocal (ats_ptr_type, tmp541) ;
ATSlocal (ats_ptr_type, tmp542) ;
// ATSlocal_void (tmp543) ;
// ATSlocal_void (tmp544) ;
// ATSlocal_void (tmp545) ;
// ATSlocal_void (tmp546) ;
// ATSlocal_void (tmp547) ;
// ATSlocal_void (tmp548) ;
// ATSlocal_void (tmp549) ;
// ATSlocal_void (tmp550) ;
ATSlocal (ats_int_type, tmp551) ;
ATSlocal (ats_ptr_type, tmp552) ;
// ATSlocal_void (tmp553) ;
// ATSlocal_void (tmp554) ;
// ATSlocal_void (tmp555) ;
// ATSlocal_void (tmp556) ;
// ATSlocal_void (tmp557) ;
// ATSlocal_void (tmp558) ;
// ATSlocal_void (tmp559) ;
// ATSlocal_void (tmp560) ;
ATSlocal (ats_int_type, tmp561) ;
// ATSlocal_void (tmp562) ;
// ATSlocal_void (tmp563) ;
// ATSlocal_void (tmp564) ;
// ATSlocal_void (tmp565) ;
ATSlocal (ats_ptr_type, tmp566) ;
// ATSlocal_void (tmp567) ;
// ATSlocal_void (tmp568) ;
ATSlocal (ats_ptr_type, tmp569) ;
// ATSlocal_void (tmp570) ;
// ATSlocal_void (tmp571) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp:
tmp400 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_33, arg1), atslab_d0exp_node) ;
do {
/* branch: __ats_lab_100 */
__ats_lab_100_0:
if (((ats_sum_ptr_type)tmp400)->tag != 0) { goto __ats_lab_101_0 ; }
__ats_lab_100_1:
tmp401 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp402 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eide(")) ;
/* tmp403 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp401) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_101 */
__ats_lab_101_0:
if (((ats_sum_ptr_type)tmp400)->tag != 2) { goto __ats_lab_102_0 ; }
__ats_lab_101_1:
tmp404 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp405 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eopid(")) ;
/* tmp406 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp404) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_102 */
__ats_lab_102_0:
if (((ats_sum_ptr_type)tmp400)->tag != 1) { goto __ats_lab_103_0 ; }
__ats_lab_102_1:
tmp407 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_0) ;
tmp408 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_1) ;
/* tmp409 = */ atspre_fprint_string (arg0, ATSstrcst("D0Edqid(")) ;
/* tmp410 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ynq (arg0, tmp407) ;
/* tmp411 = */ atspre_fprint_string (arg0, ATSstrcst(", ")) ;
/* tmp412 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp408) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_103 */
__ats_lab_103_0:
if (((ats_sum_ptr_type)tmp400)->tag != 3) { goto __ats_lab_104_0 ; }
__ats_lab_103_1:
tmp413 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp414 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eidext(")) ;
/* tmp415 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp413) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_104 */
__ats_lab_104_0:
if (((ats_sum_ptr_type)tmp400)->tag != 4) { goto __ats_lab_105_0 ; }
__ats_lab_104_1:
tmp416 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp417 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eint(")) ;
/* tmp418 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0nt (arg0, tmp416) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_105 */
__ats_lab_105_0:
if (((ats_sum_ptr_type)tmp400)->tag != 5) { goto __ats_lab_106_0 ; }
__ats_lab_105_1:
tmp419 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp420 = */ atspre_fprint_string (arg0, ATSstrcst("D0Echar(")) ;
/* tmp421 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_c0har (arg0, tmp419) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_106 */
__ats_lab_106_0:
if (((ats_sum_ptr_type)tmp400)->tag != 6) { goto __ats_lab_107_0 ; }
__ats_lab_106_1:
tmp422 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp423 = */ atspre_fprint_string (arg0, ATSstrcst("D0Efloat(")) ;
/* tmp424 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0loat (arg0, tmp422) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_107 */
__ats_lab_107_0:
if (((ats_sum_ptr_type)tmp400)->tag != 7) { goto __ats_lab_108_0 ; }
__ats_lab_107_1:
tmp425 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp426 = */ atspre_fprint_string (arg0, ATSstrcst("D0Estring(")) ;
/* tmp427 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0tring (arg0, tmp425) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_108 */
__ats_lab_108_0:
if (((ats_sum_ptr_type)tmp400)->tag != 8) { goto __ats_lab_109_0 ; }
__ats_lab_108_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eempty()")) ;
break ;

/* branch: __ats_lab_109 */
__ats_lab_109_0:
if (((ats_sum_ptr_type)tmp400)->tag != 9) { goto __ats_lab_110_0 ; }
__ats_lab_109_1:
tmp428 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp429 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ecstsp(")) ;
/* tmp430 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_cstsp (arg0, tmp428) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_110 */
__ats_lab_110_0:
if (((ats_sum_ptr_type)tmp400)->tag != 10) { goto __ats_lab_111_0 ; }
__ats_lab_110_1:
tmp431 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp432 = */ atspre_fprint_string (arg0, ATSstrcst("D0Etyrep(")) ;
/* tmp433 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp431) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_111 */
__ats_lab_111_0:
if (((ats_sum_ptr_type)tmp400)->tag != 11) { goto __ats_lab_112_0 ; }
__ats_lab_111_1:
tmp434 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp435 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eliteral(")) ;
/* tmp436 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp434) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_112 */
__ats_lab_112_0:
if (((ats_sum_ptr_type)tmp400)->tag != 18) { goto __ats_lab_113_0 ; }
__ats_lab_112_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Elet(...)")) ;
break ;

/* branch: __ats_lab_113 */
__ats_lab_113_0:
if (((ats_sum_ptr_type)tmp400)->tag != 20) { goto __ats_lab_114_0 ; }
__ats_lab_113_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ewhere(...)")) ;
break ;

/* branch: __ats_lab_114 */
__ats_lab_114_0:
if (((ats_sum_ptr_type)tmp400)->tag != 19) { goto __ats_lab_115_0 ; }
__ats_lab_114_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Edeclseq(...)")) ;
break ;

/* branch: __ats_lab_115 */
__ats_lab_115_0:
if (((ats_sum_ptr_type)tmp400)->tag != 21) { goto __ats_lab_116_0 ; }
__ats_lab_115_1:
tmp437 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_0) ;
tmp438 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_1) ;
/* tmp439 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eapp(")) ;
/* tmp440 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp437) ;
/* tmp441 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp442 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp438) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_116 */
__ats_lab_116_0:
if (((ats_sum_ptr_type)tmp400)->tag != 22) { goto __ats_lab_117_0 ; }
__ats_lab_116_1:
tmp443 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_0) ;
tmp444 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_1) ;
/* tmp445 = */ atspre_fprint_string (arg0, ATSstrcst("D0Elist(")) ;
/* tmp446 = */ atspre_fprint_int (arg0, tmp443) ;
/* tmp447 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp448 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst (arg0, tmp444) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_117 */
__ats_lab_117_0:
if (((ats_sum_ptr_type)tmp400)->tag != 23) { goto __ats_lab_118_0 ; }
__ats_lab_117_1:
tmp449 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_1) ;
tmp450 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_2) ;
tmp451 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_3) ;
/* tmp452 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eifhead(")) ;
/* tmp453 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp449) ;
/* tmp454 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp455 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp450) ;
/* tmp456 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp457 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0expopt (arg0, tmp451) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_118 */
__ats_lab_118_0:
if (((ats_sum_ptr_type)tmp400)->tag != 24) { goto __ats_lab_119_0 ; }
__ats_lab_118_1:
tmp458 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_1) ;
tmp459 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_2) ;
tmp460 = ats_caselptrlab_mac(anairiats_sum_23, tmp400, atslab_3) ;
/* tmp461 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esifhead(")) ;
/* tmp462 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp458) ;
/* tmp463 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp464 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp459) ;
/* tmp465 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp466 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp460) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_119 */
__ats_lab_119_0:
if (((ats_sum_ptr_type)tmp400)->tag != 25) { goto __ats_lab_120_0 ; }
__ats_lab_119_1:
/* tmp467 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eifcasehd(")) ;
/* tmp468 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_120 */
__ats_lab_120_0:
if (((ats_sum_ptr_type)tmp400)->tag != 26) { goto __ats_lab_121_0 ; }
__ats_lab_120_1:
/* tmp469 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ecasehead(")) ;
/* tmp470 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_121 */
__ats_lab_121_0:
if (((ats_sum_ptr_type)tmp400)->tag != 27) { goto __ats_lab_122_0 ; }
__ats_lab_121_1:
/* tmp471 = */ atspre_fprint_string (arg0, ATSstrcst("D0Escasehead(")) ;
/* tmp472 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_122 */
__ats_lab_122_0:
if (((ats_sum_ptr_type)tmp400)->tag != 28) { goto __ats_lab_123_0 ; }
__ats_lab_122_1:
tmp473 = ats_caselptrlab_mac(anairiats_sum_34, tmp400, atslab_0) ;
tmp474 = ats_caselptrlab_mac(anairiats_sum_34, tmp400, atslab_1) ;
tmp475 = ats_caselptrlab_mac(anairiats_sum_34, tmp400, atslab_2) ;
/* tmp476 = */ atspre_fprint_string (arg0, ATSstrcst("D0Elst(")) ;
/* tmp477 = */ atspre_fprint_int (arg0, tmp473) ;
/* tmp478 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp479 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt (arg0, tmp474) ;
/* tmp480 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp481 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp475) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_123 */
__ats_lab_123_0:
if (((ats_sum_ptr_type)tmp400)->tag != 29) { goto __ats_lab_124_0 ; }
__ats_lab_123_1:
tmp482 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_0) ;
tmp483 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_1) ;
tmp484 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_2) ;
/* tmp485 = */ atspre_fprint_string (arg0, ATSstrcst("D0Etup(")) ;
/* tmp486 = */ atspre_fprint_int (arg0, tmp482) ;
/* tmp487 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp488 = */ atspre_fprint_int (arg0, tmp483) ;
/* tmp489 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp490 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst (arg0, tmp484) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_124 */
__ats_lab_124_0:
if (((ats_sum_ptr_type)tmp400)->tag != 30) { goto __ats_lab_125_0 ; }
__ats_lab_124_1:
tmp491 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_0) ;
tmp492 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_1) ;
tmp493 = ats_caselptrlab_mac(anairiats_sum_26, tmp400, atslab_2) ;
/* tmp494 = */ atspre_fprint_string (arg0, ATSstrcst("D0Erec(")) ;
/* tmp495 = */ atspre_fprint_int (arg0, tmp491) ;
/* tmp496 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp497 = */ atspre_fprint_int (arg0, tmp492) ;
/* tmp498 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp499 = */ fprintlst_01696_ats_ptr_type (arg0, tmp493, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labd0exp) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_125 */
__ats_lab_125_0:
if (((ats_sum_ptr_type)tmp400)->tag != 31) { goto __ats_lab_126_0 ; }
__ats_lab_125_1:
tmp500 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp501 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eseq(")) ;
/* tmp502 = */ fprintlst_01696_ats_ptr_type (arg0, tmp500, ATSstrcst("; "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_126 */
__ats_lab_126_0:
if (((ats_sum_ptr_type)tmp400)->tag != 32) { goto __ats_lab_127_0 ; }
__ats_lab_126_1:
/* tmp503 = */ atspre_fprint_string (arg0, ATSstrcst("D0Earrsub(")) ;
/* tmp504 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_127 */
__ats_lab_127_0:
if (((ats_sum_ptr_type)tmp400)->tag != 33) { goto __ats_lab_128_0 ; }
__ats_lab_127_1:
/* tmp505 = */ atspre_fprint_string (arg0, ATSstrcst("D0Earrpsz(")) ;
/* tmp506 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_128 */
__ats_lab_128_0:
if (((ats_sum_ptr_type)tmp400)->tag != 34) { goto __ats_lab_129_0 ; }
__ats_lab_128_1:
/* tmp507 = */ atspre_fprint_string (arg0, ATSstrcst("D0Earrinit(")) ;
/* tmp508 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_129 */
__ats_lab_129_0:
if (((ats_sum_ptr_type)tmp400)->tag != 35) { goto __ats_lab_130_0 ; }
__ats_lab_129_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eptrof()")) ;
break ;

/* branch: __ats_lab_130 */
__ats_lab_130_0:
if (((ats_sum_ptr_type)tmp400)->tag != 36) { goto __ats_lab_131_0 ; }
__ats_lab_130_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eviewat()")) ;
break ;

/* branch: __ats_lab_131 */
__ats_lab_131_0:
if (((ats_sum_ptr_type)tmp400)->tag != 37) { goto __ats_lab_132_0 ; }
__ats_lab_131_1:
tmp509 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_0) ;
tmp510 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_1) ;
/* tmp511 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esel_lab(")) ;
/* tmp512 = */ atspre_fprint_int (arg0, tmp509) ;
/* tmp513 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp514 = */ _2tmp_2ATS_2dPostiats_2src_2pats_label_2esats__fprint_label (arg0, tmp510) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_132 */
__ats_lab_132_0:
if (((ats_sum_ptr_type)tmp400)->tag != 38) { goto __ats_lab_133_0 ; }
__ats_lab_132_1:
tmp515 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_0) ;
/* tmp516 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esel_int(")) ;
/* tmp517 = */ atspre_fprint_int (arg0, tmp515) ;
/* tmp518 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp519 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_133 */
__ats_lab_133_0:
if (((ats_sum_ptr_type)tmp400)->tag != 39) { goto __ats_lab_134_0 ; }
__ats_lab_133_1:
tmp520 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp521 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eraise(")) ;
/* tmp522 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp520) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_134 */
__ats_lab_134_0:
if (((ats_sum_ptr_type)tmp400)->tag != 40) { goto __ats_lab_135_0 ; }
__ats_lab_134_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eeffmask(...)")) ;
break ;

/* branch: __ats_lab_135 */
__ats_lab_135_0:
if (((ats_sum_ptr_type)tmp400)->tag != 41) { goto __ats_lab_136_0 ; }
__ats_lab_135_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eeffmask_arg(...)")) ;
break ;

/* branch: __ats_lab_136 */
__ats_lab_136_0:
if (((ats_sum_ptr_type)tmp400)->tag != 42) { goto __ats_lab_137_0 ; }
__ats_lab_136_1:
tmp523 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp524 = */ atspre_fprint_string (arg0, ATSstrcst("D0Evararg(")) ;
/* tmp525 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst (arg0, tmp523) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_137 */
__ats_lab_137_0:
if (((ats_sum_ptr_type)tmp400)->tag != 43) { goto __ats_lab_138_0 ; }
__ats_lab_137_1:
tmp526 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_0) ;
tmp527 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_1) ;
/* tmp528 = */ atspre_fprint_string (arg0, ATSstrcst("D0Evcopyenv(")) ;
/* tmp529 = */ atspre_fprint_int (arg0, tmp526) ;
/* tmp530 = */ atspre_fprint_string (arg0, ATSstrcst(", ")) ;
/* tmp531 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp527) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_138 */
__ats_lab_138_0:
if (((ats_sum_ptr_type)tmp400)->tag != 44) { goto __ats_lab_139_0 ; }
__ats_lab_138_1:
tmp532 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp533 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eshowtype(")) ;
/* tmp534 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp532) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_139 */
__ats_lab_139_0:
if (((ats_sum_ptr_type)tmp400)->tag != 45) { goto __ats_lab_140_0 ; }
__ats_lab_139_1:
tmp535 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp536 = */ atspre_fprint_string (arg0, ATSstrcst("D0Etempenver(")) ;
/* tmp537 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp535) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_140 */
__ats_lab_140_0:
if (((ats_sum_ptr_type)tmp400)->tag != 46) { goto __ats_lab_141_0 ; }
__ats_lab_140_1:
tmp538 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp539 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esexparg(")) ;
/* tmp540 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exparg (arg0, tmp538) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_141 */
__ats_lab_141_0:
if (((ats_sum_ptr_type)tmp400)->tag != 48) { goto __ats_lab_142_0 ; }
__ats_lab_141_1:
tmp541 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_0) ;
tmp542 = ats_caselptrlab_mac(anairiats_sum_13, tmp400, atslab_1) ;
/* tmp543 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eann(")) ;
/* tmp544 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp541) ;
/* tmp545 = */ atspre_fprint_string (arg0, ATSstrcst(": ")) ;
/* tmp546 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp542) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_142 */
__ats_lab_142_0:
if (((ats_sum_ptr_type)tmp400)->tag != 49) { goto __ats_lab_143_0 ; }
__ats_lab_142_1:
/* tmp547 = */ atspre_fprint_string (arg0, ATSstrcst("D0Elam(")) ;
/* tmp548 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_143 */
__ats_lab_143_0:
if (((ats_sum_ptr_type)tmp400)->tag != 50) { goto __ats_lab_144_0 ; }
__ats_lab_143_1:
/* tmp549 = */ atspre_fprint_string (arg0, ATSstrcst("D0Efix(")) ;
/* tmp550 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_144 */
__ats_lab_144_0:
if (((ats_sum_ptr_type)tmp400)->tag != 51) { goto __ats_lab_145_0 ; }
__ats_lab_144_1:
tmp551 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_0) ;
tmp552 = ats_caselptrlab_mac(anairiats_sum_28, tmp400, atslab_1) ;
/* tmp553 = */ atspre_fprint_string (arg0, ATSstrcst("D0Edelay(")) ;
/* tmp554 = */ atspre_fprint_int (arg0, tmp551) ;
/* tmp555 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp556 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp552) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_145 */
__ats_lab_145_0:
if (((ats_sum_ptr_type)tmp400)->tag != 52) { goto __ats_lab_146_0 ; }
__ats_lab_145_1:
/* tmp557 = */ atspre_fprint_string (arg0, ATSstrcst("D0Efor(")) ;
/* tmp558 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_146 */
__ats_lab_146_0:
if (((ats_sum_ptr_type)tmp400)->tag != 53) { goto __ats_lab_147_0 ; }
__ats_lab_146_1:
/* tmp559 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ewhile(")) ;
/* tmp560 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_147 */
__ats_lab_147_0:
if (((ats_sum_ptr_type)tmp400)->tag != 54) { goto __ats_lab_148_0 ; }
__ats_lab_147_1:
tmp561 = ats_caselptrlab_mac(anairiats_sum_11, tmp400, atslab_0) ;
/* tmp562 = */ atspre_fprint_string (arg0, ATSstrcst("D0Eloopexn(")) ;
/* tmp563 = */ atspre_fprint_int (arg0, tmp561) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_148 */
__ats_lab_148_0:
if (((ats_sum_ptr_type)tmp400)->tag != 55) { goto __ats_lab_149_0 ; }
__ats_lab_148_1:
/* tmp564 = */ atspre_fprint_string (arg0, ATSstrcst("D0Etrywith(")) ;
/* tmp565 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_149 */
__ats_lab_149_0:
if (((ats_sum_ptr_type)tmp400)->tag != 57) { goto __ats_lab_150_0 ; }
__ats_lab_149_1:
tmp566 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp567 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esolassert(")) ;
/* tmp568 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp566) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_150 */
__ats_lab_150_0:
if (((ats_sum_ptr_type)tmp400)->tag != 58) { goto __ats_lab_151_0 ; }
__ats_lab_150_1:
tmp569 = ats_caselptrlab_mac(anairiats_sum_3, tmp400, atslab_0) ;
/* tmp570 = */ atspre_fprint_string (arg0, ATSstrcst("D0Esolverify(")) ;
/* tmp571 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp569) ;
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_151 */
__ats_lab_151_0:
__ats_lab_151_1:
/* tmp399 = */ atspre_fprint_string (arg0, ATSstrcst("D0E(...)")) ;
break ;
} while (0) ;
return /* (tmp399) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 27708(line=1220, offs=3) -- 27763(line=1220, offs=58)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp572) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst:
/* tmp572 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp) ;
return /* (tmp572) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0explst] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 27821(line=1225, offs=3) -- 27872(line=1225, offs=54)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0expopt (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp573) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0expopt:
/* tmp573 = */ fprintopt_01697_ats_ptr_type (arg0, arg1, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp) ;
return /* (tmp573) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0expopt] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 27951(line=1232, offs=3) -- 28107(line=1237, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labd0exp (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp574) ;
ATSlocal (ats_ptr_type, tmp575) ;
ATSlocal (ats_ptr_type, tmp576) ;
// ATSlocal_void (tmp577) ;
// ATSlocal_void (tmp578) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labd0exp:
// 
tmp575 = ats_caselptrlab_mac(anairiats_sum_14, arg1, atslab_0) ;
tmp576 = ats_caselptrlab_mac(anairiats_sum_14, arg1, atslab_1) ;
/* tmp577 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_l0ab (arg0, tmp575) ;
/* tmp578 = */ atspre_fprint_string (arg0, ATSstrcst("= ")) ;
/* tmp574 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp576) ;
return /* (tmp574) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_labd0exp] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 28162(line=1241, offs=5) -- 28511(line=1250, offs=2)
*/
ATSstaticdec()
ats_void_type
fprint_s0tacon_54 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp579) ;
// ATSlocal_void (tmp580) ;
ATSlocal (ats_ptr_type, tmp581) ;
// ATSlocal_void (tmp582) ;
// ATSlocal_void (tmp583) ;
ATSlocal (ats_ptr_type, tmp584) ;
// ATSlocal_void (tmp585) ;
// ATSlocal_void (tmp586) ;
ATSlocal (ats_ptr_type, tmp587) ;

__ats_lab_fprint_s0tacon_54:
tmp581 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_35, arg1), atslab_s0tacon_sym) ;
/* tmp580 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp581) ;
/* tmp582 = */ atspre_fprint_string (arg0, ATSstrcst("(")) ;
tmp584 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_35, arg1), atslab_s0tacon_arg) ;
/* tmp583 = */ fprintlst_01696_ats_ptr_type (arg0, tmp584, ATSstrcst(" "), &fprint_a0msrt_37) ;
/* tmp585 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
/* tmp586 = */ atspre_fprint_string (arg0, ATSstrcst(" = ")) ;
tmp587 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_35, arg1), atslab_s0tacon_def) ;
/* tmp579 = */ fprintopt_01697_ats_ptr_type (arg0, tmp587, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp) ;
return /* (tmp579) */ ;
} /* end of [fprint_s0tacon_54] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 28565(line=1254, offs=5) -- 28861(line=1262, offs=2)
*/
ATSstaticdec()
ats_void_type
fprint_s0tacst_55 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp588) ;
// ATSlocal_void (tmp589) ;
ATSlocal (ats_ptr_type, tmp590) ;
// ATSlocal_void (tmp591) ;
// ATSlocal_void (tmp592) ;
ATSlocal (ats_ptr_type, tmp593) ;
// ATSlocal_void (tmp594) ;
ATSlocal (ats_ptr_type, tmp595) ;

__ats_lab_fprint_s0tacst_55:
tmp590 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg1), atslab_s0tacst_sym) ;
/* tmp589 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp590) ;
/* tmp591 = */ atspre_fprint_string (arg0, ATSstrcst("(")) ;
tmp593 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg1), atslab_s0tacst_arg) ;
/* tmp592 = */ fprintlst_01696_ats_ptr_type (arg0, tmp593, ATSstrcst(" "), &fprint_a0msrt_37) ;
/* tmp594 = */ atspre_fprint_string (arg0, ATSstrcst("):")) ;
tmp595 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_36, arg1), atslab_s0tacst_res) ;
/* tmp588 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0rt (arg0, tmp595) ;
return /* (tmp588) */ ;
} /* end of [fprint_s0tacst_55] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 29257(line=1285, offs=3) -- 36051(line=1589, offs=4)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ecl (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp596) ;
ATSlocal (ats_ptr_type, tmp597) ;
ATSlocal (ats_ptr_type, tmp598) ;
ATSlocal (ats_ptr_type, tmp599) ;
// ATSlocal_void (tmp600) ;
// ATSlocal_void (tmp601) ;
// ATSlocal_void (tmp602) ;
// ATSlocal_void (tmp603) ;
ATSlocal (ats_ptr_type, tmp604) ;
// ATSlocal_void (tmp605) ;
// ATSlocal_void (tmp606) ;
ATSlocal (ats_ptr_type, tmp607) ;
// ATSlocal_void (tmp608) ;
// ATSlocal_void (tmp609) ;
ATSlocal (ats_ptr_type, tmp610) ;
// ATSlocal_void (tmp611) ;
// ATSlocal_void (tmp612) ;
ATSlocal (ats_ptr_type, tmp613) ;
ATSlocal (ats_ptr_type, tmp614) ;
ATSlocal (ats_int_type, tmp615) ;
// ATSlocal_void (tmp616) ;
// ATSlocal_void (tmp617) ;
// ATSlocal_void (tmp618) ;
// ATSlocal_void (tmp619) ;
// ATSlocal_void (tmp620) ;
// ATSlocal_void (tmp621) ;
ATSlocal (ats_ptr_type, tmp622) ;
ATSlocal (ats_ptr_type, tmp623) ;
// ATSlocal_void (tmp624) ;
// ATSlocal_void (tmp625) ;
// ATSlocal_void (tmp626) ;
// ATSlocal_void (tmp627) ;
ATSlocal (ats_ptr_type, tmp628) ;
// ATSlocal_void (tmp629) ;
// ATSlocal_void (tmp630) ;
ATSlocal (ats_ptr_type, tmp631) ;
ATSlocal (ats_ptr_type, tmp632) ;
// ATSlocal_void (tmp633) ;
// ATSlocal_void (tmp634) ;
// ATSlocal_void (tmp635) ;
// ATSlocal_void (tmp636) ;
ATSlocal (ats_ptr_type, tmp637) ;
// ATSlocal_void (tmp638) ;
// ATSlocal_void (tmp639) ;
ATSlocal (ats_int_type, tmp640) ;
ATSlocal (ats_ptr_type, tmp641) ;
// ATSlocal_void (tmp642) ;
// ATSlocal_void (tmp643) ;
// ATSlocal_void (tmp644) ;
// ATSlocal_void (tmp645) ;
ATSlocal (ats_ptr_type, tmp646) ;
// ATSlocal_void (tmp647) ;
// ATSlocal_void (tmp648) ;
ATSlocal (ats_ptr_type, tmp649) ;
// ATSlocal_void (tmp650) ;
// ATSlocal_void (tmp651) ;
ATSlocal (ats_int_type, tmp652) ;
ATSlocal (ats_ptr_type, tmp653) ;
// ATSlocal_void (tmp654) ;
// ATSlocal_void (tmp655) ;
// ATSlocal_void (tmp656) ;
// ATSlocal_void (tmp657) ;
ATSlocal (ats_int_type, tmp658) ;
// ATSlocal_void (tmp659) ;
// ATSlocal_void (tmp660) ;
// ATSlocal_void (tmp661) ;
// ATSlocal_void (tmp662) ;
ATSlocal (ats_int_type, tmp663) ;
// ATSlocal_void (tmp664) ;
// ATSlocal_void (tmp665) ;
// ATSlocal_void (tmp666) ;
// ATSlocal_void (tmp667) ;
ATSlocal (ats_ptr_type, tmp668) ;
ATSlocal (ats_ptr_type, tmp669) ;
// ATSlocal_void (tmp670) ;
// ATSlocal_void (tmp671) ;
// ATSlocal_void (tmp672) ;
// ATSlocal_void (tmp673) ;
ATSlocal (ats_ptr_type, tmp674) ;
ATSlocal (ats_ptr_type, tmp675) ;
// ATSlocal_void (tmp676) ;
// ATSlocal_void (tmp677) ;
// ATSlocal_void (tmp678) ;
// ATSlocal_void (tmp679) ;
ATSlocal (ats_int_type, tmp680) ;
ATSlocal (ats_ptr_type, tmp681) ;
ATSlocal (ats_ptr_type, tmp682) ;
// ATSlocal_void (tmp683) ;
// ATSlocal_void (tmp684) ;
// ATSlocal_void (tmp685) ;
// ATSlocal_void (tmp686) ;
// ATSlocal_void (tmp687) ;
// ATSlocal_void (tmp688) ;
ATSlocal (ats_ptr_type, tmp689) ;
ATSlocal (ats_ptr_type, tmp690) ;
// ATSlocal_void (tmp691) ;
// ATSlocal_void (tmp692) ;
// ATSlocal_void (tmp693) ;
// ATSlocal_void (tmp694) ;
ATSlocal (ats_int_type, tmp695) ;
ATSlocal (ats_int_type, tmp696) ;
// ATSlocal_void (tmp697) ;
// ATSlocal_void (tmp698) ;
// ATSlocal_void (tmp699) ;
// ATSlocal_void (tmp700) ;
// ATSlocal_void (tmp701) ;
// ATSlocal_void (tmp702) ;
ATSlocal (ats_int_type, tmp703) ;
ATSlocal (ats_ptr_type, tmp704) ;
// ATSlocal_void (tmp705) ;
// ATSlocal_void (tmp706) ;
// ATSlocal_void (tmp707) ;
// ATSlocal_void (tmp708) ;
ATSlocal (ats_ptr_type, tmp709) ;
ATSlocal (ats_ptr_type, tmp710) ;
// ATSlocal_void (tmp711) ;
// ATSlocal_void (tmp712) ;
// ATSlocal_void (tmp713) ;
// ATSlocal_void (tmp714) ;
ATSlocal (ats_ptr_type, tmp715) ;
ATSlocal (ats_ptr_type, tmp716) ;
// ATSlocal_void (tmp717) ;
// ATSlocal_void (tmp718) ;
// ATSlocal_void (tmp719) ;
// ATSlocal_void (tmp720) ;
ATSlocal (ats_ptr_type, tmp721) ;
// ATSlocal_void (tmp722) ;
// ATSlocal_void (tmp723) ;
// ATSlocal_void (tmp724) ;
// ATSlocal_void (tmp725) ;
ATSlocal (ats_ptr_type, tmp726) ;
// ATSlocal_void (tmp727) ;
// ATSlocal_void (tmp728) ;
ATSlocal (ats_ptr_type, tmp729) ;
// ATSlocal_void (tmp730) ;
// ATSlocal_void (tmp731) ;
ATSlocal (ats_ptr_type, tmp732) ;
ATSlocal (ats_ptr_type, tmp733) ;
// ATSlocal_void (tmp734) ;
// ATSlocal_void (tmp735) ;
// ATSlocal_void (tmp736) ;
// ATSlocal_void (tmp737) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ecl:
tmp597 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_37, arg1), atslab_d0ecl_node) ;
do {
/* branch: __ats_lab_152 */
__ats_lab_152_0:
if (((ats_sum_ptr_type)tmp597)->tag != 0) { goto __ats_lab_153_0 ; }
__ats_lab_152_1:
tmp598 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp599 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp600 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cfixity(")) ;
/* tmp601 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_f0xty (arg0, tmp598) ;
/* tmp602 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp603 = */ fprintlst_01696_ats_ptr_type (arg0, tmp599, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_153 */
__ats_lab_153_0:
if (((ats_sum_ptr_type)tmp597)->tag != 1) { goto __ats_lab_154_0 ; }
__ats_lab_153_1:
tmp604 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp605 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cnonfix(")) ;
/* tmp606 = */ fprintlst_01696_ats_ptr_type (arg0, tmp604, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_154 */
__ats_lab_154_0:
if (((ats_sum_ptr_type)tmp597)->tag != 2) { goto __ats_lab_155_0 ; }
__ats_lab_154_1:
tmp607 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp608 = */ atspre_fprint_string (arg0, ATSstrcst("D0Csymintr(")) ;
/* tmp609 = */ fprintlst_01696_ats_ptr_type (arg0, tmp607, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_155 */
__ats_lab_155_0:
if (((ats_sum_ptr_type)tmp597)->tag != 3) { goto __ats_lab_156_0 ; }
__ats_lab_155_1:
tmp610 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp611 = */ atspre_fprint_string (arg0, ATSstrcst("D0Csymelim(")) ;
/* tmp612 = */ fprintlst_01696_ats_ptr_type (arg0, tmp610, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_156 */
__ats_lab_156_0:
if (((ats_sum_ptr_type)tmp597)->tag != 4) { goto __ats_lab_157_0 ; }
__ats_lab_156_1:
tmp613 = ats_caselptrlab_mac(anairiats_sum_38, tmp597, atslab_0) ;
tmp614 = ats_caselptrlab_mac(anairiats_sum_38, tmp597, atslab_1) ;
tmp615 = ats_caselptrlab_mac(anairiats_sum_38, tmp597, atslab_2) ;
/* tmp616 = */ atspre_fprint_string (arg0, ATSstrcst("D0Coverload(")) ;
/* tmp617 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (arg0, tmp613) ;
/* tmp618 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp619 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_dqi0de (arg0, tmp614) ;
/* tmp620 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp621 = */ atspre_fprint_int (arg0, tmp615) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_157 */
__ats_lab_157_0:
if (((ats_sum_ptr_type)tmp597)->tag != 5) { goto __ats_lab_158_0 ; }
__ats_lab_157_1:
tmp622 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp623 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp624 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ce0xpdef(")) ;
/* tmp625 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp622) ;
/* tmp626 = */ atspre_fprint_string (arg0, ATSstrcst(", ")) ;
/* tmp627 = */ fprintopt_01697_ats_ptr_type (arg0, tmp623, &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_158 */
__ats_lab_158_0:
if (((ats_sum_ptr_type)tmp597)->tag != 6) { goto __ats_lab_159_0 ; }
__ats_lab_158_1:
tmp628 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp629 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ce0xpundef(")) ;
/* tmp630 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp628) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_159 */
__ats_lab_159_0:
if (((ats_sum_ptr_type)tmp597)->tag != 7) { goto __ats_lab_160_0 ; }
__ats_lab_159_1:
tmp631 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp632 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp633 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ce0xpact(")) ;
/* tmp634 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xpactkind (arg0, tmp631) ;
/* tmp635 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp636 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp (arg0, tmp632) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_160 */
__ats_lab_160_0:
if (((ats_sum_ptr_type)tmp597)->tag != 8) { goto __ats_lab_161_0 ; }
__ats_lab_160_1:
tmp637 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp638 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cpragma(")) ;
/* tmp639 = */ fprintlst_01696_ats_ptr_type (arg0, tmp637, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_161 */
__ats_lab_161_0:
if (((ats_sum_ptr_type)tmp597)->tag != 9) { goto __ats_lab_162_0 ; }
__ats_lab_161_1:
tmp640 = ats_caselptrlab_mac(anairiats_sum_28, tmp597, atslab_0) ;
tmp641 = ats_caselptrlab_mac(anairiats_sum_28, tmp597, atslab_1) ;
/* tmp642 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ccodegen(")) ;
/* tmp643 = */ atspre_fprint_int (arg0, tmp640) ;
/* tmp644 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp645 = */ fprintlst_01696_ats_ptr_type (arg0, tmp641, ATSstrcst(", "), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_e0xp) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_162 */
__ats_lab_162_0:
if (((ats_sum_ptr_type)tmp597)->tag != 10) { goto __ats_lab_163_0 ; }
__ats_lab_162_1:
tmp646 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp647 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cdatsrts(\n")) ;
/* tmp648 = */ fprintlst_01696_ats_ptr_type (arg0, tmp646, ATSstrcst("\n"), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0atsrtdec) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("\n)")) ;
break ;

/* branch: __ats_lab_163 */
__ats_lab_163_0:
if (((ats_sum_ptr_type)tmp597)->tag != 11) { goto __ats_lab_164_0 ; }
__ats_lab_163_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Csrtdefs(...)")) ;
break ;

/* branch: __ats_lab_164 */
__ats_lab_164_0:
if (((ats_sum_ptr_type)tmp597)->tag != 12) { goto __ats_lab_165_0 ; }
__ats_lab_164_1:
tmp649 = ats_caselptrlab_mac(anairiats_sum_3, tmp597, atslab_0) ;
/* tmp650 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cstacsts(\n")) ;
/* tmp651 = */ fprintlst_01696_ats_ptr_type (arg0, tmp649, ATSstrcst("\n"), &fprint_s0tacst_55) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("\n)")) ;
break ;

/* branch: __ats_lab_165 */
__ats_lab_165_0:
if (((ats_sum_ptr_type)tmp597)->tag != 13) { goto __ats_lab_166_0 ; }
__ats_lab_165_1:
tmp652 = ats_caselptrlab_mac(anairiats_sum_28, tmp597, atslab_0) ;
tmp653 = ats_caselptrlab_mac(anairiats_sum_28, tmp597, atslab_1) ;
/* tmp654 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cstacons(")) ;
/* tmp655 = */ atspre_fprint_int (arg0, tmp652) ;
/* tmp656 = */ atspre_fprint_string (arg0, ATSstrcst(";\n")) ;
/* tmp657 = */ fprintlst_01696_ats_ptr_type (arg0, tmp653, ATSstrcst("\n"), &fprint_s0tacon_54) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("\n)")) ;
break ;

/* branch: __ats_lab_166 */
__ats_lab_166_0:
if (((ats_sum_ptr_type)tmp597)->tag != 14) { goto __ats_lab_167_0 ; }
__ats_lab_166_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Ctkindef(...)")) ;
break ;

/* branch: __ats_lab_167 */
__ats_lab_167_0:
if (((ats_sum_ptr_type)tmp597)->tag != 15) { goto __ats_lab_168_0 ; }
__ats_lab_167_1:
tmp658 = ats_caselptrlab_mac(anairiats_sum_28, tmp597, atslab_0) ;
/* tmp659 = */ atspre_fprint_string (arg0, ATSstrcst("D0Csexpdefs(")) ;
/* tmp660 = */ atspre_fprint_int (arg0, tmp658) ;
/* tmp661 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp662 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_168 */
__ats_lab_168_0:
if (((ats_sum_ptr_type)tmp597)->tag != 16) { goto __ats_lab_169_0 ; }
__ats_lab_168_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Csaspdec(...)")) ;
break ;

/* branch: __ats_lab_169 */
__ats_lab_169_0:
if (((ats_sum_ptr_type)tmp597)->tag != 17) { goto __ats_lab_170_0 ; }
__ats_lab_169_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Creassume(...)")) ;
break ;

/* branch: __ats_lab_170 */
__ats_lab_170_0:
if (((ats_sum_ptr_type)tmp597)->tag != 18) { goto __ats_lab_171_0 ; }
__ats_lab_170_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cexndecs(...)")) ;
break ;

/* branch: __ats_lab_171 */
__ats_lab_171_0:
if (((ats_sum_ptr_type)tmp597)->tag != 19) { goto __ats_lab_172_0 ; }
__ats_lab_171_1:
tmp663 = ats_caselptrlab_mac(anairiats_sum_34, tmp597, atslab_0) ;
/* tmp664 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cdatdecs(")) ;
/* tmp665 = */ atspre_fprint_int (arg0, tmp663) ;
/* tmp666 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp667 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_172 */
__ats_lab_172_0:
if (((ats_sum_ptr_type)tmp597)->tag != 25) { goto __ats_lab_173_0 ; }
__ats_lab_172_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cdcstdecs(...)")) ;
break ;

/* branch: __ats_lab_173 */
__ats_lab_173_0:
if (((ats_sum_ptr_type)tmp597)->tag != 27) { goto __ats_lab_174_0 ; }
__ats_lab_173_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cmacdefs(...)")) ;
break ;

/* branch: __ats_lab_174 */
__ats_lab_174_0:
if (((ats_sum_ptr_type)tmp597)->tag != 20) { goto __ats_lab_175_0 ; }
__ats_lab_174_1:
tmp668 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp669 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp670 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cclassdec(")) ;
/* tmp671 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_i0de (arg0, tmp668) ;
/* tmp672 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp673 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0expopt (arg0, tmp669) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_175 */
__ats_lab_175_0:
if (((ats_sum_ptr_type)tmp597)->tag != 21) { goto __ats_lab_176_0 ; }
__ats_lab_175_1:
tmp674 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp675 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp676 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cextype(")) ;
/* tmp677 = */ atspre_fprint_string (arg0, tmp674) ;
/* tmp678 = */ atspre_fprint_string (arg0, ATSstrcst(" = ")) ;
/* tmp679 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp675) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_176 */
__ats_lab_176_0:
if (((ats_sum_ptr_type)tmp597)->tag != 22) { goto __ats_lab_177_0 ; }
__ats_lab_176_1:
tmp680 = ats_caselptrlab_mac(anairiats_sum_34, tmp597, atslab_0) ;
tmp681 = ats_caselptrlab_mac(anairiats_sum_34, tmp597, atslab_1) ;
tmp682 = ats_caselptrlab_mac(anairiats_sum_34, tmp597, atslab_2) ;
/* tmp683 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cextype(")) ;
/* tmp684 = */ atspre_fprint_int (arg0, tmp680) ;
/* tmp685 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp686 = */ atspre_fprint_string (arg0, tmp681) ;
/* tmp687 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp688 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_s0exp (arg0, tmp682) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_177 */
__ats_lab_177_0:
if (((ats_sum_ptr_type)tmp597)->tag != 23) { goto __ats_lab_178_0 ; }
__ats_lab_177_1:
tmp689 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp690 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp691 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cextvar(")) ;
/* tmp692 = */ atspre_fprint_string (arg0, tmp689) ;
/* tmp693 = */ atspre_fprint_string (arg0, ATSstrcst(" = ")) ;
/* tmp694 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0exp (arg0, tmp690) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_178 */
__ats_lab_178_0:
if (((ats_sum_ptr_type)tmp597)->tag != 24) { goto __ats_lab_179_0 ; }
__ats_lab_178_1:
tmp695 = ats_caselptrlab_mac(anairiats_sum_26, tmp597, atslab_0) ;
tmp696 = ats_caselptrlab_mac(anairiats_sum_26, tmp597, atslab_1) ;
/* tmp697 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cextcode(")) ;
/* tmp698 = */ atspre_fprint_int (arg0, tmp695) ;
/* tmp699 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp700 = */ atspre_fprint_int (arg0, tmp696) ;
/* tmp701 = */ atspre_fprint_string (arg0, ATSstrcst("\n")) ;
/* tmp702 = */ atspre_fprint_string (arg0, ATSstrcst("...")) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("\n)")) ;
break ;

/* branch: __ats_lab_179 */
__ats_lab_179_0:
if (((ats_sum_ptr_type)tmp597)->tag != 26) { goto __ats_lab_180_0 ; }
__ats_lab_179_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cimpdec(...)")) ;
break ;

/* branch: __ats_lab_180 */
__ats_lab_180_0:
if (((ats_sum_ptr_type)tmp597)->tag != 29) { goto __ats_lab_181_0 ; }
__ats_lab_180_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cvaldecs(...)")) ;
break ;

/* branch: __ats_lab_181 */
__ats_lab_181_0:
if (((ats_sum_ptr_type)tmp597)->tag != 28) { goto __ats_lab_182_0 ; }
__ats_lab_181_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cfundecs(...)")) ;
break ;

/* branch: __ats_lab_182 */
__ats_lab_182_0:
if (((ats_sum_ptr_type)tmp597)->tag != 30) { goto __ats_lab_183_0 ; }
__ats_lab_182_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cvardecs(...)")) ;
break ;

/* branch: __ats_lab_183 */
__ats_lab_183_0:
if (((ats_sum_ptr_type)tmp597)->tag != 31) { goto __ats_lab_184_0 ; }
__ats_lab_183_1:
tmp703 = ats_caselptrlab_mac(anairiats_sum_27, tmp597, atslab_1) ;
tmp704 = ats_caselptrlab_mac(anairiats_sum_27, tmp597, atslab_2) ;
/* tmp705 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cinclude(")) ;
/* tmp706 = */ atspre_fprint_int (arg0, tmp703) ;
/* tmp707 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp708 = */ atspre_fprint_string (arg0, tmp704) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_184 */
__ats_lab_184_0:
if (((ats_sum_ptr_type)tmp597)->tag != 32) { goto __ats_lab_185_0 ; }
__ats_lab_184_1:
tmp709 = ats_caselptrlab_mac(anairiats_sum_15, tmp597, atslab_1) ;
tmp710 = ats_caselptrlab_mac(anairiats_sum_15, tmp597, atslab_2) ;
/* tmp711 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cstaload(")) ;
/* tmp712 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbolopt (arg0, tmp709) ;
/* tmp713 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp714 = */ atspre_fprint_string (arg0, tmp710) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_185 */
__ats_lab_185_0:
if (((ats_sum_ptr_type)tmp597)->tag != 33) { goto __ats_lab_186_0 ; }
__ats_lab_185_1:
tmp715 = ats_caselptrlab_mac(anairiats_sum_15, tmp597, atslab_1) ;
tmp716 = ats_caselptrlab_mac(anairiats_sum_15, tmp597, atslab_2) ;
/* tmp717 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cstaloadnm(")) ;
/* tmp718 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbolopt (arg0, tmp715) ;
/* tmp719 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp720 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp716) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_186 */
__ats_lab_186_0:
if (((ats_sum_ptr_type)tmp597)->tag != 34) { goto __ats_lab_187_0 ; }
__ats_lab_186_1:
tmp721 = ats_caselptrlab_mac(anairiats_sum_15, tmp597, atslab_1) ;
/* tmp722 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cstaloadloc(")) ;
/* tmp723 = */ _2tmp_2ATS_2dPostiats_2src_2pats_symbol_2esats__fprint_symbol (arg0, tmp721) ;
/* tmp724 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ;
/* tmp725 = */ atspre_fprint_string (arg0, ATSstrcst("(*d0eclist*)")) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_187 */
__ats_lab_187_0:
if (((ats_sum_ptr_type)tmp597)->tag != 35) { goto __ats_lab_188_0 ; }
__ats_lab_187_1:
tmp726 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp727 = */ atspre_fprint_string (arg0, ATSstrcst("D0Crequire(")) ;
/* tmp728 = */ atspre_fprint_string (arg0, tmp726) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_188 */
__ats_lab_188_0:
if (((ats_sum_ptr_type)tmp597)->tag != 36) { goto __ats_lab_189_0 ; }
__ats_lab_188_1:
tmp729 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp730 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cdynload(")) ;
/* tmp731 = */ atspre_fprint_string (arg0, tmp729) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ;
break ;

/* branch: __ats_lab_189 */
__ats_lab_189_0:
if (((ats_sum_ptr_type)tmp597)->tag != 37) { goto __ats_lab_190_0 ; }
__ats_lab_189_1:
tmp732 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_0) ;
tmp733 = ats_caselptrlab_mac(anairiats_sum_13, tmp597, atslab_1) ;
/* tmp734 = */ atspre_fprint_string (arg0, ATSstrcst("D0Clocal(\n")) ;
/* tmp735 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist (arg0, tmp732) ;
/* tmp736 = */ atspre_fprint_string (arg0, ATSstrcst("\n(*in*)\n")) ;
/* tmp737 = */ _2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist (arg0, tmp733) ;
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("\n)")) ;
break ;

/* branch: __ats_lab_190 */
__ats_lab_190_0:
// if (((ats_sum_ptr_type)tmp597)->tag != 38) { ats_deadcode_failure_handle () ; }
__ats_lab_190_1:
/* tmp596 = */ atspre_fprint_string (arg0, ATSstrcst("D0Cguadecl(...)")) ;
break ;
} while (0) ;
return /* (tmp596) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ecl] */

/*
// /tmp/ATS-Postiats/src/pats_syntax_print.dats: 36127(line=1595, offs=3) -- 36238(line=1598, offs=2)
*/
ATSglobaldec()
ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp738) ;
// ATSlocal_void (tmp739) ;

__ats_lab__2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist:
/* tmp739 = */ fprintlst_01696_ats_ptr_type (arg0, arg1, ATSstrcst("\n"), &_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0ecl) ;
/* tmp738 = */ atspre_fprint_newline (arg0) ;
return /* (tmp738) */ ;
} /* end of [_2tmp_2ATS_2dPostiats_2src_2pats_syntax_2esats__fprint_d0eclist] */

/* static load function */

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_fixity_2esats__staload (void) ;
extern ats_void_type _2tmp_2ATS_2dPostiats_2src_2pats_label_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) ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__staload () {
static int _2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__staload_flag = 0 ;
if (_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__staload_flag) return ;
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__staload_flag = 1 ;

_2tmp_2ATS_2dPostiats_2src_2pats_utils_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_utils_2edats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_fixity_2esats__staload () ;
_2tmp_2ATS_2dPostiats_2src_2pats_label_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 () ;

return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__dynload_flag ;

ats_void_type
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__dynload () {
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_2edats__dynload_flag = 1 ;
_2tmp_2ATS_2dPostiats_2src_2pats_syntax_print_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_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_syntax_print_dats.c] */
