/*
**
** 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"

#include "libc/CATS/fcntl.cats"

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

#include "libc/CATS/time.cats"

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

#include "libc/CATS/stdio.cats"

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

#include "libc/CATS/fcntl.cats"

#include "libc/sys/CATS/types.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_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__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) ;
ATSextern_val(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__PMADD_0) ;

/* external dynamic constant declarations */
ATSextern_fun(ats_int_type, atspre_add_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_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_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, 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_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_appstr3) (ats_ptr_type, ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_concatxt) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline) () ;
ATSextern_fun(ats_ptr_type, ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_make_string) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, libatsynmark_charlst_pats2xhtmlize_bground) (ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2utils_2libatsynmark_2SATS_2libatsynmark_2esats__d0eclreplst_find_synop) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_get) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set) (ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_get) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_get) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_get) () ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__declname_find_synoplst) (ats_int_type, ats_ptr_type) ;
ATSextern_fun(ats_time_type, atslib_time_get) () ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add) (ats_ptr_type) ;
ATSextern_fun(ats_void_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add2) (ats_ptr_type, ats_ptr_type) ;
ATSextern_fun(ats_ptr_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_get) () ;

/* 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 */
ATSglobal(ats_sum_type, _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__PMADD_0) ;

/* exn constructor declarations */
/* global dynamic (non-functional) constant declarations */
/* internal function declarations */
static
ats_ptr_type auxlst_1 (ats_int_type arg0, ats_ptr_type arg1, ats_int_type arg2) ;
static
ats_ptr_type aux_4 (ats_ptr_type arg0) ;
static
ats_ptr_type auxlst_5 (ats_ptr_type arg0) ;
static
ats_ptr_type xmltagging_6 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type comment_7 (ats_ptr_type arg0) ;
static
ats_ptr_type ignore_8 (ats_ptr_type arg0) ;
static
ats_ptr_type ignoretxt_9 (ats_ptr_type arg0) ;
static
ats_ptr_type pcenter_10 (ats_ptr_type arg0) ;
static
ats_ptr_type stacode_11 (ats_ptr_type arg0) ;
static
ats_ptr_type dyncode_12 (ats_ptr_type arg0) ;
static
ats_ptr_type prfcode_13 (ats_ptr_type arg0) ;
static
ats_ptr_type keycode_14 (ats_ptr_type arg0) ;
static
ats_ptr_type timestamp_15 () ;
static
ats_ptr_type ref_01088_ats_ptr_type (ats_ptr_type arg0) ;
static
ats_ptr_type revapp_22 (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) ;
static
ats_ptr_type auxlst_24 (ats_ptr_type arg0) ;
static
ats_ptr_type synoplst2atext_23 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type HR_25 (ats_int_type arg0) ;
static
ats_ptr_type aux_name_26 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_name2_27 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type aux_synop_28 () ;
static
ats_ptr_type aux_synop2_29 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_descrpt_30 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_example_31 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_paramadd_32 (ats_ptr_type arg0, ats_ptr_type arg1) ;
static
ats_ptr_type auxlst_34 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_paramlist_33 () ;
static
ats_ptr_type aux_funretval_35 (ats_ptr_type arg0) ;
static
ats_ptr_type aux_37 (ats_ptr_type arg0) ;
static
ats_ptr_type auxlst_38 (ats_ptr_type arg0, ats_int_type arg1) ;

/* partial value template declarations */
/* static temporary variable declarations */
ATSstatic (ats_ptr_type, statmp29) ;
ATSstatic (ats_ptr_type, statmp30) ;
ATSstatic (ats_ptr_type, statmp60) ;
ATSstatic (ats_ptr_type, statmp63) ;

/* external value variable declarations */

