/*
**
** The C code is generated by ATS/Anairiats
** The compilation time is: 2017-1-4: 12h:52m
**
*/

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

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

#include "libc/CATS/fcntl.cats"

#include "libc/sys/CATS/types.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_location.cats"

#include "pats_lexbuf.cats"

#include "pats_location.cats"

#include "pats_location.cats"
/* external codes at top */
/* type definitions */
typedef struct {
ats_ptr_type atslab_0 ;
ats_ptr_type atslab_1 ;
} anairiats_sum_0 ;

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

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

/* external typedefs */
/* external dynamic constructor declarations */
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__list_vt_cons_0) ;
ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e12_2prelude_2basics_sta_2esats__list_vt_nil_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMname_0) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMname2_1) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMsynop_2) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMsynop2_3) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMdescrpt_4) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMexample_5) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMparamadd_6) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMparamlist_7) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMfunretval_8) ;

/* external dynamic constant declarations */
ATSextern_fun(ats_bool_type, atspre_lte_int_int) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_isucc) (ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_iadd) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_isub) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_int_type, atspre_idiv) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_ilt) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_igt) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_igte) (ats_int_type, ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_size1_of_int1) (ats_int_type) ;
ATSextern_fun(ats_size_type, atspre_sub_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_bool_type, atspre_gt_size1_int1) (ats_size_type, ats_int_type) ;
ATSextern_fun(ats_ptr_type, atspre_ref_make_elt_tsz) (ats_ref_type, ats_size_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, atslib_qsort) (ats_ref_type, ats_size_type, ats_size_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_set) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_set) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_set) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop2) (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_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
extern
ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* assuming abstract types */
/* sum constructor declarations */
/* exn constructor declarations */
/* global dynamic (non-functional) constant declarations */
/* internal function declarations */
static
ats_ptr_type ref_01088_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_ptr_type revapp_16 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type list_vt_reverse_append_01507_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type list_vt_reverse_01506_ats_ptr_type (ats_ptr_type arg0) ;

/* partial value template declarations */
/* static temporary variable declarations */
ATSstatic (ats_ptr_type, statmp0) ;
ATSstatic (ats_ptr_type, statmp7) ;
ATSstatic (ats_ptr_type, statmp12) ;
ATSstatic (ats_ptr_type, statmp17) ;
ATSstatic (ats_ptr_type, statmp20) ;
ATSstatic (ats_ptr_type, statmp21) ;
ATSstatic (ats_ptr_type, statmp37) ;
ATSstatic (ats_ptr_type, statmp38) ;
ATSstatic (ats_ptr_type, statmp81) ;
ATSstatic (ats_ptr_type, statmp82) ;

/* external value variable declarations */

/* function implementations */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/reference.dats: 1828(line=57, offs=18) -- 1902(line=59, offs=4)
*/
ATSstaticdec()
ats_ptr_type
ref_01088_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;

__ats_lab_ref_01088_ats_ptr_type:
/* ats_ptr_type tmp2 ; */
tmp2 = arg0 ;
tmp1 = atspre_ref_make_elt_tsz ((&tmp2), sizeof(ats_ptr_type)) ;
return (tmp1) ;
} /* end of [ref_01088_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 552(line=32, offs=28) -- 570(line=32, offs=46)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp3) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_get:
tmp3 = ats_ptrget_mac(ats_ptr_type, statmp0) ;
return (tmp3) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 598(line=33, offs=28) -- 622(line=33, offs=52)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_set (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp4) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_set:
ats_ptrget_mac(ats_ptr_type, statmp0) = arg0 ;
return /* (tmp4) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_set] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 665(line=36, offs=11) -- 732(line=38, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decltitle (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp5) ;
// ATSlocal_void (tmp6) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decltitle:
/* tmp6 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDecltitle_set (arg0) ;
tmp5 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp5) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decltitle] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 872(line=45, offs=31) -- 893(line=45, offs=52)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp8) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_get:
tmp8 = ats_ptrget_mac(ats_ptr_type, statmp7) ;
return (tmp8) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 924(line=46, offs=31) -- 951(line=46, offs=58)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_set (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp9) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_set:
ats_ptrget_mac(ats_ptr_type, statmp7) = arg0 ;
return /* (tmp9) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_set] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 997(line=49, offs=14) -- 1067(line=51, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpreamble (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp10) ;
// ATSlocal_void (tmp11) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpreamble:
/* tmp11 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpreamble_set (arg0) ;
tmp10 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp10) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpreamble] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1212(line=58, offs=32) -- 1234(line=58, offs=54)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp13) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_get:
tmp13 = ats_ptrget_mac(ats_ptr_type, statmp12) ;
return (tmp13) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1266(line=59, offs=32) -- 1294(line=59, offs=60)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_set (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp14) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_set:
ats_ptrget_mac(ats_ptr_type, statmp12) = arg0 ;
return /* (tmp14) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_set] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1341(line=62, offs=15) -- 1412(line=64, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpostamble (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp15) ;
// ATSlocal_void (tmp16) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpostamble:
/* tmp16 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclpostamble_set (arg0) ;
tmp15 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp15) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declpostamble] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1548(line=71, offs=27) -- 1565(line=71, offs=44)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp18) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_get:
tmp18 = ats_ptrget_mac(ats_ptr_type, statmp17) ;
return (tmp18) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1592(line=72, offs=27) -- 1615(line=72, offs=50)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp19) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set:
ats_ptrget_mac(ats_ptr_type, statmp17) = arg0 ;
return /* (tmp19) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1771(line=84, offs=20) -- 1872(line=88, offs=4)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp22) ;
ATSlocal (ats_ptr_type, tmp23) ;
ATSlocal (ats_ptr_type, tmp24) ;
ATSlocal (ats_ptr_type, tmp25) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add:
tmp23 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp20), atslab_1) ;
tmp25 = ats_ptrget_mac(ats_ptr_type, tmp23) ;
tmp24 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp24, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_0, tmp24, atslab_1, tmp25) ;
ats_ptrget_mac(ats_ptr_type, tmp23) = tmp24 ;
return /* (tmp22) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 7889(line=308, offs=7) -- 8174(line=317, offs=28)
*/
ATSstaticdec()
ats_ptr_type
revapp_16 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;
ATSlocal (ats_ptr_type, tmp34) ;
ATSlocal (ats_ptr_type, tmp35) ;

