/*
**
** The C code is generated by [ATS/Postiats-0-3-13]
**
*/

/*
** include runtime header files
*/
#ifndef _ATS_CCOMP_HEADER_NONE_
#include "pats_ccomp_config.h"
#include "pats_ccomp_basics.h"
#include "pats_ccomp_typedefs.h"
#include "pats_ccomp_instrset.h"
#include "pats_ccomp_memalloc.h"
#ifndef _ATS_CCOMP_EXCEPTION_NONE_
#include "pats_ccomp_memalloca.h"
#include "pats_ccomp_exception.h"
#endif // end of [_ATS_CCOMP_EXCEPTION_NONE_]
#endif /* _ATS_CCOMP_HEADER_NONE_ */


/*
** include prelude cats files
*/
#ifndef _ATS_CCOMP_PRELUDE_NONE_
//
#include "prelude/CATS/basics.cats"
#include "prelude/CATS/integer.cats"
#include "prelude/CATS/pointer.cats"
#include "prelude/CATS/integer_long.cats"
#include "prelude/CATS/integer_size.cats"
#include "prelude/CATS/integer_short.cats"
#include "prelude/CATS/bool.cats"
#include "prelude/CATS/char.cats"
#include "prelude/CATS/float.cats"
#include "prelude/CATS/integer_ptr.cats"
#include "prelude/CATS/integer_fixed.cats"
#include "prelude/CATS/memory.cats"
#include "prelude/CATS/string.cats"
#include "prelude/CATS/strptr.cats"
//
#include "prelude/CATS/fprintf.cats"
//
#include "prelude/CATS/filebas.cats"
//
#include "prelude/CATS/list.cats"
#include "prelude/CATS/option.cats"
#include "prelude/CATS/array.cats"
#include "prelude/CATS/arrayptr.cats"
#include "prelude/CATS/arrayref.cats"
#include "prelude/CATS/matrix.cats"
#include "prelude/CATS/matrixptr.cats"
//
#endif /* _ATS_CCOMP_PRELUDE_NONE_ */
/*
** for user-supplied prelude
*/
#ifdef _ATS_CCOMP_PRELUDE_USER_
//
#include _ATS_CCOMP_PRELUDE_USER_
//
#endif /* _ATS_CCOMP_PRELUDE_USER_ */
/*
** for user2-supplied prelude
*/
#ifdef _ATS_CCOMP_PRELUDE_USER2_
//
#include _ATS_CCOMP_PRELUDE_USER2_
//
#endif /* _ATS_CCOMP_PRELUDE_USER2_ */

/*
staload-prologues(beg)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/basics.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 1533(line=44, offs=1) -- 1572(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer_long.dats: 1602(line=49, offs=1) -- 1641(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer_size.dats: 1597(line=49, offs=1) -- 1636(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer_short.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/char.dats: 1610(line=48, offs=1) -- 1649(line=48, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/float.dats: 1636(line=50, offs=1) -- 1675(line=50, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/string.dats: 1631(line=50, offs=1) -- 1670(line=50, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/strptr.dats: 1629(line=50, offs=1) -- 1668(line=50, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/strptr.dats: 1691(line=54, offs=1) -- 1738(line=54, offs=48)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer_ptr.dats: 1601(line=49, offs=1) -- 1640(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer_fixed.dats: 1603(line=49, offs=1) -- 1642(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/memory.dats: 1410(line=38, offs=1) -- 1449(line=39, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/filebas.dats: 1607(line=49, offs=1) -- 1646(line=50, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/filebas.dats: 1669(line=54, offs=1) -- 1715(line=55, offs=39)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 1596(line=49, offs=1) -- 1635(line=49, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/filebas.dats: 1738(line=59, offs=1) -- 1783(line=60, offs=38)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
*/

#include \
"libats/libc/CATS/stdio.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
*/

#include \
"libats/libc/CATS/sys/types.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/filebas.dats: 1865(line=66, offs=1) -- 1912(line=66, offs=48)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/sys/stat.sats: 1390(line=36, offs=1) -- 1440(line=39, offs=3)
*/

#include \
"libats/libc/CATS/sys/stat.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/sys/stat.sats: 1756(line=58, offs=1) -- 1805(line=60, offs=34)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
*/

#include \
"libats/libc/CATS/sys/types.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/filebas.dats: 15937(line=927, offs=1) -- 15974(line=928, offs=30)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/stdio.sats: 1390(line=36, offs=1) -- 1437(line=39, offs=3)
*/

#include \
"libats/libc/CATS/stdio.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/stdio.sats: 1950(line=69, offs=1) -- 1999(line=71, offs=34)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/sys/types.sats: 1390(line=36, offs=1) -- 1441(line=39, offs=3)
*/