/* function implementations */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 523(line=31, offs=3) -- 692(line=40, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__myatscodelink (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp0) ;
ATSlocal (ats_ptr_type, tmp1) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__myatscodelink:
tmp1 = atspre_tostringf (ATSstrcst("<a href=\"%s/%s\">%s</a>"), ATSstrcst("http://ats-lang.sourceforge.net/DOCUMENT/ATS-Postiats"), arg0, arg1) ;
tmp0 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp1) ;
return (tmp0) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__myatscodelink] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 934(line=56, offs=5) -- 1316(line=74, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_1 (ats_int_type arg0, ats_ptr_type arg1, ats_int_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_int_type, tmp7) ;

__ats_lab_auxlst_1:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp3 = ats_caselptrlab_mac(anairiats_sum_0, arg1, atslab_0) ;
tmp4 = ats_caselptrlab_mac(anairiats_sum_0, arg1, atslab_1) ;
ATS_FREE(arg1) ;
tmp5 = libatsynmark_charlst_pats2xhtmlize_bground (arg0, tmp3) ;
tmp7 = atspre_add_int_int (arg2, 1) ;
tmp6 = auxlst_1 (arg0, tmp4, tmp7) ;
tmp2 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp2, atslab_0, tmp5) ;
ats_selptrset_mac(anairiats_sum_0, tmp2, atslab_1, tmp6) ;
break ;

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

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 1396(line=80, offs=3) -- 1714(line=96, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__declname_find_synoplst (ats_int_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_ptr_type, tmp9) ;
ATSlocal (ats_ptr_type, tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__declname_find_synoplst:
tmp9 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__symbol_make_string (arg1) ;
tmp10 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclrepLst_get () ;
tmp11 = _2home_2hwxi_2Research_2ATS_2dPostiats_2utils_2libatsynmark_2SATS_2libatsynmark_2esats__d0eclreplst_find_synop (tmp10, tmp9) ;
tmp8 = auxlst_1 (arg0, tmp11, 0) ;
return (tmp8) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__declname_find_synoplst] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 1846(line=105, offs=5) -- 1980(line=111, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_4 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;

__ats_lab_aux_4:
tmp14 = atspre_tostringf (ATSstrcst("<li><a href=\"#%s\">%s</a></li>\n"), arg0, arg0) ;
tmp13 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp14) ;
return (tmp13) ;
} /* end of [aux_4] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 2001(line=112, offs=5) -- 2250(line=124, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_5 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp15) ;
ATSlocal (ats_ptr_type, tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;
ATSlocal (ats_ptr_type, tmp18) ;
ATSlocal (ats_ptr_type, tmp19) ;

__ats_lab_auxlst_5:
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_3_0 ; }
__ats_lab_2_1:
tmp16 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp17 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
ATS_FREE(arg0) ;
tmp18 = aux_4 (tmp16) ;
tmp19 = auxlst_5 (tmp17) ;
tmp15 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp15, atslab_0, tmp18) ;
ats_selptrset_mac(anairiats_sum_0, tmp15, atslab_1, tmp19) ;
break ;

/* branch: __ats_lab_3 */
__ats_lab_3_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_3_1:
tmp15 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp15) ;
} /* end of [auxlst_5] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 1830(line=103, offs=26) -- 2480(line=137, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclnameLst_make_menu () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp12) ;
ATSlocal (ats_ptr_type, tmp20) ;
ATSlocal (ats_ptr_type, tmp21) ;
ATSlocal (ats_ptr_type, tmp22) ;
ATSlocal (ats_ptr_type, tmp23) ;
ATSlocal (ats_ptr_type, tmp24) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclnameLst_make_menu:
tmp20 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclnameLst_get () ;
tmp21 = auxlst_5 (tmp20) ;
tmp22 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<menu>\n")) ;
tmp23 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_concatxt (tmp21) ;
tmp24 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</menu>")) ;
tmp12 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp22, tmp23, tmp24) ;
return (tmp12) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclnameLst_make_menu] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 1956(line=66, offs=5) -- 2149(line=73, offs=4)
*/
ATSstaticdec()
ats_ptr_type
xmltagging_6 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp25) ;
ATSlocal (ats_ptr_type, tmp26) ;
ATSlocal (ats_ptr_type, tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;

__ats_lab_xmltagging_6:
tmp26 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_appstr3 (ATSstrcst("<"), arg0, ATSstrcst(">")) ;
tmp27 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_appstr3 (ATSstrcst("</"), arg0, ATSstrcst(">")) ;
tmp28 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg1) ;
tmp25 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp26, tmp28, tmp27) ;
return (tmp25) ;
} /* end of [xmltagging_6] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 2649(line=99, offs=5) -- 2735(line=100, offs=58)
*/
ATSstaticdec()
ats_ptr_type
comment_7 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp31) ;
ATSlocal (ats_ptr_type, tmp32) ;

__ats_lab_comment_7:
tmp32 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp31 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (statmp29, tmp32, statmp30) ;
return (tmp31) ;
} /* end of [comment_7] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 2805(line=107, offs=5) -- 2845(line=107, offs=45)
*/
ATSstaticdec()
ats_ptr_type
ignore_8 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp33) ;