__ats_lab_revapp_16:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp33 = &ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
tmp34 = ats_ptrget_mac(ats_ptr_type, tmp33) ;
ats_ptrget_mac(ats_ptr_type, tmp33) = arg1 ;
tmp35 = arg0 ;
arg0 = tmp34 ;
arg1 = tmp35 ;
goto __ats_lab_revapp_16 ; // tail call
break ;

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

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 7770(line=303, offs=24) -- 8220(line=321, offs=4)
*/
ATSstaticdec()
ats_ptr_type
list_vt_reverse_append_01507_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp31) ;

__ats_lab_list_vt_reverse_append_01507_ats_ptr_type:
tmp31 = revapp_16 (arg0, arg1) ;
return (tmp31) ;
} /* end of [list_vt_reverse_append_01507_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Anairiats/prelude/DATS/list_vt.dats: 7652(line=298, offs=17) -- 7704(line=299, offs=46)
*/
ATSstaticdec()
ats_ptr_type
list_vt_reverse_01506_ats_ptr_type (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp30) ;
ATSlocal (ats_ptr_type, tmp36) ;

__ats_lab_list_vt_reverse_01506_ats_ptr_type:
tmp36 = (ats_sum_ptr_type)0 ;
tmp30 = list_vt_reverse_append_01507_ats_ptr_type (arg0, tmp36) ;
return (tmp30) ;
} /* end of [list_vt_reverse_01506_ats_ptr_type] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 1934(line=90, offs=30) -- 2074(line=96, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp26) ;
ATSlocal (ats_ptr_type, tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;
ATSlocal (ats_ptr_type, tmp29) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_get:
tmp27 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp20), atslab_1) ;
tmp28 = ats_ptrget_mac(ats_ptr_type, tmp27) ;
tmp29 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp27) = tmp29 ;
tmp26 = list_vt_reverse_01506_ats_ptr_type (tmp28) ;
return (tmp26) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 2264(line=109, offs=20) -- 2365(line=113, offs=4)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp39) ;
ATSlocal (ats_ptr_type, tmp40) ;
ATSlocal (ats_ptr_type, tmp41) ;
ATSlocal (ats_ptr_type, tmp42) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add:
tmp40 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp37), atslab_1) ;
tmp42 = ats_ptrget_mac(ats_ptr_type, tmp40) ;
tmp41 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp41, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_0, tmp41, atslab_1, tmp42) ;
ats_ptrget_mac(ats_ptr_type, tmp40) = tmp41 ;
return /* (tmp39) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 2427(line=115, offs=30) -- 2567(line=121, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp43) ;
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;
ATSlocal (ats_ptr_type, tmp46) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_get:
tmp44 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp37), atslab_1) ;
tmp45 = ats_ptrget_mac(ats_ptr_type, tmp44) ;
tmp46 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp44) = tmp46 ;
tmp43 = list_vt_reverse_01506_ats_ptr_type (tmp45) ;
return (tmp43) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 2663(line=128, offs=10) -- 2779(line=133, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp47) ;
// ATSlocal_void (tmp48) ;
// ATSlocal_void (tmp49) ;
ATSlocal (ats_ptr_type, tmp50) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname:
/* tmp48 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add (arg0) ;
tmp50 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp50)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_1, tmp50, atslab_0, arg0) ;
/* tmp49 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp50) ;
tmp47 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp47) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 2822(line=136, offs=11) -- 2960(line=141, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname2 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp51) ;
// ATSlocal_void (tmp52) ;
// ATSlocal_void (tmp53) ;
ATSlocal (ats_ptr_type, tmp54) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname2:
/* tmp52 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_add (arg0) ;
tmp54 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
((ats_sum_ptr_type)tmp54)->tag = 1 ;
ats_selptrset_mac(anairiats_sum_2, tmp54, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_2, tmp54, atslab_1, arg1) ;
/* tmp53 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp54) ;
tmp51 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp51) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname2] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3003(line=144, offs=11) -- 3084(line=148, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp55) ;
// ATSlocal_void (tmp56) ;
ATSlocal (ats_ptr_type, tmp57) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop:
tmp57 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMsynop_2) ;
/* tmp56 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp57) ;
tmp55 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp55) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3130(line=149, offs=24) -- 3147(line=149, offs=41)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp58) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis:
tmp58 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop () ;
return (tmp58) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3170(line=152, offs=12) -- 3254(line=156, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop2 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp59) ;
// ATSlocal_void (tmp60) ;
ATSlocal (ats_ptr_type, tmp61) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop2:
tmp61 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp61)->tag = 3 ;
ats_selptrset_mac(anairiats_sum_1, tmp61, atslab_0, arg0) ;
/* tmp60 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp61) ;
tmp59 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp59) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop2] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3302(line=157, offs=25) -- 3321(line=157, offs=44)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis2 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp62) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis2:
tmp62 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynop2 (arg0) ;
return (tmp62) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis2] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3348(line=160, offs=15) -- 3448(line=165, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declnamesynop (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp63) ;
ATSlocal (ats_ptr_type, tmp64) ;
ATSlocal (ats_ptr_type, tmp65) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declnamesynop:
tmp64 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declname (arg0) ;
tmp65 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declsynopsis () ;
tmp63 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp63) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declnamesynop] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3493(line=168, offs=13) -- 3578(line=172, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decldescrpt (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp66) ;
// ATSlocal_void (tmp67) ;
ATSlocal (ats_ptr_type, tmp68) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decldescrpt:
tmp68 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp68)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_1, tmp68, atslab_0, arg0) ;
/* tmp67 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp68) ;
tmp66 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp66) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__decldescrpt] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3626(line=175, offs=13) -- 3711(line=179, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declexample (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp69) ;
// ATSlocal_void (tmp70) ;
ATSlocal (ats_ptr_type, tmp71) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declexample:
tmp71 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp71)->tag = 5 ;
ats_selptrset_mac(anairiats_sum_1, tmp71, atslab_0, arg0) ;
/* tmp70 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp71) ;
tmp69 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp69) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declexample] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3761(line=182, offs=15) -- 3846(line=186, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamlist () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp72) ;
// ATSlocal_void (tmp73) ;
ATSlocal (ats_ptr_type, tmp74) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamlist:
tmp74 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__DITMparamlist_7) ;
/* tmp73 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp74) ;
tmp72 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp72) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamlist] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 3897(line=189, offs=14) -- 3993(line=193, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamadd (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp75) ;
// ATSlocal_void (tmp76) ;
ATSlocal (ats_ptr_type, tmp77) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamadd:
tmp77 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
((ats_sum_ptr_type)tmp77)->tag = 6 ;
ats_selptrset_mac(anairiats_sum_2, tmp77, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_2, tmp77, atslab_1, arg1) ;
/* tmp76 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp77) ;
tmp75 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp75) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declparamadd] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 4044(line=196, offs=15) -- 4131(line=200, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declfunretval (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp78) ;
// ATSlocal_void (tmp79) ;
ATSlocal (ats_ptr_type, tmp80) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declfunretval:
tmp80 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp80)->tag = 8 ;
ats_selptrset_mac(anairiats_sum_1, tmp80, atslab_0, arg0) ;
/* tmp79 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_add (tmp80) ;
tmp78 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp78) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__declfunretval] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 4282(line=207, offs=29) -- 4301(line=207, offs=48)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp83) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_get:
tmp83 = ats_ptrget_mac(ats_ptr_type, statmp81) ;
return (tmp83) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/declatext.dats: 4330(line=208, offs=29) -- 4357(line=208, offs=56)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_set (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp84) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_set:
ats_ptrget_mac(ats_ptr_type, statmp81) = arg0 ;
return /* (tmp84) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_set] */