#include \
"libats/libc/CATS/sys/types.cats"
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/list.dats: 1529(line=44, offs=1) -- 1568(line=45, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/list.dats: 1569(line=46, offs=1) -- 1615(line=47, offs=39)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/list_vt.dats: 1538(line=44, offs=1) -- 1577(line=45, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/list_vt.dats: 1578(line=46, offs=1) -- 1624(line=47, offs=39)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/SHARE/list_vt_mergesort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/SHARE/list_vt_quicksort.dats: 1546(line=44, offs=1) -- 1585(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/array.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/SHARE/array_bsearch.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/SHARE/array_quicksort.dats: 1531(line=44, offs=1) -- 1570(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/arrayptr.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/arrayref.dats: 1532(line=44, offs=1) -- 1571(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/matrix.dats: 1535(line=44, offs=1) -- 1574(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/matrixptr.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/matrixref.dats: 1538(line=44, offs=1) -- 1577(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/stream.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/stream_vt.dats: 1523(line=44, offs=1) -- 1562(line=44, offs=40)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/tostring.dats: 1528(line=44, offs=1) -- 1567(line=45, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/unsafe.dats: 1532(line=44, offs=1) -- 1566(line=44, offs=35)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/checkast.dats: 1531(line=44, offs=1) -- 1570(line=45, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/contrib/atscntrb/atscntrb-hx-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1236(line=43, offs=3)
*/

//
#include \
"atscntrb-hx-libgmp/CATS/gmp.cats"
//
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1660(line=37, offs=1) -- 1700(line=38, offs=27)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1727(line=42, offs=1) -- 1759(line=42, offs=33)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1833(line=49, offs=1) -- 1867(line=49, offs=35)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_t.dats: 1868(line=50, offs=1) -- 1908(line=50, offs=41)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1656(line=37, offs=1) -- 1696(line=39, offs=27)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/mydepies.hats: 208(line=18, offs=1) -- 248(line=19, offs=32)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/contrib/atscntrb/atscntrb-hx-libgmp/SATS/gmp.sats: 1178(line=38, offs=1) -- 1236(line=43, offs=3)
*/

//
#include \
"atscntrb-hx-libgmp/CATS/gmp.cats"
//
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1813(line=49, offs=1) -- 1845(line=49, offs=33)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 1846(line=50, offs=1) -- 1881(line=50, offs=36)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1657(line=37, offs=1) -- 1689(line=37, offs=33)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/gintinf_t.dats: 1690(line=38, offs=1) -- 1724(line=38, offs=35)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_t.sats: 1805(line=48, offs=1) -- 1828(line=48, offs=24)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
*/
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/libats/libc/SATS/math.sats: 1380(line=35, offs=1) -- 1426(line=38, offs=3)
*/

#include \
"libats/libc/CATS/math.cats"
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/SATS/intinf_vt.sats: 1806(line=48, offs=1) -- 1829(line=48, offs=24)
*/
/*
staload-prologues(end)
*/
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 204(line=9, offs=1) -- 372(line=15, offs=3)
*/
ATSextcode_beg()
#ifndef LIBRARY_BUILD
#define ATS_MEMALLOC_LIBC
#include "ccomp/runtime/pats_ccomp_memalloc_libc.h"
#include "ccomp/runtime/pats_ccomp_runtime_memalloc.c"
#endif
ATSextcode_end()
/*
typedefs-for-tyrecs-and-tysums(beg)
*/
/*
typedefs-for-tyrecs-and-tysums(end)
*/
/*
dynconlst-declaration(beg)
*/
/*
dynconlst-declaration(end)
*/
/*
dyncstlst-declaration(beg)
*/
ATSdyncst_mac(atspre_ptr_alloc_tsz)
ATSdyncst_mac(atscntrb_gmp_mpz_init)
ATSdyncst_mac(atscntrb_gmp_mpz_fib_uint)
ATSdyncst_mac(atspre_g1int2int_int_int)
ATSdyncst_mac(atspre_g1int_gt_int)
ATSdyncst_mac(atspre_g1int_half_int)
ATSdyncst_mac(atspre_g0int_mod_int)
ATSdyncst_mac(atspre_g0int2int_int_int)
ATSdyncst_mac(atspre_g0int_eq_int)
ATSdyncst_mac(atspre_g0int_mul_int)
ATSdyncst_mac(atspre_g1int_eq_int)
ATSdyncst_mac(atscntrb_gmp_mpz_cmp_int)
ATSdyncst_mac(atspre_g0int_lt_int)
ATSdyncst_mac(atspre_g1int_neg_int)
ATSdyncst_mac(atspre_g0int_gt_int)
ATSdyncst_mac(atscntrb_gmp_mpz_init_set_mpz)
ATSdyncst_mac(atscntrb_gmp_mpz_mul2_mpz)
ATSdyncst_mac(atscntrb_gmp_mpz_clear)
ATSdyncst_mac(atspre_ptr_free)
ATSdyncst_mac(atscntrb_gmp_mpz_init_set_int)
ATSdyncst_mac(atspre_g0float2int_double_int)
ATSdyncst_mac(atslib_libats_libc_sqrt_double)
ATSdyncst_mac(atspre_g0int2float_int_double)
ATSdyncst_mac(atspre_g1int_lt_int)
ATSdyncst_mac(atspre_g1int_add_int)
ATSdyncst_mac(atspre_g1int_div_int)
/*
dyncstlst-declaration(end)
*/
/*
dynvalist-implementation(beg)
*/
/*
dynvalist-implementation(end)
*/
/*
exnconlst-declaration(beg)
*/
#ifndef _ATS_CCOMP_EXCEPTION_NONE_
ATSextern()
atsvoid_t0ype
the_atsexncon_initize
(
  atstype_exnconptr d2c, atstype_string exnmsg
) ;
#endif // end of [_ATS_CCOMP_EXCEPTION_NONE_]
/*
exnconlst-declaration(end)
*/
/*
extypelst-declaration(beg)
*/
/*
extypelst-declaration(end)
*/
/*
assumelst-declaration(beg)
*/
#ifndef _ATS_CCOMP_ASSUME_CHECK_NONE_
#endif // #ifndef(_ATS_CCOMP_ASSUME_CHECK_NONE_)
/*
assumelst-declaration(end)
*/
ATSstatic()
atstkind_type(atstype_ptrk)
fib_gmp_0(atstkind_t0ype(atstype_uint)) ;

#if(0)
#if(0)
ATSextern()
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1() ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__1() ;

ATSstatic()
atstkind_t0ype(atstype_int)
exp_3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_type(atstype_ptrk)
big_exp_15(atstkind_type(atstype_ptrk), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_int)
ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19(atsrefarg0_type(atstkind_type(atstype_ptrk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_int)
ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19__1(atsrefarg0_type(atstkind_type(atstype_ptrk)), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g0int_int__21(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g0int_int__21__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g0int_int__25(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g0int_int__25__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30(atstkind_type(atstype_ptrk)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30__1(atstkind_type(atstype_ptrk)) ;

#if(0)
#if(0)
ATSextern()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32(atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__1(atsrefarg0_type(atstkind_type(atstype_ptrk))) ;

ATSstatic()
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__2() ;

#if(0)
#if(0)
ATSextern()
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35(atstkind_type(atstype_ptrk)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__1(atstkind_type(atstype_ptrk)) ;

ATSstatic()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__2(atsrefarg0_type(atstkind_type(atstype_ptrk))) ;

ATSstatic()
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__3() ;

#if(0)
#if(0)
ATSextern()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39__1(atstkind_type(atstype_ptrk), atsrefarg0_type(atstkind_type(atstype_ptrk))) ;

ATSstatic()
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__2(atstkind_type(atstype_ptrk)) ;

ATSstatic()
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__3(atstkind_type(atstype_ptrk)) ;

#if(0)
#if(0)
ATSextern()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43(atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43__1(atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__4() ;

ATSstatic()
atstkind_t0ype(atstype_int)
sqrt_int_46(atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
is_prime_48(atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
loop_49(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50(atstkind_t0ype(atstyvar_type(tk)), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]
#endif // end of [TEMPLATE]

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50__1(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__4(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
is_semiprime_57(atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
loop_58(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50__2(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__5(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__3(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

ATSstatic()
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__6(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;

#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
is_prime_ats(atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]

#if(0)
ATSextern()
atstkind_t0ype(atstype_bool)
is_semiprime_ats(atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]

#if(0)
ATSextern()
atstkind_t0ype(atstype_int)
exp_ats(atstkind_t0ype(atstype_int), atstkind_t0ype(atstype_int)) ;
#endif // end of [QUALIFIED]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 414(line=12, offs=4) -- 587(line=19, offs=6)
*/
/*
local: 
global: fib_gmp_0$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_type(atstype_ptrk)
fib_gmp_0(atstkind_t0ype(atstype_uint) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret0, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmpref1, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp4) ;
// ATStmpdec_void(tmp5) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 414(line=12, offs=4) -- 587(line=19, offs=6)
*/
ATSINSflab(__patsflab_fib_gmp_0):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 451(line=13, offs=3) -- 587(line=19, offs=6)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 463(line=14, offs=9) -- 464(line=14, offs=10)
*/
/*
ATSINStmpdec(tmpref1) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 467(line=14, offs=13) -- 478(line=14, offs=24)
*/
ATSINSmove(tmpref1, ATSLIB_056_prelude__ptr_alloc__1__1()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 492(line=15, offs=14) -- 513(line=15, offs=35)
*/
ATSINSmove_void(tmp4, atscntrb_gmp_mpz_init(ATSPMVrefarg1(ATSSELrecsin(tmpref1, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 527(line=16, offs=14) -- 555(line=16, offs=42)
*/
ATSINSmove_void(tmp5, atscntrb_gmp_mpz_fib_uint(ATSPMVrefarg1(ATSSELrecsin(tmpref1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 565(line=18, offs=5) -- 580(line=18, offs=20)
*/
ATSINSmove(tmpret0, ATSPMVcastfn(castvwtp0, atstkind_type(atstype_ptrk), tmpref1)) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 451(line=13, offs=3) -- 587(line=19, offs=6)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret0) ;
} /* end of [fib_gmp_0] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
*/
/*
local: 
global: ptr_alloc$1$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = a(4740)
tmparg = S2Evar(a(4740))
tmpsub = None()
*/
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1()
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret2, atstkind_type(atstype_ptrk)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
*/
ATSINSflab(__patsflab_ptr_alloc):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
*/
ATSINSmove(tmpret2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atstyvar_type(a)))) ;

ATSfunbody_end()
ATSreturn(tmpret2) ;
} /* end of [ATSLIB_056_prelude__ptr_alloc__1] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
*/
/*
local: 
global: ptr_alloc$1$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = a(4740)
tmparg = S2Evar(a(4740))
tmpsub = Some(a(4740) -> S2EVar(5559))
*/
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__1()
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret2__1, atstkind_type(atstype_ptrk)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
*/
ATSINSflab(__patsflab_ptr_alloc):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
*/
ATSINSmove(tmpret2__1, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;

ATSfunbody_end()
ATSreturn(tmpret2__1) ;
} /* end of [ATSLIB_056_prelude__ptr_alloc__1__1] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 764(line=24, offs=5) -- 1203(line=45, offs=10)
*/
/*
local: exp_3$0(level=0)
global: exp_3$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_t0ype(atstype_int)
exp_3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpret6, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp7, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmpref12, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpref13, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp14, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp19, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpref20, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp21, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp22, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 764(line=24, offs=5) -- 1203(line=45, offs=10)
*/
ATSINSflab(__patsflab_exp_3):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 814(line=25, offs=3) -- 1203(line=45, offs=10)
*/
ATScaseof_beg()
/*
** ibranchlst-beg
*/
ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 831(line=26, offs=7) -- 832(line=26, offs=8)
*/
ATSINSlab(__atstmplab0):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 783(line=24, offs=24) -- 784(line=24, offs=25)
*/
ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(0))) { ATSINSgoto(__atstmplab2) ; } ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 832(line=26, offs=8) -- 832(line=26, offs=8)
*/
ATSINSlab(__atstmplab1):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 836(line=26, offs=12) -- 837(line=26, offs=13)
*/
ATSINSmove(tmpret6, ATSPMVi0nt(0)) ;
ATSbranch_end()

ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 845(line=27, offs=8) -- 845(line=27, offs=8)
*/
ATSINSlab(__atstmplab2):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 874(line=29, offs=12) -- 879(line=29, offs=17)
*/
ATSINSmove(tmp7, ATSLIB_056_prelude__gt_g1int_int__4__1(arg1, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 871(line=29, offs=9) -- 1193(line=44, offs=12)
*/
ATSif(
tmp7
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 895(line=30, offs=11) -- 1168(line=42, offs=14)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 915(line=31, offs=17) -- 917(line=31, offs=19)
*/
/*
ATSINStmpdec(tmpref12) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 920(line=31, offs=22) -- 926(line=31, offs=28)
*/
ATSINSmove(tmpref12, atspre_g1int_half_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 944(line=32, offs=17) -- 946(line=32, offs=19)
*/
/*
ATSINStmpdec(tmpref13) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 949(line=32, offs=22) -- 954(line=32, offs=27)
*/
ATSINSmove(tmpref13, atspre_g0int_mod_int(arg1, ATSPMVi0nt(2))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 983(line=34, offs=16) -- 989(line=34, offs=22)
*/
ATSINSmove(tmp14, ATSLIB_056_prelude__eq_g0int_int__10__1(tmpref13, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 980(line=34, offs=13) -- 1154(line=41, offs=18)
*/
ATSif(
tmp14
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1013(line=35, offs=19) -- 1018(line=35, offs=24)
*/
ATSINSmove(tmp19, atspre_g0int_mul_int(arg0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1009(line=35, offs=15) -- 1023(line=35, offs=29)
*/
ATStailcal_beg()
ATSINSmove_tlcal(apy0, tmp19) ;
ATSINSmove_tlcal(apy1, tmpref12) ;
ATSINSargmove_tlcal(arg0, apy0) ;
ATSINSargmove_tlcal(arg1, apy1) ;
ATSINSfgoto(__patsflab_exp_3) ;
ATStailcal_end()

} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1055(line=37, offs=15) -- 1154(line=41, offs=18)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1079(line=38, offs=21) -- 1080(line=38, offs=22)
*/
/*
ATSINStmpdec(tmpref20) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1091(line=38, offs=33) -- 1096(line=38, offs=38)
*/
ATSINSmove(tmp22, atspre_g0int_mul_int(arg0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1087(line=38, offs=29) -- 1101(line=38, offs=43)
*/
ATSINSmove(tmp21, exp_3(tmp22, tmpref12)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1083(line=38, offs=25) -- 1101(line=38, offs=43)
*/
ATSINSmove(tmpref20, atspre_g0int_mul_int(arg0, tmp21)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1135(line=40, offs=17) -- 1136(line=40, offs=18)
*/
ATSINSmove(tmpret6, tmpref20) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1055(line=37, offs=15) -- 1154(line=41, offs=18)
*/
/*
INSletpop()
*/
} /* ATSendif */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 895(line=30, offs=11) -- 1168(line=42, offs=14)
*/
/*
INSletpop()
*/
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1192(line=44, offs=11) -- 1193(line=44, offs=12)
*/
ATSINSmove(tmpret6, ATSPMVi0nt(1)) ;
} /* ATSendif */
ATSbranch_end()

/*
** ibranchlst-end
*/
ATScaseof_end()

ATSfunbody_end()
ATSreturn(tmpret6) ;
} /* end of [exp_3] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
*/
/*
local: 
global: gt_g1int_int$4$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4637)
tmparg = S2Evar(tk(4637))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret8, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp9, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12664(line=658, offs=1) -- 12718(line=659, offs=42)
*/
ATSINSflab(__patsflab_gt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
*/
ATSINSmove(tmp9, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4637))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
*/
ATSINSmove(tmpret8, PMVtmpltcst(g1int_gt<S2Evar(tk(4637))>)(arg0, tmp9)) ;

ATSfunbody_end()
ATSreturn(tmpret8) ;
} /* end of [ATSLIB_056_prelude__gt_g1int_int__4] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
*/
/*
local: 
global: gt_g1int_int$4$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4637)
tmparg = S2Evar(tk(4637))
tmpsub = Some(tk(4637) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret8__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp9__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12664(line=658, offs=1) -- 12718(line=659, offs=42)
*/
ATSINSflab(__patsflab_gt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
*/
ATSINSmove(tmp9__1, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
*/
ATSINSmove(tmpret8__1, atspre_g1int_gt_int(arg0, tmp9__1)) ;

ATSfunbody_end()
ATSreturn(tmpret8__1) ;
} /* end of [ATSLIB_056_prelude__gt_g1int_int__4__1] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4628))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15, PMVtmpltcst(g0int_eq<S2Evar(tk(4628))>)(arg0, tmp16)) ;

ATSfunbody_end()
ATSreturn(tmpret15) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__1, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__1, atspre_g0int_eq_int(arg0, tmp16__1)) ;

ATSfunbody_end()
ATSreturn(tmpret15__1) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__1] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1241(line=48, offs=5) -- 1849(line=74, offs=39)
*/
/*
local: big_exp_15$0(level=0)
global: big_exp_15$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_type(atstype_ptrk)
big_exp_15(atstkind_type(atstype_ptrk) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(apy0, atstkind_type(atstype_ptrk)) ;
ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpret23, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp24, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp29, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp48, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmpref51, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpref52, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp53, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmpref56, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmpref76, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmpref82, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmpref83, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp88) ;
// ATStmpdec_void(tmp91) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1241(line=48, offs=5) -- 1849(line=74, offs=39)
*/
ATSINSflab(__patsflab_big_exp_15):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1304(line=49, offs=6) -- 1328(line=49, offs=30)
*/
ATSINSmove(tmp29, ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19__1(ATSPMVrefarg0(arg0), ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1304(line=49, offs=6) -- 1332(line=49, offs=34)
*/
ATSINSmove(tmp24, ATSLIB_056_prelude__eq_g1int_int__16__1(tmp29, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1301(line=49, offs=3) -- 1849(line=74, offs=39)
*/
ATSif(
tmp24
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1342(line=50, offs=5) -- 1343(line=50, offs=6)
*/
ATSINSmove(tmpret23, arg0) ;
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1358(line=52, offs=8) -- 1363(line=52, offs=13)
*/
ATSINSmove(tmp48, ATSLIB_056_prelude__gt_g1int_int__4__2(arg1, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1355(line=52, offs=5) -- 1849(line=74, offs=39)
*/
ATSif(
tmp48
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1375(line=53, offs=7) -- 1801(line=72, offs=10)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1391(line=54, offs=13) -- 1393(line=54, offs=15)
*/
/*
ATSINStmpdec(tmpref51) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1396(line=54, offs=18) -- 1402(line=54, offs=24)
*/
ATSINSmove(tmpref51, atspre_g1int_half_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1416(line=55, offs=13) -- 1418(line=55, offs=15)
*/
/*
ATSINStmpdec(tmpref52) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1421(line=55, offs=18) -- 1426(line=55, offs=23)
*/
ATSINSmove(tmpref52, atspre_g0int_mod_int(arg1, ATSPMVi0nt(2))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1447(line=57, offs=12) -- 1453(line=57, offs=18)
*/
ATSINSmove(tmp53, ATSLIB_056_prelude__eq_g0int_int__10__2(tmpref52, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1444(line=57, offs=9) -- 1791(line=71, offs=14)
*/
ATSif(
tmp53
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1469(line=58, offs=11) -- 1564(line=62, offs=14)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1489(line=59, offs=17) -- 1490(line=59, offs=18)
*/
/*
ATSINStmpdec(tmpref56) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1493(line=59, offs=21) -- 1509(line=59, offs=37)
*/
ATSINSmove(tmpref56, ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30__1(arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1536(line=61, offs=13) -- 1550(line=61, offs=27)
*/
ATStailcal_beg()
ATSINSmove_tlcal(apy0, tmpref56) ;
ATSINSmove_tlcal(apy1, tmpref51) ;
ATSINSargmove_tlcal(arg0, apy0) ;
ATSINSargmove_tlcal(arg1, apy1) ;
ATSINSfgoto(__patsflab_big_exp_15) ;
ATStailcal_end()

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1469(line=58, offs=11) -- 1564(line=62, offs=14)
*/
/*
INSletpop()
*/
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1588(line=64, offs=11) -- 1791(line=71, offs=14)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1608(line=65, offs=17) -- 1610(line=65, offs=19)
*/
/*
ATSINStmpdec(tmpref76) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1613(line=65, offs=22) -- 1629(line=65, offs=38)
*/
ATSINSmove(tmpref76, ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__2(ATSPMVrefarg0(arg0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1647(line=66, offs=17) -- 1649(line=66, offs=19)
*/
/*
ATSINStmpdec(tmpref82) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1652(line=66, offs=22) -- 1667(line=66, offs=37)
*/
ATSINSmove(tmpref82, big_exp_15(tmpref76, tmpref51)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1684(line=67, offs=17) -- 1685(line=67, offs=18)
*/
/*
ATSINStmpdec(tmpref83) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1688(line=67, offs=21) -- 1714(line=67, offs=47)
*/
ATSINSmove(tmpref83, ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39__1(tmpref82, ATSPMVrefarg0(arg0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1736(line=68, offs=22) -- 1749(line=68, offs=35)
*/
ATSINSmove_void(tmp88, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__2(arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1776(line=70, offs=13) -- 1777(line=70, offs=14)
*/
ATSINSmove(tmpret23, tmpref83) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1588(line=64, offs=11) -- 1791(line=71, offs=14)
*/
/*
INSletpop()
*/
} /* ATSendif */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1375(line=53, offs=7) -- 1801(line=72, offs=10)
*/
/*
INSletpop()
*/
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1818(line=74, offs=8) -- 1831(line=74, offs=21)
*/
ATSINSmove_void(tmp91, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__3(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1835(line=74, offs=25) -- 1848(line=74, offs=38)
*/
ATSINSmove(tmpret23, ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43__1(ATSPMVi0nt(1))) ;

} /* ATSendif */
} /* ATSendif */
ATSfunbody_end()
ATSreturn(tmpret23) ;
} /* end of [big_exp_15] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
*/
/*
local: 
global: eq_g1int_int$16$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4643)
tmparg = S2Evar(tk(4643))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret25, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp26, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
*/
ATSINSflab(__patsflab_eq_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
*/
ATSINSmove(tmp26, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4643))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
*/
ATSINSmove(tmpret25, PMVtmpltcst(g1int_eq<S2Evar(tk(4643))>)(arg0, tmp26)) ;

ATSfunbody_end()
ATSreturn(tmpret25) ;
} /* end of [ATSLIB_056_prelude__eq_g1int_int__16] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
*/
/*
local: 
global: eq_g1int_int$16$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4643)
tmparg = S2Evar(tk(4643))
tmpsub = Some(tk(4643) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret25__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp26__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
*/
ATSINSflab(__patsflab_eq_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
*/
ATSINSmove(tmp26__1, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
*/
ATSINSmove(tmpret25__1, atspre_g1int_eq_int(arg0, tmp26__1)) ;

ATSfunbody_end()
ATSreturn(tmpret25__1) ;
} /* end of [ATSLIB_056_prelude__eq_g1int_int__16__1] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13321(line=768, offs=9) -- 13484(line=775, offs=4)
*/
/*
local: 
global: compare_intinf_int$19$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atstkind_t0ype(atstype_int)
ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19(atsrefarg0_type(atstkind_type(atstype_ptrk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret30, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp31, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp32, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp33, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp34, atstkind_t0ype(atstype_bool)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13294(line=767, offs=1) -- 13484(line=775, offs=4)
*/
ATSINSflab(__patsflab_compare_intinf_int):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13330(line=768, offs=18) -- 13484(line=775, offs=4)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13347(line=770, offs=11) -- 13375(line=770, offs=39)
*/
ATSINSmove(tmp31, atscntrb_gmp_mpz_cmp_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13390(line=771, offs=15) -- 13397(line=771, offs=22)
*/
ATSINSmove(tmp33, PMVtmpltcst(lt_g0int_int<S2Eextkind(atstype_int)>)(tmp31, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13387(line=771, offs=12) -- 13437(line=771, offs=62)
*/
ATSif(
tmp33
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13403(line=771, offs=28) -- 13405(line=771, offs=30)
*/
ATSINSmove(tmp32, PMVtmpltcst(g1int_neg<S2Eextkind(atstype_int)>)(ATSPMVi0nt(1))) ;

} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13415(line=771, offs=40) -- 13422(line=771, offs=47)
*/
ATSINSmove(tmp34, PMVtmpltcst(gt_g0int_int<S2Eextkind(atstype_int)>)(tmp31, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13412(line=771, offs=37) -- 13436(line=771, offs=61)
*/
ATSif(
tmp34
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13428(line=771, offs=53) -- 13429(line=771, offs=54)
*/
ATSINSmove(tmp32, ATSPMVi0nt(1)) ;
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13435(line=771, offs=60) -- 13436(line=771, offs=61)
*/
ATSINSmove(tmp32, ATSPMVi0nt(0)) ;
} /* ATSendif */
} /* ATSendif */
/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13452(line=774, offs=3) -- 13479(line=774, offs=30)
*/
ATSINSmove(tmpret30, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp32)) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13330(line=768, offs=18) -- 13484(line=775, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret30) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13321(line=768, offs=9) -- 13484(line=775, offs=4)
*/
/*
local: 
global: compare_intinf_int$19$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_t0ype(atstype_int)
ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19__1(atsrefarg0_type(atstkind_type(atstype_ptrk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret30__1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp31__1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp32__1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp33__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp34__1, atstkind_t0ype(atstype_bool)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13294(line=767, offs=1) -- 13484(line=775, offs=4)
*/
ATSINSflab(__patsflab_compare_intinf_int):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13330(line=768, offs=18) -- 13484(line=775, offs=4)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13347(line=770, offs=11) -- 13375(line=770, offs=39)
*/
ATSINSmove(tmp31__1, atscntrb_gmp_mpz_cmp_int(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13390(line=771, offs=15) -- 13397(line=771, offs=22)
*/
ATSINSmove(tmp33__1, ATSLIB_056_prelude__lt_g0int_int__21__1(tmp31__1, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13387(line=771, offs=12) -- 13437(line=771, offs=62)
*/
ATSif(
tmp33__1
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13403(line=771, offs=28) -- 13405(line=771, offs=30)
*/
ATSINSmove(tmp32__1, atspre_g1int_neg_int(ATSPMVi0nt(1))) ;

} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13415(line=771, offs=40) -- 13422(line=771, offs=47)
*/
ATSINSmove(tmp34__1, ATSLIB_056_prelude__gt_g0int_int__25__1(tmp31__1, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13412(line=771, offs=37) -- 13436(line=771, offs=61)
*/
ATSif(
tmp34__1
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13428(line=771, offs=53) -- 13429(line=771, offs=54)
*/
ATSINSmove(tmp32__1, ATSPMVi0nt(1)) ;
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13435(line=771, offs=60) -- 13436(line=771, offs=61)
*/
ATSINSmove(tmp32__1, ATSPMVi0nt(0)) ;
} /* ATSendif */
} /* ATSendif */
/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13452(line=774, offs=3) -- 13479(line=774, offs=30)
*/
ATSINSmove(tmpret30__1, ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp32__1)) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 13330(line=768, offs=18) -- 13484(line=775, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret30__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__compare_intinf_int__19__1] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 11941(line=617, offs=3) -- 11980(line=617, offs=42)
*/
/*
local: 
global: lt_g0int_int$21$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4624)
tmparg = S2Evar(tk(4624))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g0int_int__21(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret40, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp41, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11926(line=616, offs=1) -- 11980(line=617, offs=42)
*/
ATSINSflab(__patsflab_lt_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11967(line=617, offs=29) -- 11978(line=617, offs=40)
*/
ATSINSmove(tmp41, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4624))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11950(line=617, offs=12) -- 11980(line=617, offs=42)
*/
ATSINSmove(tmpret40, PMVtmpltcst(g0int_lt<S2Evar(tk(4624))>)(arg0, tmp41)) ;

ATSfunbody_end()
ATSreturn(tmpret40) ;
} /* end of [ATSLIB_056_prelude__lt_g0int_int__21] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 11941(line=617, offs=3) -- 11980(line=617, offs=42)
*/
/*
local: 
global: lt_g0int_int$21$1(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4624)
tmparg = S2Evar(tk(4624))
tmpsub = Some(tk(4624) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g0int_int__21__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret40__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp41__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11926(line=616, offs=1) -- 11980(line=617, offs=42)
*/
ATSINSflab(__patsflab_lt_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11967(line=617, offs=29) -- 11978(line=617, offs=40)
*/
ATSINSmove(tmp41__1, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 11950(line=617, offs=12) -- 11980(line=617, offs=42)
*/
ATSINSmove(tmpret40__1, atspre_g0int_lt_int(arg0, tmp41__1)) ;

ATSfunbody_end()
ATSreturn(tmpret40__1) ;
} /* end of [ATSLIB_056_prelude__lt_g0int_int__21__1] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12100(line=626, offs=3) -- 12139(line=626, offs=42)
*/
/*
local: 
global: gt_g0int_int$25$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4626)
tmparg = S2Evar(tk(4626))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g0int_int__25(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret44, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp45, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12085(line=625, offs=1) -- 12139(line=626, offs=42)
*/
ATSINSflab(__patsflab_gt_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12126(line=626, offs=29) -- 12137(line=626, offs=40)
*/
ATSINSmove(tmp45, PMVtmpltcst(g0int2int<S2Eextkind(atstype_int), S2Evar(tk(4626))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12109(line=626, offs=12) -- 12139(line=626, offs=42)
*/
ATSINSmove(tmpret44, PMVtmpltcst(g0int_gt<S2Evar(tk(4626))>)(arg0, tmp45)) ;

ATSfunbody_end()
ATSreturn(tmpret44) ;
} /* end of [ATSLIB_056_prelude__gt_g0int_int__25] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12100(line=626, offs=3) -- 12139(line=626, offs=42)
*/
/*
local: 
global: gt_g0int_int$25$1(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4626)
tmparg = S2Evar(tk(4626))
tmpsub = Some(tk(4626) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g0int_int__25__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret44__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp45__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12085(line=625, offs=1) -- 12139(line=626, offs=42)
*/
ATSINSflab(__patsflab_gt_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12126(line=626, offs=29) -- 12137(line=626, offs=40)
*/
ATSINSmove(tmp45__1, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12109(line=626, offs=12) -- 12139(line=626, offs=42)
*/
ATSINSmove(tmpret44__1, atspre_g0int_gt_int(arg0, tmp45__1)) ;

ATSfunbody_end()
ATSreturn(tmpret44__1) ;
} /* end of [ATSLIB_056_prelude__gt_g0int_int__25__1] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12679(line=659, offs=3) -- 12718(line=659, offs=42)
*/
/*
local: 
global: gt_g1int_int$4$2(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4637)
tmparg = S2Evar(tk(4637))
tmpsub = Some(tk(4637) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__gt_g1int_int__4__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret8__2, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp9__2, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12664(line=658, offs=1) -- 12718(line=659, offs=42)
*/
ATSINSflab(__patsflab_gt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12705(line=659, offs=29) -- 12716(line=659, offs=40)
*/
ATSINSmove(tmp9__2, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12688(line=659, offs=12) -- 12718(line=659, offs=42)
*/
ATSINSmove(tmpret8__2, atspre_g1int_gt_int(arg0, tmp9__2)) ;

ATSfunbody_end()
ATSreturn(tmpret8__2) ;
} /* end of [ATSLIB_056_prelude__gt_g1int_int__4__2] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$2(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__2, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__2, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__2, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__2, atspre_g0int_eq_int(arg0, tmp16__2)) ;

ATSfunbody_end()
ATSreturn(tmpret15__2) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__2] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4581(line=236, offs=3) -- 4665(line=240, offs=2)
*/
/*
local: 
global: square_intinf0$30$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret57, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp58, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp59) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4564(line=235, offs=1) -- 4665(line=240, offs=2)
*/
ATSINSflab(__patsflab_square_intinf0):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4665(line=240, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4611(line=238, offs=13) -- 4627(line=238, offs=29)
*/
ATSINSmove(tmp58, PMVtmpltcst(square_intinf1<>)(ATSPMVrefarg0(arg0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4649(line=239, offs=21) -- 4662(line=239, offs=34)
*/
ATSINSmove_void(tmp59, PMVtmpltcst(intinf_free<>)(arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4590(line=236, offs=12)
*/
ATSINSmove(tmpret57, tmp58) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4665(line=240, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret57) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4581(line=236, offs=3) -- 4665(line=240, offs=2)
*/
/*
local: 
global: square_intinf0$30$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30__1(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret57__1, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp58__1, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp59__1) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4564(line=235, offs=1) -- 4665(line=240, offs=2)
*/
ATSINSflab(__patsflab_square_intinf0):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4665(line=240, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4611(line=238, offs=13) -- 4627(line=238, offs=29)
*/
ATSINSmove(tmp58__1, ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__1(ATSPMVrefarg0(arg0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4649(line=239, offs=21) -- 4662(line=239, offs=34)
*/
ATSINSmove_void(tmp59__1, ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__1(arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4590(line=236, offs=12)
*/
ATSINSmove(tmpret57__1, tmp58__1) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4587(line=236, offs=9) -- 4665(line=240, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret57__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__square_intinf0__30__1] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4755(line=247, offs=3) -- 4900(line=256, offs=2)
*/
/*
local: 
global: square_intinf1$32$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32(atsrefarg0_type(atstkind_type(atstype_ptrk)) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret63, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp64, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp65) ;
// ATStmpdec_void(tmp66) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4738(line=246, offs=1) -- 4900(line=256, offs=2)
*/
ATSINSflab(__patsflab_square_intinf1):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4784(line=250, offs=9) -- 4800(line=250, offs=25)
*/
ATSINSmove(tmp64, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4812(line=252, offs=3) -- 4849(line=252, offs=40)
*/
ATSINSmove_void(tmp65, atscntrb_gmp_mpz_init_set_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4862(line=254, offs=10) -- 4895(line=254, offs=43)
*/
ATSINSmove_void(tmp66, atscntrb_gmp_mpz_mul2_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4762(line=247, offs=10) -- 4763(line=247, offs=11)
*/
ATSINSmove(tmpret63, tmp64) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret63) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4755(line=247, offs=3) -- 4900(line=256, offs=2)
*/
/*
local: 
global: square_intinf1$32$1(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__1(atsrefarg0_type(atstkind_type(atstype_ptrk)) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret63__1, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp64__1, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp65__1) ;
// ATStmpdec_void(tmp66__1) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4738(line=246, offs=1) -- 4900(line=256, offs=2)
*/
ATSINSflab(__patsflab_square_intinf1):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4784(line=250, offs=9) -- 4800(line=250, offs=25)
*/
ATSINSmove(tmp64__1, ATSLIB_056_prelude__ptr_alloc__1__2()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4812(line=252, offs=3) -- 4849(line=252, offs=40)
*/
ATSINSmove_void(tmp65__1, atscntrb_gmp_mpz_init_set_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64__1, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4862(line=254, offs=10) -- 4895(line=254, offs=43)
*/
ATSINSmove_void(tmp66__1, atscntrb_gmp_mpz_mul2_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64__1, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4762(line=247, offs=10) -- 4763(line=247, offs=11)
*/
ATSINSmove(tmpret63__1, tmp64__1) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret63__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__1] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
*/
/*
local: 
global: ptr_alloc$1$2(level=3)
local: 
global: 
*/
ATSstatic()
/*
imparg = a(4740)
tmparg = S2Evar(a(4740))
tmpsub = Some(a(4740) -> S2Ecst(mpz_vt0ype))
*/
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__2()
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret2__2, atstkind_type(atstype_ptrk)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
*/
ATSINSflab(__patsflab_ptr_alloc):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
*/
ATSINSmove(tmpret2__2, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;

ATSfunbody_end()
ATSreturn(tmpret2__2) ;
} /* end of [ATSLIB_056_prelude__ptr_alloc__1__2] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
*/
/*
local: 
global: intinf_free$35$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
// ATStmpdec_void(tmpret72) ;
// ATStmpdec_void(tmp73) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2877(line=119, offs=1) -- 2987(line=122, offs=4)
*/
ATSINSflab(__patsflab_intinf_free):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
letpush(beg)
*/
/* (*nothing*) */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
*/
ATSINSmove_void(tmp73, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
*/
ATSINSmove_void(tmpret72, atspre_ptr_free(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn_void(tmpret72) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
*/
/*
local: 
global: intinf_free$35$1(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__1(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
// ATStmpdec_void(tmpret72__1) ;
// ATStmpdec_void(tmp73__1) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2877(line=119, offs=1) -- 2987(line=122, offs=4)
*/
ATSINSflab(__patsflab_intinf_free):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
letpush(beg)
*/
/* (*nothing*) */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
*/
ATSINSmove_void(tmp73__1, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
*/
ATSINSmove_void(tmpret72__1, atspre_ptr_free(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn_void(tmpret72__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__1] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4755(line=247, offs=3) -- 4900(line=256, offs=2)
*/
/*
local: 
global: square_intinf1$32$2(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__2(atsrefarg0_type(atstkind_type(atstype_ptrk)) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret63__2, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp64__2, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp65__2) ;
// ATStmpdec_void(tmp66__2) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4738(line=246, offs=1) -- 4900(line=256, offs=2)
*/
ATSINSflab(__patsflab_square_intinf1):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4784(line=250, offs=9) -- 4800(line=250, offs=25)
*/
ATSINSmove(tmp64__2, ATSLIB_056_prelude__ptr_alloc__1__3()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4812(line=252, offs=3) -- 4849(line=252, offs=40)
*/
ATSINSmove_void(tmp65__2, atscntrb_gmp_mpz_init_set_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64__2, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4862(line=254, offs=10) -- 4895(line=254, offs=43)
*/
ATSINSmove_void(tmp66__2, atscntrb_gmp_mpz_mul2_mpz(ATSPMVrefarg1(ATSSELrecsin(tmp64__2, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4762(line=247, offs=10) -- 4763(line=247, offs=11)
*/
ATSINSmove(tmpret63__2, tmp64__2) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 4761(line=247, offs=9) -- 4900(line=256, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret63__2) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__square_intinf1__32__2] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
*/
/*
local: 
global: ptr_alloc$1$3(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = a(4740)
tmparg = S2Evar(a(4740))
tmpsub = Some(a(4740) -> S2Ecst(mpz_vt0ype))
*/
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__3()
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret2__3, atstkind_type(atstype_ptrk)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
*/
ATSINSflab(__patsflab_ptr_alloc):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
*/
ATSINSmove(tmpret2__3, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;

ATSfunbody_end()
ATSreturn(tmpret2__3) ;
} /* end of [ATSLIB_056_prelude__ptr_alloc__1__3] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7761(line=437, offs=3) -- 7833(line=442, offs=2)
*/
/*
local: 
global: mul_intinf0_intinf1$39$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret84, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp85) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7739(line=436, offs=1) -- 7833(line=442, offs=2)
*/
ATSINSflab(__patsflab_mul_intinf0_intinf1):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7770(line=437, offs=12) -- 7833(line=442, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7794(line=440, offs=10) -- 7828(line=440, offs=44)
*/
ATSINSmove_void(tmp85, atscntrb_gmp_mpz_mul2_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7771(line=437, offs=13) -- 7772(line=437, offs=14)
*/
ATSINSmove(tmpret84, arg0) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7770(line=437, offs=12) -- 7833(line=442, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret84) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7761(line=437, offs=3) -- 7833(line=442, offs=2)
*/
/*
local: 
global: mul_intinf0_intinf1$39$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39__1(atstkind_type(atstype_ptrk) arg0, atsrefarg0_type(atstkind_type(atstype_ptrk)) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret84__1, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp85__1) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7739(line=436, offs=1) -- 7833(line=442, offs=2)
*/
ATSINSflab(__patsflab_mul_intinf0_intinf1):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7770(line=437, offs=12) -- 7833(line=442, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7794(line=440, offs=10) -- 7828(line=440, offs=44)
*/
ATSINSmove_void(tmp85__1, atscntrb_gmp_mpz_mul2_mpz(ATSPMVrefarg1(ATSSELrecsin(arg0, atstkind_type(atstype_ptrk), atslab__2)), ATSPMVrefarg1(ATSSELrecsin(arg1, atstkind_type(atstype_ptrk), atslab__2)))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7771(line=437, offs=13) -- 7772(line=437, offs=14)
*/
ATSINSmove(tmpret84__1, arg0) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 7770(line=437, offs=12) -- 7833(line=442, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret84__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__mul_intinf0_intinf1__39__1] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
*/
/*
local: 
global: intinf_free$35$2(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__2(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
// ATStmpdec_void(tmpret72__2) ;
// ATStmpdec_void(tmp73__2) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2877(line=119, offs=1) -- 2987(line=122, offs=4)
*/
ATSINSflab(__patsflab_intinf_free):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
letpush(beg)
*/
/* (*nothing*) */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
*/
ATSINSmove_void(tmp73__2, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
*/
ATSINSmove_void(tmpret72__2, atspre_ptr_free(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn_void(tmpret72__2) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__2] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2888(line=119, offs=12) -- 2987(line=122, offs=4)
*/
/*
local: 
global: intinf_free$35$3(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atsvoid_t0ype
ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__3(atstkind_type(atstype_ptrk) arg0)
{
/* tmpvardeclst(beg) */
// ATStmpdec_void(tmpret72__3) ;
// ATStmpdec_void(tmp73__3) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2877(line=119, offs=1) -- 2987(line=122, offs=4)
*/
ATSINSflab(__patsflab_intinf_free):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
letpush(beg)
*/
/* (*nothing*) */
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2936(line=121, offs=12) -- 2955(line=121, offs=31)
*/
ATSINSmove_void(tmp73__3, atscntrb_gmp_mpz_clear(ATSPMVrefarg1(arg0))) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2959(line=121, offs=35) -- 2983(line=121, offs=59)
*/
ATSINSmove_void(tmpret72__3, atspre_ptr_free(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2894(line=119, offs=18) -- 2987(line=122, offs=4)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn_void(tmpret72__3) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_free__35__3] */

#if(0)
/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
*/
/*
local: 
global: intinf_make_int$43$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = 
tmparg = 
tmpsub = None()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret94, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp95, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp96) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2191(line=73, offs=1) -- 2301(line=80, offs=2)
*/
ATSINSflab(__patsflab_intinf_make_int):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
*/
ATSINSmove(tmp95, PMVtmpltcst(ptr_alloc<S2Ecst(mpz_vt0ype)>)()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
*/
ATSINSmove_void(tmp96, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp95, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
*/
ATSINSmove(tmpret94, tmp95) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret94) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2209(line=74, offs=3) -- 2301(line=80, offs=2)
*/
/*
local: 
global: intinf_make_int$43$1(level=1)
local: 
global: 
*/
ATSstatic()
/*
imparg = 
tmparg = 
tmpsub = Some()
*/
atstkind_type(atstype_ptrk)
ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43__1(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret94__1, atstkind_type(atstype_ptrk)) ;
ATStmpdec(tmp95__1, atstkind_type(atstype_ptrk)) ;
// ATStmpdec_void(tmp96__1) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2191(line=73, offs=1) -- 2301(line=80, offs=2)
*/
ATSINSflab(__patsflab_intinf_make_int):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2238(line=77, offs=9) -- 2254(line=77, offs=25)
*/
ATSINSmove(tmp95__1, ATSLIB_056_prelude__ptr_alloc__1__4()) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2264(line=78, offs=10) -- 2296(line=78, offs=42)
*/
ATSINSmove_void(tmp96__1, atscntrb_gmp_mpz_init_set_int(ATSPMVrefarg1(ATSSELrecsin(tmp95__1, atstkind_type(atstype_ptrk), atslab__2)), arg0)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2216(line=74, offs=10) -- 2217(line=74, offs=11)
*/
ATSINSmove(tmpret94__1, tmp95__1) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/.atspkg/contrib/atscntrb-hx-intinf/DATS/intinf_vt.dats: 2215(line=74, offs=9) -- 2301(line=80, offs=2)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret94__1) ;
} /* end of [ATSCNTRB_056_HX_056_intinf_vt__intinf_make_int__43__1] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats: 3717(line=184, offs=10) -- 3749(line=184, offs=42)
*/
/*
local: 
global: ptr_alloc$1$4(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = a(4740)
tmparg = S2Evar(a(4740))
tmpsub = Some(a(4740) -> S2Ecst(mpz_vt0ype))
*/
atstkind_type(atstype_ptrk)
ATSLIB_056_prelude__ptr_alloc__1__4()
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret2__4, atstkind_type(atstype_ptrk)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3708(line=184, offs=1) -- 3749(line=184, offs=42)
*/
ATSINSflab(__patsflab_ptr_alloc):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/pointer.dats({$PATSPRE}/DATS/pointer.dats): 3722(line=184, offs=15) -- 3749(line=184, offs=42)
*/
ATSINSmove(tmpret2__4, atspre_ptr_alloc_tsz(ATSPMVsizeof(atscntrb_gmp_mpz))) ;

ATSfunbody_end()
ATSreturn(tmpret2__4) ;
} /* end of [ATSLIB_056_prelude__ptr_alloc__1__4] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1895(line=77, offs=4) -- 2042(line=82, offs=6)
*/
/*
local: 
global: sqrt_int_46$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_t0ype(atstype_int)
sqrt_int_46(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret101, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpref102, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp103, atstkind_t0ype(atstype_double)) ;
ATStmpdec(tmp104, atstkind_t0ype(atstype_double)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1895(line=77, offs=4) -- 2042(line=82, offs=6)
*/
ATSINSflab(__patsflab_sqrt_int_46):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1941(line=78, offs=3) -- 2042(line=82, offs=6)
*/
/*
letpush(beg)
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1953(line=79, offs=9) -- 1958(line=79, offs=14)
*/
/*
ATSINStmpdec(tmpref102) ;
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1985(line=79, offs=41) -- 2009(line=79, offs=65)
*/
ATSINSmove(tmp104, atspre_g0int2float_int_double(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1973(line=79, offs=29) -- 2011(line=79, offs=67)
*/
ATSINSmove(tmp103, atslib_libats_libc_sqrt_double(tmp104)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1961(line=79, offs=17) -- 2012(line=79, offs=68)
*/
ATSINSmove(tmpref102, atspre_g0float2int_double_int(tmp103)) ;

/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2022(line=81, offs=5) -- 2035(line=81, offs=18)
*/
ATSINSmove(tmpret101, ATSPMVcastfn(witness, atstkind_t0ype(atstype_int), tmpref102)) ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 1941(line=78, offs=3) -- 2042(line=82, offs=6)
*/
/*
INSletpop()
*/
ATSfunbody_end()
ATSreturn(tmpret101) ;
} /* end of [sqrt_int_46] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2078(line=85, offs=4) -- 2659(line=108, offs=10)
*/
/*
local: sqrt_int_46$0(level=0)
global: sqrt_int_46$0(level=0), is_prime_48$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_t0ype(atstype_bool)
is_prime_48(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret105, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp124, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2078(line=85, offs=4) -- 2659(line=108, offs=10)
*/
ATSINSflab(__patsflab_is_prime_48):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2114(line=86, offs=3) -- 2659(line=108, offs=10)
*/
ATScaseof_beg()
/*
** ibranchlst-beg
*/
ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2131(line=87, offs=7) -- 2132(line=87, offs=8)
*/
ATSINSlab(__atstmplab3):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2087(line=85, offs=13) -- 2088(line=85, offs=14)
*/
ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab5) ; } ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2132(line=87, offs=8) -- 2132(line=87, offs=8)
*/
ATSINSlab(__atstmplab4):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2136(line=87, offs=12) -- 2141(line=87, offs=17)
*/
ATSINSmove(tmpret105, ATSPMVbool_false()) ;
ATSbranch_end()

ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2149(line=88, offs=8) -- 2149(line=88, offs=8)
*/
ATSINSlab(__atstmplab5):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2174(line=90, offs=9) -- 2649(line=107, offs=12)
*/
/*
letpush(beg)
*/
/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2625(line=106, offs=19) -- 2635(line=106, offs=29)
*/
ATSINSmove(tmp124, sqrt_int_46(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2617(line=106, offs=11) -- 2637(line=106, offs=31)
*/
ATSINSmove(tmpret105, loop_49(arg0, ATSPMVi0nt(2), tmp124)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2174(line=90, offs=9) -- 2649(line=107, offs=12)
*/
/*
INSletpop()
*/
ATSbranch_end()

/*
** ibranchlst-end
*/
ATScaseof_end()

ATSfunbody_end()
ATSreturn(tmpret105) ;
} /* end of [is_prime_48] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2192(line=91, offs=15) -- 2595(line=104, offs=21)
*/
/*
local: loop_49$0(level=1)
global: loop_49$0(level=1)
local: k$5102(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
global: k$5102(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
*/
ATSstatic()
atstkind_t0ype(atstype_bool)
loop_49(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpret106, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp107, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp112, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp115, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp116, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp117, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp120, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp123, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2192(line=91, offs=15) -- 2595(line=104, offs=21)
*/
ATSINSflab(__patsflab_loop_49):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2282(line=92, offs=16) -- 2291(line=92, offs=25)
*/
ATSINSmove(tmp107, ATSLIB_056_prelude__lt_g1int_int__50__1(arg0, arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2279(line=92, offs=13) -- 2595(line=104, offs=21)
*/
ATSif(
tmp107
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2314(line=93, offs=18) -- 2319(line=93, offs=23)
*/
ATSINSmove(tmp115, atspre_g0int_mod_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2314(line=93, offs=18) -- 2323(line=93, offs=27)
*/
ATSINSmove(tmp112, ATSLIB_056_prelude__eq_g0int_int__10__3(tmp115, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2311(line=93, offs=15) -- 2404(line=96, offs=35)
*/
ATSif(
tmp112
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2345(line=94, offs=17) -- 2350(line=94, offs=22)
*/
ATSINSmove(tmpret106, ATSPMVbool_false()) ;
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2391(line=96, offs=22) -- 2396(line=96, offs=27)
*/
ATSINSmove(tmp116, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2386(line=96, offs=17) -- 2404(line=96, offs=35)
*/
ATStailcal_beg()
ATSINSmove_tlcal(apy0, tmp116) ;
ATSINSmove_tlcal(apy1, arg1) ;
ATSINSargmove_tlcal(arg0, apy0) ;
ATSINSargmove_tlcal(arg1, apy1) ;
ATSINSfgoto(__patsflab_loop_49) ;
ATStailcal_end()

} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2439(line=98, offs=18) -- 2448(line=98, offs=27)
*/
ATSINSmove(tmp117, ATSLIB_056_prelude__eq_g1int_int__16__2(arg0, arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2436(line=98, offs=15) -- 2595(line=104, offs=21)
*/
ATSif(
tmp117
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2473(line=99, offs=20) -- 2478(line=99, offs=25)
*/
ATSINSmove(tmp123, atspre_g0int_mod_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2473(line=99, offs=20) -- 2482(line=99, offs=29)
*/
ATSINSmove(tmp120, ATSLIB_056_prelude__eq_g0int_int__10__4(tmp123, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2470(line=99, offs=17) -- 2555(line=102, offs=23)
*/
ATSif(
tmp120
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2506(line=100, offs=19) -- 2511(line=100, offs=24)
*/
ATSINSmove(tmpret106, ATSPMVbool_false()) ;
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2551(line=102, offs=19) -- 2555(line=102, offs=23)
*/
ATSINSmove(tmpret106, ATSPMVbool_true()) ;
} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2591(line=104, offs=17) -- 2595(line=104, offs=21)
*/
ATSINSmove(tmpret106, ATSPMVbool_true()) ;
} /* ATSendif */
} /* ATSendif */
ATSfunbody_end()
ATSreturn(tmpret106) ;
} /* end of [loop_49] */

#if(0)
/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
*/
/*
local: 
global: lt_g1int_int$50$0(level=0)
local: 
global: 
*/
ATSextern()
/*
imparg = tk(4631)
tmparg = S2Evar(tk(4631))
tmpsub = None()
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50(atstkind_t0ype(atstyvar_type(tk)) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret108, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp109, atstkind_t0ype(atstyvar_type(tk))) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12505(line=649, offs=1) -- 12559(line=650, offs=42)
*/
ATSINSflab(__patsflab_lt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
*/
ATSINSmove(tmp109, PMVtmpltcst(g1int2int<S2Eextkind(atstype_int), S2Evar(tk(4631))>)(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
*/
ATSINSmove(tmpret108, PMVtmpltcst(g1int_lt<S2Evar(tk(4631))>)(arg0, tmp109)) ;

ATSfunbody_end()
ATSreturn(tmpret108) ;
} /* end of [ATSLIB_056_prelude__lt_g1int_int__50] */
#endif // end of [TEMPLATE]

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
*/
/*
local: 
global: lt_g1int_int$50$1(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4631)
tmparg = S2Evar(tk(4631))
tmpsub = Some(tk(4631) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50__1(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret108__1, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp109__1, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12505(line=649, offs=1) -- 12559(line=650, offs=42)
*/
ATSINSflab(__patsflab_lt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
*/
ATSINSmove(tmp109__1, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
*/
ATSINSmove(tmpret108__1, atspre_g1int_lt_int(arg0, tmp109__1)) ;

ATSfunbody_end()
ATSreturn(tmpret108__1) ;
} /* end of [ATSLIB_056_prelude__lt_g1int_int__50__1] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$3(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__3, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__3, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__3, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__3, atspre_g0int_eq_int(arg0, tmp16__3)) ;

ATSfunbody_end()
ATSreturn(tmpret15__3) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__3] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
*/
/*
local: 
global: eq_g1int_int$16$2(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4643)
tmparg = S2Evar(tk(4643))
tmpsub = Some(tk(4643) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret25__2, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp26__2, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
*/
ATSINSflab(__patsflab_eq_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
*/
ATSINSmove(tmp26__2, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
*/
ATSINSmove(tmpret25__2, atspre_g1int_eq_int(arg0, tmp26__2)) ;

ATSfunbody_end()
ATSreturn(tmpret25__2) ;
} /* end of [ATSLIB_056_prelude__eq_g1int_int__16__2] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$4(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__4(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__4, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__4, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__4, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__4, atspre_g0int_eq_int(arg0, tmp16__4)) ;

ATSfunbody_end()
ATSreturn(tmpret15__4) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__4] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2664(line=110, offs=4) -- 3475(line=139, offs=10)
*/
/*
local: sqrt_int_46$0(level=0), is_prime_48$0(level=0)
global: sqrt_int_46$0(level=0), is_prime_48$0(level=0), is_semiprime_57$0(level=0)
local: 
global: 
*/
ATSstatic()
atstkind_t0ype(atstype_bool)
is_semiprime_57(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret125, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp146, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2664(line=110, offs=4) -- 3475(line=139, offs=10)
*/
ATSINSflab(__patsflab_is_semiprime_57):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2704(line=111, offs=3) -- 3475(line=139, offs=10)
*/
ATScaseof_beg()
/*
** ibranchlst-beg
*/
ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2721(line=112, offs=7) -- 2722(line=112, offs=8)
*/
ATSINSlab(__atstmplab6):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2677(line=110, offs=17) -- 2678(line=110, offs=18)
*/
ATSifnthen(ATSCKpat_int(arg0, ATSPMVint(1))) { ATSINSgoto(__atstmplab8) ; } ;
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2722(line=112, offs=8) -- 2722(line=112, offs=8)
*/
ATSINSlab(__atstmplab7):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2726(line=112, offs=12) -- 2731(line=112, offs=17)
*/
ATSINSmove(tmpret125, ATSPMVbool_false()) ;
ATSbranch_end()

ATSbranch_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2739(line=113, offs=8) -- 2739(line=113, offs=8)
*/
ATSINSlab(__atstmplab8):
/*
emit_instr: loc0 = : 0(line=0, offs=0) -- 0(line=0, offs=0)
*/
/*
ibranch-mbody:
*/
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2764(line=115, offs=9) -- 3465(line=138, offs=12)
*/
/*
letpush(beg)
*/
/*
letpush(end)
*/

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3441(line=137, offs=19) -- 3451(line=137, offs=29)
*/
ATSINSmove(tmp146, sqrt_int_46(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3433(line=137, offs=11) -- 3453(line=137, offs=31)
*/
ATSINSmove(tmpret125, loop_58(arg0, ATSPMVi0nt(2), tmp146)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2764(line=115, offs=9) -- 3465(line=138, offs=12)
*/
/*
INSletpop()
*/
ATSbranch_end()

/*
** ibranchlst-end
*/
ATScaseof_end()

ATSfunbody_end()
ATSreturn(tmpret125) ;
} /* end of [is_semiprime_57] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2782(line=116, offs=15) -- 3411(line=135, offs=22)
*/
/*
local: is_prime_48$0(level=0), loop_58$0(level=1)
global: is_prime_48$0(level=0), loop_58$0(level=1)
local: k$5108(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
global: k$5108(1)(HSEapp(HSEcst(atstkind_t0ype); HSEs2exp(S2Eextkind(atstype_int))))
*/
ATSstatic()
atstkind_t0ype(atstype_bool)
loop_58(atstkind_t0ype(atstype_int) env0, atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(apy0, atstkind_t0ype(atstype_int)) ;
ATStmpdec(apy1, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmpret126, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp127, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp130, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp133, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp134, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp135, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp136, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp137, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp140, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp143, atstkind_t0ype(atstype_int)) ;
ATStmpdec(tmp144, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp145, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2782(line=116, offs=15) -- 3411(line=135, offs=22)
*/
ATSINSflab(__patsflab_loop_58):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2884(line=117, offs=16) -- 2893(line=117, offs=25)
*/
ATSINSmove(tmp127, ATSLIB_056_prelude__lt_g1int_int__50__2(arg0, arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2881(line=117, offs=13) -- 3411(line=135, offs=22)
*/
ATSif(
tmp127
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2916(line=118, offs=18) -- 2921(line=118, offs=23)
*/
ATSINSmove(tmp133, atspre_g0int_mod_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2916(line=118, offs=18) -- 2925(line=118, offs=27)
*/
ATSINSmove(tmp130, ATSLIB_056_prelude__eq_g0int_int__10__5(tmp133, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2913(line=118, offs=15) -- 3109(line=124, offs=35)
*/
ATSif(
tmp130
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2950(line=119, offs=20) -- 2960(line=119, offs=30)
*/
ATSINSmove(tmp134, is_prime_48(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2947(line=119, offs=17) -- 3055(line=122, offs=24)
*/
ATSif(
tmp134
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3003(line=120, offs=37) -- 3008(line=120, offs=42)
*/
ATSINSmove(tmp135, atspre_g1int_div_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 2985(line=120, offs=19) -- 3010(line=120, offs=44)
*/
ATSINSmove(tmpret126, is_prime_48(ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp135))) ;

} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3050(line=122, offs=19) -- 3055(line=122, offs=24)
*/
ATSINSmove(tmpret126, ATSPMVbool_false()) ;
} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3096(line=124, offs=22) -- 3101(line=124, offs=27)
*/
ATSINSmove(tmp136, atspre_g1int_add_int(arg0, ATSPMVi0nt(1))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3091(line=124, offs=17) -- 3109(line=124, offs=35)
*/
ATStailcal_beg()
ATSINSmove_tlcal(apy0, tmp136) ;
ATSINSmove_tlcal(apy1, arg1) ;
ATSINSargmove_tlcal(arg0, apy0) ;
ATSINSargmove_tlcal(arg1, apy1) ;
ATSINSfgoto(__patsflab_loop_58) ;
ATStailcal_end()

} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3144(line=126, offs=18) -- 3153(line=126, offs=27)
*/
ATSINSmove(tmp137, ATSLIB_056_prelude__eq_g1int_int__16__3(arg0, arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3141(line=126, offs=15) -- 3411(line=135, offs=22)
*/
ATSif(
tmp137
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3178(line=127, offs=20) -- 3183(line=127, offs=25)
*/
ATSINSmove(tmp143, atspre_g0int_mod_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3178(line=127, offs=20) -- 3187(line=127, offs=29)
*/
ATSINSmove(tmp140, ATSLIB_056_prelude__eq_g0int_int__10__6(tmp143, ATSPMVi0nt(0))) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3175(line=127, offs=17) -- 3370(line=133, offs=24)
*/
ATSif(
tmp140
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3214(line=128, offs=22) -- 3224(line=128, offs=32)
*/
ATSINSmove(tmp144, is_prime_48(arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3211(line=128, offs=19) -- 3325(line=131, offs=26)
*/
ATSif(
tmp144
) ATSthen() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3269(line=129, offs=39) -- 3274(line=129, offs=44)
*/
ATSINSmove(tmp145, atspre_g1int_div_int(env0, arg0)) ;

/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3251(line=129, offs=21) -- 3276(line=129, offs=46)
*/
ATSINSmove(tmpret126, is_prime_48(ATSPMVcastfn(cast, atstkind_t0ype(atstype_int), tmp145))) ;

} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3320(line=131, offs=21) -- 3325(line=131, offs=26)
*/
ATSINSmove(tmpret126, ATSPMVbool_false()) ;
} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3365(line=133, offs=19) -- 3370(line=133, offs=24)
*/
ATSINSmove(tmpret126, ATSPMVbool_false()) ;
} /* ATSendif */
} ATSelse() {
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics-internal.dats: 3406(line=135, offs=17) -- 3411(line=135, offs=22)
*/
ATSINSmove(tmpret126, ATSPMVbool_false()) ;
} /* ATSendif */
} /* ATSendif */
ATSfunbody_end()
ATSreturn(tmpret126) ;
} /* end of [loop_58] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12520(line=650, offs=3) -- 12559(line=650, offs=42)
*/
/*
local: 
global: lt_g1int_int$50$2(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4631)
tmparg = S2Evar(tk(4631))
tmpsub = Some(tk(4631) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__lt_g1int_int__50__2(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret108__2, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp109__2, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12505(line=649, offs=1) -- 12559(line=650, offs=42)
*/
ATSINSflab(__patsflab_lt_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12546(line=650, offs=29) -- 12557(line=650, offs=40)
*/
ATSINSmove(tmp109__2, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12529(line=650, offs=12) -- 12559(line=650, offs=42)
*/
ATSINSmove(tmpret108__2, atspre_g1int_lt_int(arg0, tmp109__2)) ;

ATSfunbody_end()
ATSreturn(tmpret108__2) ;
} /* end of [ATSLIB_056_prelude__lt_g1int_int__50__2] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$5(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__5(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__5, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__5, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__5, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__5, atspre_g0int_eq_int(arg0, tmp16__5)) ;

ATSfunbody_end()
ATSreturn(tmpret15__5) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__5] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12838(line=668, offs=3) -- 12877(line=668, offs=42)
*/
/*
local: 
global: eq_g1int_int$16$3(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4643)
tmparg = S2Evar(tk(4643))
tmpsub = Some(tk(4643) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g1int_int__16__3(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret25__3, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp26__3, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12823(line=667, offs=1) -- 12877(line=668, offs=42)
*/
ATSINSflab(__patsflab_eq_g1int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12864(line=668, offs=29) -- 12875(line=668, offs=40)
*/
ATSINSmove(tmp26__3, atspre_g1int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12847(line=668, offs=12) -- 12877(line=668, offs=42)
*/
ATSINSmove(tmpret25__3, atspre_g1int_eq_int(arg0, tmp26__3)) ;

ATSfunbody_end()
ATSreturn(tmpret25__3) ;
} /* end of [ATSLIB_056_prelude__eq_g1int_int__16__3] */

/*
/home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats: 12259(line=635, offs=3) -- 12298(line=635, offs=42)
*/
/*
local: 
global: eq_g0int_int$10$6(level=2)
local: 
global: 
*/
ATSstatic()
/*
imparg = tk(4628)
tmparg = S2Evar(tk(4628))
tmpsub = Some(tk(4628) -> S2Eextkind(atstype_int))
*/
atstkind_t0ype(atstype_bool)
ATSLIB_056_prelude__eq_g0int_int__10__6(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret15__6, atstkind_t0ype(atstype_bool)) ;
ATStmpdec(tmp16__6, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12244(line=634, offs=1) -- 12298(line=635, offs=42)
*/
ATSINSflab(__patsflab_eq_g0int_int):
/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12285(line=635, offs=29) -- 12296(line=635, offs=40)
*/
ATSINSmove(tmp16__6, atspre_g0int2int_int_int(arg1)) ;

/*
emit_instr: loc0 = /home/vanessa/.atspkg/0.3.13/ATS2-Postiats-gmp-0.3.13/lib/ats2-postiats-0.3.13/prelude/DATS/integer.dats({$PATSPRE}/DATS/integer.dats): 12268(line=635, offs=12) -- 12298(line=635, offs=42)
*/
ATSINSmove(tmpret15__6, atspre_g0int_eq_int(arg0, tmp16__6)) ;

ATSfunbody_end()
ATSreturn(tmpret15__6) ;
} /* end of [ATSLIB_056_prelude__eq_g0int_int__10__6] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 397(line=17, offs=24) -- 415(line=18, offs=13)
*/
/*
local: is_prime_48$0(level=0)
global: sqrt_int_46$0(level=0), is_prime_48$0(level=0), is_prime_ats$64$0(level=0)
local: 
global: 
*/
ATSextern()
atstkind_t0ype(atstype_bool)
is_prime_ats(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret147, atstkind_t0ype(atstype_bool)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 384(line=17, offs=11) -- 416(line=18, offs=14)
*/
ATSINSflab(__patsflab_is_prime_ats):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 405(line=18, offs=3) -- 415(line=18, offs=13)
*/
ATSINSmove(tmpret147, is_prime_48(arg0)) ;

ATSfunbody_end()
ATSreturn(tmpret147) ;
} /* end of [is_prime_ats] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 445(line=20, offs=28) -- 467(line=21, offs=17)
*/
/*
local: is_semiprime_57$0(level=0)
global: sqrt_int_46$0(level=0), is_prime_48$0(level=0), is_semiprime_57$0(level=0), is_semiprime_ats$65$0(level=0)
local: 
global: 
*/
ATSextern()
atstkind_t0ype(atstype_bool)
is_semiprime_ats(atstkind_t0ype(atstype_int) arg0)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret148, atstkind_t0ype(atstype_bool)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 428(line=20, offs=11) -- 468(line=21, offs=18)
*/
ATSINSflab(__patsflab_is_semiprime_ats):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 453(line=21, offs=3) -- 467(line=21, offs=17)
*/
ATSINSmove(tmpret148, is_semiprime_57(arg0)) ;

ATSfunbody_end()
ATSreturn(tmpret148) ;
} /* end of [is_semiprime_ats] */

/*
/home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 488(line=23, offs=19) -- 508(line=24, offs=12)
*/
/*
local: exp_3$0(level=0)
global: exp_3$0(level=0), exp_ats$66$0(level=0)
local: 
global: 
*/
ATSextern()
atstkind_t0ype(atstype_int)
exp_ats(atstkind_t0ype(atstype_int) arg0, atstkind_t0ype(atstype_int) arg1)
{
/* tmpvardeclst(beg) */
ATStmpdec(tmpret149, atstkind_t0ype(atstype_int)) ;
/* tmpvardeclst(end) */
ATSfunbody_beg()
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 480(line=23, offs=11) -- 508(line=24, offs=12)
*/
ATSINSflab(__patsflab_exp_ats):
/*
emit_instr: loc0 = /home/vanessa/programming/haskell/done/hs-ats/fast-arithmetic/ats-src/numerics.dats: 499(line=24, offs=3) -- 508(line=24, offs=12)
*/
ATSINSmove(tmpret149, exp_3(arg0, arg1)) ;

ATSfunbody_end()
ATSreturn(tmpret149) ;
} /* end of [exp_ats] */

#if(0)
/*
** for initialization(dynloading)
*/
ATSdynloadflag_minit(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_hs_055_ats_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynloadflag) ;
ATSextern()
atsvoid_t0ype
_057_home_057_vanessa_057_programming_057_haskell_057_done_057_hs_055_ats_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynload()
{
ATSfunbody_beg()
ATSdynload(/*void*/)
ATSdynloadflag_sta(
_057_home_057_vanessa_057_programming_057_haskell_057_done_057_hs_055_ats_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynloadflag
) ;
ATSif(
ATSCKiseqz(
_057_home_057_vanessa_057_programming_057_haskell_057_done_057_hs_055_ats_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynloadflag
)
) ATSthen() {
ATSdynloadset(_057_home_057_vanessa_057_programming_057_haskell_057_done_057_hs_055_ats_057_fast_055_arithmetic_057_ats_055_src_057_numerics_056_dats__dynloadflag) ;
/*
dynexnlst-initize(beg)
*/
/*
dynexnlst-initize(end)
*/
/* local */
/* in of [local] */
/* local */
/* in of [local] */
/* end of [local] */
/* end of [local] */
} /* ATSendif */
ATSfunbody_end()
ATSreturn_void(tmpret_void) ;
} /* end of [*_dynload] */
#endif // end of [#if(0)]

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

/* end-of-compilation-unit */