__ats_lab_ignore_8:
tmp33 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp33) ;
} /* end of [ignore_8] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 2850(line=108, offs=5) -- 2892(line=108, offs=47)
*/
ATSstaticdec()
ats_ptr_type
ignoretxt_9 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp34) ;

__ats_lab_ignoretxt_9:
tmp34 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp34) ;
} /* end of [ignoretxt_9] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 3183(line=130, offs=1) -- 3359(line=136, offs=4)
*/
ATSstaticdec()
ats_ptr_type
pcenter_10 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp35) ;
ATSlocal (ats_ptr_type, tmp36) ;
ATSlocal (ats_ptr_type, tmp37) ;
ATSlocal (ats_ptr_type, tmp38) ;

__ats_lab_pcenter_10:
tmp36 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<p style=\"text-align: center;\">")) ;
tmp37 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</p>")) ;
tmp38 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp35 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp36, tmp38, tmp37) ;
return (tmp35) ;
} /* end of [pcenter_10] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 3406(line=141, offs=1) -- 3584(line=147, offs=4)
*/
ATSstaticdec()
ats_ptr_type
stacode_11 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp39) ;
ATSlocal (ats_ptr_type, tmp40) ;
ATSlocal (ats_ptr_type, tmp41) ;
ATSlocal (ats_ptr_type, tmp42) ;

__ats_lab_stacode_11:
tmp40 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<span style=\"color: #0000F0;\">")) ;
tmp41 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</span>")) ;
tmp42 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp39 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp40, tmp42, tmp41) ;
return (tmp39) ;
} /* end of [stacode_11] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 3610(line=150, offs=1) -- 3788(line=156, offs=4)
*/
ATSstaticdec()
ats_ptr_type
dyncode_12 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp43) ;
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;
ATSlocal (ats_ptr_type, tmp46) ;

__ats_lab_dyncode_12:
tmp44 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<span style=\"color: #F00000;\">")) ;
tmp45 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</span>")) ;
tmp46 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp43 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp44, tmp46, tmp45) ;
return (tmp43) ;
} /* end of [dyncode_12] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 3814(line=159, offs=1) -- 3992(line=165, offs=4)
*/
ATSstaticdec()
ats_ptr_type
prfcode_13 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp47) ;
ATSlocal (ats_ptr_type, tmp48) ;
ATSlocal (ats_ptr_type, tmp49) ;
ATSlocal (ats_ptr_type, tmp50) ;

__ats_lab_prfcode_13:
tmp48 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<span style=\"color: #603030;\">")) ;
tmp49 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</span>")) ;
tmp50 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp47 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp48, tmp50, tmp49) ;
return (tmp47) ;
} /* end of [prfcode_13] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 4018(line=168, offs=1) -- 4212(line=174, offs=4)
*/
ATSstaticdec()
ats_ptr_type
keycode_14 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp51) ;
ATSlocal (ats_ptr_type, tmp52) ;
ATSlocal (ats_ptr_type, tmp53) ;
ATSlocal (ats_ptr_type, tmp54) ;

__ats_lab_keycode_14:
tmp52 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<span style=\"color:#000000;font-weight:bold;\">")) ;
tmp53 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</span>")) ;
tmp54 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp51 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp52, tmp54, tmp53) ;
return (tmp51) ;
} /* end of [keycode_14] */

/*
// /home/hwxi/Research/ATS-Anairiats/utils/atsdoc/HATS/xhtmlatxt.hats: 4259(line=178, offs=5) -- 4490(line=187, offs=4)
*/
ATSstaticdec()
ats_ptr_type
timestamp_15 () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp55) ;
ATSlocal (ats_time_type, tmp56) ;
ATSlocal (ats_ptr_type, tmp57) ;
ATSlocal (ats_ptr_type, tmp58) ;
ATSlocal (ats_ptr_type, tmp59) ;

__ats_lab_timestamp_15:
/* ats_time_type tmp56 ; */
tmp56 = atslib_time_get () ;
tmp57 = atslib_ctime ((&tmp56)) ;
tmp58 = ats_selsin_mac(tmp57, atslab_1) ;
tmp59 = atspre_tostringf (ATSstrcst("%s"), ats_castfn_mac(ats_ptr_type, tmp58)) ;
tmp55 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ats_castfn_mac(ats_ptr_type, tmp59)) ;
return (tmp55) ;
} /* end of [timestamp_15] */