/* static load function */

// extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2DATS_2reference_2edats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__staload (void) ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__staload () {
static int _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__staload_flag = 0 ;
if (_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__staload_flag) return ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__staload_flag = 1 ;

// ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_2edats__staload () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats__staload () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2reference_2edats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__staload () ;

return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__dynload_flag ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__dynload () {
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2edats__dynload_flag = 1 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_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_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
ATS_2d0_2e2_2e12_2prelude_2DATS_2list_vt_2edats____assert_prfck () ;
#endif /* _ATS_PROOFCHECK */

/* marking static variables for GC */
ATS_GC_MARKROOT(&statmp0, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp7, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp12, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp17, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp20, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp21, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp37, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp38, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp81, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp82, sizeof(ats_ptr_type)) ;

/* marking external values for GC */

/* code for dynamic loading */
statmp0 = ref_01088_ats_ptr_type (ATSstrcst("")) ;
statmp7 = ref_01088_ats_ptr_type (ATSstrcst("")) ;
statmp12 = ref_01088_ats_ptr_type (ATSstrcst("")) ;
statmp17 = ref_01088_ats_ptr_type (ATSstrcst("")) ;
statmp21 = (ats_sum_ptr_type)0 ;
statmp20 = ref_01088_ats_ptr_type (statmp21) ;
statmp38 = (ats_sum_ptr_type)0 ;
statmp37 = ref_01088_ats_ptr_type (statmp38) ;
statmp82 = (ats_sum_ptr_type)0 ;
statmp81 = ref_01088_ats_ptr_type (statmp82) ;
return ;
} /* end of [dynload function] */

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

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

/* end of [declatext_dats.c] */