/*
// /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, tmp61) ;
ATSlocal (ats_ptr_type, tmp62) ;

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

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 3003(line=165, offs=20) -- 3104(line=169, offs=4)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp64) ;
ATSlocal (ats_ptr_type, tmp65) ;
ATSlocal (ats_ptr_type, tmp66) ;
ATSlocal (ats_ptr_type, tmp67) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add:
tmp65 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp60), atslab_1) ;
tmp67 = ats_ptrget_mac(ats_ptr_type, tmp65) ;
tmp66 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp66, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_0, tmp66, atslab_1, tmp67) ;
ats_ptrget_mac(ats_ptr_type, tmp65) = tmp66 ;
return /* (tmp64) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 3169(line=173, offs=3) -- 3222(line=173, offs=56)
*/
ATSglobaldec()
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add2 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp68) ;
ATSlocal (ats_ptr_type, tmp69) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add2:
tmp69 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp69, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_0, tmp69, atslab_1, arg1) ;
/* tmp68 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add (tmp69) ;
return /* (tmp68) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add2] */

/*
// /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_22 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp76) ;
ATSlocal (ats_ptr_type, tmp77) ;
ATSlocal (ats_ptr_type, tmp78) ;
ATSlocal (ats_ptr_type, tmp79) ;

__ats_lab_revapp_22:
do {
/* branch: __ats_lab_4 */
__ats_lab_4_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_5_0 ; }
__ats_lab_4_1:
tmp77 = &ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
tmp78 = ats_ptrget_mac(ats_ptr_type, tmp77) ;
ats_ptrget_mac(ats_ptr_type, tmp77) = arg1 ;
tmp79 = arg0 ;
arg0 = tmp78 ;
arg1 = tmp79 ;
goto __ats_lab_revapp_22 ; // tail call
break ;

/* branch: __ats_lab_5 */
__ats_lab_5_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_5_1:
tmp76 = arg1 ;
break ;
} while (0) ;
return (tmp76) ;
} /* end of [revapp_22] */

/*
// /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, tmp75) ;

__ats_lab_list_vt_reverse_append_01507_ats_ptr_type:
tmp75 = revapp_22 (arg0, arg1) ;
return (tmp75) ;
} /* 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, tmp74) ;
ATSlocal (ats_ptr_type, tmp80) ;

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

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 3287(line=177, offs=20) -- 3427(line=183, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_get () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp70) ;
ATSlocal (ats_ptr_type, tmp71) ;
ATSlocal (ats_ptr_type, tmp72) ;
ATSlocal (ats_ptr_type, tmp73) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_get:
tmp71 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp60), atslab_1) ;
tmp72 = ats_ptrget_mac(ats_ptr_type, tmp71) ;
tmp73 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp71) = tmp73 ;
tmp70 = list_vt_reverse_01506_ats_ptr_type (tmp72) ;
return (tmp70) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_get] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 3586(line=194, offs=5) -- 3995(line=210, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_24 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp82) ;
ATSlocal (ats_ptr_type, tmp83) ;
ATSlocal (ats_ptr_type, tmp84) ;
ATSlocal (ats_ptr_type, tmp85) ;
// ATSlocal_void (tmp86) ;
ATSlocal (ats_ptr_type, tmp87) ;
ATSlocal (ats_ptr_type, tmp88) ;

__ats_lab_auxlst_24:
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_7_0 ; }
__ats_lab_6_1:
tmp83 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp84 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
ATS_FREE(arg0) ;
tmp85 = atspre_tostringf (ATSstrcst("<pre class=\"patsyntax\">\n%s</pre>\n"), ats_castfn_mac(ats_ptr_type, tmp83)) ;
/* tmp86 = */ atspre_strptr_free (tmp83) ;
tmp87 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp85) ;
tmp88 = auxlst_24 (tmp84) ;
tmp82 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp82, atslab_0, tmp87) ;
ats_selptrset_mac(anairiats_sum_0, tmp82, atslab_1, tmp88) ;
break ;

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

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 3508(line=189, offs=5) -- 4409(line=227, offs=4)
*/
ATSstaticdec()
ats_ptr_type
synoplst2atext_23 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp81) ;
ATSlocal (ats_ptr_type, tmp89) ;
ATSlocal (ats_ptr_type, tmp90) ;
ATSlocal (ats_ptr_type, tmp91) ;
// ATSlocal_void (tmp92) ;

__ats_lab_synoplst2atext_23:
tmp89 = auxlst_24 (arg1) ;
do {
/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (tmp89 == (ats_sum_ptr_type)0) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
tmp81 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_concatxt (tmp89) ;
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
// if (tmp89 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_9_1:
tmp90 = atspre_tostringf (ATSstrcst("Synopsis for [%s] is unavailable."), arg0) ;
tmp91 = atspre_tostringf (ATSstrcst("<pre class=\"patsyntax\">\n%s</pre>\n"), ats_castfn_mac(ats_ptr_type, tmp90)) ;
/* tmp92 = */ atspre_strptr_free (tmp90) ;
tmp81 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp91) ;
break ;
} while (0) ;
return (tmp81) ;
} /* end of [synoplst2atext_23] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 4469(line=233, offs=4) -- 4646(line=239, offs=4)
*/
ATSstaticdec()
ats_ptr_type
HR_25 (ats_int_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp93) ;
ATSlocal (ats_ptr_type, tmp94) ;

__ats_lab_HR_25:
tmp94 = atspre_tostringf (ATSstrcst("<hr style=\"background-color: #E0E0E0; height: %ipx;\"></hr>\n"), arg0) ;
tmp93 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp94) ;
return (tmp93) ;
} /* end of [HR_25] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 4666(line=241, offs=4) -- 4896(line=250, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_name_26 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp95) ;
// ATSlocal_void (tmp96) ;
ATSlocal (ats_ptr_type, tmp97) ;

__ats_lab_aux_name_26:
/* tmp96 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set (arg0) ;
tmp97 = atspre_tostringf (ATSstrcst("<h2><a id=\"%s\">%s</a></h2>\n"), arg0, arg0) ;
tmp95 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp97) ;
return (tmp95) ;
} /* end of [aux_name_26] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 4922(line=252, offs=4) -- 5235(line=262, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_name2_27 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp98) ;
// ATSlocal_void (tmp99) ;
ATSlocal (ats_ptr_type, tmp100) ;

__ats_lab_aux_name2_27:
/* tmp99 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_set (arg0) ;
tmp100 = atspre_tostringf (ATSstrcst("<h2><a id=\"%s\" href=\"%s\">%s</a></h2>\n"), arg0, arg1, arg0) ;
tmp98 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strptr (tmp100) ;
return (tmp98) ;
} /* end of [aux_name2_27] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 5262(line=264, offs=4) -- 5561(line=277, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_synop_28 () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp101) ;
ATSlocal (ats_ptr_type, tmp102) ;
ATSlocal (ats_ptr_type, tmp103) ;
ATSlocal (ats_ptr_type, tmp104) ;
ATSlocal (ats_ptr_type, tmp105) ;
ATSlocal (ats_ptr_type, tmp106) ;
ATSlocal (ats_ptr_type, tmp107) ;

__ats_lab_aux_synop_28:
tmp103 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Synopsis")) ;
tmp104 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp102 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp103, tmp104) ;
tmp105 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclname_get () ;
tmp106 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__declname_find_synoplst (0, tmp105) ;
tmp107 = synoplst2atext_23 (tmp105, tmp106) ;
tmp101 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp102, tmp107) ;
return (tmp101) ;
} /* end of [aux_synop_28] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 5588(line=279, offs=4) -- 5748(line=285, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_synop2_29 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp108) ;
ATSlocal (ats_ptr_type, tmp109) ;
ATSlocal (ats_ptr_type, tmp110) ;
ATSlocal (ats_ptr_type, tmp111) ;
ATSlocal (ats_ptr_type, tmp112) ;

__ats_lab_aux_synop2_29:
tmp110 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Synopsis")) ;
tmp111 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp109 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp110, tmp111) ;
tmp112 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp108 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp109, tmp112) ;
return (tmp108) ;
} /* end of [aux_synop2_29] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 5776(line=287, offs=4) -- 5940(line=293, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_descrpt_30 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp113) ;
ATSlocal (ats_ptr_type, tmp114) ;
ATSlocal (ats_ptr_type, tmp115) ;
ATSlocal (ats_ptr_type, tmp116) ;
ATSlocal (ats_ptr_type, tmp117) ;

__ats_lab_aux_descrpt_30:
tmp115 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Description")) ;
tmp116 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp114 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp115, tmp116) ;
tmp117 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp113 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp114, tmp117) ;
return (tmp113) ;
} /* end of [aux_descrpt_30] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 5969(line=295, offs=4) -- 6107(line=299, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_example_31 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp118) ;
ATSlocal (ats_ptr_type, tmp119) ;
ATSlocal (ats_ptr_type, tmp120) ;
ATSlocal (ats_ptr_type, tmp121) ;
ATSlocal (ats_ptr_type, tmp122) ;

__ats_lab_aux_example_31:
tmp120 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Example")) ;
tmp121 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp119 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp120, tmp121) ;
tmp122 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp118 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp119, tmp122) ;
return (tmp118) ;
} /* end of [aux_example_31] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 6137(line=301, offs=5) -- 6236(line=306, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_paramadd_32 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp123) ;
// ATSlocal_void (tmp124) ;

__ats_lab_aux_paramadd_32:
/* tmp124 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_add2 (arg0, arg1) ;
tmp123 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
return (tmp123) ;
} /* end of [aux_paramadd_32] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 6416(line=315, offs=5) -- 6963(line=333, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_34 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp130) ;
ATSlocal (ats_ptr_type, tmp131) ;
ATSlocal (ats_ptr_type, tmp132) ;
ATSlocal (ats_ptr_type, tmp133) ;
ATSlocal (ats_ptr_type, tmp134) ;
ATSlocal (ats_ptr_type, tmp135) ;
ATSlocal (ats_ptr_type, tmp136) ;
ATSlocal (ats_ptr_type, tmp137) ;
ATSlocal (ats_ptr_type, tmp138) ;
ATSlocal (ats_ptr_type, tmp139) ;
ATSlocal (ats_ptr_type, tmp140) ;
ATSlocal (ats_ptr_type, tmp141) ;
ATSlocal (ats_ptr_type, tmp142) ;

__ats_lab_auxlst_34:
do {
/* branch: __ats_lab_10 */
__ats_lab_10_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_11_0 ; }
__ats_lab_10_1:
tmp131 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp132 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
ATS_FREE(arg0) ;
tmp133 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<li>")) ;
tmp134 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</li>")) ;

tmp135 = ats_caselptrlab_mac(anairiats_sum_0, tmp131, atslab_0) ;
tmp136 = ats_caselptrlab_mac(anairiats_sum_0, tmp131, atslab_1) ;
tmp137 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (tmp135) ;
tmp138 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst(" : ")) ;
tmp139 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (tmp136) ;
tmp140 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp137, tmp138, tmp139) ;
tmp141 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp133, tmp140, tmp134) ;
tmp142 = auxlst_34 (tmp132) ;
tmp130 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp141, tmp142) ;
break ;

/* branch: __ats_lab_11 */
__ats_lab_11_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_11_1:
tmp130 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_nil () ;
break ;
} while (0) ;
return (tmp130) ;
} /* end of [auxlst_34] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 6267(line=308, offs=5) -- 7175(line=345, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_paramlist_33 () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp125) ;
ATSlocal (ats_ptr_type, tmp126) ;
ATSlocal (ats_ptr_type, tmp127) ;
ATSlocal (ats_ptr_type, tmp128) ;
ATSlocal (ats_ptr_type, tmp129) ;
ATSlocal (ats_ptr_type, tmp143) ;
ATSlocal (ats_ptr_type, tmp144) ;
ATSlocal (ats_ptr_type, tmp145) ;
ATSlocal (ats_ptr_type, tmp146) ;

__ats_lab_aux_paramlist_33:
tmp127 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Parameters")) ;
tmp128 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp126 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp127, tmp128) ;
tmp129 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<ul>")) ;
tmp144 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__theParamaddLst_get () ;
tmp143 = auxlst_34 (tmp144) ;
tmp145 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("</ul>")) ;
tmp146 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt3 (tmp129, tmp143, tmp145) ;
tmp125 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp126, tmp146) ;
return (tmp125) ;
} /* end of [aux_paramlist_33] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 7207(line=347, offs=5) -- 7352(line=351, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_funretval_35 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp147) ;
ATSlocal (ats_ptr_type, tmp148) ;
ATSlocal (ats_ptr_type, tmp149) ;
ATSlocal (ats_ptr_type, tmp150) ;
ATSlocal (ats_ptr_type, tmp151) ;

__ats_lab_aux_funretval_35:
tmp149 = xmltagging_6 (ATSstrcst("h3"), ATSstrcst("Return Value")) ;
tmp150 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_newline () ;
tmp148 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp149, tmp150) ;
tmp151 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strsub (arg0) ;
tmp147 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_apptxt2 (tmp148, tmp151) ;
return (tmp147) ;
} /* end of [aux_funretval_35] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 7458(line=358, offs=5) -- 7941(line=380, offs=4)
*/
ATSstaticdec()
ats_ptr_type
aux_37 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp153) ;
ATSlocal (ats_ptr_type, tmp154) ;
ATSlocal (ats_ptr_type, tmp155) ;
ATSlocal (ats_ptr_type, tmp156) ;
ATSlocal (ats_ptr_type, tmp157) ;
ATSlocal (ats_ptr_type, tmp158) ;
ATSlocal (ats_ptr_type, tmp159) ;
ATSlocal (ats_ptr_type, tmp160) ;
ATSlocal (ats_ptr_type, tmp161) ;
ATSlocal (ats_ptr_type, tmp162) ;

__ats_lab_aux_37:
do {
/* branch: __ats_lab_12 */
__ats_lab_12_0:
if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_13_0 ; }
__ats_lab_12_1:
tmp154 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp153 = aux_name_26 (tmp154) ;
break ;

/* branch: __ats_lab_13 */
__ats_lab_13_0:
if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_14_0 ; }
__ats_lab_13_1:
tmp155 = ats_caselptrlab_mac(anairiats_sum_2, arg0, atslab_0) ;
tmp156 = ats_caselptrlab_mac(anairiats_sum_2, arg0, atslab_1) ;
tmp153 = aux_name2_27 (tmp155, tmp156) ;
break ;

/* branch: __ats_lab_14 */
__ats_lab_14_0:
if (((ats_sum_ptr_type)arg0)->tag != 2) { goto __ats_lab_15_0 ; }
__ats_lab_14_1:
tmp153 = aux_synop_28 () ;
break ;

/* branch: __ats_lab_15 */
__ats_lab_15_0:
if (((ats_sum_ptr_type)arg0)->tag != 3) { goto __ats_lab_16_0 ; }
__ats_lab_15_1:
tmp157 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp153 = aux_synop2_29 (tmp157) ;
break ;

/* branch: __ats_lab_16 */
__ats_lab_16_0:
if (((ats_sum_ptr_type)arg0)->tag != 4) { goto __ats_lab_17_0 ; }
__ats_lab_16_1:
tmp158 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp153 = aux_descrpt_30 (tmp158) ;
break ;

/* branch: __ats_lab_17 */
__ats_lab_17_0:
if (((ats_sum_ptr_type)arg0)->tag != 5) { goto __ats_lab_18_0 ; }
__ats_lab_17_1:
tmp159 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp153 = aux_example_31 (tmp159) ;
break ;

/* branch: __ats_lab_18 */
__ats_lab_18_0:
if (((ats_sum_ptr_type)arg0)->tag != 6) { goto __ats_lab_19_0 ; }
__ats_lab_18_1:
tmp160 = ats_caselptrlab_mac(anairiats_sum_2, arg0, atslab_0) ;
tmp161 = ats_caselptrlab_mac(anairiats_sum_2, arg0, atslab_1) ;
tmp153 = aux_paramadd_32 (tmp160, tmp161) ;
break ;

/* branch: __ats_lab_19 */
__ats_lab_19_0:
if (((ats_sum_ptr_type)arg0)->tag != 7) { goto __ats_lab_20_0 ; }
__ats_lab_19_1:
tmp153 = aux_paramlist_33 () ;
break ;

/* branch: __ats_lab_20 */
__ats_lab_20_0:
// if (((ats_sum_ptr_type)arg0)->tag != 8) { ats_deadcode_failure_handle () ; }
__ats_lab_20_1:
tmp162 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp153 = aux_funretval_35 (tmp162) ;
break ;
} while (0) ;
return (tmp153) ;
} /* end of [aux_37] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 7965(line=382, offs=5) -- 8497(line=408, offs=4)
*/
ATSstaticdec()
ats_ptr_type
auxlst_38 (ats_ptr_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp163) ;
ATSlocal (ats_ptr_type, tmp164) ;
ATSlocal (ats_ptr_type, tmp165) ;
ATSlocal (ats_ptr_type, tmp166) ;
ATSlocal (ats_ptr_type, tmp167) ;
ATSlocal (ats_int_type, tmp168) ;
ATSlocal (ats_ptr_type, tmp169) ;
ATSlocal (ats_bool_type, tmp170) ;
ATSlocal (ats_bool_type, tmp171) ;
ATSlocal (ats_ptr_type, tmp172) ;

__ats_lab_auxlst_38:
do {
/* branch: __ats_lab_21 */
__ats_lab_21_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_25_0 ; }
__ats_lab_21_1:
tmp164 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp165 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
ATS_FREE(arg0) ;
tmp166 = aux_37 (tmp164) ;
tmp168 = atspre_add_int_int (arg1, 1) ;
tmp167 = auxlst_38 (tmp165, tmp168) ;
tmp169 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp169, atslab_0, tmp166) ;
ats_selptrset_mac(anairiats_sum_0, tmp169, atslab_1, tmp167) ;
tmp171 = atspre_gt_int_int (arg1, 0) ;
if (tmp171) {
do {
/* branch: __ats_lab_22 */
__ats_lab_22_0:
if (((ats_sum_ptr_type)tmp164)->tag != 0) { goto __ats_lab_23_0 ; }
__ats_lab_22_1:
tmp170 = ats_true_bool ;
break ;

/* branch: __ats_lab_23 */
__ats_lab_23_0:
if (((ats_sum_ptr_type)tmp164)->tag != 1) { goto __ats_lab_24_0 ; }
__ats_lab_23_1:
tmp170 = ats_true_bool ;
break ;

/* branch: __ats_lab_24 */
__ats_lab_24_0:
__ats_lab_24_1:
tmp170 = ats_false_bool ;
break ;
} while (0) ;
} else {
tmp170 = ats_false_bool ;
} /* end of [if] */
if (tmp170) {
tmp172 = HR_25 (1) ;
tmp163 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp163, atslab_0, tmp172) ;
ats_selptrset_mac(anairiats_sum_0, tmp163, atslab_1, tmp169) ;
} else {
tmp163 = tmp169 ;
} /* end of [if] */
break ;

/* branch: __ats_lab_25 */
__ats_lab_25_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_25_1:
tmp163 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp163) ;
} /* end of [auxlst_38] */

/*
// /home/hwxi/Research/ATS-Postiats/share/DOCUGEN/htmlgendecl.dats: 7442(line=356, offs=29) -- 8632(line=416, offs=4)
*/
ATSglobaldec()
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclitemLst_make_content () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp152) ;
ATSlocal (ats_ptr_type, tmp173) ;
ATSlocal (ats_ptr_type, tmp174) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclitemLst_make_content:
tmp173 = _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2declatext_2esats__theDeclitemLst_get () ;
tmp174 = auxlst_38 (tmp173, 0) ;
tmp152 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_concatxt (tmp174) ;
return (tmp152) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__theDeclitemLst_make_content] */

/* 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) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__staload (void) ;
extern ats_void_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload (void) ;
// extern ats_void_type ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2libc_2SATS_2time_2esats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2libc_2SATS_2stdio_2esats__staload (void) ;
extern ats_void_type ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__staload (void) ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__staload () {
static int _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__staload_flag = 0 ;
if (_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__staload_flag) return ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_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 () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2esats__staload () ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_symbol_2esats__staload () ;
// ATS_2d0_2e2_2e12_2prelude_2SATS_2unsafe_2esats__staload () ;
ATS_2d0_2e2_2e12_2libc_2SATS_2time_2esats__staload () ;
ATS_2d0_2e2_2e12_2libc_2SATS_2stdio_2esats__staload () ;
ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__staload () ;

// _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__PMADD_0.tag = 0 ;
return ;
} /* staload function */

/* dynamic load function */

// dynload flag declaration
extern ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__dynload_flag ;

ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__dynload () {
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_2edats__dynload_flag = 1 ;
_2home_2hwxi_2Research_2ATS_2dPostiats_2share_2DOCUGEN_2htmlgendecl_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(&statmp29, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp30, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp60, sizeof(ats_ptr_type)) ;
ATS_GC_MARKROOT(&statmp63, sizeof(ats_ptr_type)) ;

/* marking external values for GC */

/* code for dynamic loading */
statmp29 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("<!--")) ;
statmp30 = ATS_2d0_2e2_2e12_2libatsdoc_2SATS_2libatsdoc_atext_2esats__atext_strcst (ATSstrcst("-->")) ;
statmp63 = (ats_sum_ptr_type)0 ;
statmp60 = ref_01088_ats_ptr_type (statmp63) ;
return ;
} /* end of [dynload function] */

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

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

/* end of [htmlgendecl_dats.c] */
